
上周六晚上,我和老婆躺在沙发上刷手机。她突然把手机怼到我脸前,问我:"你看这个推荐,淘宝怎么知道我想买这条裙子的?我就跟闺蜜聊天提了一嘴,它就给我推了。"
我随口说了句:"这不就是机器学习嘛,算法猜你喜欢什么。"
话音刚落,她手机一放,整个人转过来盯着我:"机器学习?机器怎么学习?它又没有脑子。你给我讲讲,讲明白了我给你做夜宵。"
我心想,这夜宵不拿白不拿。但是怎么讲呢?我要是扯什么"通过数据训练模型优化参数",她肯定翻个白眼就走了。
想了想,我说:"这样吧,你还记得咱们邻居家那个小孩乐乐吧?我用他举个例子。"
"你想啊,乐乐刚两岁的时候,他妈带他来咱家玩,看见咱家的布偶猫,他指着喊'狗狗'。他妈赶紧纠正他,'不对不对,这是猫猫'。"
老婆点点头:"对,我记得这事儿,当时还挺逗的。"
"后来呢,他又在小区里看见一只橘猫,他妈告诉他,'这也是猫猫'。过了几天,又看见一只黑猫,他妈又说,'这还是猫猫'。你发现没有,这个过程其实就是在'训练'乐乐。"
老婆有点懵:"训练?"
"对,你看哈,乐乐的小脑袋瓜里,一开始根本分不清什么是猫什么是狗。但是呢,每次看见一只动物,他妈都会告诉他'这是猫'或者'这是狗'。看得多了,他自己就慢慢琢磨出规律来了——哦,尖耳朵、胡须长长的、叫起来'喵喵'的,这是猫;耳朵耷拉着、鼻子湿湿的、摇尾巴特别欢的,这是狗。"
"虽然他可能说不清楚这些规律具体是什么,但是他的脑子里已经形成了一种'感觉'。下次再看见一只新的动物,他能一眼认出来。"
老婆若有所思:"那机器学习就是让机器也这么干?"
"没错,你太聪明了!"我赶紧拍马屁,"机器学习,说白了就是让计算机像小孩一样,通过看大量的例子,自己找规律,然后做判断。"

老婆追问:"可是小孩有眼睛有脑子,机器就是一堆电线和芯片,它怎么看例子?"
"这个问题问得好。"我坐直了身子,"机器确实没有眼睛,但是我们可以把图片'喂'给它。你想象一下,我们找来一万张猫的照片,一万张狗的照片,然后告诉机器,'喏,这边这一万张都是猫,那边那一万张都是狗,你自己研究研究'。"
"机器就开始分析了。它会发现,猫的照片里有一些共同的特点:比如眼睛的形状、耳朵的角度、脸的轮廓、身体的比例……这些特点在狗的照片里不太一样。"
老婆皱了皱眉:"可是也有很像的啊,比如那种很小的狗,长得也挺像猫的。"
"这就是关键了!"我说得有点激动,"机器刚开始学的时候,确实会搞错。就像乐乐小时候把咱家猫认成狗一样。但是没关系,我们会告诉机器'你错了,这是猫不是狗',机器就会调整自己的'判断标准'。"
"错的多了,改的也多了,慢慢地,机器就越来越准了。这个过程有个专业名词叫'训练',但其实就跟咱们教小孩一个道理。"
老婆恍然大悟:"哦——所以机器学习就是让机器不停地做题、不停地改错,最后变成学霸?"
我笑了:"你这个比喻太妙了,差不多就是这意思。"
老婆又把话题绕回来了:"道理我好像懂了,但你还没解释淘宝怎么知道我想买那条裙子呢。"
"这就要说到机器学习的'本事'了。"我拿过她手机,"你看哈,你平时在淘宝上搜过什么、点进去看过什么、收藏过什么、买过什么,这些记录淘宝全都存着呢。"
"而且不光是你一个人的,它存了几亿用户的数据。然后它就开始找规律了——'哎,这类用户一般买了A,接下来会对B感兴趣'、'那类用户收藏了这个颜色,可能也喜欢那个款式'。"
老婆接话:"所以它是根据我以前的喜好,猜我现在想要什么?"
"对!而且它不光看你一个人。它会找跟你'很像'的其他用户,看看她们买了什么,然后推荐给你。比如有一群女生,年龄跟你差不多,平时也买差不多风格的衣服,最近她们都在买一款裙子,淘宝就猜你可能也喜欢。"
"这种'从数据里找规律、然后做预测'的能力,就是机器学习的核心。"
老婆听完沉默了一会儿,然后幽幽地说:"所以我在淘宝面前根本没有秘密?"
我乐了:"也不是秘密不秘密的问题,反正它就是比你还了解你。"

