特别申明:本文只做理解和说明,不够严谨,需要系统掌握还需专业学习
一、引言
目前来说,很多大胸弟都已经听过神经网络的大名,对其牛X轰轰的能力表示惊叹,但对其为什么能够预测却总觉得是门玄学,莫名其妙。本文假设了一个已经训练好的网络来进行举例讲解。
那么它的模型到底是如何进行预测的呢?先回到神经网络的基本公式
二、公式回顾
y
=
W
x
+
b
(线性函数)
y=Wx+b \tag{线性函数}
y=Wx+b(线性函数)
z
=
σ
(
y
)
(激活函数)
z=\sigma (y) \tag{激活函数}
z=σ(y)(激活函数)
x x x:输入数据的特征
W W W:对应特征的权重
b b b:偏移量,为了理解过程,下面的举例假设 b = 0 b=0 b=0
z z z:预测结果
这里有的同学会有疑问:你拿一个线性函数就想搞定神经网络那么复杂的东东,怕是骗我的!! 这里不要担心啊,因为事实上只要两层的神经网络(使用了非线性的激活函数)就已经可以表示任意函数,可以适应n多种分类器了
三、举例说明
- 问题假设
我们已经训练好了一个模型,只要输入女生信息就可以判断某同学是否喜欢这个女生
模型输入信息:
(
x 1 x_1 x1相貌评分,
x 2 x_2 x2身材评分,
x 3 x_3 x3性格评分
)
模型输出信息:
(
z 1 z_1 z1喜欢
z 2 z_2 z2不喜欢
)
W W W:通过学习得到的重要参数,在这里可以理解为某同学对于输入女生特征的敏感程度
- 数学抽象解释
最简单的理解方式可以为:
y = W x = w 1 ∗ x 1 + w 2 ∗ x 2 + w 2 ∗ x 2 y=Wx=w_1*x_1+w_2*x_2+w_2*x_2 y=Wx=w1∗x1+w2∗x2+w2∗x2
- w_1:对相貌敏感程度,假设某同学看脸,为0.5
- w_2:对身材敏感程度,假设某同学无所谓,为0.1
- w_3:对性格敏感程度,假设某同学喜欢性格好的,为0.4
假设有一位女同学的信息为{相貌:80分,身材50分,性格:90分},预测某同学是否喜欢她
y = 80 ∗ 0.5 + 50 ∗ 0.1 + 90 ∗ 0.4 = 86 y=80*0.5+50*0.1+90*0.4=86 y=80∗0.5+50∗0.1+90∗0.4=86 那么86分就是某同学给这位女同学的评分
- 神经网络图
假设该模型为两层的神经网络,隐藏层的四个小邪魔即为该同学内心的小九九,该神经网络具有以下特征:
- 灰色线条的权重假设都为0.1
小邪魔1
对相貌
和身材
比较感兴趣,权重分别为0.6和0.3小邪魔2
对性格
比较感兴趣,权重为0.8小邪魔3
对身材
和性格
比较感兴趣,权重分别为0.4和0.4小邪魔4
对身材
比较感兴趣,权重为0.9喜欢
的荷尔蒙对小邪魔1
和小邪魔2
搜集的信息比较信任,权重分别为0.6和0.2不喜欢
的荷尔蒙对小邪魔2
、小邪魔3
和小邪魔4
搜集的信息比较信任,权重分别为0.2、0.3和0.7
- 预测
经过四个小邪魔的计算,得到如下表(基于上文的女同学数据):
邪魔 | y = W x y=Wx y=Wx 得分 | z = σ ( y ) z= \sigma (y) z=σ(y) 得分(使用ReLU) |
---|---|---|
小邪魔1 | 80 ∗ 0.6 + 50 ∗ 0.3 + 90 ∗ 0.1 = 72 80*0.6+50*0.3+90*0.1=72 80∗0.6+50∗0.3+90∗0.1=72 | 72 72 72 |
小邪魔2 | 80 ∗ 0.1 + 50 ∗ 0.1 + 90 ∗ 0.8 = 85 80*0.1+50*0.1+90*0.8=85 80∗0.1+50∗0.1+90∗0.8=85 | 85 85 85 |
小邪魔3 | 80 ∗ 0.1 + 50 ∗ 0.4 + 90 ∗ 0.4 = 64 80*0.1+50*0.4+90*0.4=64 80∗0.1+50∗0.4+90∗0.4=64 | 64 64 64 |
小邪魔4 | 80 ∗ 0.1 + 50 ∗ 0.9 + 90 ∗ 0.1 = 62 80*0.1+50*0.9+90*0.1=62 80∗0.1+50∗0.9+90∗0.1=62 | 62 62 62 |
最后是时候由喜欢
和不喜欢
这两个决策者从小邪魔
们收集的信息里面做决策了,根据两个家伙对四个小邪魔的信任程度,经过计算,得到如下表:
决策者 | $ y=Wx$得分 | z = σ ( y ) z=\sigma (y) z=σ(y)得分 |
---|---|---|
喜欢 | 72 ∗ 0.6 + 85 ∗ 0.2 + 64 ∗ 0.1 + 62 ∗ 0.1 = 72.8 72*0.6+85*0.2+64*0.1+62*0.1=72.8 72∗0.6+85∗0.2+64∗0.1+62∗0.1=72.8 | 72.8 72.8 + 86.8 = 45.61 % \frac{72.8}{72.8+86.8}=45.61\% 72.8+86.872.8=45.61% |
不喜欢 | 72 ∗ 0.1 + 85 ∗ 0.2 + 64 ∗ 0.3 + 62 ∗ 0.7 = 86.8 72*0.1+85*0.2+64*0.3+62*0.7=86.8 72∗0.1+85∗0.2+64∗0.3+62∗0.7=86.8 | 86.8 72.8 + 86.8 = 54.39 % \frac{86.8}{72.8+86.8}=54.39\% 72.8+86.886.8=54.39% |
- 结果
45.61 % < 54.39 % 45.61\%<54.39\% 45.61%<54.39%,所以某同学估计不喜欢这个女同学!
关于计算过程中为何使用Relu本文不做讲解。本文如果有什么错误还望大神指正!