深度有趣 | 01-02 前言和准备工作

为什么做这门课

兴趣 是最好的老师

用 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编写代码并运行

安装包

可以用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

我习惯于后者,所以在后续代码中,如果使用字符串表示或拼接文件路径,则都是使用/

如果在 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都是非常流行的 深度学习框架

  • https://www.tensorflow.org/
  • https://keras.io/

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
  • 没有一成不变的配置,只有 不断适应 才能赶上变化

推荐前置

  • 理论基础课:吴恩达深度学习微专业,http://mooc.study.163.com/smartSpec/detail/1001319001.htm
  • 编程实战课:全栈数据工程师养成攻略,https://study.163.com/course/courseMain.htm?courseId=1003520028

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使用 左斜杠 为路径分隔符,所以把/改成\\即可

视频讲解课程

https://study.163.com/course/courseMain.htm?courseId=1004777011

原文发布于微信公众号 - 宏伦工作室(HonlanFarm)

原文发表时间:2018-09-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CDA数据分析师

手把手教你如何使用Excel高级筛选

Excel自动筛选在工作中被经常使用,但掌握高级筛选的同学却很少,甚至都不知道高级筛选高级到哪儿了。今天兰色还原一个高大尚的高级筛选功能。 一、高级筛选哪里“高...

21750
来自专栏PPV课数据科学社区

《Kaggle项目实战》 泰坦尼克:从R开始数据挖掘(一)

摘要: 你是否为研究数据挖掘预测问题而感到兴奋?那么如何开始呢,本案例选自Kaggle上的数据竞赛的一个数据竞赛项目《泰坦尼克:灾难中的机器学习》,案例涉及一...

35960
来自专栏机器之心

TensorFlow初学者指南:如何为机器学习项目创建合适的文件架构

选自MetaFlow 作者:Morgan 机器之心编译 参与:李亚洲、蒋思源 在这篇文章中,作者根据自己的经验为 TensorFlow 初学者给出了设计文件、文...

39060
来自专栏张善友的专栏

负载均衡的基本算法

负载均衡的基本算法,主要有以下几种(参考F5产品): 随机:负载均衡方法随机的把负载分配到各个可用的服务器上,通过随机数生成算法选取一个服务器,然后把连接发送给...

30370
来自专栏机器之心

业界 | 谷歌发布TensorFlow 1.3.0版本,新加多个分类器、回归器

31640
来自专栏Y大宽

RNA-seq(6): reads计数,合并矩阵并进行注释

小结 计数分为三个水平: gene-level, transcript-level, exon-usage-level 标准化方法: FPKM RPKM ...

69050
来自专栏cs

python统计一下自己的花费

15730
来自专栏编程坑太多

简单爬虫,突破复杂验证码和IP访问限制

60610
来自专栏机器之心

资源 | 神经网络框架Chainer发布2.0正式版:CuPy独立

选自GitHub 机器之心编译 参与:李泽南、吴攀 Chainer 是一个灵活的神经网络框架,它的一个主要目标就是展现灵活性,允许我们用简单直观的方式编写出复...

492130
来自专栏深度学习入门与实践

用Tensorflow让神经网络自动创造音乐

本文禁止转载,禁止用于各类讲座及ppt中,违者必究   前几天看到一个有意思的分享,大意是讲如何用Tensorflow教神经网络自动创造音乐。听起来好好玩有木有...

35290

扫码关注云+社区

领取腾讯云代金券