图解机器学习 | 0. 绪论与学习路线
A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E. ——Tom Mitchell,Machine Learning
机器学习是人工智能的一个核心分支,致力于开发算法和技术,使计算机无需进行明确的显式编程,即可从数据中自动分析规律、获取经验,并通过构建模型对未知数据进行预测或决策。
0.人工智能里程碑
- 20世纪70~80年代,专家系统(知识库 + 推理引擎), 人工写规则模拟专家决策, 主要问题规则爆炸,泛化能力差,知识更新成本高
- 2000年前后,统计学习理论成熟,数据互联网化,机器学习成为研究主流方向
- 2012年, 在ImageNet竞赛中,Geoffrey Hinton团队用AlexNet大幅领先传统机器学习方法,全面神经网络化,深度学习转换为主流方向
机器学习的核心目标是获取泛化能力,这里的泛化指的是学习机器在经历了训练数据集之后,能够在新出现的、未曾见过的样本或任务上准确表现的能力。
机器学习方法传统上被划分为以下几类,对应不同的学习范式:
- 监督学习,训练集中的目标是由人标注的,带有预期的输出标签,模型的任务是学习输入与输出之间的映射关系
- 无监督学习,训练集没有人为标注的结果,模型需要在没有明确答案的情况下,自主发现其中的模式或结构
- 强化学习,为了达成特定目标,在与环境的不断交互中逐步调整行为策略,没有直接的标签告诉它“对错”,而是通过评估每个行动后获得的回馈(正向奖励或负向惩罚)来学习最优路径
1.问题域
通常可以将机器学习待解决的问题分为以下几种类型:
1.1回归问题
通过训练数据(监督学习),寻找一个函数f(x),使得这个函数生成的预测值与实际观察到的值之间的差距最小
针对参数化模型
- 参数非常多,无法书面化表达,(支持向量机,深度学习)
- 参数少,显式函数,简单的数学等式表达(线性回归,多项式回归,Ridge岭回归,Lasso岭回归)
- 过程性函数,通过规则或记忆来解决问题,(决策树,随机森林,K-近邻)
其中,岭回归形式上依然是f(x)=w^Tx+b,但在寻找w的过程中加入了约束,Ridge倾向于让所有权重w都变小,但不为0,Lasso倾向于让不重要的特征权重w直接变成0,意味特征选择。
1.2分类问题
与回归问题类似,只是将输出集合限制在有限的分类集合,回归问题的一个特殊受限版本
- 逻辑回归,线性数值$w^Tx + b$回归,然后通过一个Sigmoid函数把数值压缩到0到1之间,代表属于某一类的概率
- 支持向量机
- 朴素贝叶斯,基于贝叶斯定理,计算在当前特征下,属于各个类别的概率(假定所有特征之间是独立的)
- K-近邻(KNN),新数据通过计算到K个分类的距离, 判断属于所属的类簇
- 决策树与随机森林
1.3聚类问题
无监督学习,只给出输入样本空间$\left\{x_i\right\}_{i=1}^n$,判断各样本属于那个类簇,相同簇样本之间具有相似的性质
- K-Means算法
随机选取在座标系中选取K个点
while 中心点不再移动
1. 计算样本点到中心点距离,样本点选择自己最近的点作为当前簇分类
2. 计算簇内所有成员坐标的平均值,更新中心点K
- DBSCAN,基于密度的聚类
1.4检测问题
在输入样本$\left\{x_i\right\}_{i=1}^n$中,寻找异常数据的问题。在已知正常数据与异常数据的情况下,与有监督的分类问题相同,无监督的异常检测任务一般采用密度估计的方法,将密度中心的数据归纳为正常数据,否则为异常数据。
1.5降维问题
从高维数据中提取关键信息,将其转换为易于计算的低维度问题进而求解的问题。
- PCA,主成份分析
- LDA,线性判别分析
1.6生成问题
学习原始数据的分布规律,然后在这个规律内创造出全新的、从未存在过但又看起来非常真实的数据。
- GANs,生成对抗网络
- VAE,变分自编码器
- Diffusion Models,扩散模型
- Transformer LLM,大语言模型
2.机器学习的流派
2.1看待参数的统计学的立场
如何通过已知样本,解决模型的生成问题
a.频率派
在现有的数据样本中,通过最大似然估计,获取最优的模型参数$\theta$,其最好的解释当前数据集。通过不断调整模型的参数$\theta$,直到让这一堆已经发生的样本$(x_i, y_i)$出现的联合概率达到最高。
数学本质:$\max_{\theta} \prod_{i=1}^{n} q(x_i, y_i; \theta)$
b.贝叶斯派
贝叶斯派认为当前样本只是真实样本中的一部分,参数$\theta$是随机变量。
数学本质:$P(\theta|\mathcal{D}) = \frac{P(\mathcal{D}|\theta)P(\theta)}{P(\mathcal{D})}$
2.2建模目标的视角的技术路线
如何通过现有模型,对未知数据的预测问题
a.判别式分类
核心思想:
建模条件分布P(Y|X),在已知输入数据x的特性(一个数据包的大小、它的目的端口、它的协议类型)的情况下,计算其属于各个分类的条件概率(正常流量,DDoS攻击,扫描行为),使用计算结果的最大条件概率最为分类估计。
数学公式: $\hat{y} = \arg\max_{y} p(y|x)$
常用方法: 逻辑回归、支持向量机
b.生成式分类
核心思想:
建模联合分布P(X,Y),在已知数据分布特性的情况下,它会先学习每一个类别y产生特征x的规律,即P(x|y)称为似然,同时也统计每个类别出现的频率,即P(y),称为先验。当面对一个待分类的样本x时,它通过贝叶斯公式将这些画像信息综合起来,计算出该样本属于各类的概率,从而完成识别。
数学公式: $\hat{y} = \arg\max_{y} P(x|y)P(y)$
常用方法:朴素贝叶斯、高斯混合模型、隐马尔可夫模型
结论:
现实世界中在样本有限的情况下,想知道数据的分布规律P(X,Y)是非常困难的。进而利用这种分布规律,推倒出待预测的数据分类是非常困难的。但是样本有限的情况下,通过样本学习到分类方法P(Y|X)是很简单的事情,学习到分类方法后,只需要将待分类数据,作为分类方法的输入,就可以判断样本类别。