机器学习笔记06:神经网络的表示(Neural Networks-Representation)
来源:互联网 发布:41是什么意思网络语言 编辑:程序博客网 时间:2024/05/02 06:45
神经网络(Neural Networks)其实是一个很古老的想法,在提出来之后,沉寂了很长一段时间。而现在,神经网络是许多机器学习问题的首选算法。
一、神经网络的表示(The Representation for Neural Networks)
1、运用神经网络的动机(Motivations)
非线性的假设函数(Non-linear Hypothesis)
之前已经学习了两个机器学习中常用的方法:线性回归和逻辑回归。那为什么还需要神经网络这个东西呢。我们先来举一个监督学习中的分类问题的例子,假设有如下的训练集:
我们的目的是进行分类,假若如图所示的训练集一样,只有两个特征
然而,当特征非常多的时候,我们必须用足够高次的项来保证假设函数的准确率,例如需要用100个特征来预测房价,且最高次项为6次,在逻辑回归中,假设函数为:
大脑和神经元(Brain and Neurons)
再来讲讲有关大脑的东西,根据一些神经科学家的研究实验发现,当一个感知器官的与对应的大脑皮层区域的连接被切断时,如果把这个感受器和另一个皮层区域连接起来,那么这个皮层区域将学会感知新的东西。举个例子:
如上图,如果把听觉感受器和听觉皮层区域的连接切断,然后把听觉感受器和视觉皮层区域相连,则视觉皮层区域也能学会处理听到的东西。
再如:
如果把触觉感受器和触觉皮层区域的连接切断,然后把触觉感受器和视觉皮层区域相连,则视觉皮层区域也能学会处理触觉。所以人们一直想要模仿人类的大脑来创造真正的AI,但是还处于初级的研究阶段,毕竟我们连大脑的机制都没完全搞清楚。
另外一个例子是用舌头来看东西:
如图,头上戴的是一个图像接收器,类似摄像头,舌头上的一个电极阵列,高电压代表亮点,低电压代表暗点,这样通过舌头就能“看”东西了。
再回到神经网络算法,我们模拟大脑的目的就是让这种算法能够学习各种各样的事物,而不必某个特别的问题来设计一个对应的程序来解决问题。
2、神经网络(Neural Networks)
模型表示(Model Representation)
首先来看看,大脑中神经元的结构:
理科生肯定都学过高中生物,图中左边的蓝色部分上的分杈叫做树突(Dendrite),它可以连接多个其他的神经元;细胞体中的绿色部分为细胞核;黄色部分为轴突(Axon);最右边为轴突末梢(Axon terminal),它可以和其他神经细胞的树突相连接。一个神经细胞可以和另一个神经细胞相连:
如上图,一个神经元的轴突末梢能和另一个神经元的树突相连,而且树突可以和多个轴突末梢相连,多个神经元的复杂连接就形成了一个神经网络。当然,以上都属于神经科学的范畴,在机器学习中,最简单的神经网络(只有一个神经元)可以表示如下:
其中,左边的
而在这里
需要注意的是,函数
然而,一般的神经网络都不是像上面那样那么简单的。一般的神经网络表示如下:
同样可以添加
下面再来更加数学化地描述这个模型,还是以上面那张图为例,有如下记法:
其中,activation 表示层(Layer)中的一个单位(Unit)的激励。
前向传播(Forward propagation)
前面提到了层(Layers)之间的关系式,现在来向量化计算过程:
我们令
则
3、应用(Applications)
例一:实现与或非等逻辑功能
神经网络的应用很广泛,但是对于初学者来说,那就比较复杂了。来举一个二进制分类的例子,训练集如下图:
我们要求
可以看到,当
1.与(AND)
那如果要实现与(AND)功能的话,我们可以通过神经网络来对输入进行处理以得到想要的结果:
如上图,其中
下面我们就来列一个真值表:
由此看累,上面就是一个实现与(AND)功能的神经网络。
2.或(OR)
要实现或(OR)功能,我们需要如下的神经网络:
其中
可以看出,上面的神经网络实现了或(OR)功能。
3.非(NOT)
4.实现XNOR(NOT XOR)
我们之前已经得到了与或非三个神经网络,下面左边是与,右边是或,中间为(NOT
现在只需要将他们组合起来,如下:
我们就可以得到如下真值表:
可以看到,最终的
例二:多类分类
最后是一个计算机视觉的分类问题,我们要使用神经网络来判断一个物体是行人(Pedestrian)、小汽车(Car)、摩托车(Motorcycle)还是卡车(Trunk):
这个神经网络的输出如图下方,应该为一个四维的列向量。
另外需要注意的是,对于这种多类的分类问题,训练集应该符合下面的要求:
不仅
好了,这篇文章大概得描述了一下神经网络是怎么工作的。下一篇文章将会描述神经网络是具体怎么学习的(完成后会放上链接)。
如有错误,期望您能纠正,留言或者是e-mail:artprog@163.com
- 机器学习笔记06:神经网络的表示(Neural Networks-Representation)
- 斯坦福大学机器学习“神经网络的表示(Neural Networks: Representation)”
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第4讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第4讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- 斯坦福大学机器学习第六课“神经网络的表示(Neural Networks: Representation)”
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- 斯坦福大学机器学习第八课“神经网络的表示(Neural Networks: Representation)”
- Stanford机器学习---第四讲. 神经网络的表示 Neural Networks representation
- 机器学习之神经网络模型-上(Neural Networks: Representation)
- 16进制的转换
- MTD应用学习:mtd和mtdblock的区别
- 写paper的点滴
- HDU 3152Obstacle Course (BFS ,记忆化???)
- JavaScript插入排序和希尔排序
- 机器学习笔记06:神经网络的表示(Neural Networks-Representation)
- CSS 盒模型
- 【SSH网上商城项目实战08】查询和删除商品类别功能的实现
- 学术资料搜索大全!
- niyist-655-光棍的yy
- SSH-Web项目中 .classpath、.mymetadata、.project文件的作用
- shell十三问总结
- 在HTML中解决音频播放最好的方式
- 选择排序