平面摄影技术研习社

【陈巍翻译】视频:神经网络与深度学习

陈巍学基因 2018-06-12 17:59:03




字幕内容


那个,(标题:深度学习解惑)。

 

如果你还站在那儿,这里有许多座位,请坐到这里来。

 

这个下午,我们会谈“深度学习”。如果你已经知道了什么是深度学习,(今天下午的课)你会感到无趣的。所以,趁次机会,你可以问难的问题,那些我(下午课程中)没有覆盖的问题。如果你对它(深度学习)还一无所知,这节课就是为你准备的。

 

你在读网上文章时,都可以把“魔术”和“深度学习”这两个词相互替代。这两个词相互替代的结果都很好(神经网络、深度学习是一个意思)。很难说,还有什么它(深度学习)不能做的事情。

 

废话不多说。

 

在开始之前,这个讲座是讲非常简单的基础的(关于深度学习的)内容。现在,我们开始。

 

总之,可以从一个猫头鹰开始。深度学习不是魔术,但是,它在发现模式上,真的很好用。如果,这个(猫头鹰)是我们的大脑,那么,这个(喷气式战斗机)就是深度学习。一个猫头鹰可以飞,一个喷气式战斗机也可飞。但是,有一大堆的事情,被你认为是非常复杂的事情,猫头鹰可以做到;这些事情,让喷气式战斗机来做,会做得真的非常非常好。所以,深度学习是喷气式战斗机,非常专用的、高度工程化的(战斗机)。

 

今天,我们会谈(深度学习的)基础内容。这是怀特兄弟的飞机,如果你理解飞机工作的原理,那你可以很容易地延伸理解最终的工程细节。但是,对于(真的)喷气式战斗机,有许多细节我们不能谈。但,这样挺好,我们可以在一个舒服的水平上进行讨论。

 

这是神经元,就象一个蚂蚁,中间是一个大的身体,长的尾巴,和一些手臂伸出去。这是艺术家概念中的神经网络,一大堆的神经元,同样,大的身体,长的尾巴,(多根)手臂。这是真的脑组织中的神经元的图片,这里,(神经元)的身体看起来就象一个点,或者一个块状物。你看到长的尾巴上有一些分技,手臂几乎看不见。

 

这是另一张脑组织的图片。这里,神经元是一些小点,你几乎完全看不到任何的细节。这张图是为了让你有一个感觉:这些东西挤得有那么紧,数量有那么多。这个数量,就是一个跟着许多个“0”的大数字。最狂疯的部分是,它们中的一大部分是与它们的邻居相连接的。

 

这是我们(人类画的)的第一张神经元的图片。Santiago Ramon y Cajal发现可以向细胞中注入染料。在他的19世纪的显微镜下,把整个细胞变黑(显色)。(有了染色方法),就可看见它们,并用笔和纸把它们画下来。这就是老的学校的(记录)

 

当你看的时候,可以看到:身体、长尾巴、许多手臂。我们把这张图上下颠倒一下,因为这样,它就典型地显示了神经网络。

 

这张图有名称。身体被称为“soma”(细胞体),长尾巴被称为“轴突”(axon),手臂被称为“树突”(dendrite)。

 

然后,我们画一个神经元的卡通图。这就是我们在PPT中看到的它们(神经元)的样子。

 

现在,神经元工作的方式。一个树突,你可将之想象成一个触手,或者一根胡须。它们寻找电活动(信号),并接受电活动(信号),将之传给细胞体。在这(传输电活动信号)发生之后,把它们(电话动信号)合并、加总。根据电活动信号积累有多快,它会激活轴突,然后把电活动信号,延着尾巴(轴突)进行传输。有更多的树突被激活,就有更多的轴突被激活。你让所有的树突都激活,那么轴突也会被最大可能地激活。

 

神经元就以这样非常简单的方式,把东西(电活动信号)加总起来。

 

现在,一个突触,就是一个神经元的轴突,接触到下一个神经元树突的地方。这是艺术家的对突触的概念。你可以在Ramon yCajal 的画中看到它(突触)。它是一个小的节,一个钮,被称为突触上的树瘤。

 

这(突触)就是另一个神经元的轴突接触到(这个神经元)的地方。你可以想象,那里(突触)有小的接触点。我们在这里有圆圈来表示接触点。圆圈的直径就是接触点的强度,大的圆圈表示强的接触点。它们(神经元)之间可以有强接触,也可以有弱接触,或者介于中间的接触。

 

