深度有趣 | 02 準備工做

簡介

在我的電腦上,搭建編程所需的各項環境html

Anaconda

一個涵蓋了Python、pip以及經常使用Python包的軟件,https://www.anaconda.com/download/,根據操做系統進行選擇,並使用Python3對應的Anaconda版本編程

Sublime Text

一個簡潔清爽而高顏值的編輯器,https://www.sublimetext.com/,下載並安裝Sublime Text 3json

也能夠嘗試其餘對新手更友好的編輯器,例如PyCharm,https://www.jetbrains.com/pycharm/網絡

運行代碼

運行代碼的三種方法框架

  • 使用編輯器編寫代碼,並在編輯器中運行
  • 使用編輯器編寫代碼,並在命令行中運行
  • 使用Jupyter Notebook編寫代碼並運行

安裝包

能夠用pipconda安裝Python包編輯器

pip install tensorflow keras

若是安裝過慢,能夠嘗試使用國內的源,例如清華提供的源函數

pip install tensorflow==1.9.0 keras==2.2.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

文件路徑

Windows上的文件路徑以左斜槓\拼接工具

C:\Users\hlzhang\Desktop

而Mac和Linux上的文件路徑以右斜槓/拼接學習

/Users/honlan/Desktop

我習慣於後者,因此在後續代碼中,若是使用字符串表示或拼接文件路徑,則都是使用/ui

若是在Windows上報錯,請將/相應地改成\

中文編碼

在Windows上讀寫文本文件時,最好指定編碼爲utf8,尤爲是在文件中包含中文時,由於這門課所涉及的文本文件都是utf8編碼

fr = open('xyj.txt', 'r', encoding='utf8')

否則可能會出現相似如下編碼錯誤

UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 2: illegal multibyte sequence

深度學習框架

TensorFlow和Keras都是很是流行的深度學習框架

TensorFlow提供了更加底層的API,比如木材和各類工具,本身DIY

Keras封裝度更高,以Theano、TensorFlow等底層框架爲backend,比如造好的輪子

用經典網絡層搭模型時,Keras更方便;動手實現和修改模型的細節時,TensorFlow更靈活

Keras的backend能夠是Theano或TensorFlow,爲了保持一致,將backend改成TensorFlow

編輯如下文件,若是是Windows,則將$Home改成%USERPROFILE%

$HOME/.keras/keras.json

修改backend字段便可,改動始終有效

{
    "image_data_format": "channels_last",
    "epsilon": 1e-07,
    "floatx": "float32",
    "backend": "tensorflow"
}

或者在代碼裏指定,僅對當前代碼有效

import os
os.environ['KERAS_BACKEND'] = 'tensorflow'
import keras

關於backend的更多內容,請參考如下文檔,https://keras-cn.readthedocs.io/en/latest/backend/

GPU

CNN等神經網絡模型使用GPU訓練更快,有條件的話能夠用GPU,否則只能用CPU進行訓練,相應地須要安裝tensorflow的gpu版本

pip install tensorflow-gpu

若是是Nvidia的GPU,那麼還須要安裝和配置CUDA和CuDNN,http://www.shushilvshe.com/data/dl-env-build.html,而且須要注意tensorflow和CUDA、CuDNN之間的版本兼容問題

  • 在tensorflow1.6以前,使用CUDA8.0和CuDNN8
  • 從tensorflow1.6開始,使用CUDA9.0和CuDNN7
  • tensorflow版本更新很快,錄課開始時仍是1.4,錄課結束時已經更新到了1.10
  • 沒有一成不變的配置,只有不斷適應才能遇上變化

推薦前置

Q&A

__MACOSX.DS_Store是mac文件系統自動生成的,在其餘操做系統下能夠忽略,或者刪掉

03課中,在Windows上讀取包含中文的文本文件時,若是報UnicodeDecodeError,記得在open函數中指定編碼open('xyj.txt', encoding='utf8')

13課中,所使用的中文維基分詞語料下載連接爲, https://pan.baidu.com/s/1qXKIPp6,提取密碼爲kade

18課中,在Windows上可能出現沒法讀取中文名稱圖片的狀況,將圖片名稱修改爲英文便可

29課中,main.py19行的split若是報IndexError,是由於Window使用左斜槓爲路徑分隔符,因此把/改爲\\便可

相關文章
相關標籤/搜索