机器学习主要研究计算机系统对于特定任务的性能,逐步进行改善的算法和统计模型。通过输入海量训练数据对模型进行训练,使模型掌握数据所蕴含的潜在规律,进而对新输入的数据进行准确的分类或预测。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸优化、算法复杂度理论等多门学科。
人工智能、机器学习与深度学习的关系:
人工智能(AI)是计算机科学的一个广泛领域,目标是让机器具备类人的“智能“,包括自然语言处理(NLP)、计算机视觉、机器人技术、专家系统等等;具体实现手段多种多样,包括规则系统、符号逻辑、统计方法、机器学习等。
机器学习(Machine Learning, ML)是AI的一个子领域,核心是通过数据驱动,让计算机进行学习并改进性能,自动发现规律(模式),并利用这些规律进行预测或决策。
深度学习(Deep Learning,DL)是机器学习的一个子领域,基于多层神经网络处理复杂任务。

机器学习发展历史
早期探索:20世纪50-70年代
人工智能研究处于“推理期“,人们认为只要能赋予机器逻辑推理能力,机器就能具有智能。
图灵提出“图灵测试“,定义机器智能的基本标准
弗兰克·罗森布拉特提出感知机算法,这是最早的人工神经网络模型之一,用于线性分类问题
亚瑟·李·塞谬尔提出“机器学习“一词,并设计了一个用于玩跳棋的学习算法
知识驱动与专家系统:20世纪70-80年代
随着研究推进,人们逐渐认识到,仅具有逻辑推理能力是远远实现不了人工智能的。部分人认为,要使机器具有智能,就必须设法使机器拥有知识。计算机硬件逐步发展,人工智能的研究进入以规则为主的“知识驱动“阶段。
出现众多专家系统,如MYCIN(用于医疗诊断)、引入了决策树(如ID3算法),统计学习理论开始成形,例如贝叶斯定理在机器学习中的应用
数据驱动与统计学习:20世纪80年代-21世纪
专家系统面临“知识工程瓶颈“。机器学习成为一个独立的学科领域,各种机器学习技术百花初绽。基于神经网络的连接主义逐步发展,但其局限性也开始凸显。统计学习登场并占据主流,代表技术是支持向量机。互联网的发展带来了大量数据,统计学方法逐渐成为机器学习的核心。
决策树算法得到进一步发展(如C4.5算法)
支持向量机(SVM)被提出,成为一种强大的分类工具
无监督学习方法开始成熟,例如K-means聚类随机森林和Boosting方法(如AdaBoost)引入,提升了集成学习的性能
深度学习崛起:21世纪初
随着计算能力(特别是GPU的发展)和数据规模的快速增长,深度学习技术得以崛起。深度神经网络主导,突破了图像、语音和文本领域的性能瓶颈。
深度信念网络(DBN)被提出,标志着深度学习研究的复兴
AlexNet在ImageNet图像分类竞赛中获胜,证明了卷积神经网络(CNN)的强大性能
生成对抗网络(GAN)被提出,用于生成图像和其他生成任务
Transformer架构在论文《Attention is All You Need》中提出,彻底改变了自然语言处理领域
大模型与通用人工智能:2020年-至今
深度学习进入规模化应用阶段,大语言模型和多模态模型的出现推动了机器学习的新高潮。模型参数规模空前,技术以通用性和泛化能力为目标。
自然语言处理:如OpenAI的GPT系列模型、Google的BERT
多模态模型:如OpenAI的CLIP、DeepMind的Gato
自监督学习成为重要方向,降低了对人工标注数据的依赖,强化学习和深度学习结合,应用于AlphaGo、AlphaFold等项目。
基本术语
数据集(Data Set):多条记录的集合。
训练集(Training Set):用于训练模型的数据。
验证集(Validation Set):用于调节超参数的数据。
测试集(Test Set):用于评估模型性能的数据。
样本(Sample):数据集中的一条记录是关于一个事件或对象的描述,称为一个样本。
特征(Feature):数据集中一列反映事件或对象在某方面的表现或性质的事项,称为特征或属性。
特征向量(Feature Vector):将样本的所有特征表示为向量的形式,输入到模型中。
标签(Label):监督学习中每个样本的结果信息,也称作目标值(target)。
模型(Model):一个机器学习算法与训练后的参数集合,用于进行预测或分类。
参数(Parameter):模型通过训练学习到的值,例如线性回归中的权重和偏置。
超参数(Hyper Parameter):由用户设置的参数,不能通过训练自动学习,例如学习率、正则化系数等。
基本理论
机器学习的方法三要素
机器学习的方法一般主要由三部分构成:模型、策略和算法,可以认为:机器学习方法 = 模型 + 策略 + 算法 模型(model):总结数据的内在规律,用数学语言描述的参数系统 策略(strategy):选取最优模型的评价准则 算法(algorithm):选取最优模型的具体方法
机器学习的方法分类
机器学习的方法种类繁多,并不存在一个统一的理论体系能够涵盖所有内容。从不同的角度,可以将机器学习的方法进行不同的分类:
通常分类:按照有无监督,机器学习可以分为 有监督学习、无监督学习 和 半监督学习,除此之外还有强化学习。
有监督学习:使用带有标签(Label)的训练数据,让模型学习“输入(Input)→ 输出(Output)”的映射关系,从而对新的未知数据进行预测。其本质是“从已知答案中学习规律”。
无监督学习:使用无标签的训练数据,让模型自动发现数据中的内在结构、模式或分布(如聚类、降维、异常检测)。其本质是“从数据本身寻找规律”。
半监督学习:同时使用少量有标签数据和大量无标签数据,让模型在“标签指导”下学习无标签数据的结构,从而提升预测性能。其本质是“用少量标签撬动大量无标签数据”。
强化学习:智能体(Agent)通过与环境(Environment)交互,根据环境的奖励信号(Reward) 调整行为策略,最终学会在特定环境下做出最优决策(最大化长期累积奖励)。其本质是“从试错中学习”。
按模型分类:根据模型性质,可以分为概率模型/非概率模型,线性/非线性模型等。
按学习技巧分类:根据算法基于的技巧,可以分为贝叶斯学习、核方法等。
建模流程
机器学习是由数据驱动的,核心是利用数据来“训练模型“;模型训练的结果需要用一定的方法来进行评估、优化,最终得到一个成熟的学习模型;最后就可以用这个模型来进行预测和解决问题了。
总结监督学习建模的整体流程如下:

