十年之前模式识别,从图片中找到一只猫。猫长得什么样,人脸识别图像识别
机器学习的发展可以理解为神经网络从根据规则识别到没有规则识别。
哪么如何进行没有规则识别呢?
大脑的识别能力,不是靠临时弄一些规则临时编程。大脑的每一个功能都是专门的神经网络长出来的,那计算机能不能效法大脑呢?
谢诺夫斯基说,大脑已经给计算机科学家提供了四个暗示。
第一个暗示:大脑是一个强大的模式识别器。人脑非常善于在一个混乱的场景之中识别出你想要的那个东西。比如你能从满大街的人中,一眼就认出你熟悉的人。
第二个暗示:大脑的识别功能可以通过训练提高。
第三个暗示:大脑不管是练习还是使用识别能力,都不是按照各种逻辑和规则进行的。我们识别一个人脸,并不是跟一些抽象的规则进行比对。我们不是通过测量这个人两眼之间的距离来识别这个人。我们一眼看过去,就知道他是谁了。
第四个暗示:大脑是由神经元组成的。
以上这四点就是神经网络要做的事情
什么是深度学习?
我们来看一下最简单的代表神经网络的图
左边第一层代表着输入层,第二层为隐藏层,第三层为输出层。数据输入进来经过隐藏层各个神经元的一番处理,再把信号传递给输出层,输出神经元再进行处理,做最后的判断
刚才我们提到了神经元,那神经元是什么东西呢?
下面这张图是一个判断信号灯要不要前进的神经元
这个神经元的输入就是红灯、黄灯和绿灯这三个灯哪个亮了。我们用1表示亮,0表示不亮,那么按照顺序,“1,0,0” 这一组输入数字,就代表红灯亮,黄灯和绿灯不亮。
神经元的内部参数包括“权重(weight)”,它对每个输入值都给一个权重,比如图中给红灯的权重是 -1,黄灯的权重是 0,给绿灯的权重是 1。另外,它还有一个参数叫“偏移(bias)”,图中偏移值是 -0.5。
神经元做的计算,就是把输入的三个数字分别乘以各自的权重,相加,然后再加上偏移值。比如现在是红灯,那么输入的三个数值就是1、0、0,权重是 -1、0、1,所以计算结果就是:
1×(-1) + 0×0 + 0×1 - 0.5 = -1.5。
输出是做判断,判断标准是如果计算结果大于 0 就输出“前进”命令,小于 0 就输出“停止”命令。现在计算结果小于0,所以神经元就输出“停止”。