前言
在学习时有很多与AI有关的概念出现,但其中的关系困扰着许多初学者甚至研究者,其实很多概念并没有严格的定义和界限,但相信以下的分类(即使存在一定的遗漏和错误)也能为点开本文的你一点点帮助。
Artificial Intelligence 人工智能(AI)
一个相当广义的概念,包含现代所有需要使用计算机创造出的科技奇迹,包含多种算法
Tip:算法指的是一种解决问题的方法和步骤,以下的每一层都可以成为一种算法,不过是层级/是否为细分领域的区别。用一种类比的思想理解,AI理解为数学,AI的各种应用就是解数学题,而以下的所有分类都是解题方法,不过是大方法和小方法的区别,同样的,各种方法也并不是局限的,可以融会贯通、相互交叉。而大模型(算法+数据)是一个会做各种数学题的大佬,有海量的知识和泛化能力
一、专家系统:
人工定义规则,即程序员先将判定规则写给机器,计算机判断是与否即可
二、机器学习:
从数据中学习,机器自动总结规律并作出预测,适合数据量巨大的情况,包含多种算法
1. 传统机器学习算法:
1.1 决策树
1.2 SVM 支持向量机
1.3 KNN K-近邻算法
以其距离最近的K个数据的标签对新数据进行预测(“物以类聚,人以群分”思想)
Tip:距离的衡量标准有欧氏距离(适用连续性特征,最常用)、曼哈顿距离(适用系数特征)、马氏距离(适用有相关性特征)
1.4 K-means聚类
随机选择K个数据点作为初始的簇质心,然后根据每个数据点与各个簇质心的距离,将其分配给最近的簇,接着取簇内所有数据点的平均值作为新的质心,重复上述的分配和更新步骤,直到满足某种终止条件(如簇质心不再发生显著变化或达到预设的迭代次数)
1.5 随机森林
使用决策树
2. 深度学习(Deep Learning)算法:
2.1 MLP多层感知机
基础结构
2.2 CNN卷积神经网络
专门处理图像,考虑了各个像素点之间的位置信息
2.3 RNN循环神经网络
适合处理有顺序的数据,如文本和语音
2.4 Transformer
适合处理有顺序的数据,同时引入了自注意力机制(同时考虑序列中的所有位置,并且能给予不同的注意力权重,而CNN和RNN都是逐步处理)
3. 优化算法:
通常与深度学习算法搭配,最小化损失函数;也可以在别的地方,最大化或最小化其他目标函数
3.1 一阶优化(基于梯度)
- 基础梯度下降:批量梯度下降(整个数据集计算梯度),SGD随机梯度下降(每次用一个样本),小批量梯度下降(综合二者,每次用一个小批量样本)
-
优化方法:Momentum动量优化(缓解梯度震荡,提高收敛速度),Adam(自适应学习率,收敛后期学习率适当提高)
3.2 二阶优化(基于Hessian矩阵,考虑二阶导数)
牛顿法,L-BFGS
3.3 进化算法(适合黑盒优化问题)
遗传算法,粒子群优化(模拟群体智能),模拟退火
4. 搜索算法(寻找最优解,如路径规划、博弈):
4.1 无信息搜索:
- 深度优先搜索:沿着一条路径走到底,回溯再尝试新路径,适合找解是否存在
- 广度优先搜索:一层一层搜索,最先找到目标的一定是最优解
4.2 启发式搜索:
- 4.2.1 A* 算法:计算
f(n) = g(n) + h(n)
,其中g(n)
是当前路径代价,h(n)
是到目标的估计代价(启发式函数) - 4.2.2 贪心搜索(Greedy Search):每次选择当前最优解(可能无法找到全局最优解)
4.3 对抗搜索(用于博弈 ):
- Minimax 算法:假设对手总是做出最坏选择,计算最佳策略
- Alpha-Beta 剪枝:优化 Minimax,减少无用计算,提高效率
- 蒙特卡洛树搜索(MCTS):模拟大量随机对局并评估最优策略。
4.4 组合优化搜索
- 模拟退火:用于组合优化问题,如旅行商问题
- 遗传算法:模拟生物进化
5. 强化学习算法(用于智能体与环境交互的场景,如机器人、游戏):
常见算法:Q-learning,DQN深度Q网络,REINFORCE(适用连续动作问题),PPO