为什么做这门课
兴趣是最好的老师
用Python做一些有意思的案例和应用,内容和领域不限,可以包括数据分析、自然语言理解、计算机视觉,等等等等
一个将各种有趣项目整合在一起的大合集
学了能干嘛
并非专门为了某一项工作而学,而是从多个方面尝试一些自己没有做过的事情
提高代码能力、保持终身学习
好玩、好玩、好玩
开发环境
Python 3
Sublime Text
IPython Notebook
开始探索之旅!
接下来在个人电脑上,搭建编程所需的各项环境
Anaconda
一个涵盖了Python、pip以及常用Python包的软件
https://www.anaconda.com/download/
根据操作系统进行选择,并使用Python3对应的Anaconda版本
Sublime Text
一个简洁清爽而高颜值的编辑器
https://www.sublimetext.com/
下载并安装Sublime Text 3
也可以尝试其他对新手更友好的编辑器,例如PyCharm
https://www.jetbrains.com/pycharm/
运行代码
运行代码的三种方法
使用编辑器编写代码,并在编辑器中运行
使用编辑器编写代码,并在命令行中运行
使用Jupyter Notebook编写代码并运行
安装包
可以用或安装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
我习惯于后者,所以在后续代码中,如果使用字符串表示或拼接文件路径,则都是使用
如果在Windows上报错,请将相应地改为
中文编码
在Windows上读写文本文件时,最好指定编码为,尤其是在文件中包含中文时,因为这门课所涉及的文本文件都是编码
fr = open('xyj.txt', 'r', encoding='utf8')
不然可能会出现类似以下编码错误
UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 2: illegal multibyte sequence
深度学习框架
TensorFlow和Keras都是非常流行的深度学习框架
https://www.tensorflow.org/
https://keras.io/
TensorFlow提供了更加底层的API,好比木材和各种工具,自己DIY
Keras封装度更高,以Theano、TensorFlow等底层框架为,好比造好的轮子
用经典网络层搭模型时,Keras更方便;动手实现和修改模型的细节时,TensorFlow更灵活
Keras的可以是Theano或TensorFlow,为了保持一致,将改为TensorFlow
编辑以下文件,如果是Windows,则将改为
$HOME/.keras/keras.json
修改backend字段即可,改动始终有效
{ "image_data_format": "channels_last", "epsilon": 1e-07, "floatx": "float32", "backend": "tensorflow"}
或者在代码里指定,仅对当前代码有效
import osos.environ['KERAS_BACKEND'] = 'tensorflow'import keras
关于的更多内容,请参考以下文档
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
没有一成不变的配置,只有不断适应才能赶上变化
推荐前置
理论基础课:吴恩达深度学习微专业,http://mooc.study.163.com/smartSpec/detail/1001319001.htm
编程实战课:全栈数据工程师养成攻略,https://study.163.com/course/courseMain.htm?courseId=1003520028
Q&A
和是mac文件系统自动生成的,在其他操作系统下可以忽略,或者删掉
03课中,在Windows上读取包含中文的文本文件时,如果报,记得在函数中指定编码
领取专属 10元无门槛券
私享最新 技术干货