Neural Networks笔记1 - webdancer's Blog

Neural Networks笔记1

webdancer posted @ 2012年10月25日 14:51 in machine learning with tags Machine learning neural network , 3774 阅读

1.继续八卦NN的历史

人工神经网络的研究者,试图创造一个大脑和机器处理信息的统一模型,在这个模型中,信息按照同意的规则进行处理。正如Frank Rosenblatt所希望的:

"the fundamental laws of organization which are common to all information handling systems, machines and men included, may eventually be understood."

Frank Rosenblatt是那时候NN的先锋人物,1957年,他在IBM 704上模仿构造的perceptron模型,后来又创造了专门的硬件设备。这引起了人们非常大的研究热情,但是在1969年Marvin Minsky在他写的书"Perceptrons"中指出了这种模型的致命错误,perceptron模型甚至无法完成XOR这种简单的逻辑操作,那么怎么可能期望它模拟那么复杂的人的大脑的信息处理过程呢?这就给NN的研究浇了一盆冷水。这样NN的研究就基本上停滞了,这对AI的研究也产生了重要的影响。(ps:Rosenblatt与Minsky高中就认识,但在NN的态度上截然不同,他们在AI的会议上时有争吵。)。两年以后的1971年,Rosenblatt在去世。1986 年,D.E. Rumelhart和J.L. McClelland主编了著名的《并行分布处理—认知微结构的探索》[8]一书,对PDP小组的研究工作进行了总结,轰动一时,特别是D.E. Rumelhart、G.E. Hinton和R.J. Williams重新发明了著名的BP算法,产生了非常大的影响。在书中BP网络对Marvin Minsky针对perceptron模型的缺点的指责做了修正。NN的发展又回到正规,如果你看过最近的科技新闻,就会发现人们对GOOGLE的brain simulator[1]产生了极大的兴趣,它基于NN。

2.Perceptron model

Perceptron是一种线性模型,只能把那些线性可分的数据进行分类,是一种只有输入输出层,而没有中间层的简单神经网络,示意图如下(输入,输出层的节点数目都是可以根据具体的问题改变):

下面看一下Perceptron的模型,

 

\[
y(x)=f(W^Tx)
\]

其中,

