《Tensorflow 实战Google深度学习框架》学习笔记(一)

该书样例代码网址:https://github.com/caicloud/tensorflow-tutorial

第一章 深度学习简介

1.1 人工智能、机器学习与深度学习

介绍人工智能、机器学习与深度学习这三个基本概念以及他们之间的关系。

早期的人工智能系统只能应用于特定环境(specific domain),为了使计算机掌握更多开放环境(open domain)下的知识,于是出现一个影响力巨大的领域——知识图库(Ontology),其中的著名代表是普林斯顿大学团队开发的WordNet知识图库,它相当于一个庞大的近义词集,并且在其中定义了各种近义词集之间的关系,官方网站:https://wordnet.princeton.edu/

虽然知识图库可以很好地让计算机掌握人工定义的知识,但是它也有巨大的缺陷:第一,搭建知识图库需要耗费大量的人力物力;第二,通过知识图库明确定义的知识有限,不是所有的知识都可以明确定义为计算机可以理解的固定格式,比如人的经验。

为了让计算机可以和人一样从历史的经验当中获得新的知识,机器学习被广泛应用,机器学习在《Machine Learning》一书中有严格的定义:如果一个程序可以在任务T上,随着经验E的增加,效果P也可以随之增加,则称这个程序可以从经验中学习。

机器学习的效果主要依赖于训练数据的规模和从数据中提取的特征,其中特征提取有两方面的难题:第一,如何数字化地表达现实中的实体,比如用不同坐标系表示的数据,不同颜色的结点在一个坐标系中可以被一条直线划分,在另一个坐标系中就不可以,如图1.1-1;第二,如何从实体中提取特征。
在这里插入图片描述
图1.1-1 不同的数据表达对使用直线划分不同颜色结点的难度影响

对很多机器学习算法而言,特征提取不是一个简单的工作,有时候通过人工的方式设计有效的特征集合需要很多的时间和精力。

为了自动地将进行特征提取,机器学习衍生出了一个分支——深度学习,深度学习能自动地将简单的特征组合成更加复杂的特征,并使用这些组合特征解决问题,如图1.1-2,1.1-3。
在这里插入图片描述
图1.1-2 传统机器学习和深度学习流程对比
在这里插入图片描述
图1.1-3 深度学习在图像分类问题上的算法流程样例

总的来说,人工智能、机器学习和深度学习是我非常相关的几个领域。人工智能是一类非常广泛的问题,机器学习是解决这类问题的一个重要手段,深度学习则是机器学习的一个分支。

1.2 深度学习的发展历程

可以在百度上详细了解,略过。

1.3 深度学习的应用

在计算机视觉、语音识别、自然语言处理和人机博弈等领域深度学习被大量应用。具体详情可以在百度上了解,略过。

1.4 深度学习工具对比和介绍

TensorFlow官方教程:https://www.tensorflow.org/tutorials
在百度上可以详细了解到深度学习工具TensorFlow的主要功能和特点,以及TensorFlow和其他主流的开源深度学习工具的对比,略过。

第二章 TensorFlow环境搭建

百度上各种安装TensorFlow的教程数不胜数,在其中选择一个靠谱的即可,略过。