刚接触这块的人最常见的情况是:看到「机器学习」和「深度学习」被当成同义词用,又有人把「神经网络」说成第三种东西,于是不知道三者的关系到底是并列还是包含。这篇把三者画成一张包含关系图,逐个说清各自的定义边界、判断标准和不适用的情况,再给一条可执行的入门顺序。
刚接触这块的人最常见的情况是:看到「机器学习」和「深度学习」被当成同义词用,又有人把「神经网络」说成第三种东西,于是不知道三者的关系到底是并列还是包含。有人上来就说要做深度学习,结果手里只有几百条结构化表格数据;也有人把任何用到神经网络的方案都叫深度学习,其实模型只有一两层。这篇把三者画成一张包含关系图,逐个说清各自的定义边界、判断标准和不适用的情况,再给一条可执行的入门顺序。
先把结论摆出来:三者不是三种并列的技术,而是俄罗斯套娃式的包含关系。机器学习最大,深度学习是它的一个子集,神经网络是深度学习的主要实现方式。理解这一点之后,很多争论会自动消失,比如「深度学习是不是机器学习的一种」这种问题不需要再纠结。下面逐层拆开看,重点不在背定义,而在你能不能在拿到一个任务时判断它该归到哪一层。
先给一张包含关系图:三者到底谁包着谁
用套娃的方式想:最外层是机器学习,中间层是深度学习,最内层是神经网络这种具体的模型结构。机器学习回答的是「怎么让机器从数据里学出规律」,深度学习回答的是「用多层网络自动学特征」,神经网络回答的是「用什么样的计算单元堆起来」。三者不在同一维度上,所以不存在谁替代谁的问题。
| 层级 | 核心特征 | 边界线怎么划 |
|---|---|---|
| 机器学习 | 从数据里学规则,不靠人手写规则 | 只要是从数据拟合出判断逻辑的都算,用什么算法不重要 |
| 深度学习 | 自动从原始数据里学特征,模型层数较多 | 必须同时满足多层结构与自动特征提取,只满足一个不算 |
| 神经网络 | 一层层加权再激活的计算结构 | 它是模型结构,浅层时属于一般机器学习,堆深了才进入深度学习 |
一个常见误用是把「神经网络」等同于「深度学习」。这会导致你漏掉深度学习最关键的两个差别:模型规模上去了,特征不再由人指定。只注意到「用了神经网络」这一条,容易把一个两层的简单网络也叫深度学习。另一个误用是认为「越大越好」,觉得模型越深越厉害。任务简单时用大模型属于浪费,样本量小的时候还会直接过拟合。
机器学习这一层:它的边界和典型特征
机器学习的核心特征只有一条:规则是从数据里学出来的,而不是人手写死的。至于用什么算法,是决策树、线性回归还是神经网络,都不改变它属于机器学习这件事。这条边界很好用:如果一段逻辑是你自己写 if-else 写出来的,那它是传统程序,不是机器学习;如果判断标准是模型从历史数据里总结出来的,那就是机器学习。
- 需要人先挑特征的:比如先算出平均值、方差、频次这些列,再喂给模型,特征工程占大头
- 不需要人挑特征的:模型自己从原始输入里学表征,这类做法通常落在深度学习那一层
- 典型适用场景:结构化表格、每一列的含义清楚、样本量不大、要求结果能解释
- 不适用的情况:判断规则本身就能手写清楚,或者数据里根本没有可学的规律
判断一个任务要不要用机器学习,可以先问一句:这件事的规则能不能用几句话写清楚?能写清楚就别上模型,维护成本更低也更好排查。另一头也要防:如果数据本身是随机的、或者样本里噪声远大于信号,再复杂的模型也学不出东西,这时候该做的是回到数据采集环节。
神经网络在这里扮演什么角色
神经网络是一种模型结构,模仿的是「一层层加权再激活」的计算方式。它本身不等于深度学习,也不等于机器学习整体。你可以把它理解成一块积木:积木还是那块积木,堆一层和堆几十层,能力差别很大,归类也就变了。浅层神经网络通常仍被归到一般机器学习里,层数堆到一定程度、并且开始自动学特征时才算深度学习。
- 层数
- 模型从输入到输出经过多少个计算阶段,层数越多表达能力越强,也越难训练
- 宽度
- 每一层里计算单元的数量,影响单层能装下多少信息
- 连接方式
- 层与层之间怎么连,不同的连法派生出卷积、循环、注意力等结构
调这三个变量就会派生出各种网络结构,但结构变来变去,核心仍然是加权求和再激活。需要提醒的是,神经网络不是唯一算法。样本极少、或者业务上要求每个判断都能追溯到具体原因时,它通常不合适。这时候换成规则清楚的模型往往更省事,也更容易通过审核。
深度学习这一层:多出来的是什么
深度学习相比一般机器学习,多出来的核心是「自动学特征」。不再由人指定模型该看哪些列,而是模型自己从原始数据里一层层抽取出有用的表示。这个差别看起来抽象,落到实践上很具体:处理图像时不需要你手工设计边缘和纹理的检测规则,处理文本时不需要你手工列词表特征,前几层自己就把这些学出来了。
正因为如此,深度学习擅长的是图像、语音、文本这类难以用手工方式描述特征的输入。代价也很明确:要数据量、要算力、调参空间大、结果更难解释。这四条不是缺点,是它的性格。如果你手里的任务同时具备「输入原始、样本充足、能接受黑盒」这几个条件,它才划算。
- 样本只有几百条:先考虑一般机器学习,深度学习在这个量级上很容易过拟合
- 要求给出可追溯的判断依据:优先选结构清楚、能给特征重要性的方法
- 预算和算力都很紧:简单方法能跑通就别升级,先看基线效果再决定
- 输入本身就是表格且列含义明确:手工特征往往不比自动学特征差
| 维度 | 一般机器学习 | 深度学习 |
|---|---|---|
| 特征来源 | 人先挑好,再喂给模型 | 模型从原始数据里自己抽 |
| 数据形态 | 结构化表格为主 | 图像、语音、文本等原始输入为主 |
| 样本要求 | 几百到几万条可能就够 | 通常需要更大的数据量 |
| 解释性 | 相对容易说清依据 | 相对更难,需要额外做解释 |
拿到一个任务,怎么判断该归到哪一层
与其背定义,不如按顺序问四个问题:输入是什么形态、有没有现成可用的特征、样本量大概多少、结果要不要能解释。四个答案基本就能把任务定位到某一层。下面给一个可执行的排查顺序,照着走一遍,比对着概念纠结快得多。
- 先确认数据形态是结构化表格,还是图像、音频、长文本这类原始输入。前者先默认走一般机器学习。
- 再看有没有现成特征如果每一列含义清楚、可以直接用,就不必急着让模型自己学特征。
- 估一下样本量样本偏少时先跑简单模型做基线,别上来就堆层数。
- 确认解释性要求业务上需要说清每个判断的原因,就优先选可解释的方法,而不是更深的网络。
- 先跑基线再决定升级用最简单的方法跑通一次完整流程,拿到一个参照效果,再判断是否值得上更复杂的模型。
这里有一个务实原则:能用简单方法跑通的,不要一上来就上深度模型。判断不准时,最稳的做法是先跑一个基线方法。基线的作用不是最终方案,而是给你一个参照线,让你知道升级到底带来了多少提升。如果升级带来的提升有限,却让维护和解释成本翻了几倍,那这笔账不划算。
入门学习顺序:先学哪块,后学哪块
建议的顺序是先补基础概念词汇,再学一般机器学习的完整流程,最后再碰深度学习和神经网络。原因不是前者更简单,而是前者给你一套判断框架。没有这套框架就直接学网络结构,很容易变成只会调库、不知道什么时候该用。
- 第一阶段:把训练、验证、测试、过拟合、特征、标签这些词的含义搞清楚
- 第二阶段:用结构化数据跑通一次完整流程,从划分数据到评估效果
- 第三阶段:再接触图像或文本类任务,理解自动学特征是怎么发生的
- 可以跳过的情形:数学和编程基础已经很扎实,且目标明确只做某一类任务,可以直接切入对应方向
资源挑选上有个提醒:不必囤课。先确认一门课覆盖的环节是否完整,是不是从数据处理一直讲到评估,而不是只讲模型结构。完整的流程比炫酷的模型更重要,因为实际工作里大部分时间花在数据和评估上。具体课程和工具的口碑记录,可以去站内工具目录页面看当时的整理。
概念查证习惯:遇到模糊说法怎么核实
看到有人把三个词混用,先别急着争论,回到定义层面确认他指的是哪一层。问一句「你说的是模型结构还是学习范式」,大部分混淆当场就拆开了。这个习惯能帮你过滤掉大量看起来高深但其实含糊的说法。
- 拆成可查的关键词把一句模糊说法拆成两三个术语,去站内术语词典逐条对照,避免被二手解释带偏。
- 定位它属于哪一支遇到前沿方向的新名词,先判断它挂在三层里的哪一支,再决定要不要深入。
- 涉及数字就去页面核对关于模型规模、效果对比之类的具体数字,不要记别人给的一句话结论,去站内页面看当时的记录。
先把三个词归位,再谈学什么、用什么;归位错了,后面每一步都会偏。下一步想把这些概念和实际可用的服务对照起来看,可以从站内模型资料库和术语词典入手,先建立自己的判断框架,再去挑工具。具体条目和当时的记录请以页面为准。→
常见问题
神经网络和深度学习是一回事吗?
不是。神经网络是一种模型结构,深度学习是一类训练思路和方法的总称。神经网络既可以做得很浅、归到一般机器学习里,也可以堆得很深,那就属于深度学习了。判断的关键不在名字,而在层数和是否让模型自己学特征。另外,深度学习也不只有神经网络一条路,只是实际用起来绝大多数都是它。
机器学习包含深度学习吗?
包含。深度学习是机器学习的一个子集,用的算法可以不一样,但目标是一致的:从数据里学出规律,而不是靠人写死规则。所以凡是深度学习能做到的,都可以说是在做机器学习;反过来不成立,很多机器学习方法压根不涉及神经网络。
小团队做项目该从哪一层开始?
一般从一般机器学习开始更稳。先看数据是不是结构化、样本量够不够、业务要不要可解释的结果。如果这几条都成立,用简单方法往往更快出结果,也更好维护。只有输入是图像、语音、长文本这类难手工描述特征的数据,才值得考虑深度学习。具体到某个任务的选型判断,可以到站内的模型与工具目录对照后再定。
只学深度学习,跳过传统机器学习行不行?
短期能跑通一些任务,但长期会缺一块判断力。因为很多实际问题的最优解不是深度模型,你得知道什么时候不该上它。而且深度学习里的评估、过拟合、数据划分这些概念,本身就是从一般机器学习里延续过来的,跳过之后容易只记住调参手法,不理解为什么这么调。
这三个词和现在常说的大模型是什么关系?
大模型基本都落在深度学习这一支里,是神经网络堆得很大、数据喂得很多之后的结果。所以它不是第四个并列的概念,而是深度学习往下延伸的一支。概念层级关系可以到站内的基础概念词典里逐条对照,涉及具体模型版本和参数规模的数字,以站内页面当时记录的信息为准。