\[
f(a)=
\begin{align}
\left\{
\begin{array}
+1; a>=0\\
-1 ;a<0
\end{array}
\right .
\end{align}
\]

模型训练

我们使用的一种称为perceptron criterion的误差函数,在这种误差函数中,对那些分类正确的训练实例其错误为0,对那些分类错误的实例,最小化$-W^T\phi^nt^n$[1],所以误差函数的形式为:

\[
\mathbb E_p(W)=-\sum_{x^n \in \mathbf M}W^T\phi^nt^n
\]

其中,$\mathbf M$为分类错误的实例集合。可以看出,$\mathbb E_p(W)$是关于$W$的线性函数。有了目标函数,我们就可以使用sgd方法进行参数的训练。

\[
W^{t+1}=W^{t}-\eta\bigtriangledown E_p(W)=W^{t}-\eta\bigtriangledown E(W)=W^{t}+\eta\phi^nt^n
\]

其中,$t$为训练的次数 ;$\eta$为学习系数,常用系数$\eta=1$。我们可以这样简单的理解上面的过程:在训练集合上,我们选择一个实例,用Perceptron function计算$y(x)$,如果分类正确,则$W$值不变;如果分类错误,根据上面的讨论,更新$W$,如果我们把学习系数设为1,对于$C_1$,我们在$W$上加上特征向量,对于$C_2$,我们在$W$上减去特征向量。

总结一下,算法如下:

 

1. 初始化$W=0$,对$x$进行归一化为单位向量。
2. 给出一个$ x$, 预测为正类如果满足 $W^{t} · x > =0$,否则,为负类
3. 对于预测错误的$x$,按照下面的规则,更新参数$W$:
   • Mistake on positive: $W^{t+1} ← W^{t}+ x.$
   • Mistake on negative:$W^{t+1} ← W^{t}- x.$
     $t ← t + 1$.
4. 如果满足收敛条件,程序停止;否则,跳到(2)继续执行。
 

过程如下图所示:

3.Perceptron模型的XOR问题

 

x1

x2

y

0

0

0

1

0

1

0

1

1

1

1

0

对于XOR问题,Perception无法解决,本质上是因为Perception是一种线性的分类器,无法处理像XOR这样的线性不可分问题,只能处理线性可分问题(这本质是由于基函数的数目是固定的)。下面具体看一下:

1.第一种情况,把$y=0$当作正类,$y=1$当作负类,则应满足:

\[
\begin{align}
\left \{
\begin{array}{l}
w_1*0+w_2*0>=0\\
w_1*1+w_2*1>=0\\
w_1*1+w_2*0<0\\
w_1*0+w_2*1<0
\end{array}
\right .
\end{align}
\]
得出:
\[
\begin{align}
\left \{
\begin{array}{l}
0>=0\\
w_1+w_2>=0\\
w_1<0\\
w_2*1<0
\end{array}
\right .
\end{align}
\]

上面的式子显然矛盾,所以Perception无法处理。

2.第二种情况,把$y=1$当作正类,$y=0$当作负类,则应满足:

\[
\begin{align}
\left \{
\begin{array}{l}
w_1*0+w_2*0<=0\\
w_1*1+w_2*1<=0\\
w_1*1+w_2*0>0\\
w_1*0+w_2*1>0
\end{array}
\right .
\end{align}
\]
得出:
\[
\begin{align}
\left \{
\begin{array}{l}
0<=0\\
w_1+w_2<=0\\
w_1>0\\
w_2*1>0
\end{array}
\right .
\end{align}
\]
上面的式子也显然矛盾,所以Perception无法处理。
综合上面两种情况,我们可以看出Perception无法处理XOR函数。

4.BP网络解决XOR问题

Bp网络相对于perceptron来说,引入了中间层(hidden layer),如果我们增加中间节点的数目,BP网络几乎可以模拟任何函数,这使得BP网络有了巨大的威力。下面看一下我们怎么用BP网络来解决XOR问题。

 

 
BP网络的知识在前面已经具体的记录了,这里用自己写的神经网络进行直接训练。
训练集合:X_train=[1 0 0;1 1 0;1 0 1;1 1 1]; Y_train=[0;1;1;0];
使用sgd的方法,进行1000次epochs,最后得到了正确的结果。cost function值的变化情况如下图:

 

参数是:
W1_opt =
-4.0651 -7.6005 7.4477
-3.6312 6.6970 -7.0214
W2_opt =
-6.1426 12.4327 12.5669

当然BP绝不限于解决像XOR这样的简单函数,它能够模拟很复杂的函数,例如:卷积神经网络(Convolutional neural network, CNN)在手写字符识别等问题中能取得非常好的效果,当然还有很多的新的NN网络的架构在不断的发现和研究。

5.BP网络的问题以及deep learning

在传统的BP网络中,中间层(hidden layer)的层次数目不能过多,一般是1-2层,过多的层次不能取得好的效果。而在人脑中对信息的处理层次更多,人们希望网络中能有更多的中间层。Hinton[2]在2006年发表了论文”A fast learning algorithm for deep belief nets ”成功了训练了多层神经网络,这就是现在收到人们关注的Deep learning 方法。

[1].http://www.bbc.co.uk/news/technology-18595351

[2]http://www.cs.toronto.edu/~hinton/

Uttarakhand Intermed 说:
2022年8月17日 21:21

Students taking the class 11 exams administered by the Uttarakhand Board may review the important model question paper from 2023 for better preparation. On the official website, you may obtain the 11th Important Model Question Paper for 2023 for the Science, Commerce, and Arts streams. However, the Board will shortly publish the condensed Important Model Question Paper 2023 for the upcoming academic year. Uttarakhand Intermediate Question Paper 2023 Students may verify the marking scheme and the Important Model Question Paper 2023 using this UK Board 11th Practice exam. The 11th Significant Model Question Paper from the Uttarakhand Board for 2023 also lists important themes for each subject, such as English, Economics, Geography, and Mathematics, unit by unit.


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter
Host by is-Programmer.com | Power by Chito 1.3.3 beta | © 2007 LinuxGem | Design by Matthew "Agent Spork" McGee