楼主: 时光人
1589 3

为什么神经网络不是“黑盒” [推广有奖]

  • 3关注
  • 34粉丝

院士

23%

还不是VIP/贵宾

-

威望
1
论坛币
26907 个
通用积分
428.9260
学术水平
95 点
热心指数
109 点
信用等级
91 点
经验
39960 点
帖子
1629
精华
3
在线时间
579 小时
注册时间
2019-2-25
最后登录
2023-4-26

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

今天开始,我即将给大家详细介绍目前算法领域的当红辣子鸡——神经网络。相信对这个概念,大家都有点熟悉,毕竟“没吃过猪肉,不一定没见过它跑”。话不多说,我们即刻开讲~

01

偏见来源于无知

1779年,英格兰的一个纺织工奈德·卢德在愤怒中砸毁了两台纺织机。彼时英国正值机器革命,愤怒的纺织工人们摧毁了大量的工业设备,英国为此通过了专门的法律规定“毁坏机器”是要判死刑的。“卢德”派们对技术进步的仇视,事实证明是如此荒唐。机器革命带动了社会的进步,最终使得人们的生活更加富余美好,而在当时,对新技术的恐惧却是社会上无法挥去的阴霾。

如今尽管机器学习(ML,Machine Learning)已经在各领域都取得了巨大的成功,却仍然不断有人跳出来质疑其可靠性。比如:金融交易如此复杂哪少得了我们人的判断,医学图像诊断由算法来给岂不是对生命不负责任,智能驾驶怎么可能比人更安全,等等等等。这些卢德派们最常用的说法是“机器学习就是一个黑盒,说不定哪里就出问题了”。

而实际上,如果你本身实践过机器学习,从传统的回归算法、贝叶斯方法,决策树等到人工神经网络(ANN,Artificial Neural Network)都有一定了解,那机器学习(包括ANN)对你来说应该是一个“白盒”,不过就是一组依赖数据,从而进行模式识别的函数而已。但往往偏见来源于无知,人们总是不相信他们无法理解的事物,对此,最好的解药唯有——“教育”。

这里小马抛砖引玉,以最浅显易懂的方式解释一下,人工神经网络的基本原理和构成,希望能消除一些大家对ANN的疑虑,也欢迎大家来沟通交流。

02

人工神经网络能模拟任意函数

现实中问题的解决过程往往都是一个寻找映射关系(或函数)的过程。比如个人信用评分问题:我们便是找 “个人客户信息”和“信用评分”之间的映射关系。实际问题一般都比较复杂,不仅仅只是一个变量x到y的线性关系,个人客户信息就是多维的,且有些信息如学历等是类别标签而非连续变量。为了简化问题,这里我们假设客户信息只有一个变量——存款,我们需要建立的映射关系则是存款与信用评分之间关系,如下图所示:

图1. 客户存款与信用评分的函数关系(假想图)

假设当存款小于某个值时,信用评分为0,存款越多,评分越高,最高为100分。这个函数可以有多种形式的表示,比如最常见的办法用多项式拟合:f(x)= a+bx+cx²+dx³+...,只要项数足够多,用来近似表示一个特定范围的连续方程肯定不在话下。除多项式拟合的方法外,这样一个有上限的函数递增部分也可以用指数函数来表示:f(x)=100-,当x很大时,指数项 接近于0。

若我们实在想要得瑟一下的话,这个简单的函数也可以用万能的神经网络来模拟。神经网络由一个个基本的神经元构成,可以用来模拟任意一个连续函数。其表达函数的理论基础在于万能近似定理(universal approximation theorem):任意连续函数f,都可以用只有一层隐含层(但要有足够多的神经元)的神经网络实现。只要你敢想,没有什么做不到~

如图2所示,该神经网络中间一层即隐含层,隐含层中每一个圈表示一个神经元。

图2 只有一层隐含层的神经网络

图3 受生物神经元启发设计的人工计算神经元

一个基本神经元计算单位由一个线性运算和一个非线形运算连接而成。线形运算 f(x)=wx+b 是对输入信号的缩放(w控制)和偏置(b控制),而非线性运算就像一个阀门,控制信号只在突破阈值后才能向后传递。非线性运算可以有很多种,常见的如sigmoid方程:

这个函数的特点为,信号 z 只在0附近的小范围内近似线形输出,在很小时输出为0,很大时输出限制为1(如图2所示)。综合这两部分,这样一个神经元由两个参数(权重w 和偏置b )控制,对应输入x ,输出为:

其中w 和b 这两个参数控制了输出信号曲线的陡峭程度和对称点位置,如以下动图所示:

图4 神经元参数控制输出曲线形状的演示

现在就让我们来见识一下这个66的神经元如何构造出一个任意的函数(如下图),

图5 一个[0,1]范围内的单变量连续函数

由之前的动图我们知道,w控制神经元输出曲线的陡峭程度,b控制神经元的偏置,所以r=-b/w决定了阶梯的位置:

