By 超神经
关于 Machine learning 机器学习,各位老司机应该不陌生。在众多关于机器学习概念的解释中,Google 首席决策情报工程师 Cassie Kozyrkov 称其为「事物贴标机」,真是一个有趣的理解。
机器学习本质上是一个事物贴标机
除了是 Google 的首席决策情报工程师,美腻的 Cassie Kozyrkov 小姐姐也是一名统计学家和神经科学家。
她对机器学习的认知跟一般主流观点不同,她认为机器学习可能并没有专家口中所说的那么神奇,也不是吸引 300 亿美元风投资金流向 AI 领域的主要原因,更没有 Hacker News 或知乎上说的那么深奥。
在小姐姐 Cassie Kozyrkov 看来,以上都是对机器学习的书面解释,在实际应用场景中,机器学习本质上就是一个「事物贴标机」。通过记录下你的描述,并为其打上对应的标签,来指引计算机的下一步动作。
相比科幻,机器学习更注重实用性
机器学习是 AI 的一个子集,也是实现 AI 的关键技术之一,目前市面上大部分 AI 产品基本上都依赖于机器学习,以至于很多人会把这两个概念等同看待。
关于 AI 科幻想象也不自觉的转移到机器学习身上。比如《钢铁侠》里钢铁侠的 AI 助理 Jarvis,总能瞬间定位某个冷僻国家不知名街道上的罪犯。而实际上,机器学习很难实现科幻片里面的场景,就连当前的 AI 也不能实现。
目前来看,不论是 AI,还是机器学习,它们被广泛使用的地方就是提高计算机工作效率,扩大应用场景。它们能用来处理庞大的数据工程,解决一些程序性工作,跟科幻片比起来,更加注重实用性。
举个栗子
下面是一张猫的图片,人脑通过各种感官和经验可以很容易识别出来,但这对一台计算机而言却要经历大量的「心理活动」。
给定计算机一项任务:将照片分类(或称为标记)为 cat/not-cat?机器学习系统和传统编程方式将给你两种不同的操作体验。
在传统的编程方法中,人类程序员会认真思考像素和标签,与他人沟通、激发灵感、最后手动制作模型。
模型是指一组指令,计算机必须执行这些指令才能将像素数据转换为标签,供计算机识别。这些指令只是计算机用来将输入转换为输出的一些代码,可以由程序员手工编写,也可以通过算法从数据中得到。
再举个复杂一些的栗子
如何用代码来形容这张图中所包含的每一个像素块呢?
这对人脑而言难度很大,人脑可以识别出这张照片,却很难将照片中的像素块代码化。因此,人脑对计算机下达识别该照片的指令,不仅工作量大,而且非常复杂,也不具备实用性。
所以,传统编程法很难在图像识别领域应用。
但机器学习可以很好的解决这个问题,它是一种完全不同的编程范式,它可以通过类似于归类的手法来进行编程,不需要明确的指令。官方解释为:在数据中找到固定模式,并将其转化为指令。
还是以上图为例,机器学习会综合所有相关数据,总结出一堆「not cat」的例子,以及一堆「cat」的例子,然后再根据相关特征重新归类,直到确定「cat/not cat」。
机器学习可以将很多不可言喻的东西,用计算机语言表达出来。这就意味着我们不用给出具体指令,计算机就能得到我们想要的结果。
这也是 AI 和机器学习被创造出来的主要目的,在不需要指令的情况下解释人类意图。
这样的转变让计算机变得越来越智能,可以解决很多只有人脑才能解决的问题,这是人类技术一次质的飞跃,也是计算机科学叩响新大门的标志。