神经网络入门基础知识

Posted by jjx on September 3, 2016

神经网络是一种非线性学习算法,神经网络中最基本的成分是神经元(neuron),下面给出神经元的基本模型:

其中${x1,x2,x3}$为输入单元,x$_0$称为偏置单元(bias unit),$x_0=1$,{$x_0$,$x_1$,$x_2$,$x_3$}称为连接权重。其中$h_0(x)=\frac{1}{1+e^{-\theta^{t}*x}}$。 还记得逻辑回归的sigmoid函数吗,在这里称作“激励函数”(motivation function)$sigmoid(x)=\frac{1}{1+e^{-x}}$,其图像为(图片来自wiki):

关于这个函数就不多介绍了,我在逻辑回归里介绍过了。 介绍完神经元模型后,下面来介绍神经网络基本模型:

在上面的图中我并没有画出$x_0$,$a_{0}^{(1)}$,在实际应用中有时候需要加上。其中第一层(layer1)称为输入层,layer2称为隐藏层(神经网络可能不止一个隐藏层,只是本例中只有一个,其实只要位于隐输入层和输出层之间的都称为隐藏层),layer3称为输出层。$a_{i}^{(j)}$称为第j层的第i个单元的激励,$\theta^{j}$表示从第j层到第j+1层的权重。因此在本例中:

因此这里

关于神经网络的最基本的知识就介绍到,下面举一些例子,帮助大家更好的理解神经网络。

Example 1:实现“与”功能

如上图所示,我们容易求得$h_{0}(x)=sigmoid(-30+20x_1+20x_2)$,因此我们可以画出$x_1,x_2$的真值表,看看它是怎样实现“与”功能的。

因此,从上图可以看出是如何实现“与”功能的。。。

Example 2:

实现“或”功能:

参考链接

神经网络入门基础知识 neural networks basics