特征工程
特征工程(Feature Engineering)是机器学习过程中非常重要的一步,指的是通过对原始数据的处理、转换和构造,生成新的特征或选择有效的特征,从而提高模型的性能。简单来说,特征工程是将原始数据转换为可以更好地表示问题的特征形式,帮助模型更好地理解和学习数据中的规律。优秀的特征工程可以显著提高模型的表现;反之,忽视特征工程可能导致模型性能欠佳。
实际上,特征工程是一个迭代过程。特征工程取决于具体情境。它需要大量的数据分析和领域知识。其中的原因在于,特征的有效编码可由所用的模型类型、预测变量与输出之间的关系以及模型要解决的问题来确定。在此基础上,辅以不同类型的数据集(如文本与图像)则可能更适合不同的特征工程技术。因此,要具体说明如何在给定的机器学习算法中最好地实施特征工程可能并非易事。
特征选择(Feature Selection)是从原始特征中挑选出与目标变量关系最密切的特征,剔除冗余、无关或噪声特征的过程。这样可以减少模型的复杂度、加速训练过程、并减少过拟合的风险。 重要特点:特征选择不会创建新特征,也不会改变数据结构,只保留原始特征的一个子集,可以显著提高模型的可解释性对于一个模型来说,有些特征可能很关键,而有些特征可能用处不大。例如:某个特征取值较接近,变化很小,可能与结果无关。某几个特征相关性较高,可能包含冗余信息。因此,特征选择在特征工程中是最基本、也最常见的操作。
特征选择方法分类:
过滤法(Filter Method):基于统计测试来评估特征与目标变量之间的关系,选择最相关的特征。这种方法独立于机器学习算法,计算速度快,适合作为初步筛选。
- 方差过滤:删除方差低于阈值的特征(如低方差过滤法)
- 相关系数法:计算特征与目标变量的相关性(如皮尔逊相关系数、斯皮尔曼相关系数)
- 卡方检验:用于分类问题,评估类别特征与目标变量的独立性
- 互信息:衡量特征与目标变量之间的信息量
- F 检验:用于回归问题,评估特征与目标变量的线性关系强度
包裹法(Wrapper Method):使用模型来评估特征的重要性,并根据模型的表现进行特征选择。这种方法会尝试不同的特征子集,选择使模型性能最优的特征组合。
- 递归特征消除(RFE, Recursive Feature Elimination):递归地移除最不重要的特征
- 前向选择(Forward Selection):逐步添加特征,直到模型性能不再提升
- 后向消除(Backward Elimination):从全部特征开始,逐步移除最不重要的特征
- 双向搜索(Bidirectional Search):结合前向选择和后向消除
嵌入法(Embedded Method):使用模型本身的特征选择机制(如决策树的特征重要性,L1正则化的特征选择)来选择最重要的特征。这种方法在模型训练过程中同时进行特征选择,结合了过滤法和包裹法的优点。
- L1正则化(Lasso):通过L1正则化使部分特征的权重变为0,实现特征选择
- 决策树特征重要性:基于决策树(如随机森林、XGBoost)计算特征重要性
- 弹性网络(Elastic Net):结合L1和L2正则化
- 基于树模型的特征选择:使用树模型(如随机森林、梯度提升树)的特征重要性评分
相关系数法:通过计算特征与目标变量或特征之间的相关性,筛选出高相关性特征(与目标相关)或剔除冗余特征(特征间高度相关)。
皮尔逊相关系数(Pearson Correlation):用于衡量两个变量的线性相关性,取值范围 [-1, 1]。正相关:值接近1,说明特征随目标变量增加而增加。 负相关:值接近-1,说明特征随目标变量增加而减少。无关:值接近0,说明特征和目标变量无明显关系。
特征转换
特征转换(Feature Transformation)是对数据进行数学或统计处理,使其变得更加适合模型的输入要求。不同的模型对数据分布有不同的假设,特征转换可以帮助数据满足这些假设。
数值特征转换
归一化(Normalization):将特征缩放到特定的范围(通常是0到1之间)。适用于对尺度敏感的模型(如KNN、SVM)。