我们可以用一个介于0和1之间数字来表示(接触的强度)。这样,一个中等的强度,被称为0.6。当输入神经元的轴突,也就是上游神经元是激活的时候。然后,它就激活输出神经元的树突,传递一个中等强度的(信号);如果那个连接是强的,它就会传递一个强的(信号),连接(强度)是1,轴突是激活的,下一个神经元的树突是高度活化的;同样,如果那个连接是很弱的,比如说是0.2,那么,当轴突是活化的时候,输出神经元只是被轻微地活化;完全没有连接的话,就是0。

 

现在,越来越有趣了。因为,许多不同的输入神经元可以连接到一个输出神经元的树突上,并且,每一个连接有它自己的强度。

 

我们可以重新画一下这个图,去掉所有的平行树突(不相关的),只画出每个有连接的轴突、树突,和连接的强度。象这样,用点来表示。我们可以替代(圆圈),用数字来表示(连接的)权重,大多数都这样(用数字来表示权重)。

 

哦,我们可以替换成用线的粗细来表示连接的强度。

 

大多数的时候,神经元网络是画成这样的,这就是我们得到的(图)。

 

我们从超级复杂的脑组织切片开始,通过对其中内部连接许多精巧的操作,得到一个很好的圆圈、连线组成的图。其中,每一条线,都代表了一个权重。

 

现在这个样子,它就可以做相当酷的工作了。输入神经元连接到许多输出神经元。事实上,你看这里,有许多的输入,还有许多的输出。每一个连接都是独特的,它有它自己的权重。

 

这张漂亮的图,也同时表示了组合。

 

它工作的方法,让我们来看,有5个输入。(这5个输入)被分别标记为:A、B、C、D、E。在这种情况下,输出神经元与A、C、E有强的连接,而与B、D只有弱的连接。这就意味着,当A、C、E输入神经元都活化时,它们合在一起,就会强力激活输出神经元。B、D(神经元)是无所谓的,因为它们(与输出神经元)的连接很弱。

 

所以,思考这个输出神经元的方式,实际也就是看那些能够强力活化输出神经元的输入神经元。所以,我们也可以称之(输出神经元)为A、C、E神经元。这样,我们就有了一个原子级别的样本来看到底在这里发生了什么。

 

这个输出神经元,代表了输入神经元的组合。这个神经元网络是一个简化的例子(让我们可以解剖麻雀)。你可以用任何输入来处理这个(神经元网络)。

 

例如,我们用一个很低科技的、4个像素的照相机(来举例)。每个神经元对应4个像素中的各1个像素,左上、左下、右上、右下。

 

在这个特定的神经元网络中,(输出神经元)与左上、右上神经元有强连接。我们就有了一个代表在图形上方有一条棒子的这样一个神经元。

 

这样,我们可以组合字母,我们也可以组合像素组成小的图像。如果你做文字处理,输入神经元可以表示单个的单词。

 

在这种情况下,我们从文本中抽出单词。这个神元与词语“眼”和“球”有强连接,我们就称之为“眼球”神经元;相似地,我们可以有“太阳镜”神经元。

 

一个输入神经元可以组合进许多出神出中去。我们可以看到“眼镜”神经元。

 

这样,我们再略深入进去一步。

 

这是一个小例子,来说明这些东西在实践中是如何工作的。这是一个在shawarma(工作的)人,没有其它人在shawarma(工作)。所以,你想要确定在他工作的时间你可以去他那里。

 

后退一步,我们有一些基本的认识,我们知道他有2种时间安排:

(一种是)上午工作,下午休息;

(另一种是)上午休息,下午工作。

 

现在,我们要设一个传感器装置(来探测他的上班状态)。你会得到“上午工作、上午休息、下午工作、下午休息“(这4种输入神经元)。可以很有用地用2种输出神元,来表示他的工作模式。它(输出神经元)把这些(工作状态)组合起来。

 

所以,这个网络,你最终得到的结果(会是):

 “上午工作,下午休息”,这是一种模式;

 “上午休息,下午工作”,这是另一种模式。

 

并且,你能够看到,基于连接强度,它们(神经网络)如何组合这些输入。这里,是与那些(输入)相关的权重。

 

现在,问题是我们如何进行学习之(模式)?如果要我们手工输入(各项权重),那么,我们没有在这个程序中发现任何让人感兴趣之处,太多的艰苦工作了,尤其是当你要输入几百万个神经元的权重时,太痛苦了。

 

所以,我们需要它(程序、算法)自动学习。所以,它以与我们的直觉有点不同的方式开始(工作)。我们先建立网络,我们(在神经网络上)放上神经元,所有需要我们做的,只是设定输出神经元的数量。如果选择2(个输出神经元),我们可能会学到2种模式。

 

然后,我们随机设定权重,它就会随机产生数字,赋值(给网络中的各个连接)。它就是一个神经网络了。它(起始赋值过程)完全是扔色子,你只要押筹码就好了。无论(色子扔出)什么结果,(最终结果)只与你的起始值相关。

 

(然后)开始合并数据。我们站在街的另一边(Shawarma在街的这一边),我们在一个特定的日子里,观察Shawarma店员(的工作、休息状态)。上午工作,然后下午不工作。那意味着这个(上午工作的)输入(神经元)是活化的,我们称之为水平1;上午休息(的神经元)就是在水平0,我们没有观察到(店员在上午休息);上午工作(神经元)在0水平,并且下午休息(神经元)在水平1,因为我们观察到了这种状态。

 

这样,对于每一个输出神经元,下一步,我们就是要计算活化程度。

 

在这个事情中,一个正确而简单的办法是算输入(强度)的平均值。这里,权重是0.3,还有这里权重是0.1,平均值是0.2。这些神经元没有贡献任何东西,因为这些输入(神经元的连接)没有活化过。相似地,我们可以取这个输出(神经元)和那个输出(神经元)之间的连接权重,0.8和0.4,平均是0.6。

 

右边的输出神经元的输出活性很高。我们来关注它的权重。我们先不管别的(神经元、连接),还有几百万个其它的(神经元、连接),我们都先不管那些。集中关注这个神经元,和与之相关的连接。

 

第一步,我们找出它有多大的差错。如果(各项权重)是完美的话,它的活性应该是1,它应该与输入完美地保持一致。但是,它现在的活性是0.6,所以误差就是0.4。误差的大小,对我们来说就是要在多大程度上调整权重的信号。而当误差很小的时候,就说明权重已经很好地说明了真实的情况。我们也就不需要做太多的改变了。

 

现在,就是最有技巧的地方了:梯度递减。如果深度学习中有什么魔术的话,那就是“梯度递减”。要做的,就是从头到底,调整这其中的每一个权重。

 

从头到底,你向上调整一点(权重),或向下调整一点(权重),看那个方向会减少误差。梯度递减的概念,就是找出你可以向上移、或向下移的权重的数量。当你做(调整权重)的时候,误差(的大小)会改变。想一下,拿着这个球,当你把它向左移的时候,它会延着山壁升一点;当你把它向右移一点的时候,它会延着山,向下滑一点。

 

你喜欢这个方向,你选择这个能让它(误差)减少的方向,你然后把误差尽量调小。你取小的递进步骤,以保持所有的东西在数量上的稳定。

 

这样,我们从头到底调整一遍。我们对所有的神经元,对不起,应该是所有权重都调一遍。我们用算法,连到所有的输入神经元,都算一下权重。

 

我们发现,对的,我们要增加这个(权重)。因为这些(神经元)没有活化,我们事实上对这些神经元的权重是有偏差的。所以,降低这个(权重)不会有伤害。同样,减少那个权重;减少那个权重;增加那个权重。

 

当我们做那些(调整)的时候,很确信,我们的新的(输出神经元的)活性是0.7,误差从0.4减到了0.3。正如我们所看到的,它的代表性好了一点。这是一个数据点(的改进)。

 

我们再回来,我们第二天做同样的事情,就如同今天一样,他上午休息,下午工作,我们调整权重。我们做了一天又一天的调查(店员上班时间),做了许多天。最终,权重不再改变,或者它(权重的改变)会慢下来。它会达到一种稳定的状态,我们得到了我们最初知道的这个系统的(各项)权重,就象我们一开始就知道的这个问题的答案那样。

 

所以,这就象怀特兄弟飞机的各个版本。就象是用梯度递减的方法,来做反向传播,(是一样的道理)。用越来越便宜、越来越快的计算,来做反向传播,是一种很特别的方法。你从扑翼飞行开始为基础,升级到喷气式引擎。

 

这就是它(神经网络深度学习)的基础机制原理。刚才我们看的只是一层,我们有输入层、有输出层。每一个输出(神经元)都是运行在几个前一层(神经元)上的组合

 

有理由,让我们倒过来,拿掉输出层,在中间插入一层,并且不断插入中间层。

 

如果有3层,或更多层,我们称之为“深度”(神经网络)。有些(神经网络)有超过12层的。微软的有些研究中的(神经网络)有超过1千多层。理论上,没有理由限制你的(神经网络)的层数,只要对你的特定的问题合适就好。

 

现在,你能从深度(学习、网络)中得到什么?为什么深度(学习)特别?如果你的输入神经元是字母,你的第一层的输出,抱歉,这是一个深度神经网络,有清楚的各个连接(图中没有画连线,讲者用语言补充说明)。

 

这些是输入(神经元),这是你的第一层的输出,它们是那些字母的组合。每上升一层,你会得到前一层的(输出内容的)组合,所以,到第二层输出时,你可能会得到你用以进行训练的英语单词。再上一层,你会得到单词的组合,短语。这样,一直进行下去。你可以想多深,就多深。

 

你可以用深度网络学习许多不同的东西。

 

最常见的东西,就是图片。假设你输入的是像素,展示一下。不看Shawamar店员的日程安排,而是用个人的图片,来作为训练数据集。你刚开始学一会儿之后,表现出的是短线、点、边,这是最初的图像。如果你是用人脸图片来做训练,那么你的第一层的输出,抱歉,第二层的输出,看起来象:眼、鼻、嘴、下巴。并且,你的第三层的输出,开始看起来象可以清楚识别的人脸了。

 

相似地,如果你用汽车(图片)来训练,你的第二层输出,会相轮子、车门、车窗。你的第三层的输出,会看起来象汽车。

 

那是非常酷的,我们无需输入任何的权重,只要(神经网络)看见了一堆的图片,就可以学习。

 

你也可以用彩色图像的神经元,这是8层神经网络的输出。你达到越深的层次,你可以越清楚地看到复杂的东西。那是蜘蛛、摇椅、帆船、泰迪熊。

 

你可以输入音乐家的信息。这是神经元研究之后,得出的一些输出。基于关于艺术家的信息,然后,表现出来的,就是根据那些神元有多少相似性进行的分组合并。我们就看到,Kelly Carson和Beyonce是相似的(抱歉,译者不知道这些音乐家的名字,根据听到的音,猜的名字),他们离Comep Swib和Avol Bee不远。我们看到很明显,wizer, clappy, modest mouse,美国总统,相互靠近。

 

这是一个什么都不知道的网络。到现在依然不懂任何音乐的网络。但是,因为有了一些输入神经元,它(神经网络)能够把这些东西正确地分组。

 

发现模式,然后发现与这些模式最相适应的东西。然后,你可以拿Atari 2600游戏(一款图形化的通关游戏),把像素(内容)喂给输入神经元,(让它)学习有趣的特点,用一种叫加强学习的东西与之并行运算,它会学习正确的动作。当你(指神经网络)学习这个游戏时,对于这一类的游戏,你(指神经网络)可以做得比任何过去的、未来的人类玩家做得都更好。

 

这个结果就是,你可以让一个机器人,让它看youtube上关于做菜的视频。它用2个深度神经网络,一个解读视频,另一个理解它自己的行动。并且,用那种平行的执行软件,基于看到的视频,去做菜。

 

所以,尽管它并不是魔术(神秘),但它非常酷。

 

所以,当你通读这些文章时,读这些大家很喜欢的文章,你可能会正好看到这些流行的词,流行的算法。你能想到许多。如你所知,有许多型号的、不同版本的喷气式战斗机。但是,当你看到这其中的任何一个术语,如果你喜欢,你脑子里可以用“深度学习”来代替(这些词)。用你知道的,关于怀特兄弟飞机的事,应用到这上面,它依然会是准确的。

 

从根上说,它在学习模式方面,做得很好。它没有做任何事,但它就是在学习模式方面,特别好。

 

如果你对这些幻灯片感兴趣,请在Linkedin上加我的联系方式。我会很快把它们贴出来,会有视频和幻灯片的链接。

 

当然,你有任何的问题,请联系我。

 

谢谢大家来听讲!


友情链接