讲到这儿,我觉得得给老婆讲一个最关键的点。
"你知道机器学习跟以前的电脑程序最大的区别是什么吗?"
老婆摇头。
"以前的程序,都是程序员告诉电脑'你要这么做、那么做'。比如计算器,程序员写好了'1+1等于2'这种规则,电脑就按规则算。电脑只是一个执行命令的工具。"
"但是机器学习不一样。程序员不告诉它具体规则,而是告诉它'你自己从这些数据里找规律'。"
我举了个例子:"就好比,以前教乐乐认猫,是直接告诉他'猫有尖耳朵、有胡须、会喵喵叫',让他死记硬背。但机器学习的方式是,不告诉他这些规则,而是给他看一千张猫的照片,让他自己慢慢悟出来什么是猫。"
老婆点点头:"懂了,一个是填鸭式教育,一个是启发式教育?"
我竖起大拇指:"你太有悟性了!这就是'数据驱动'的意思。不是人告诉机器规则是什么,而是让机器从数据中自己发现规则。"
"这有一个巨大的好处——有些规则太复杂了,人根本总结不出来。"
老婆问:"比如呢?"
"比如人脸识别。你想想看,人的脸有多少种?高的矮的胖的瘦的、戴眼镜不戴眼镜、化妆没化妆、还有灯光角度表情都不一样……如果让程序员写规则,写到明年也写不完。"
"但是机器学习就简单多了——给它看几百万张人脸,告诉它'这是张三、这是李四',它自己就能学会认人了。具体它是怎么认的,说实话,有时候连程序员自己都说不太清楚。"
老婆被最后这句话惊到了:"啊?自己写的程序,自己不知道它怎么干的?"
我摊手:"对啊,这也是机器学习的神奇之处,也是让很多人担心的地方。它有点像个'黑盒子'。"
"还有一个关键点我得给你说说。"我继续解释,"机器学习有个特点,就是看得越多、学得越好。"
老婆说:"这不废话吗,小孩学东西也是这样啊。"
"对,但机器的'吞数据'能力比人强太多了。人一天能看多少张猫的照片?几百张顶天了吧。机器一秒钟能看几万张。而且它不会累、不会烦、不会走神、不会打瞌睡。"
"你想想看,如果让乐乐看一百万张猫的照片,他早疯了。但机器无所谓,给多少看多少。所以机器'从经验中学习'的效率,比人高出不知道多少倍。"
老婆突然想到什么:"那是不是数据越多,机器就越厉害?"
"一般来说是这样的。"我点头,"这也是为什么那些大公司拼命收集用户数据的原因。数据就是机器学习的'燃料',有了燃料,机器才能'跑起来'。"
"所以淘宝、抖音、微信这些APP,为什么要记录你的一举一动?因为你的数据对它们来说太值钱了。它们用这些数据训练机器,让机器更懂你,然后给你推荐你更可能点击、更可能购买的东西。"
老婆听完叹了口气:"难怪我总觉得抖音给我推的视频越来越对我胃口,刷着刷着一晚上就没了。原来是这机器太'懂'我了。"
"对啊,它在不停地学习你的喜好。你点赞的、看完的、反复看的,它都记着呢。然后它就越来越知道该给你推什么。"

