机器学习中的关键概念与技术
1. 降维技术概述
降维在机器学习中常作为预处理步骤,能有效消除高维数据中的无关和冗余特征,提升数据分析效率、增强预测性能,还便于分析结果的可视化。其应用领域广泛,涵盖图像处理、人脸识别、手写识别、文本分类、基因表达谱分析、遗传染色体工程等,同时也用于计算生物学和蛋白质组学。
常见降维方法介绍
- Isomap :使用流形学习从局部度量信息中学习并获得全局几何框架,以解决非线性降维问题。
- 局部线性嵌入(Locally Linear Embedding) :一种无监督学习算法,用于计算高维输入数据中低维、保留邻域关系的嵌入。
- 随机邻居嵌入(Stochastic Neighbor Embedding,SNE) :提出了一种通过高维数据点或成对差异进行降维的概率方法。
- t - SNE :使用学生t分布对SNE进行改进,是更有效的降维与可视化方法。
- 基于深度自动编码器的降维方法 :能有效提取数据的低维特征,优于主成分分析(PCA)等经典降维方法。
2. 机器学习中的基本术语
2.1 算法、模型和假设
- 算法 :源于数学和计算机科学,是解决特定计算问题的一系列处理步骤。在机器学习中,如支持向量机(SVM)用于分类、k - 均值算法用于聚类、卷积神经网络(CNN)用于图像处理。
- 模型 :使用特定数据集训练的机器学习程序,可用于预测未知数据或做决策。一些数学模型如高斯混合模型用于构建机器学习模型,但二者并非完全等同。
- 假设 :在机器学习中常与模型互换使用。在统计学中,假设是描述特定总体中两个或多个变量关系的函数或陈述。
2.2 数据相关概念
2.2.1 数据集
数据集是为特定机器学习任务选择的数据集合。以手写数字识别为例,数据集由手写阿拉伯数字的扫描图像组成。为有效解决该任务,需收集不同人书写的数字,且数据的大小、分辨率和清晰度应尽量一致,同时要有一定的数据量规模。
2.2.2 训练、验证和测试数据集
对于监督学习,数据集会进一步分为训练集、验证集和测试集,其比例通常为60%、20%和20%,可按需调整。它们的作用如下:
| 数据集类型 | 作用 |
| ---- | ---- |
| 训练数据集 | 用于机器学习算法的训练,调整相应参数,如人工神经网络中神经元之间连接的权重。 |
| 验证数据集 | 评估训练结果,通过计算损失(预测输出与目标输出的差异)了解模型在验证数据上的准确性,并根据评估结果进一步调整参数。 |
| 测试数据集 | 评估最终模型,该步骤对模型的泛化能力至关重要,通过此数据集可获得模型的工作准确性。 |
2.2.3 标注
标注是对输入观测数据进行注释的结果,形成数据对,作为训练样本集的元素。例如,在手写阿拉伯数字识别中,为每个手写数字图像标注实际数字;在计算机视觉中,为图像和视频等原始数据添加标签,每个标签代表与数据相关的对象类别。标注工作主要手动完成,部分机器学习任务如医学图像分割需要领域专家完成。
2.2.4 真实标签(Ground - Truth)
在机器学习领域,真实标签指为给定数据集和特定任务提供的正确答案或真实标签,用于验证机器学习结果的正确性。例如,对动物图像进行分类时,真实标签是每个图像或图像中每个对象的正确标签,如“猫”“狗”或“老虎”。
2.2.5 数据集与数据库的区别
| 概念 | 定义 |
|---|---|
| 数据集 | 数据集合的概念,指一组相似的数据,通常与特定机器学习任务密切相关。 |
| 数据库 | 一种计算机软件系统,用于让计算机有组织地存储大量数据,并进行查询、添加、删除和更新操作,如学生信息管理系统。 |
2.3 特征
特征是数据中独特且易于测量的信息,有时也称为属性。特征提取主要有两种方式:
-
手工特征(Hand - Crafted Features)
:与传统机器学习结合使用。不同类型的数据有不同的手工特征表示,同一类型的数据也有多种特征表示方法。例如,在图像处理和计算机视觉领域,常用局部二值模式(LBP)、尺度不变特征变换(SIFT)和方向梯度直方图(HOG)等特征描述符和相应算法提取特征,但这些方法实时性能差、局限性大、应用范围窄且计算复杂。在自然语言处理领域,有词袋模型(BoW)、Word2vec和GloVe等表示方法。
-
学习特征(Learned Features)
:通过机器学习自动获得。深度人工神经网络,特别是卷积神经网络,非常适合通过学习自动获取图像特征。由于学习特征在深度学习过程中自动提取并用于解决特定任务,无需手动特征提取阶段。深度学习模型在特征提取和分类方面比传统手动提取特征的分类模型更具优势,但学习特征仅适用于与训练数据集接近的任务,且难以控制模型从数据中提取的特征,解释性不高。
2.4 维度
在机器学习中,维度有时指数学(物理)空间的维度,但多数情况下指数据空间的维度。
-
数学空间维度
:指表示该空间中任意点所需的最小坐标数。例如,一维空间中的点用一个坐标表示,二维空间用两个坐标,三维空间用三个坐标。
-
数据空间维度
:指数据中的特征或属性数量。高维数据指维度超过三维的数据。以数字图像为例,从欧几里得空间角度看,图像中的每个点可用两个坐标表示,是二维的;从数据空间角度看,若图像有m×n个像素,每个像素用RGB特征向量表示,则图像维度为m×n。
2.5 归一化和正则化
2.5.1 归一化
许多类型的数据需要预处理,主要是数据缩放,即归一化。对于取值范围大的原始数据,若不进行归一化,模型将无法正常工作。常见的归一化方法有:
-
最小 - 最大归一化(Min - Max Normalization)
:将数据调整到区间[0, 1],表达式为:
[x’ = \frac{x - \min(x)}{\max(x) - \min(x)}]
其中,x是原始数据值,x’是调整后的值。当输入数据中的异常值不明显时,该方法非常有用;否则,可能出现异常值丢失问题。
-
均值归一化(Mean Normalization)
:在某些情况下,需要将数据调整到区间[-1, 1],使用以下表达式:
[x’ = \frac{x - \text{mean}(x)}{\max(x) - \min(x)}]
这种方法便于使用矩阵分解等其他技术。
2.5.2 正则化
正则化是调整模型时使用的方法,用于解决机器学习模型的不适定问题,防止过拟合和欠拟合问题。
-
适定问题与不适定问题
:法国数学家雅克·阿达马(Jacques Hadamard)在1922年为数学模型提出适定问题,定义为必须满足解存在、解唯一且解的行为随初始条件连续变化三个属性。若不满足其中一个属性,则为不适定问题。在机器学习任务中,由于不同算法、同一算法的不同参数或不同训练时间会得到不同结果,均属于不适定问题。
-
过拟合与欠拟合
:过拟合是由于模型过度训练导致的,训练得到的函数曲线过于接近训练数据点,使模型过于依赖使用的数据,缺乏泛化能力,且数据中的误差和随机噪声会给模型带来大量误差。欠拟合则是由于模型训练不足,函数曲线不能充分拟合数据集,预测性能通常较差。
2.6 基线
在机器学习领域,基线指参考模型,也可作为基础模型。成为机器学习基线的前提条件如下:
1. 拥有相关论文(文档)、源代码、数据集等。
2. 在指定硬件环境中构建和调试源代码,形成可运行的程序。
3. 使用数据集进行多次测试,若基本满足论文(文档)中描述的性能指标,则可作为基线。
下面用mermaid流程图展示数据集的划分及作用:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(数据集):::process --> B(训练数据集):::process
A --> C(验证数据集):::process
A --> D(测试数据集):::process
B --> E(训练算法、调整参数):::process
C --> F(评估训练结果、调整参数):::process
D --> G(评估最终模型、获取准确性):::process
总之,了解这些关键概念和技术对于深入学习和应用机器学习至关重要,它们相互关联,共同影响着机器学习模型的性能和效果。在实际应用中,需要根据具体任务和数据特点选择合适的方法和技术。
2.5 归一化和正则化(续)
2.5.1 归一化(续)
归一化是数据预处理的重要手段,除了前面提到的最小 - 最大归一化和均值归一化,还有其他一些常见的归一化方法,以下为大家详细介绍:
-
Z - score 归一化
:也称为标准化,它将数据转换为均值为 0,标准差为 1 的分布。计算公式为:
[z = \frac{x - \mu}{\sigma}]
其中,(x) 是原始数据值,(\mu) 是数据的均值,(\sigma) 是数据的标准差。这种方法适用于数据分布近似正态分布的情况,能够使不同特征具有相同的尺度,避免某些特征因为数值范围大而对模型产生过大的影响。
-
L1 和 L2 归一化
:
-
L1 归一化
:也叫曼哈顿归一化,它将数据的每个特征向量除以其 L1 范数。L1 范数的计算公式为:(|x|
1 = \sum
{i=1}^{n}|x_i|),归一化后的向量 (x’) 为:(x’
i = \frac{x_i}{|x|_1})。
-
L2 归一化
:也叫欧几里得归一化,它将数据的每个特征向量除以其 L2 范数。L2 范数的计算公式为:(|x|_2 = \sqrt{\sum
{i=1}^{n}x_i^2}),归一化后的向量 (x’) 为:(x’_i = \frac{x_i}{|x|_2})。这两种归一化方法常用于文本分类、图像识别等领域,能够使特征向量的长度统一,便于模型处理。
2.5.2 正则化(续)
正则化在解决机器学习模型的不适定问题、防止过拟合和欠拟合方面起着关键作用。除了前面提到的概念,下面为大家介绍常见的正则化方法:
-
L1 正则化(Lasso 回归)
:在损失函数中添加 L1 范数作为正则化项,公式为:
[J(\theta) = MSE(\theta) + \alpha\sum_{i=1}^{n}|\theta_i|]
其中,(J(\theta)) 是正则化后的损失函数,(MSE(\theta)) 是均方误差损失函数,(\alpha) 是正则化系数,(\theta_i) 是模型的参数。L1 正则化会使一些参数变为 0,从而实现特征选择的功能,有助于减少模型的复杂度。
-
L2 正则化(Ridge 回归)
:在损失函数中添加 L2 范数作为正则化项,公式为:
[J(\theta) = MSE(\theta) + \alpha\sum_{i=1}^{n}\theta_i^2]
L2 正则化会使参数的值变小,但不会使其变为 0。它能够防止模型过拟合,提高模型的泛化能力。
-
弹性网络(Elastic Net)
:结合了 L1 和 L2 正则化的优点,公式为:
[J(\theta) = MSE(\theta) + r\alpha\sum_{i=1}^{n}|\theta_i| + \frac{1 - r}{2}\alpha\sum_{i=1}^{n}\theta_i^2]
其中,(r) 是一个介于 0 和 1 之间的系数,用于控制 L1 和 L2 正则化的比例。弹性网络在处理具有多个相关特征的数据集时表现较好。
下面用表格总结不同归一化和正则化方法的特点:
| 方法类型 | 具体方法 | 特点 | 适用场景 |
| ---- | ---- | ---- | ---- |
| 归一化 | 最小 - 最大归一化 | 将数据缩放到 [0, 1] 区间 | 输入数据异常值不明显的情况 |
| 归一化 | 均值归一化 | 将数据缩放到 [-1, 1] 区间 | 便于使用矩阵分解等技术 |
| 归一化 | Z - score 归一化 | 使数据均值为 0,标准差为 1 | 数据分布近似正态分布 |
| 归一化 | L1 归一化 | 将特征向量除以其 L1 范数 | 文本分类、图像识别等 |
| 归一化 | L2 归一化 | 将特征向量除以其 L2 范数 | 文本分类、图像识别等 |
| 正则化 | L1 正则化(Lasso 回归) | 使部分参数变为 0,实现特征选择 | 特征较多,需要进行特征选择的情况 |
| 正则化 | L2 正则化(Ridge 回归) | 使参数值变小,防止过拟合 | 一般的回归问题,防止过拟合 |
| 正则化 | 弹性网络 | 结合 L1 和 L2 正则化优点 | 处理多个相关特征的数据集 |
2.6 基线(续)
在实际应用中,选择合适的基线模型对于评估新模型的性能至关重要。以下为大家介绍选择和使用基线模型的一些注意事项:
-
选择合适的基线模型
:要根据具体的机器学习任务和数据集特点选择基线模型。例如,对于分类任务,可以选择逻辑回归、支持向量机等作为基线模型;对于回归任务,可以选择线性回归、决策树回归等。同时,要考虑基线模型的复杂度和计算成本,确保其在实际应用中具有可行性。
-
评估基线模型性能
:在使用基线模型之前,需要对其性能进行评估。可以使用交叉验证等方法,在训练集和验证集上评估基线模型的准确率、召回率、F1 值等指标。通过与其他模型的性能进行对比,确定基线模型是否能够满足实际需求。
-
改进基线模型
:如果基线模型的性能不理想,可以尝试对其进行改进。例如,调整模型的超参数、增加训练数据、使用更复杂的模型结构等。通过不断改进基线模型,可以提高其性能,为新模型的开发提供更好的参考。
下面用 mermaid 流程图展示选择和使用基线模型的流程:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(确定机器学习任务和数据集):::process --> B(选择合适的基线模型):::process
B --> C(评估基线模型性能):::process
C --> D{性能是否满足需求?}:::process
D -- 是 --> E(使用基线模型作为参考):::process
D -- 否 --> F(改进基线模型):::process
F --> C
综上所述,机器学习中的关键概念和技术相互关联,共同构成了机器学习的基础。降维技术能够处理高维数据,提高模型效率;数据相关概念如数据集划分、标注和真实标签对于模型训练和评估至关重要;特征提取方式影响着模型的性能和可解释性;维度、归一化和正则化则对模型的稳定性和泛化能力有着重要影响;基线模型为新模型的开发提供了参考和对比。在实际应用中,需要根据具体情况灵活运用这些概念和技术,不断优化模型性能,以实现更好的机器学习效果。
超级会员免费看

被折叠的 条评论
为什么被折叠?



