吴恩达Coursera机器学习课程系列笔记讲解
课程笔记|吴恩达Coursera机器学习 Week1 笔记-机器学习基础
Neural Networks: Representation
之前讲的Linear regression和Logistric regression都是线性分类器(linear classification),因为它们都只能用一条线来分类。
然而很多情况下,我们的分界线不见得是一条简单的曲线,可能就是一条弯来弯去的曲线,所以我们需要一个非线性分类器来划分这个数据集。
我们可以使用如下的式子去假设这个非线性模型:但是如果特征很多很多,比如说一幅图像,我们用每一个像素去表示一个特征的话,这个计算量将是无比巨大的,所以更普及的一个方法是使用神经网络(Neural Networks)。
神经网络,顾名思义,就是模仿了人类大脑的构造了,一层一层的进行计算,最后得出一个结果。
每一层对上一层的数据进行一个抽象得出一系列的决策,然后下一层在对这一层得出的决策再进行一个抽象的到更高层次的决策,就这样一层一层下去,直到最后一层的出一个终极决策,输出结果。
我们的大脑中使用“神经元(neuron)”去感知,去连接其他的神经。
类比一下,在神经网络中也是如此,我们在每一层中,弄几个神经元来感知(=计算),然后讲决策传个下一层的神经元……以此类推直至最后一个输出层的神经元。
首先看一下一个神经元是怎么工作的:
然后再来看由多个这样的神经元组成的简单的三层神经网络是怎么样工作的:
下面,我们把这一系列的计算公式展开来,然后再合并成colume vector相乘的格式,最后再合并成matrix相乘的形式。sigmoid函数用
以上便是一个三层的神经网络的工作流程,再复杂的也是这样一层一层计算的。
转自:机器学习算法与自然语言处理
完整内容请点击“阅读原文”