第一周的课程里主要是简单介绍deeplearning - 深度学习,Neural NetWork - 神经网络的概念。
Introduction to Deep Learning - 深度学习简介
What is Neural Network? - 什么是神经网络?
其实神经网络并没有想象中那么复杂,它由三部分组成:
- 输入层
- 隐藏层
- 输出层
其中每一层都包含数个neuron - 神经元,我称之为计算节点。每一层的每一个节点都完成一种计算任务,上一层的节点计算的结果会作为当前层的节点的输入,当前层节点的输出则作为下一层节点的输入。
我们用一个简单的例子来解释:
假如现在有一组数据,是关于房子面积和价格的表格,如下:
$Size in feet^{2}$ (x) | $prize$ (y) |
---|---|
2104 | 460 |
1416 | 232 |
1534 | 315 |
852 | 178 |
我们可以作线性回归,可能画出来的图是这样的:
那么我们可以作如下定义:
- 输入层节点为房子面积$(x)$
- 隐藏层节点为蓝色直线 所代表的 拟合函数 $(f)$
- 输出层节点为 拟合函数在对应输入上的输出$(\hat{y})$
可作下图:
这就是最简单的神经网络,它只有$3$层,每层只有$1$个节点。只要我们将随便一个房屋子的面积作为输入丢进去,它就会帮我们预测输出价格。
可是只靠面积来预测价格肯定是不严谨的,可能会有多个因素,比如地段,交通便利情况等。这时我们就会有多个输入,也就意味着输入层节点有多个,与输入的特征一一对应。
我的总结,神经网络就是一个多层的嵌套函数。这句话会在后面的笔记得以充分体现。
Supervised Learning with Neural Networks - 有监督学习神经网络
有监督学习,简要的说,就是我们有一个 数据集,并且我们知道这对数据的 输出是张什么样的,而且可以肯定作为变量的输入数据与作为结果的输出数据之间有着必然的联系。
有监督学习通常分为regression - 回归与classification - 分类两类问题。
-
对于回归问题,一般我们的数据都是 Structured - 结构化 的,有着明显的特征:
-
对于分类问题,数据一般是 Unstructured - 无结构化的,特征不明显:
关于神经网络的发展请阅读课程资料,这里不在赘述。