机器学习到底是什么?不写公式也能讲明白

机器学习到底是什么?不写公式也能讲明白
用教小孩认猫的例子白话讲解机器学习

简单说:机器学习就是让计算机从一堆例子里自己找规律,而不是让人把规则一条条写给它。你给它看一万张猫照片,它自己总结出"猫长什么样"。不需要数学基础也能理解它的全部核心思想。

机器学习 ai这个词组,十个人有九个觉得高深。可我姥姥听完我讲之后说了句"这不就是熟能生巧嘛",你还真没法反驳她。这篇我不写一个公式,就拿"教三岁小孩认猫"这一件事,把机器学习的全流程走完。中途会插一段我自己动手做猫狗识别实验的翻车记录——放心,翻的不是我的车,是机器的车。

机器学习的第一课:AI不是被编程出来的,是被喂出来的

原子答案:传统编程是人写规则、计算机执行;机器学习反过来,人给例子,计算机自己产出规则。核心区别就这一句话,剩下的全是细节。想象你教三岁的外甥认猫。你绝不会跟他说"猫是一种具有可伸缩爪部、竖瞳孔的猫科动物"。你干嘛?你指着小区里的橘猫说"这是猫",指着邻居家柯基说"这不是猫"。指得多了,孩子自己会总结:尖耳朵、胡须、四条腿、走路没声的那个毛茸茸的是猫。机器学习干的就是这个。你把一万张标好"猫"或"不是猫"的照片喂给程序,它自己调整内部的一大堆旋钮(参数),直到判断越来越准。这一步行话叫"训练"。通俗版本我之前在能自己学习的机器长啥样里也聊过,今天这篇往下多挖两层。

训练机器学习 ai模型第二步:猜、错、改,循环一万次

原子答案:训练的本质是循环三步——模型猜答案、对照标准答案算错多少、根据错误调整参数。重复几万次,它就从瞎猜变成靠谱。跟孩子练字一个道理:写、被圈出来、擦了重写。具体拆开讲。第一轮,程序内部的旋钮全是随机值,你给它看猫照片,它猜"是狗"。错得离谱。这时候有一个东西负责打分——行话叫损失函数,你就理解成"错了多少分"。分数出来后,另一个机制负责把每个旋钮往"能让错误变小"的方向拧一点,这个过程有个响亮的名字叫反向传播,本质就是"知错就改,每次改一点点"。看一张照片、拧一圈旋钮,重复十万次。最后那组拧好的旋钮,就是所谓的"模型"。你手机相册里能按"猫"搜照片,背后就是这么个拧好了的模型在干活。想更系统地了解AI和机器学习的层次关系,可以看我画的那张套娃结构图,一句话版:机器学习是实现AI的一条路,深度学习又是机器学习里的一支。

过拟合:机器学习最经典的翻车,我亲手复现过

原子答案:过拟合是模型把训练例子的细节当成了通用规律——就像孩子只见过你家的橘猫,就认为黑猫不算猫。我亲手做的猫狗识别实验里,训练准确率98%的模型,换一批新图直接掉到71%,这就是过拟合的现场。说我的翻车记录。前年我照着网上教程做了个猫狗分类器,训练完一看报告,准确率98%,飘了。兴冲冲丢给我家橘猫新拍的照片——识别成狗。不信邪,又测了两百张没参与训练的新图,整体准确率只有71%。差在哪?我训练用的图库是室内宠物照,测试图一半是户外抓拍。模型学到的不是"什么是猫",而是"室内光线下毛茸茸的东西是猫"。这就是把参考答案的墨迹都背下来的学生,换个考场就露馅。怎么治?方法不少,最直白的一个:给它看更多、更杂的例子。我把训练图扩到四千张、掺进户外照之后,新图准确率回升到89%。这事给我的触动比看十篇教程都深——机器学习的上限不在算法多聪明,在你喂它的例子够不够全面。这个概念在工业界坑过无数项目,想看更细的分类概念可以读维基百科的机器学习词条,中文版写得相当可读。

话说回来,你可能听过监督学习、无监督学习这些黑话,听着吓人,其实用认猫这一件事就能全讲通。监督学习,就是每张照片都贴了标签(这是猫/这不是猫),有标准答案的学习;无监督学习,就是一堆照片不贴标签,让程序自己按长得像不像分堆,它可能分出"毛茸茸的""有羽毛的""发光的"几堆,分完你来命名。强化学习另算一路,不认猫了,改学骑自行车——摔倒扣分、骑稳加分,摔多了就会了。AlphaGo下棋、游戏AI打游戏,走的都是这条路子,我在游戏AI强化学习入门里有展开。三兄弟记住这个比喻就够了,别背概念。

黑话认猫版翻译生活里的例子
训练指着照片反复教给孩子刷口算卡
参数孩子脑子里"猫长啥样"的印象手感、语感这种说不清的东西
损失函数答错扣几分老师批改的红叉
过拟合只认你家的橘猫只会做原题,换数字就错
泛化没见过的猫也认得举一反三
数据集那一摞照片五三、黄冈、真题卷

机器学习跟AI是什么关系?为什么老连在一起写

原子答案:AI是大目标"让机器像人一样聪明",机器学习是实现这个目标的主流手段"从例子中学规律"。所以机器学习 ai常被连写——一个是目的地,一个是现在最堵的那条路。上世纪五六十年代的AI走的是另一条路:专家规则系统,让人类专家把知识一条条写成"如果发烧且咳嗽则可能是感冒"的规则。规则写到几十万条就崩了——世界太杂,写不完。转折发生在数据变多、算力变便宜之后:与其教机器规则,不如喂它例子让它自己学。今天的AI热潮几乎全是这条路撑起来的,聊天、翻译、识图、下棋,底层都是机器学习在跑。这三次浪潮的兴衰史我复盘过一篇机器学习三起两落,读起来像一部肥皂剧。你要是问机器学习这波到底是不是泡沫——我的看法是技术是真的,吹的项目里有泡沫,两者不冲突。

常见问题

机器学习必须学数学吗?

理解思想不需要,动手做项目需要一点,做研究才需要啃透。我认识的不少应用层工程师,数学是边做边补的。正确的入门路径看零基础学AI的顺序那篇,先动手再补理论,弯路最少。

机器学习和深度学习是一回事吗?

不是。深度学习是机器学习里的一个分支,用的模型层数更深,就是新闻里常说的神经网络。关系像水果和苹果:深度学习是机器学习的一种,机器学习是实现AI的一种。

普通人了解机器学习有什么用?

能识破宣传里的水分。看到"AI精准""智能学习"这类词,你知道背后可能只是个统计模型,效果取决于喂了什么数据,就不会为玄学买单。我拿教育产品验过这个判断,写在了AI精准学习是营销词吗。

想亲手跑一次机器学习,最低配置是什么?

一台普通笔记本就够,入门数据集用公开的,工具免费。第一次跑通猫狗识别那种小实验,四核CPU半小时内能出结果,我的配置单放在跑机器学习的电脑配置里了。公开的入门数据集在Kaggle上能白嫖一堆,从零成本开始完全没问题。

机器学习的全部秘密,其实就是姥姥那句话:见得多了,就会了。下次再有人拿AI三个字母唬你,你就问一句"它吃的什么数据",一问一个准。觉得这篇白话版讲明白了,转给那个总觉得机器学习高深莫测的朋友吧,也许他就差你这一个转发。