- 神经网络的发展
- 最开始的动机:是通过构建软件来模拟大脑,但今天的神经网络几乎与大脑的学习方式无关
- 我们依据大脑中的神经网络,来构建人工神经网络模型。左图中:一个神经元可以看作一个处理单元,它有很多的输入/树突,但只有一个输出/轴突,这个输出又变成另一个神经元的输入。右图中:这是一个简化的神经元的数学模型,在此,我们不是一次构建一个神经元,而是同时构建很多这样的神经元。
- 如今,数据量随着时间推移慢慢增加。传统的机器学习算法无法高效利用大数据,但大型的神经网络可以利用大数据来获得很高的性能效率,这是前几代学习算法做不到的,这也导致了深度学习算法起飞,间接导致了GPU的起飞。
- 预测T恤是否畅销的神经网络模型
- 左侧的四个数字列表叫做输入层(input layer),中间的三个神经元叫做隐藏层(hidden layer),右侧的一个神经元叫做输出层(output layer)
- 因为数据集只告诉了什么是正确的输入和什么是正确的输出,但并没有告诉什么是正确的中间层的值,所以这些正确值是隐藏的,所以叫这层为隐藏层
- 隐藏层输出了三个数字,它们作为下一层的输入,所以这三个数字叫做激活值(这三个神经元在这一层的激活),同理,输出层输出了一个数字,这个数字可能作为下一层的输入,所以这个数字也叫作这个神经元在这一层的激活
- 神经网络中的在某一层的每一个神经元,可以访问前一层的每个特征,通过设置特征前的参数就可以选择保留和忽略哪些特征。所以我们可以将数字列表写作向量的形式来进行运算,即每层输入一个向量,并输出另一个向量。
- 神经网络是一种特殊的逻辑回归模型,它不要求我们在隐藏层中手动指定特征,它可以学习并使用自己的特征,更容易做出准确的预测
- 有多层隐藏层的神经网络也叫多层感知器
- 设计神经网络模型时,虽然不需要手动指定隐藏层中的特征,但需要设定有多少层隐藏层和每层隐藏层有多少个神经元,即设定神经网络架构