说到这儿,我觉得应该让老婆再感受感受机器学习到底有多普遍。
"你知道吗,其实你每天都在享受机器学习的服务,只是你不知道而已。"
老婆来了兴趣:"还有哪些?"
我掰着手指头数:"手机相册能自动识别谁是你爸谁是你妈,按人物分类——这是机器学习。你用输入法打字,它越来越知道你的习惯用语——这也是机器学习。"
"还有,你用高德地图导航,它告诉你哪条路堵、走哪条路更快——这背后也是机器学习,它分析了无数用户的出行数据,预测交通状况。"
"还有你看的那些短视频,每个人刷到的内容都不一样,就是因为机器在根据每个人的喜好,个性化地推荐。"
老婆越听眼睛越大:"这么多?"
"对啊,而且还有更厉害的。你去医院拍CT、拍片子,有些医院已经用机器学习来帮医生看片子了。机器看过无数张病人的片子,知道什么样的阴影是肿瘤,什么样的是正常组织。有时候机器发现异常的速度比医生还快。"
"还有银行,你申请信用卡、贷款,它秒批或者秒拒,背后也是机器在判断你的信用风险。它根据你的收入、还款记录、消费习惯等等数据,预测你未来能不能按时还款。"
老婆若有所思:"所以机器学习其实已经在帮人做很多决定了?"
"没错,而且未来只会越来越多。"
"不过你也别觉得机器学习万能。"我觉得得给老婆打个预防针,"它也有很多问题。"
"首先,如果喂给它的数据本身就有问题,它学出来的东西也会有问题。就好比乐乐小时候,如果他妈一直错把猫当狗教他,那乐乐长大了也分不清。"
老婆点头:"垃圾进,垃圾出?"
"对,就是这个意思。如果数据有偏见,机器也会有偏见。以前有个新闻,某个公司的招聘系统用机器学习来筛选简历,结果发现它特别歧视女性。后来查原因,发现是因为喂给它的历史数据里,录用的大多是男性,所以机器就'学会了'偏好男性。"
老婆皱眉:"那这不挺可怕的?"
"所以现在大家都在研究怎么让机器学习更公平、更透明。这也是一个大课题。"
"还有一点,机器只会'学'它见过的东西。如果你给它看一万张猫和狗的照片,然后突然拿一只兔子给它看,它会懵掉。它可能会说'这是猫'或者'这是狗',因为它不知道还有兔子这个选项。"
老婆笑了:"那不就成了'没见过世面'的机器吗?"
"可以这么说。所以机器学习能做的事情是有边界的,它不像人一样能举一反三、触类旁通。"

讲到这儿,老婆伸了个懒腰:"行,我大概明白了。机器学习就是让机器像小孩一样,看大量的例子,自己总结规律,然后做判断。对吧?"
"对!核心就是两点:第一,数据驱动,不是人告诉它规则,而是让它自己从数据里找规律。第二,从经验中学习,看得越多,学得越好。"
老婆站起来,往厨房走:"行,泡面还是煮鸡蛋?"
"啊?就这?我讲了这么多……"
"你讲的是挺好,但也没好到值一顿大餐啊。"
得,机器学习科普算是讲完了,夜宵质量嘛……只能说勉强及格。
不过说真的,机器学习这东西听起来高大上,其实本质真不复杂。它就是模仿人类从经验中学习的方式,只不过把这个过程交给了计算机。计算机算得快、记得牢、不怕累,所以能从海量数据里找出人找不出来的规律。
下次你再看到手机给你推荐了什么神奇的东西,或者某个APP好像比你还了解你自己,你就知道——这背后,有一个"机器小学生",它看过无数的数据,一直在学习,一直在变得更懂你。
至于它会不会有一天太懂我们,懂到让我们害怕?
那又是另一个话题了。