ng机器学习视频笔记 ——神经网络基础

Posted lin_h

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ng机器学习视频笔记 ——神经网络基础相关的知识,希望对你有一定的参考价值。

ng机器学习视频笔记(六)

——神经网络基础

 (转载请附上本文链接——linhxx)

 

 一、概述

         神经网络,可以理解为输入的内容,经过一系列的内部的处理,得到输出的假设函数。简单的神经网络如下图:

 

          可以看出,三个输入,经过中间的变化,得到输出。中间橙色的圈,称为神经元。神经元可以分层,下图是三层神经网络模型:

 

          其中,第一层蓝色的圈,叫做输入层;中间一层橙色的圈叫做隐藏层;右边的橙色圈叫做输出层。神经网络有一个输入层和一个输出层,隐藏层可以有多层。神经元的连接方式,称为神经网络的架构。

 

二、基本公式

         上图的三层神经网络,ai(j)表示的是第j层、第i个变量。每个变量都是由上一层计算得到的,计算公式如下图:

 

          用zi(j)表示对应的ai(j)的式子中的g函数内部的式子,可以看出,神经元实质上就是输入的变量经过若干个线性变换,得到输出。

 

         上图的xi,都省略了x0,x0一直都是1。另外,g(z)即logistic回归中的g(z)函数,即g(z)=1/(1+e-θTx)

 

三、具体例子

         现要使用神经网络实现与、或、非、异或的逻辑运算。

1、与

         假设有两个特征值x1、x2,他们的取值范围是0或1,y=x1&&x2,由g(z)的公式,可以大致推导出,z=4时y约等于1,z=-4时y约等于0。则可以假设h(x)=g(z)=g(-30+20x1+20x2)(其中x0=1),神经网络如下图所示:

 

 

         则此时即表示实现了一个具有“与”功能的神经元。

2、或

         类似与,或可以用如下假设方式:

 

 

3、非

         非的表示方式如下:

 

 

4、非异或

         非异或(XNOR),即异或的结果再进行非操作。此时,用到了三层的神经网络,中间一层是隐藏层,用于计算异或,并把结果传到第三层进行处理后输出。

         根据异或的公式,可以知道x1 XOR x2,则x1或x2中1个是1的时候结果是1,否则是0,则XNOR则是x1和x2都是1,或者x1和x2都不是1的情况。

         因此,第二层,则计算了x1和x2都是1,或者x1和x2都不是1的情况。分别是红色的圈和蓝色的圈的表示。

         第三层进行或运算,接收第二层的结果。

 

 

 

四、多变量情况

         多变量情况,类似上面的内容,下面是例如要区分一个图片是轿车、人、摩托车、卡车的简易神经网络(没有具体过程,就是粗略模型)。

         实际上,就是将输入的图片的像素点,经过若干隐藏层的处理后,进行输出。

 

 

——written by linhxx

 

更多最新文章,欢迎关注微信公众号“决胜机器学习”,或扫描右边二维码。

 

以上是关于ng机器学习视频笔记 ——神经网络基础的主要内容,如果未能解决你的问题,请参考以下文章

斯坦福大学Andrew Ng - 机器学习笔记 -- 神经网络模型

Andrew Ng机器学习课程笔记之神经网络

Andrew Ng 机器学习课程笔记 ———— 通过初步的神经网络实现手写数字的识别(尽力去向量化实现)

ng机器学习视频笔记 ——SVM理论基础

ng机器学习视频笔记(十四) ——推荐系统基础理论

ng机器学习视频笔记——线性回归代价函数梯度下降基础