1. 程式人生 > >記一次入門級種子選手的Keras環境配置經歷

記一次入門級種子選手的Keras環境配置經歷

1.什麼是Keras?

Keras是一個高層神經網路API,Keras由純Python編寫而成並基Tensorflow、Theano以及CNTK後端。Keras 為支援快速實驗而生,能夠把你的idea迅速轉換為結果,如果你有如下需求,請選擇Keras:

簡易和快速的原型設計(keras具有高度模組化,極簡,和可擴充特性) 支援CNN和RNN,或二者的結合 無縫CPU和GPU切換 Keras適用的Python版本是:Python 2.7-3.6

2.官方Keras的安裝配置過程

說明:Keras的安裝分為基於Windows系統和linux系統,還區分CPU版本和GPU版本,個人理解上一個是基於CPU進行計算,另一個是GPU提供加快計算的功能。 官方教程連結:

https://keras-cn.readthedocs.io/en/latest/ (裡面包括了keras的使用方法,和配置說明) 個人由於顯示卡的一系列限制,選擇的是Windows 10 系統上的CPU版本,如此一來也更加簡單~ 在這裡插入圖片描述

3.安裝流程概述

安裝GPU版本的完整過程,安裝CPU版本只需要進行畫紅框的過程

4.安裝過程及遇到的問題

  1. 首先Window10和Python環境都是有的,可以自行下載Anaconda3(64-bit) 在這裡插入圖片描述
  2. 然後在Anaconda Prompt中輸入命令(直接在命令列中輸入似乎也可以),由於我安裝的是CPU版本,所以只用輸入後兩個命令就可以了。

GPU 版本 pip install --upgrade tensorflow-gpu CPU 版本

pip install --upgrade tensorflow Keras 安裝 pip install keras -U --pre

  1. 在安裝過程中出現了問題如圖所示,解決方法傳送門:別人家的大佬!(我覺得可能是因為和pip的版本不一致,需要更新一下pip) 在這裡插入圖片描述
  2. 驗證是否安裝完成,在spyder中輸入import keras,出現如下結果就安裝成功了 在這裡插入圖片描述
  3. 接下來需要用mnist資料集進行測試,在這裡遇到了一些問題,本來所需操作是如圖所示。在Anaconda Prompt/cmd中輸入conda install git時,出現報錯。

在這裡插入圖片描述

  1. 在這裡採用了兩種方式解決,方案一:配置映象解決
  2. 我個人在配置完映象之後,能夠進行操作,但是不知道為什麼還是沒有成功,而且也缺少mnist_mlp.py檔案(據說網上也可以下載)。我選擇了另一種方式解決。
  3. 方案二:手動下載mnist資料方案二:手動下載mnist資料 在原文中的介紹有兩點再強調一下: a.下載後的mnist.npz的檔案安放位置(可以自由選定)我是放在Keras的資料集資料夾中(D:\Users\Zhwl\Anaconda3\Lib\site-packages\keras\datasets)其中D:\Users\Zhwl\Anaconda3\ 是Anaconda3的安裝量 b.修改mnist.py檔案的內容,講註釋部分修改為下面部分,指明mnist.npz檔案所在的位置。
# path = get_file(path,
#          origin='https://s3.amazonaws.com/img-datasets/mnist.npz',
#               file_hash='8a61469f7ea1b51cbae51d4f78837e45')
path = 
'D:/Users/Zhwl/Anaconda3/Lib/site-packages/keras/datasets/mnist.npz'
  1. 接下來執行示例程式碼可以成功
import numpy as np
import matplotlib.pyplot as plt

from keras.datasets import mnist
from keras.models import Sequential
from keras.layers.core import Dense, Activation, Dropout
from keras.utils import np_utils

(X_train, y_train), (X_test, y_test) = mnist.load_data();
print(X_train.shape)
print(X_test.shape)

for i in range(9):
    plt.subplot(3,3,i+1)
    plt.imshow(X_train[i], cmap='gray', interpolation='none')
    plt.title("Class {}".format(y_train[i]))

結果如圖所示。 在這裡插入圖片描述

5.尾聲

反正就是經過這一系列折騰,弄好了!希望能給大家提供一些幫助~ 從零開始時,網上各種大神的部落格是黑暗中的曙光~ 第一次寫這個東西,而且中途還遇到快寫完時,突然沒儲存就沒了,有點絕望,但是還是堅持寫完了~ 希望看到這篇部落格的每一個你,萬事勝意~