神经网络是一种受生物学启发的编程范式,让计算机在众多观测数据中进行自我学习的算法技术。而深度学习可以看作是强有力的用于神经网络学习的众多技术的集合。目前,神经网络与深度学习在图像识别、语音识别和自然语言处理领域中都给出了最好的解决方案。本文以两种常用神经元的工作原理入门,讲解梯度下降学习算法,并进一步引出深度学习的概念。
1 感知器(Perceptrons)
感知器是人工神经元的一种,即便如今更多的使用sigmoid神经元,但首先理解感知器的工作原理,对于后面sigmoid神经元的理解会更加简单。感知器的工作原理如图所示:
其中x1, x2, x3代表输入元素,每条指向感知器的路径箭头带有一定的权值wi(i=1, 2, 3),感知器带有一个参数称为阈值,通过判断所有输入与权值的乘积和与给定阈值的大小,决定最后的输出值,即
显然,通过调整权值与阈值,将会产生不同的决策结果。这样一来,通过构建一个如下图所示的复杂的感知器网络,为考虑更多的输入因素做出决策,是非常可靠的,其中介于输入层与输出层之间的神经网络层称为隐藏层。
为简化数学描述,可以将阈值移向不等式的另一边,以参数b代替-threshold,参数b称为感知器的贝叶斯(bias)参数;而w和x分别代表权值向量和输入向量。如下所示:
若给定输入向量为二进制数,则通过判断输出值是否大于零输出0或1。可以看出,感知器可以用来被设计成复杂的逻辑电路,若将输入向量视作无输入值的感知器,则可以设计如下图的逻辑电路: