第二期 steam互动视频《一个人工智能的诞生》测评and学习
人工智能,深度学习,机器识别……说起来很简单,听起来很厉害,但,它们到底是什么?与其简单地观看视频,不如亲自上手操作。调整参数,改变视角,实时演示,只需要一点高中数学知识,你就能亲眼见证 —— 一个人工智能的诞生。
哈喽,我是阿焰,这是steam游戏《一个人工智能的诞生》第二期测评。在上一期中,我们感受了机器学习的基本训练过程,那么这一期就给大家揭示训练过程背后所遵守的那个神秘的规则,有了这个规则,机器就能在一次次尝试中往正确的方向前进。所谓一切神秘源于未知,当你理解了这一期的内容之后,神秘不再神秘,新的大门为你敞开。
那么,大幕拉开,‘演出’开始。
第二章 分类鳄鱼与蛇
人工智能:我太想进步了!
在本章当中,演示的例子就是下面这幅图,我们要将代表鳄鱼的点(圆形)和代表蛇的点(三角形)分开,纵坐标是动物的体重,横坐标是身体长度,而分割线就如图中坐标系右侧的方程所表示,很明显是一个简单的线性函数,只需要慢慢调整好分割线的斜率,再一个平移就解决了。可是,计算机该如何解决这个问题呢?
聪明的人类自然联想到了自己,小时候我们都看到过那些从动物身上学习的故事,例如从蝙蝠身上学习了声纳探测,那么我们要让机器像人一样思考,自然少不了研究我们人类本身是如何产生智能的,其中的关键就是我们的大脑神经元。大脑神经元分为树突和轴突,树突接收信号,轴突发送信号,一个神经元有多个树突输入,一个轴突输出,其次信号分为兴奋和抑制两种(是不是已经想到了1和0?),而只有树突输入的信号满足一定条件时,神经元才会激活,通过轴突发出兴奋信号,否则发出抑制信号。
所以人们就把神经元结构给直接搬到了程序中,希望这种结构能帮助机器像人一样解决问题。下面是一个简化的神经元,有四个输入和对应的权重,以及一个常数b,当输入的加权和大于等于b时,输出就为1,否则为0。
好啦,背景聊的够久了,让我们再回到一开始的问题,区分鳄鱼与蛇。简单起见,我们构造一个2输入的神经元模型,分别输入动物的体重和身长两个参数,搭配上权重和常数b,我们可以惊奇的发现机器可以通过简单的计算就把动物分为两类,一类是体重身长的加权和大于b的,一类是小于b的。那么聪明的你一定就想到,只要机器能把参数调到合适的值,就可以用这个神经元区分所有的鳄鱼和蛇。就这样,我们把一个困难的抽象判断问题通过一个神经元模型,转化为了机器擅长的代数问题。
具体的模型也有了,终于到了揭晓谜底的时候,在这个例子中,机器自动调整权重的神秘规则就是——Δwi = (Y - y)* xi ,这个式子代表的含义且听我道来:每一次迭代后权重wi都会加上Δwi,相当于对权重修改的操作,而等号右边的是修改的规则。首先是(Y - y),这代表着在这次迭代中机器的判断是否正确,该项等于0时,代表判断正确,权重不需要调整;该项等于1时,代表神经元结构中的加权和偏小,因此要增加,xi*Δwi符号为正,该项等于-1时,代表加权和偏大,需要减小,因此xi*Δwi符号为负。然后是xi,这代表着Δwi修正的幅度,xi越大的节点影响力越强,因此乘上xi可以加快迭代的速度。
恭喜你,如果你理解了以上内容,那么你成功掌握了机器学习中最为经典的结构——感知器(Perceptron),这是神经网络中最小的结构,你也可以理解成单个的神经元。如果没有理解也没有关系,可以试着玩一玩这个游戏。在你亲自动手操作时,或许能够有不一样的收获。
当然这个简单又神奇的感知器模型仍然有它的缺陷,例如它永远无法解决下面的这个问题。而这部分内容,当然要放到下一期再讲啦(叉腰)。
相逢有缘,见字如面,如果再也不能见到你,那么祝你早安 午安 还有晚安 (。•̀ᴗ-)✧