第655章【神经网络深度学习】(2 / 2)

“没错,就这么简单。最复杂的事物往往是有最简单的事物创造的,简单的0和1就塑造了庞大的计算机世界,四种核苷酸就空置了纷繁复杂的生命现象,一个简单的神经元反射就塑造了我们的大脑。”

陈宇停顿了一会儿,再度环视众人:“问题的关键不是基本结构有多简单,而是我们如何使用这个基本结构来构建庞大的世界,神经元之所以神奇是因为它有一个激活机制,即所谓的阈值。”

“神经元的每一个树突不断的接受输入信号,但并不是每一个输入信号都能让轴突输出信号,每一个树突在输入时所占的权重也不一样。”

“比如你追求一个妹子,你孜孜不倦地采取各种行动,今天送了她一束花,明天请她吃大餐,但你发现这些行动都打动不了她。直到有一天伱陪她逛了一天街,她忽然间就被打动了,答应做你女朋友,这说明什么?”

“说明并不是所有的输入权重都是一样的,在妹子那里可能逛街的权重最大,其次是效果的积累并非是一个线性渐进的过程,而是量变引起质变。”

“所有的输入在某一个点之前完全没效果,可一旦达到某个值就突然被激发了,所以,模仿神经元的这种激活特性,那么对刚才的公式做一下改造。”

“每个输入需要一定的权重,在前面加一个调节权重的系数[w],后面加一个常数方便更好地调整阈值,于是这个函数就变成了这个样子。”

方鸿也看向了会议大屏幕,是一个新的数学公式。

【w1x1+w2x2+w3x3+b=y】

陈宇看着屏幕里的公式说:“为了实现激活的过程,对输出值再作进一步的处理,增加一个激活函数,比如当x>1时,输出1;当x<1时,输出0,于是就成了这个样子。”

“不过这个函数看起来不够圆润,不是处处可导,因此不好处理,换成sigmoid函数,这样一个简单的函数就可以处理分类问题了。”

“单个的感知机,其实就是画了一条线,把两种不同的东西分开,单个感知机可以解决线性问题,但是对于线性不可分的问题却无能为力了,那意味着连最简单的异或问题都无法处理。”

异或问题对于在场的所有人包括方鸿都明白,这是计算机的基本运算之一。

这时,陈宇自我反问道:“异或问题处理不了,那岂不是判死刑的节奏?”

陈宇旋即自答:“很简单,直接用核函数升维。感知机之所以能变成现在的深度学习,就是因为它从一层变成了多层,深度学习的深度就是指感知机的层数很多,我们通常把隐藏层超过三层的神经网络就叫深度神经网络,感知机是如何通过加层搞定异或问题的?”

陈宇回头看向屏幕调取下一张幻灯图并说:“计算机有四大基本运算逻辑,与、或、非、异或,这个不用多讲了。如果我们把异或放在一个坐标系来表示就是这样的。”

“原点位置x是0,y是0,于是取0;x=1时,y=0,两者不同取1,通力,这儿也是1,而这个位置x、y都等于1,所以取0,在这张图上如果我们需要吧0和1分开,一条直线是做不到的。”

“怎么办?这就要看异或运算的本质了,数学上来说,异或运算其实一种复合运算,它其实可以通过其它的运算来得到,证明过程太复杂这里就不展开了。”

“如果我们能用感知机先完成括号里的运算,然后再把得出的结果输入到另一个感知机里边进行外面的这层运算,就可以完成疑惑运算了,然后异或问题就这么神奇的解决了,解决问题的同时顺带还解决了线性不可分的问题。”

“这说明什么?说明不管多么复杂的数据,通过加层的方式都可以拟合出合适的曲线将他们分开,而加层就是函数的嵌套,理论上来讲不管多么复杂的问题,我们都可以通过简单的线性函数组合出来,因此,理论上讲,多层的感知机能够成为通用的方法,可以跨领域地解决各类机器学习问题。”

……

(本章完)