机器学习01-发展历史
文章目录
- 机器学习01-发展历史
- 1-传统机器学习的发展进展
- 1. 初始阶段:统计学习和模式识别
- 2. 集成方法和核方法的兴起
- 3. 特征工程和模型优化
- 4. 大规模数据和分布式计算
- 5. 自动化机器学习和特征选择
- 总结
- 2-隐马尔科夫链为什么不能解决较长上下文问题
- 1. 假设的简化性
- 2. 状态空间爆炸
- 3. 记忆能力的限制
- 4. 计算复杂度和可扩展性
- 5. 参数估计的困难
- 总结
- 3-最大熵ME为什么可以解决较长上下文问题
- 优点
- 限制
- 与其他模型的比较
- 结论
- 4-SVM、隐马尔可夫模型、最大熵ME、最大马尔科夫、条件随机场 对比
- 5-机器学习场景
1-传统机器学习的发展进展
某个大佬搞了一张很漂亮的图,地址:https://www.processon.com/view/6755412923bb5e5f8d1c4a15
传统机器学习自20世纪末以来经历了显著的发展和演变。以下是传统机器学习发展历程中的几个关键阶段及其主要进展:
1. 初始阶段:统计学习和模式识别
- 时间:20世纪50年代至80年代
- 代表性模型:
- 感知机(Perceptron):由Frank Rosenblatt于1957年提出,是最早的人工神经网络模型之一,用于二分类问题。
- 贝叶斯分类器(Bayesian Classifier):基于贝叶斯定理,用于分类任务。
- K近邻(K-Nearest Neighbors, KNN):一种基于实例的分类和回归方法。
- 决策树(Decision Trees):由Ross Quinlan在1980年代提出,用于分类和回归任务。
- 发展意义:这些早期的模型为后来的机器学习算法奠定了基础,尽管计算能力和数据量的限制使得这些方法在当时未能广泛应用。
2. 集成方法和核方法的兴起
- 时间:20世纪90年代至2000年代初期
- 代表性模型:
- 支持向量机(Support Vector Machines, SVM):由Vladimir Vapnik和Alexey Chervonenkis在1990年代提出,通过核技巧(Kernel Trick)在高维空间中解决分类问题。
- 随机森林(Random Forests):由Leo Breiman在2001年提出,通过集成多个决策树提高预测性能。
- AdaBoost:由Yoav Freund和Robert Schapire在1996年提出,是一种提升算法,通过迭代训练弱分类器来构建强分类器。
- 发展意义:这些方法显著提升了模型的性能和泛化能力,特别是在处理高维数据和复杂分类问题时表现出色。
3. 特征工程和模型优化
- 时间:2000年代中期至2010年代初期
- 代表性模型:
- 梯度提升机(Gradient Boosting Machines, GBM):由Jerome Friedman在2001年提出,通过迭代优化损失函数来提升模型性能。
- 线性回归和逻辑回归:进一步优化和推广,广泛应用于回归和分类任务。
- 发展意义:这一阶段强调特征工程和模型优化,通过选择和处理特征来提升模型性能。特征工程成为机器学习流程中的重要步骤。
4. 大规模数据和分布式计算
- 时间:2010年代中后期
- 代表性模型:
- XGBoost:由Tianqi Chen在2014年提出,是GBM的优化版本,适合大规模数据和分布式计算。
- LightGBM和CatBoost:分别由微软和Yandex在2017年提出,进一步优化了GBM的性能和速度。
- 发展意义:随着数据量的增加和计算能力的提升,传统机器学习方法在大规模数据上的应用成为可能,极大提升了模型的预测性能。
5. 自动化机器学习和特征选择
- 时间:2010年代末至今
- 代表性模型:
- AutoML:自动化机器学习工具如Auto-sklearn和TPOT,通过自动化模型选择、超参数优化和特征工程,简化了机器学习流程。
- 特征选择算法:如LASSO(Least Absolute Shrinkage and Selection Operator)和RFECV(Recursive Feature Elimination with Cross-Validation),通过自动选择重要特征提升模型性能。
- 发展意义:自动化机器学习和特征选择工具的出现,使得非专业人士也能更容易地应用机器学习模型,推动了机器学习的普及。
总结
传统机器学习的发展经历了从基础模型的提出到集成方法、特征工程、大规模数据处理和自动化机器学习的多个阶段。这些进展不仅提升了模型性能,也使得机器学习方法能够应用于更广泛的实际问题,推动了人工智能领域的发展。
2-隐马尔科夫链为什么不能解决较长上下文问题
隐马尔可夫模型(Hidden Markov Model,HMM)在处理较长上下文问题时面临一些根本性的限制。这些限制主要源于其模型结构和假设,具体表现如下:
1. 假设的简化性
HMM 基于两个主要假设:
- 马尔可夫假设:当前状态仅依赖于前一个状态,即状态转移是马尔可夫性质的,不考虑更远的历史状态。
- 观察独立性假设:当前观察仅依赖于当前状态,与其他观察和状态无关。
这两个假设在实际应用中过于简化,无法捕捉长距离依赖关系。随着上下文长度的增加,HMM 无法有效建模复杂的依赖关系。
2. 状态空间爆炸
随着上下文长度的增加,状态空间的规模呈指数增长。对于较长上下文,状态空间变得难以管理,导致计算复杂度和存储需求的急剧增加。
3. 记忆能力的限制
HMM 的记忆能力有限,只能记住短期信息(即前一个状态的信息)。对于需要长期依赖关系的任务,HMM 的表现会显著下降。
4. 计算复杂度和可扩展性
HMM 的训练和推断算法(如前向-后向算法和维特比算法)在处理较长上下文时,计算复杂度高。随着上下文长度增加,算法的时间复杂度和空间复杂度都会显著增加,限制了其在实际应用中的可扩展性。
5. 参数估计的困难
在较长上下文情况下,HMM 的参数估计变得困难。由于数据稀疏性和模型复杂性,参数估计的误差会增大,进而影响模型的性能。
总结
隐马尔可夫模型由于其固有的简化假设、状态空间爆炸、记忆能力限制、计算复杂度和参数估计困难等问题,难以有效解决较长上下文问题。为了克服这些限制,研究人员开发了更多复杂的模型,如递归神经网络(RNNs)、长短时记忆网络(LSTM)和 transformer 等,这些模型在处理长距离依赖关系和较长上下文方面表现更优。
3-最大熵ME为什么可以解决较长上下文问题
最大熵模型(Maximum Entropy,ME)在一定程度上可以处理较长上下文问题,但其能力仍然有限。最大熵模型是一种统计学习方法,其目标是在给定的约束条件下,选择概率分布使得熵最大,即不确定性最大。这使得模型在没有额外信息的情况下,做出最保守的假设。
优点
-
灵活性:最大熵模型可以通过引入特征函数来捕获复杂的特征交互,包括上下文信息。
-
泛化能力:通过最大化熵,模型可以避免过拟合,具有较好的泛化能力。
-
可解释性:模型的参数与特征函数相关,使得模型具有一定的可解释性。
限制
-
特征工程:最大熵模型的效果高度依赖于特征的选择和设计。对于较长上下文问题,需要设计复杂的特征函数来捕捉长距离依赖关系,这通常较为困难且耗时。
-
计算复杂度:随着上下文长度的增加,特征的数量可能急剧增长,导致模型训练和预测的计算复杂度增加。
-
局部性:尽管可以通过特征函数引入上下文信息,但最大熵模型仍然主要关注局部的特征组合,对于非常长的上下文,其表现可能会受限。
与其他模型的比较
与隐马尔可夫模型(HMM)相比,最大熵模型在处理上下文问题时具有一定的优势,因为可以通过特征函数更灵活地引入上下文信息。然而,最大熵模型仍然面临特征工程的挑战,并且在处理极长上下文时可能不够高效。
近年来,深度学习模型,如卷积神经网络(CNNs)、循环神经网络(RNNs)、长短期记忆网络(LSTMs)和transformer等,展示了在处理长上下文问题上的优势。这些模型能够自动学习特征表示,并通过多层结构捕捉长距离依赖关系,从而在自然语言处理、语音识别和其他序列任务中取得显著成果。
结论
虽然最大熵模型通过特征函数可以处理一定程度的上下文信息,但其在处理较长上下文问题时仍然存在局限性。现代深度学习模型提供了更强大的能力来处理长距离依赖关系,是解决这类问题的更有效选择。
4-SVM、隐马尔可夫模型、最大熵ME、最大马尔科夫、条件随机场 对比
每个模型能力:
-
支持向量机(SVM):
- 一种监督学习模型,主要用于分类和回归分析。
- 通过寻找一个超平面来将不同类别的数据分开,目标是最大化边际。
-
隐马尔可夫模型(HMM):
- 一种统计模型,用于表示隐藏状态序列的概率。
- 广泛应用于语音识别、自然语言处理等领域。
-
最大熵(ME):
- 一种统计学习方法,基于最大熵原则,用于分类和建模。
- 尽量保持信息熵最大,以获得最不确定的模型。
-
最大熵马尔可夫模型(MEMM):
- 结合了最大熵和马尔可夫模型的特点,用于序列标注任务。
- 考虑当前观测和前一状态的影响。
-
条件随机场(CRF):
- 一种判别式概率模型,用于标注和分类变量序列。
- 能够考虑整个序列的信息,避免MEMM的标签偏差问题。
能力Markdown表格:
模型名称 | 功能 | 解决的问题 | 优点 | 缺点 |
---|---|---|---|---|
SVM | 分类和回归 | 在高维空间中分类和回归问题 | 泛化能力强,适用于高维空间 | 训练时间较长,参数调优复杂 |
HMM | 序列建模和预测 | 隐藏状态序列的概率建模 | 能够处理时序数据,概率解释性强 | 假设状态独立性,可能不现实 |
ME | 分类和建模 | 在给定约束下寻找最不确定的模型 | 能够集成多个特征,概率解释性强 | 可能过拟合,训练时间较长 |
MEMM | 序列标注 | 标注序列数据 | 考虑上下文信息,训练效率高 | 存在标签偏差问题 |
CRF | 序列标注和分类 | 标注序列数据,考虑全局特征 | 能够考虑全局特征,无标签偏差 | 训练和预测时间较长,参数多 |
简要概述了每个模型的主要功能、它们解决的问题、优点和缺点。