若将输出曲线近似看为阶梯曲线,令w=1000,现在我们考虑两个这样的神经元(a)、(b)。(a)中的偏移位置r为0.4,w为0.8;(b)中的r为0.6,w为-0.8。通过加权求和,我们可以得到一个台阶状的输出曲线:台阶的起始与终结点位置由两个神经元各自的r参数控制,高度则由加权求和时的权重控制。

图6 神经元构造台阶函数示意。(a)和(b)为参数不同的两个神经元,(c)为两个神经元输出的加权和构造的台阶函数

当得到这样的一个台阶函数之后,任你千奇百怪的函数,都可以由不同位置不同高度的台阶函数拼接得到。如图7所示,我们通过8个神经元构造的函数较好的拟合了原函数的趋势。由此可以推理得出,只要隐层的神经元数目够多,任意的函数形式都可以由神经网络逼近。

当然实际生活中的问题不是这么简单,正如我们前面所说,客户信息不仅仅是一个变量,而是一个向量,有许多的特征变量如存款,学历,年龄等,因而每个神经元的参数也必须是一个向量。虽然特征变量可能是标签,需要做编码操作;输入和输出也不会都是0~1之间的连续变量,需要预先对数据作标准化处理等。但是万变不离其宗,只要一个有一层隐层的神经网络神经元够多,就有足够牛逼的学习能力。

图7 分别为神经网络的函数表达、示意图、以及输出曲线(绿色)

03

没有免费的午餐(No Free Lunch)

图8 YaNN LeCun在1998年设计的LeNet-5网络结构

1998年YannLeCun为了解决手写数字识别模型,设计了包括输入层一共8层的神经网络结构,并且还设计了卷积层、池化层这样的特殊层(不记得的童鞋们回去看一看我们前期的内容~)。

由上一节我们知道一层隐含层的神经网络已经达到任何函数任我逼近的高度了,那为什么还需要设计复杂的深度神经网络呢?这就涉及到一个no free lunch理论。

普适性强的模型需要的参数往往更多,训练所需样本也更多;而独特的模型往往所需参数少,却更难训练。这个其实比较好理解,又要马儿不吃草,又想马儿跑的快,哪有这么便宜的事!所以同样的参数数目下,虽然神经网络模型(多层)会比单层表现会更好,但因梯度传递困难比较难训练。

为了解决训练困难的难题,研究者们提出了通过减少模型参数的思路以让训练更容易,如对输入进行特征工程、对特征内在逻辑建模建立特殊的层、提出新假设建立特殊的网络结构等,具体的训练方式我们之后会再详细介绍。

下面我们来看看这个具体的例子。

图9 同样的参数数目深层模型往往表现更好

图9是2011年一个翻译任务的两种模型的比较,同样的参数数目下,深层的网络明显表现更好。作者在讨论中指出,深层模型中,后一层将前一层的中间输出作为输入,类似于前一层在做模块化(modularization),会使后一层的分类效果变好。简单来说比如我们有个猫狗分类任务,前一层在做“脸是圆的还是长的”、“有没有露出长舌头”之类的模块化工作,后一层由此作为依据,分类会更准确。

可以看到,早期的人工神经网络其实是很好理解的,随后出现的CNN、RNN等其他网络结构等也都是由设计者按预想构建出来的。作为设计者和工程师,这样的神经网络是优美、高效、透明的方法,完全没有“黑盒”一说。但若不深入理解,对神经网络进行种种想当然地调整,创造出各种奇形怪状的网络结构,并移植到各种任务上,把它当作“黑盒”来使,就如不得宗门心法,光学招式(就像那谁谁谁)。虽然得益于强大的算力支持,经常还能得到不错的结果,但这毕竟不是长久之计,理论上的匮乏会导致研究上的盲目和误入歧途,同时在生产中还会造成种种不可预估的风险。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝


回帖推荐

godman168 发表于4楼  查看完整内容

主要是看了解程度,不了解就会说黑盒,了解了当然不是。 不过自动驾驶方面目前有很多忽悠人的,根本就不成熟。 的确会出现1秒后就突然出事的情况,这个和训练方法有关,具体了解后就明白原因了。 另一方面,事实也发生不少这样的案例了。
沙发
gudure 学生认证  发表于 2019-11-11 18:15:18 |只看作者 |坛友微信交流群

使用道具

藤椅
sysfri 发表于 2019-11-11 22:29:29 |只看作者 |坛友微信交流群

使用道具

板凳
godman168 发表于 2020-2-14 14:56:58 |只看作者 |坛友微信交流群
主要是看了解程度,不了解就会说黑盒,了解了当然不是。

不过自动驾驶方面目前有很多忽悠人的,根本就不成熟。
的确会出现1秒后就突然出事的情况,这个和训练方法有关,具体了解后就明白原因了。
另一方面,事实也发生不少这样的案例了。

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加JingGuanBbs
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-25 12:48