码迷,mamicode.com
首页 > 其他好文 > 详细

斯坦福2014机器学习笔记六----神经网络(一)

时间:2017-10-24 01:44:54      阅读:295      评论:0      收藏:0      [点我收藏+]

标签:描述   技术   嵌套   简化   src   输入   逻辑回归   矩阵   表达   

 一、纲要

  神经网络模型表示

  神经网络的直观理解

  神经网络做多类分类

二、内容详述

  1、神经网络模型表示

  这里就不再描述大脑的神经网络和神经元了,我们直接看神经网络的模型。我们先从最简单的神经网络开始,即只有input layer和output layer

技术分享

这里的x0叫做偏置单元,跟之前一样,为一常数,x0=1;这里的hθ(x)叫做神经元的激励函数,hθ(x)跟逻辑回归函数一样。下面再来一个相对来说复杂一点的神经网络

技术分享

这里多了一层layer2,叫做隐藏层(hidden layer)。我们用ai(j)表示第j层的第i个激励,用θ(i)表示第j层到第(j+1)层的作用,且θ(i)是一个矩阵,尺寸是(j+1)层的单元数Sj+1为矩阵的行数,第j层的单元数Sj+1表示为矩阵的列数,即θ的维度是(Sj+1 * Sj+1)。这样的话我们就可以算出layer2的各单元的表达式:

技术分享

这里在计算layer2的时候会加上x0,如果有更多的层,在计算下一层的时候都会加上这层的偏置单元,如在计算layer3的时候就在layer2画上a0(2)这个bias unit。

技术分享

这里我们可以对上面的表达式进行简化表示如图,并对z,x,θ进行向量化得z(i+1) = θ(i)·x(i),i表示对应第i层

技术分享

可以看得出,每一层的a都是由上一层的x和x对应的参数(权重)θ决定的,我们把这样从左到右的算法称为前向传播算法。

说了这么多,神经网络所做的就是逻辑回归,但输入不再是xxx3,而是用aa2 a3的计算出来的新输入特征,这里的aa2 a3都是逻辑回归的结果,因为是梯度下降的,所以我们得到的aa2 a3是比xxx3更好的假设,然后再输入到最后一层,相当于是逻辑回归的多层嵌套。

  2、神经网络的直观描述

  这一部分我们来利用神经网络实现逻辑与、逻辑或,逻辑非运算,然后用稍微复杂的神经网络来实现同或运算

  技术分享

我们假设这里的权重θ0 = -30,θ1 = 20,θ2 = 20,那么进行运算后我们得到技术分享,根据我们之前逻辑回归部分的hθ(x)=g(z),当z>4.6时我们可以认为hθ(x)=g(z) = 1,而当z<-4.6时,认为hθ(x)=g(z)=0,所以我们对x0,x1分别赋0、1值可以得到真值表。这就是神经网络实现了AND运算

技术分享              技术分享

  我们用同样的方法进行(Not x1)AND(Not x2)运算,此时权重就应该变为θ0 =10,θ1 = -20,θ2 = -20,可以自己动手画一画。这些都是只有input layer和output layer,下面我们要实现同或运算,就需要额外的hidden layer,这里我直接手写来表示

技术分享

  3、神经网络做多类分类

  多类分类就是说在output layer有多个输出,跟上面这部分的区别在于,上面的都是二元分类,只有一个输出,即非1即0。但是做多类分类的时候,加入我们需要识别4类不同的对象,那我们就需要4个输出,且我们得到的输出值hθ(x)=y(i)=[1,0,0,0](T)或[0,1,0,0](T)或[0,0,1,0](T)或[0,0,0,1](T),这样我们就可以判断识别的是哪类对象了

 

斯坦福2014机器学习笔记六----神经网络(一)

标签:描述   技术   嵌套   简化   src   输入   逻辑回归   矩阵   表达   

原文地址:http://www.cnblogs.com/kl2blog/p/7719981.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!