人工智能基础学习路线:先理解什么是 AI、机器学习和深度学习
人工智能基础学习路线:先理解什么是 AI、机器学习和深度学习
站内搜索
直接问 AI

人工智能基础学习路线:先理解什么是 AI、机器学习和深度学习

人工智能这个词很容易被讲得很玄,但如果你已经有一点编程基础,入门时最重要的不是先追最新模型,而是先建立一张清楚的地图:哪些概念属于同一层,哪些只是工具,哪些才是真正需要反复练习的基本功。

这篇文章先把人工智能、机器学习、深度学习之间的关系讲清楚,再给出一条适合程序员的学习路线。后面的文章会继续展开机器学习流程、模型训练、神经网络和一个 Python 小实战。

读完这一篇,你应该能回答三个问题:AI 和机器学习是不是一回事,为什么机器学习需要数据和标签,以及接下来应该按什么顺序补基础。

一、先区分三个常见词

初学人工智能时,最容易混在一起的三个词是:

  • 人工智能:让程序表现出某种“智能行为”的大方向
  • 机器学习:让程序从数据中学习规律,而不是只靠手写规则
  • 深度学习:机器学习中的一类方法,主要使用多层神经网络

它们不是并列关系,而是包含关系:

人工智能
└── 机器学习
    └── 深度学习

所以,学人工智能并不等于一开始就训练大模型。更稳妥的顺序是先理解“数据如何变成模型”,再去看神经网络和大模型。

二、传统编程和机器学习有什么不同

传统编程通常是这样:

规则 + 输入数据 -> 输出结果

比如你写一个判断闰年的函数,规则由程序员明确写出来,输入年份,输出 true 或 false。

机器学习更像这样:

输入数据 + 已知答案 -> 学出规则
新输入数据 + 学出的规则 -> 预测结果

例如垃圾邮件分类,你不太可能手写完所有规则。更常见的做法是准备很多邮件和对应标签,让模型从样本中学习哪些特征更像垃圾邮件。

这就是机器学习对程序员最重要的思维转换:你写的代码不再直接描述全部规则,而是描述“如何从数据中学习规则”。

三、一个 AI 项目通常由哪些部分组成

从工程角度看,一个最小的机器学习项目通常包含下面几个环节:

  1. 定义问题:到底要分类、预测数值,还是做聚类
  2. 准备数据:数据从哪里来,标签是否可靠,字段含义是什么
  3. 处理特征:把原始数据变成模型可以使用的数字
  4. 训练模型:让算法根据训练数据调整参数
  5. 评估效果:用没见过的数据检查模型是否真的有用
  6. 使用模型:把模型放到脚本、服务或产品流程里

很多初学者会把注意力全部放在“换一个更强的模型”上,但真实项目里,数据质量、特征处理和评估方式往往更重要。

四、应该先学哪些基础

如果你已经能写基本程序,人工智能入门建议先补下面几块:

  • Python 基础:函数、列表、字典、模块、虚拟环境和包管理
  • 数据处理:CSV、表格数据、缺失值、简单统计量
  • 线性代数直觉:向量、矩阵、点积,不需要一开始追求严密证明
  • 概率统计直觉:均值、方差、分布、采样、相关性
  • 模型评估:训练集、测试集、准确率、过拟合

这些内容不是一次学完再开始实践,而是可以边写小程序边补。最有效的方式是每学一个概念,就找一个小数据集跑一遍。

五、推荐的学习顺序

比较适合有编程基础读者的路线是:

  1. 先理解 AI、机器学习、深度学习的关系
  2. 学习监督学习中的分类和回归问题
  3. 掌握训练集、验证集、测试集的区别
  4. 理解损失函数、参数、训练轮次和过拟合
  5. 用 scikit-learn 跑通一个完整分类任务
  6. 再进入神经网络、深度学习框架和大模型应用

这个顺序的好处是:先把“模型为什么能从数据里学东西”这件事想明白,再接触复杂框架时就不容易迷路。

六、入门时不要急着做什么

下面几件事可以稍微往后放:

  • 一开始就训练大型深度学习模型
  • 还没理解评估方式就比较模型好坏
  • 只复制 Notebook,但不解释每一步输入输出
  • 把“调用 API”误认为已经理解人工智能基础

调用现成模型当然有价值,但基础学习阶段更重要的是知道:数据怎么进入模型,模型怎么产生预测,预测结果怎么评估。

七、一个简单的自测标准

学完这一阶段,不需要马上能推导复杂公式,但至少应该能用自己的话解释下面几件事:

  • 为什么同一个问题可以用规则编程解决,也可以用机器学习解决
  • 特征和标签分别是什么,它们在训练中承担什么角色
  • 训练集和测试集为什么不能随便混在一起
  • 为什么模型效果不能只看一次运行结果

八、这个系列接下来怎么读

这一篇先建立地图。后面几篇会按下面顺序展开:

