【二十一】机器学习之路——神经网络入门

本文介绍了神经网络的基本概念,包括神经元模型和简单的感知器示例。讨论了神经网络的前向传播算法,并解释了单层隐藏层的神经网络结构。此外,还概述了反向传播算法在调整神经网络参数中的作用,以使模型更好地拟合样本数据。
摘要由CSDN通过智能技术生成

写在前面:[本篇博文参考吴恩达的《机器学习》课程——浅层神经网络、周志华《机器学习》。
墙裂建议大家先看一下知乎里的一个博主的回答,如何简单形象又有趣的讲解神经网络是什么,非常适合入刚上路的小白。
同时推荐大家先学习机器学习之路——logistic回归后再来看这篇博客。]


  今天来讲一下神经网络,神经网络这个概念很早以前就已经有人提出,目前神经网络是一个相当大的、多学科交叉的领域。许多复杂的应用(比如模式识别、自动控制)和高级模型(比如深度学习)都基于它。
  神经网络中最基本的成分是神经元模型。在生物网络中,每个神经元与其他神经元互联,当它”兴奋”时,就会像其相连的神经元发生化学物质,从而改变这些神经元的电位;如果某个神经元的电位超过一个”阈值”,那么它就会被激活,即”兴奋”起来,向其他神经元发送化学物质。

  如图中所示,一个神经元经过其他多个神经元的输入”刺激”,刺激达到阈值后,则该神经元则会通过发送化学物质来”刺激”其他神经元。举一个简单的例子来说明一下简单的神经网络:
  假如我想到游泳馆游个泳,影响我去还是不去的有三个因素:

  1. 室外温度是否合适;( x1 x 1 )
  2. 价格是否合适;( x2 x 2 )
  3. 心情是否美滋滋;( x3 x 3 )

  这就构成了一个简单的感知器,上面三个因素就是外部输入,最后的决定就是感知器的输出。如果三个因素都是 Yes(使用1表示),输出就是1(去游泳);如果都是 No(使用0表示),输出就是0(不去游泳)。
  如果某些因素成立,某些因素不成立,则需要通过计算权重相加,并判断是否大于阈值来判断去还是不去游泳。假设三个输入的权重分别为 w1=4 w 1 = 4 w2=2 w 2 = 2 w3=4 w 3 = 4 ,阈值为5,只要大于阈值则最终决定去游泳,否则不去。

output={ 1,ifi1wixi>Threshold0,ifi1wixiThreshold o u t p u t = { 1 , i f ∑ 1 i w i ⋅ x i > T h r e s h o l d 0 , i f ∑ 1 i w i ⋅ x i ⩾ T h r e s h o l d

神经网络表示

  将上文中的例子抽象起来就如下所示,


图中 x1,x2,x3 x 1 , x 2 , x 3 为感知机的输入,
z=i1wixi+b z = ∑ 1 i w i ⋅ x i + b

为加权后的结果,图中采用的是 wT w T 是将权重w矢量化表示,后面会再介绍矢量化。

圆圈右半部分

a=ŷ =σ(z) a = y ^ = σ ( z )

则是将加权值通过”激活函数 σ(z) σ ( z ) ”非线性化的最终输出结果。因为现实中,很多分类是非线性的,因此需要通过”激活函数”将其非线性化。

这里的”激活函数 σ(z) σ ( z ) ”为sigmoid函数,其表达式和函数图像如下:

σ(z)=11+ezx(,+) σ ( z ) = 1 1 + e − z , x ∈ ( − ∞ , + ∞ )

  通过函数图像可以看出该函数输出值在(0,1)之间,对分类的情况很友好,而且函数是连续可导的,但也有缺点,就是饱和的时候梯度太小。一般激活函数的选择较多,后面会单独写一篇博客来介绍激活函数,这里入门先用该函数来进行讲解。可以简单理解为激活函数作为非线性化的一种转换。各位可以移步我之前的博客机器学习之路——logistic回归里面有简单的相关介绍。

单层隐藏层的神经网络

  一般应用中神经网络都是很复杂的,一般是由输入层(input layer)隐藏层(hide layer)输出层(output layer)组成。隐藏层不是必须的,但是没有隐藏层的神经网络是线性的,只能处理线性可分的问题,就相当于线性的Logistic模型。
  下图为仅有一层隐藏层的神经网络:

  其中 x1,x2,x3 x 1 , x 2 , x 3 是输入的样本属性值,可以理解为文章开头的例子中的”室外温度”、”价格”、”心情”,whatever,就是训练样本属性值。样本数据通过隐藏层的处理,最终输出层导出我们模型处理后的结果。先来看红色虚线左边部分,这里数据我们用向量化进行表示,因为向量化的运算会提升效率,如果样本比较多的话一个一个的计算会消耗大量时间,

X=x1x2x3 X = ( x 1 x 2 x 3 )

WT=w[1]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值