学人工智能基础,最好的目标不是“记住很多名词”,而是能拿到一个小问题后,清楚地说出:数据是什么、目标是什么、模型学什么、怎么验证它有没有学对。

九、把学习路线拆成三个阶段

如果把所有关键词一次性摊开,初学者很容易被框架、论文和 API 分散注意力。更实用的方式是按阶段检查自己是否真的掌握了当前层级的问题。

阶段 核心问题 推荐练习 通过标准
数据阶段 样本、特征、标签从哪里来 读取 CSV,统计缺失值和类别分布 能解释每一列字段含义和目标变量
模型阶段 算法如何从数据中调整参数 训练逻辑回归、决策树或 K-means 能说明输入、输出、损失或聚类目标
评估阶段 结果是否能泛化到新数据 划分训练集和测试集,比较多种指标 能发现过拟合、类别不平衡和数据泄漏

这张表也可以作为自查清单。只要你还不能解释“标签是否可靠”或“测试集为什么不能参与调参”,就不应该急着比较复杂模型。

十、用一个小项目检验基础是否扎实

入门阶段可以选择一个很小的分类任务,例如鸢尾花分类、手写数字 softmax 或垃圾邮件文本特征。项目不需要大,但要完整:读取数据、划分训练测试集、训练模型、输出指标、解释错误样本。如果只跑出一个准确率,却说不清错误来自哪里,这个练习还没有完成。

一个合格的小项目至少应该留下四类记录:数据来源说明、主要特征说明、训练参数说明和评估结果说明。这样以后换模型、换数据或复现实验时,才知道变化来自算法本身,还是来自数据处理方式。

数学到底要学到什么程度

「AI 需要很好的数学基础」这句话劝退了很多人,但它太笼统,没法照着执行。更有用的说法是区分要能读懂要能推导——绝大多数应用场景只需要前者。

必须能读懂的(占实际用量的九成):

  • 矩阵乘法的形状规则。(m×n) × (n×k) = (m×k)。你不需要手算一个 4×4 的乘积,但必须能一眼看出两个张量能不能相乘、结果是什么形状。深度学习里最高频的报错就是形状不匹配,读懂这条规则能解决其中大部分。
  • 导数表示”变化率”这个含义。不需要会算复杂函数的导数,但要理解”梯度告诉你参数往哪个方向改能让损失下降”。
  • 概率分布和期望的基本概念。模型输出的是概率,损失函数常常是某种期望,读懂公式需要这个。

短期内不必掌握的:手推反向传播的链式法则、矩阵求导的完整公式、测度论意义上的概率、优化理论的收敛性证明。这些在读论文和做研究时有用,但在「跑通一个模型并判断它是否可靠」这个阶段完全用不上。

一个可以自测的标准:看到 y = softmax(Wx + b) 这一行,你能说出 W 的形状由什么决定、b 为什么是一维的、softmax 之后每个数的取值范围是什么吗?能回答就够开始了;答不上来就先补这一小块,而不是回头把线性代数从头学一遍。

顺序上的建议是用到什么补什么。带着一个具体问题去查数学,比系统学一遍再来应用效率高得多——后者的典型结局是学完线性代数,仍然不知道它和模型代码有什么关系。

不必先把 Python 学”完”

另一个常见的卡点是”我 Python 还不熟,等学好了再开始”。这个顺序会让人在准备阶段停留很久。

实际上机器学习代码用到的 Python 子集很窄,大概是这些:

import numpy as np

a = np.array([[1, 2, 3], [4, 5, 6]])   # 创建数组
a.shape                                 # (2, 3) —— 最常用的一行
a[:, 1]                                 # 切片:取第二列
a[a > 3]                                # 布尔索引
a.reshape(3, 2)                         # 改形状
a.mean(axis=0)                          # 按轴聚合

xs = [f(x) for x in data if ok(x)]      # 列表推导
for i, x in enumerate(data): ...        # 带下标遍历
for a, b in zip(xs, ys): ...            # 并行遍历

把上面这些用熟,加上会看报错信息,就足以开始跑模型了。装饰器、元类、异步、上下文管理器这些在入门阶段基本用不到,等真正需要时再学,反而记得住。

其中最值得先花时间的是 shape 和轴(axis)的概念。深度学习的调试有很大一部分是在追踪张量形状,养成”每一步都打印一下 shape”的习惯,比多学几个语法特性有用得多。

十一、常见卡点和补救方式

很多人学 AI 时卡住,并不是因为数学完全不够,而是因为学习顺序跳得太快。比如还没理解训练集和测试集,就开始看神经网络;还没理解损失函数,就开始调学习率;还没看错误样本,就急着换更大的模型。

补救方式也很直接:回到一个能完全跑通的小例子,把每一步的输入输出打印出来。先让数据形状、标签含义、模型参数和评估指标都可见,再去学习更大的框架。能复查的小实验,比只看概念解释更能建立长期能力。

发表回复

向下探索