机器学习中的特征缩放
本片段将特征缩放作为一项与机器学习相关的特征工程步骤加以介绍。主讲人指出,归一化与标准化是特征缩放中的重要主题,并围绕‘为何需要缩放’以及‘不同算法在何时可能需要不同的处理方式’来组织本课内容。
Krish Naik · YouTube · 12:51
这段时长为180秒的讲座片段通过解释原始特征常在单位与量值上存在差异,引出机器学习中的特征缩放概念。主讲人将归一化与标准化置于特征工程框架下,定义了监督学习中的自变量特征与因变量特征,并用“25岁”这一例子区分量值与单位。随后他指出:当数据集包含以不同方式度量的特征(如年龄、体重、身高)时,建模前应进行缩放,并点明归一化与标准化是两种常用技术。片段恰在主讲人开始定义归一化时结束,因此未给出任何公式或完整对比。 本视频片段介绍了特征缩放中的归一化与标准化概念。主讲人将归一化定义为将特征缩放到0与1之间的范围,将标准化定义为将特征缩放为服从标准正态分布(均值为0,标准差为1)。随后,片段转入 Jupyter Notebook 中的实践演示,展示最小-最大归一化的数学公式,并使用 scikit-learn 库中的 MinMaxScaler 类在示例葡萄酒数据集上实现该方法。 这段180秒的视频,在Jupyter Notebook中面向一个小规模葡萄酒数据集,讲解了两种特征缩放方法:首先展示原始列“酒精含量”与“苹果酸”,指出二者数值量级不同;接着演示MinMaxScaler,并显示公式X_norm=(X-X_min)/(X_max-X_min),解释每个特征被缩放到区间[0,1];随后引入标准化(z分数归一化),给出公式z=(x-mu)/sigma,说明每个特征被变换为均值0、标准差1;最后演示scikit-learn中的StandardScaler。过程中使用手绘钟形曲线辅助理解标准化分布的直观含义。 这个时长为180秒的片段,结合了 `MinMaxScaler` 的简短 Jupyter Notebook 演示与关于标准化和归一化的口头对比。主讲人指出,涉及欧氏距离或梯度下降的算法需要特征缩放,例如 KNN、K 均值、线性回归、逻辑回归、人工神经网络(ANN)和卷积神经网络(CNN);而决策树、随机森林和 XGBoost 等基于树的模型通常无需缩放。他将标准化定义为使均值为0、标准差为1;将最小-最大归一化定义为将数值映射到区间0、1内,尤其适用于图像和神经网络输入。 这段51秒的片段是一场关于特征缩放讲座的结尾部分。说话人表示,根据他的经验,标准化在大多数机器学习场景中表现良好;接着总结道,本课讲解了标准化与归一化的基本区别,并通过代码进行了说明。本段未出现任何公式、推导、示例或屏幕上的数学内容。其余部分为非数学类结束内容,包括职业建议、关联频道链接、订阅请求以及告别语。
在学习检查器中查看要点和时刻,或切换阅读标签查看完整笔记。
依据视频画面与讲解整理,并非逐字语音转写。
本节以一段口语化介绍开启,主题为机器学习的预处理方法。主讲人指出,本视频将讲解归一化与标准化的基本区别,并将二者置于更宽泛的特征缩放范畴之中;他称特征缩放是特征工程中不可或缺的一部分。
随后,他缩小本课范围:并非所有算法都需要特征缩放。这起到警示作用,提醒观众切勿将缩放视为普适操作。他还预告了后续实践内容:将讨论何时应优先选用某一种缩放技术,并最终在小型 Kaggle 数据集上通过代码演示这些概念。
为阐明缩放的必要性,主讲人转向监督学习的数据工作流:首先收集数据;随后得到的数据集包含多个特征,其中既有自变量特征,也有因变量特征。在此设定下,自变量特征被用于预测因变量特征。
接着,他指出每个特征都具备两种属性:单位与量级。这些概念并未借助符号或公式引入,而是通过一个具体的人口相关数据集(含年龄、体重和身高)进行口头阐释。
以年龄为例,他说明其单位是从出生日期起计的年数。随后,他提取某个样本值“25年”中的数值部分,并解释其中25为量级,“年”为单位。这使观众能直观理解原始特征值可分解为一个数字加一种计量约定。
从这一单特征示例出发,他推广至整个数据集:若数据集包含多个特征,则这些特征通常采用不同单位与不同量级进行计算。他以身高为例加以强化说明——身高可能以英尺或英寸记录。其核心信息在于:原始数据列并不天然具备相同的数值可比性。
这个比较问题成为特征缩放的合理性依据。主讲人指出,对机器学习算法而言,将所提供的数据缩放到某个统一的量纲下是非常必要的。他列举了实现这一目标的两种最常用技术:归一化与标准化。
在本片段末尾,他通过给出归一化的简单定义来开启下一步,说道:“归一化有助于你缩放你的……”句子被截断,因此该片段仅阐明了缩放的动机,尚未给出完整的数学定义、公式,也未与标准化进行对比。
视频首先用语言定义了归一化,将其描述为一种将特征值缩放到区间0、1内的过程。
接着,标准化被定义为依据标准正态分布对特征进行缩放,该分布的均值为0,标准差为1。
主讲人强调,目标范围或目标分布的这一差异,是这两种技术的根本区别。
画面切换到 Jupyter Notebook,显示最小-最大归一化的数学公式:。
随后给出一个实际示例,展示使用 pandas 加载 'wine_data.csv' 数据集的一个子集,选取前三个列,将其重命名为 'Class'、'Alcohol' 和 'Malic',并显示前五行数据。
最后,演示了如何使用 scikit-learn 实现归一化:代码导入 `MinMaxScaler`,创建其实例,并专门对 DataFrame 中的 'Alcohol' 和 'Malic' 列调用 `fit_transform` 方法,得到介于0和1之间的缩放值。
视频开头展示一个 Jupyter 笔记本,显示葡萄酒数据集的前几行,列名为 `Class`、`Alcohol` 和 `Malic`。可见的数值量级已明显不同:`Alcohol` 约为13–14,而 `Malic` 约为1.7–2.6。主讲人利用这一对比引出特征缩放的必要性,指出各列数据使用不同单位和量级测量,因此应被调整至可比的尺度上。
随后笔记本以代码形式展示最小-最大缩放流程:`from sklearn.preprocessing import MinMaxScaler`、`scaling=MinMaxScaler()` 以及 `scaling.fit_transform(df[['Alcohol','Malic']])`。当滚动查看输出数组时,主讲人指出变换后的值现全部落在0与1之间,并特别标出如 `1.` 和 `0.5` 等条目,作为该有界重缩放效果的例证。
一段 Markdown 内容以标题 `归一化(最小-最大归一化)` 形式正式定义该方法,并给出公式。说明指出:每个特征单独处理——减去其自身最小值,再除以其自身极差,从而将该特征在整个观测范围上映射到。
课程接着转向第二种方法:`标准化(z 分数归一化)`。屏幕上显示的公式为,配套文字说明:变换后的特征应具备标准正态分布的性质,即均值为、标准差为。从概念上讲,减去使数据以零为中心,而除以则将离散程度重缩放为单位标准差。
对应的 scikit-learn 实现随即出现:`from sklearn.preprocessing import StandardScaler`、`scaling=StandardScaler()` 以及 `scaling.fit_transform(df[['Alcohol','Malic']])`。`Out[11]` 中的输出同时包含正数与负数,例如 `1.51861254` 和 `-0.5622498`,在视觉上清晰区别于此前的0到1归一化。
为了建立直观理解,主讲人在笔记本上手绘了一条蓝色钟形曲线,并说明标准化变量以0为中心,其右侧依次标出标准差刻度1、2、3。该示意图并非精确计算所得,但有助于强化z分数变换后中心化与单位间距的概念。
在最后几秒,笔记本画面回溯滚动展示两部分内容,使对比更加明确:最小-最大归一化利用特征的最小值与最大值,将数值强制映射至;而标准化则利用特征的均值与标准差,生成均值为零、方差为一的分数。主讲人最后指出,`StandardScaler`与`MinMaxScaler`是实现这两类任务的常用工具。
视频片段以一个静态的 Jupyter Notebook 界面开场,其中显示了三行关键代码:`from sklearn.preprocessing import MinMaxScaler`、`scaling = MinMaxScaler()` 和 `scaling.fit_transform(df[['Alcohol', 'Malic']])`。其下方输出以形如 `[0.84210526, 0.1916996]` 的数对开头,并包含一行以 `1.` 起始的内容。该画面将最小-最大缩放确立为一个具体的预处理步骤,随后课程转向更广泛的议题:何时应使用它。
镜头切换至主讲人后,核心问题变为:何时应采用标准化,何时应采用归一化?给出的答案是:这取决于具体算法,而非普适规则。主讲人首先指出涉及欧氏距离的模型,继而指出使用梯度下降训练的模型,是两类主要需进行缩放的关键模型族。
梯度下降被非正式地描述为:沿着类似抛物线的曲线向全局最小值移动。在主讲人的解释中,对输入值进行缩放有助于优化器更快抵达该最小值。这一说法在片段中并未以形式化的收敛定理呈现,而是作为预处理的一种直观工程动因。
基于这一动因,课程列举了若干应使用缩放的具体算法:K 近邻(KNN)、K 均值聚类、线性回归、逻辑回归、人工神经网络以及卷积神经网络。这些算法的共性在于:要么对距离敏感,要么依赖迭代优化——而特征量纲不一致均会扭曲这两类过程。
接下来的对比对象是基于树的学习器。决策树、随机森林、XGBoost 以及相关的装袋或提升方法均被指出无需缩放。给出的理由是:树结构通过特征条件进行分裂,因此某特征数值本身大小并不会实质性地改变其分支结构。
最后一部分直接比较这两种缩放技术。标准化由其目标统计量定义:均值为0、标准差为1;最小-最大归一化则由其目标区间定义:将数值映射至 [0,1] 区间内。主讲人补充了一个基于经验的偏好:他在许多实际场景中发现标准化效果更好,但随即强调,这并不意味着最小-最大归一化不好。
视频片段结尾将最小-最大归一化与神经网络及图像数据联系起来。图像被描述为像素值范围从0到255,主讲人指出,这些值通常被重新缩放至 [0,1] 区间。他进一步将同一逻辑延伸至 TensorFlow 和 Keras 等框架中的人工神经网络与卷积神经网络输入,指出有界的0到1输入有助于网络更快地学习权重。
该片段从讲话者正在思考的中途开始,他先收尾了关于何时使用某种方法的观点,随后给出了一条实用经验法则:在许多机器学习场景中,他发现标准化效果良好;他随即强调,这一说法基于个人经验,而非形式化定理。
接着,他以数学内容收尾,指出本课已涵盖标准化与归一化的基本区别,并且还通过代码进行了讲解;但在此片段中,既未再次呈现定义,也未重现代码。
此后,内容转向非数学主题,包括频道推广与职业指导:他提到了一份有关数据科学职业转型建议的关联资源,邀请观众订阅,并以简短告别结束。
本片段将特征缩放作为一项与机器学习相关的特征工程步骤加以介绍。主讲人指出,归一化与标准化是特征缩放中的重要主题,并围绕‘为何需要缩放’以及‘不同算法在何时可能需要不同的处理方式’来组织本课内容。
主讲人明确提醒:特征缩放并非对每个算法都必不可少。本片段中仅提出该观点,尚未展开为具体算法示例。
在本处描述的监督学习设定中,所收集的数据包含多个特征,其中包括自变量特征与一个因变量特征。自变量特征用于预测因变量特征。
主讲人指出,每个特征具有两个重要属性:单位与量级。单位是测量所采用的约定,而量级则是附着于该测量上的数值。
以年龄为例,主讲人将“25年”分解为量级与单位:量级是25,单位是年。该示例旨在使上述抽象区分变得具体可感。
当数据集包含大量特征时,这些特征通常使用不同的单位和数量级进行计算。例如身高可能以英尺或英寸为单位,这表明各列数据本身并不处于同一量纲上。
由于特征的单位和数量级各不相同,主讲人指出,提供给机器学习算法的数据应当缩放到某个统一的尺度上。归一化与标准化被列为实现这一目标的两种最常用技术。
该片段在主讲人刚开始定义归一化时即告结束,仅提到“归一化有助于将你的……”——本段未给出完整定义、公式,也未与标准化进行任何比较。
一种特征缩放技术,将数值变换至特定范围内,通常为0、1。
一种特征缩放技术,将数据变换为服从标准正态分布,其均值为0,标准差为1。
核心区别在于目标:归一化旨在实现固定范围(例如0、1),而标准化旨在实现特定的统计分布(均值为0,标准差为1)。
在 scikit-learn 中,最小-最大归一化通过导入 MinMaxScaler、实例化该类,并对目标特征列调用 fit_transform 方法来完成。
视频以一份原始葡萄酒数据表开篇,其中`Alcohol`(酒精含量)与`Malic`(苹果酸含量)两列数值量级差异显著。主讲人指出,当各特征尺度相差悬殊时,应在进一步分析前将其转换至可比尺度。
最小-最大归一化对每个特征独立进行缩放,依据其自身的最小值与最大值。屏幕上显示的规则为,该规则将特征取值范围映射至。
笔记本演示了实际操作流程:导入`MinMaxScaler`,实例化该对象,再对选定列`['Alcohol','Malic']`调用`fit_transform`方法。屏幕上显示的结果数组各项取值均落在0与1之间。
标准化又称z分数归一化,它利用每个特征的均值与标准差进行变换:。视频指出,变换后的特征均值为0,标准差为1。
第二次代码演示导入`StandardScaler`,创建`scaling=StandardScaler()`对象,并对`df[['Alcohol','Malic']]`调用`fit_transform`。与最小-最大归一化的输出不同,屏幕上显示的标准化结果包含负数,因为数据以0为中心。
该片段对比了在同一组特征上应用的两种缩放策略。最小-最大归一化将数值限定在 范围内,使用 和 ;而标准化则通过 和 进行中心化与重新缩放,从而生成可能为负数的z分数。
通过手绘钟形曲线来可视化标准化的效果:曲线中心对应均值0,向右等距的刻度分别代表一个、两个和三个标准差。该示意图仅作示意之用,并非严格证明每个变换后的特征都恰好服从正态分布。
一个 scikit-learn 示例对 DataFrame 的 `Alcohol` 和 `Malic` 列应用 `MinMaxScaler`,调用方式为 `scaling.fit_transform(df[['Alcohol', 'Malic']])`。所展示的输出是一个数值数组,其可见条目大致落在0与1之间,从而在实践中演示了最小-最大归一化。
讲座指出,对于依赖欧几里得距离或基于梯度的优化算法而言,特征缩放非常重要。视频片段中提到的例子包括:K近邻(KNN)、K均值聚类(K-means clustering)、线性回归、逻辑回归、人工神经网络以及卷积神经网络。
决策树、随机森林、XGBoost 以及相关的装袋法(bagging)和提升法(boosting)等方法被描述为无需特征缩放,因为它们的分裂依据是特征的条件判断,而非特征值的绝对大小;对某个特征进行重缩放,并不会显著改变分支点的位置。
标准化在语言上被定义为:对某一特征进行变换,使其均值变为0,标准差变为1。视频中提到了这些目标性质,但并未展示完整的代数公式。
最小-最大归一化被定义为:将数值重新缩放到从0到1的区间内。主讲人特别推荐该方法用于图像输入及神经网络工作流,因为这类场景通常需要有界输入。
按知识点查看条件、步骤和证据。补充解释与视频直接内容分别标明。
笔记本在‘归一化(最小-最大归一化)’标题下显示公式。
X_{norm}
特征经最小-最大缩放后的归一化值。
区间[0, 1]内的实数。
在所显示的最小-最大归一化公式中作为分子项出现。
X
特征在缩放前的原始值。
实数。
在所显示的最小-最大归一化公式中以形式出现。
X_{min}
该特征在整个数据集中的最小值。
实数。
在所显示的最小-最大归一化公式中以形式出现。
X_{max}
该特征在整个数据集中的最大值。
实数。
Python 代码单元格显示 `df=pd.read_csv(...)`,随后是 `df.head()`。
df
存储已加载葡萄酒数据集的 Pandas DataFrame 对象。
Pandas 数据框
Python 代码单元格显示 `scaling=MinMaxScaler()` 和 `scaling.fit_transform(df[['Alcohol', 'Malic']])`。
scaling
来自 scikit-learn 的 MinMaxScaler 类的一个实例,用于执行归一化。
sklearn.preprocessing.MinMaxScaler 对象
屏幕上显示的 Markdown 公式:X_norm = (X - X_min) / (X_max - X_min)。
特征经最小-最大缩放后的归一化值。
实数值特征;当 X_max > X_min 时,输出被缩放到区间 [0, 1] 内。
出现在屏幕上显示的最小-最大公式 X_norm = (X - X_min)/(X_max - X_min) 中。
讲解标准化与缩放时,说话人将 x 称为特征数据。
X
正在被变换的原始特征值。
在屏幕上显示的最小-最大公式中以 X_min 形式出现。
该特征在整个数据集中的最小值。
在屏幕上显示的最小-最大公式中以 X_max 形式出现。
该特征在整个数据集中的最大值。
屏幕上显示的 Markdown 公式:z = (x - mu)/sigma。
说话人称这是标准化或 z 分数归一化的基础公式。
z
标准化特征值,也称为 z 分数。
在显示的标准公式中以 表示。
讲解者明确指出 mu 代表均值。
特征分布的均值。
主讲人将本主题介绍为“归一化与标准化的基本区别”,并指出这是特征缩放中的一个重要话题,而特征缩放属于特征工程的一部分。
在本片段中,特征缩放被呈现为一个特征工程步骤,安排在讨论何时应用归一化或标准化之前;主讲人围绕两个核心问题展开本课:一是理解为何需要特征缩放,二是厘清归一化与标准化的区别。
该讨论置于监督机器学习与特征工程的背景下。
此时间段内未展示任何数学公式。
主讲人指出,在收集数据后会得到大量特征,其中包括自变量特征与因变量特征;在监督机器学习中,我们借助自变量特征来预测因变量特征。
本片段界定了特征缩放所适用的数据场景:所收集的数据包含多个特征,其中若干自变量特征用于在监督机器学习中预测一个因变量特征。
适用于主讲人所描述的监督机器学习应用场景。
未提供任何符号或等式。
主讲人指出,特征具有两个重要属性:单位与量级。
对于年龄,他说明其单位是从出生日期起算的年数。
在“25年”这一例子中,他指出“年”是单位。
单位是附加在特征值上的计量约定。主讲人以‘年龄(以年为单位)’为例说明这一点;在短语“25年”中,“年”就是单位。
通过口头举例引入,而非形式化符号表示。
该例子涉及一个与人物相关的数据集,包含年龄、体重和身高。
主讲人指出,特征具有两个重要属性:单位和量值。
他将量值解释为基本的数值。
在“25年”这一例子中,他指出25是量值。
量值是与特征测量相关联的数值。在主讲人的例子“25年”中,量值是25,而单位是年。
通过具体的数字例子进行口头讲解。
未展示任何符号化表示。
主讲人指出,如果特征数量很多,它们必然使用不同的单位和量级进行计算。
他以身高为例,说明其可能用英尺或英寸来计算。
他得出结论:对机器学习算法而言,将所提供的数据缩放到某一统一尺度是非常必要的。
他将归一化和标准化称为两种最常用的技术。
该片段指出,原始特征通常在单位和量级上存在差异,因此机器学习的输入数据应被转换到一个共同的尺度上。归一化和标准化被列为两种最常见的缩放技术。
动机来源于那些包含多个特征的数据集,而这些特征的测量单位或量级各不相同。
该片段尚未给出任一技术的具体公式或目标取值范围。
主讲人开头说道:“现在,如果我给你一个归一化的简单定义,归一化能帮你缩放你的……”,但片段在此句结束前就中止了。
归一化的完整定义在表述完成前就被截断了。
本片段中实际并未给出任何公式、取值范围,也未与标准化进行对比说明。
本片段仅出现了归一化定义的开头部分。说话人刚开始说明归一化有助于将数据按比例缩小,但解释不完整,因为该片段在句子中途结束。
该陈述不完整,不应视作完整的定义。
未展示任何数学表达式。
主讲人说道:“归一化有助于将特征缩放到零到一之间。”
笔记本文字显示:‘在此方法中,我们将把特征值缩放到 0 到 1 之间。’
归一化,特指最小-最大归一化,是一种特征缩放技术,它将某个特征的取值变换至指定范围内,通常为 0 到 1 之间。
适用于数值型特征。
需要计算该特征的最小值和最大值。
假设成立,以避免除零错误。
讲解者说明:“标准化有助于您依据标准正态分布对特征进行缩放……均值通常为零,标准差通常为一。”
本片段中未展示或陈述标准化的显式数学公式。
标准化是一种特征缩放技术,它将数据变换为具有标准正态分布特性的形式,即数据以均值0为中心,标准差为1。
适用于数值型特征。
依赖于近似正态分布这一假设或目标。
代码单元格显示 `from sklearn.preprocessing import MinMaxScaler`、`scaling=MinMaxScaler()` 以及 `scaling.fit_transform(df[['Alcohol', 'Malic']])`。
讲解者解释了如何创建 MinMaxScaler 对象,并调用 `fit_transform` 方法传入特定特征。
要在 Python 中使用 scikit-learn 实现最小-最大归一化,需导入 MinMaxScaler 类,实例化该类,然后对 DataFrame 中指定的特征子集调用 fit_transform 方法。
需要 scikit-learn 库。
输入数据必须为数值型。
Markdown 标题“归一化(最小-最大归一化)”,其下文字为:“在此方法中,我们将特征值缩放到 0 至 1 的范围内。”
显示的公式为 X_norm = (X - X_min)/(X_max - X_min)。
说话人表示数值正被缩放到 0 至 1 的范围内。
视频将最小-最大归一化定义为一种特征缩放方法:通过减去该特征的最小值、再除以该特征的极差,将每个特征的取值映射到从0到1的区间内。
按特征分别应用。
要求该特征具有有限的最小值和最大值。
输出被描述为介于0与1之间。
Markdown标题“标准化(Z分数归一化)”,其下方文字说明:各特征被转换为服从标准正态分布,即均值(μ)=0、标准差(σ)=1。
显示公式:z = (x - mu)/sigma。
讲解者指出,标准化也称为Z分数归一化,并给出公式:x减去mu,再除以标准差。
视频将标准化定义为:利用Z分数公式,对每个特征进行变换,使其均值为0、标准差为1。
按特征分别应用。
使用该特征的均值和标准差。
目标转换后的统计量为均值0和标准差1。
输出[3]显示酒精(Alcohol)值大约在13.16到14.23之间,苹果酸(Malic)值大约在1.71到2.59之间。
说话人指出这些数值之间存在巨大差异,且数量级相差悬殊,因此我们应尝试将它们缩放到同一量级上。
该片段通过展示不同列可能具有显著不同的数量级,来引出缩放的必要性:建模前需将原始数值调整至可比的量级。
当特征具有不同单位或不同取值范围时,此操作最为相关。
视频未明确说明哪些算法必须进行缩放。
讲解者指出:“因此,这就是标准化与归一化之间的基本区别。”
归一化与标准化的根本区别在于它们的目标分布/范围:归一化将特征缩放到一个固定范围,例如0到1;而标准化则将特征缩放为服从标准正态分布(均值为0,标准差为1)。
二者均为应用于数值型数据的特征缩放技术。
适用于所有可应用这些技术的数值型数据集。
说话人说:这些值被缩放到0至1之间,此处出现的最大值为1,而最小值将介于0与1之间。
Out[8] 显示了变换后的值,包括1和0.5,且未见超出 [0,1] 范围的值。
口语中所说的“最小值将介于0与1之间”不如屏幕上显示的公式精确,后者表明每个特征的最小值均变为0。
应用最小-最大归一化后,变换后的特征值位于0与1之间,且该特征的最大值被映射为1。
该特征具有明确定义的最小值和最大值。
对该特征应用最小-最大变换。
对每个选定的特征列。
Markdown 文本说明:特征将被变换,使其具有标准正态分布的性质,即均值(μ)=0,标准差(σ)=1。
讲解者重申:无论对哪个特征进行变换,其均值都将变为0,标准差都将变为1。
视频中提到“标准正态分布的性质”,但并未证明:对任意原始数据,变换后的分布恰好就是正态分布。
标准化对每个特征分别进行变换,使其均值为0、标准差为1。
该特征具有确定的均值,且标准差不为零。
z 分数变换按特征逐个应用。
对每个选定的特征列。
讲解者指出:我刚刚向您展示的公式,将被应用于每一个特征。
缩放公式被分别应用于每一列特征。
存在多个特征列。
每一列都被视为一个独立的特征。
对于所选集合中的每一个特征。
“梯度下降本质上是指抛物线曲线,你需要在其中找到最优的最低点,即全局最小值点。”
这是简化的口头描述;视频片段中并未说明凸性或可微性等假设。
主讲人将梯度下降描述为沿着类似抛物线的曲线搜索,以快速到达全局最小值,并指出缩放有助于更快地定位该点。
优化问题被非正式地表述为需寻找一个极小值点。
特征值可在优化前进行缩放。
主讲人对所讨论算法做出的非正式普适性断言。
“根据我的经验……在我实际使用标准化的许多应用场景中……它的表现基本优于最小-最大缩放器。”
这是一个基于轶事的经验性主张,并非视频片段中陈述的定理或经实验确立的结果。
主讲人声称,在他自己使用的许多应用场景中,标准化的表现优于最小-最大归一化。
该比较基于主讲人的个人经验,而非视频片段中展示的受控研究。
该主张仅限于主讲人所遇到的“许多应用场景”。
“在大多数使用卷积神经网络……以及人工神经网络的深度学习技术中,你基本上会采用最小-最大缩放法,因为需要将数值缩放到0至1之间。”
“TensorFlow 和 Keras 等库确实接受0至1范围内的输入,这有助于它们更快地学习权重。”
该片段未为该关于库行为的主张提供正式证明或文献引用。
说话者指出,人工神经网络/卷积神经网络的工作流程通常采用最小-最大缩放,将输入置于[0,1]区间内,而这有助于网络更快地学习权重。
输入是数值型特征或图像像素值。
该模型是使用基于梯度的优化方法训练的人工神经网络或卷积神经网络。
按说话者的表述,这一说法宽泛地适用于‘大多数深度学习技术’。
显示的公式为 X_norm = (X - X_min)/(X_max - X_min)。
Out[8] 显示了变换后的值,包括 1 和 0.5,且均落在 [0,1] 区间内。
从显示的最小-最大公式出发。
笔记本中展示的公式。
将特征的最小值代入公式,会使分子为零。
直接代入该公式。
将特征的最大值代入公式,会使分子与分母相等。
直接代入该公式。
对于介于最小值与最大值之间的任意数值,其比值始终介于0与1之间。
除以正数区间时的单调性。
最小-最大变换将特征取值范围 [X_min, X_max] 映射到 [0,1]。
显示公式:z = (x - mu)/sigma。
讲解者说明:x 减 mu 表示特征数据减去均值,再除以标准差。
从屏幕上显示的标准化公式出发。
笔记本中展示的公式。
减去均值可使特征分布以0为中心。
均值中心化的定义。
除以标准差可重新缩放数据的离散程度,使得新的标准差为1。
按常数因子缩放的标准性质。
z分数变换首先将数据以0为中心进行平移,然后将其缩放为单位标准差。
说话者从欧氏距离和梯度下降出发,进而举例说明了K近邻(KNN)、K均值(K-means)、线性回归、逻辑回归、人工神经网络(ANN)以及卷积神经网络(CNN)等算法。
其推理方式是口头化且直观的,而非形式化的。
识别那些行为依赖于特征量级(尤其是距离计算)的模型族。
说话人直接指出:算法“涉及欧氏距离。”
识别通过迭代优化趋近最小值所训练的模型族。
说话人直接指出:深度学习技术“基本都涉及梯度下降。”
论证缩放有助于更快地到达最小值。
说话人用直观解释将缩放后的数值与更快找到最小值点联系起来。
列举需要缩放的具体例子:K近邻(KNN)、K均值聚类、线性回归、逻辑回归、人工神经网络(ANN)、卷积神经网络(CNN)。
在音频中被明确提及。
特征缩放被呈现为距离型学习器和梯度型学习器所必需,但对树型学习器则非必需。
“因为归根结底你只是在构建一棵决策树……决策树本质上是依据特征进行划分的。”
该片段仅给出高层次的理由,而非形式化的不变性证明。
指出决策树方法使用特征条件对数据进行划分。
音频中直接陈述。
注意,在此类条件下,将某个特征从较大值改为较小值,并不会显著改变其分支逻辑。
主讲人的非正式解释:“如果你保持该值较高,或者保持该值较小,影响都不会太大。”
将同样的推理延伸至随机森林、XGBoost、袋装法(bagging)以及基于决策树的提升法(boosting)。
主讲人明确将这些方法与决策树类方法归为一组。
根据讲座内容,基于树的模型无需特征缩放,因为它们的分裂依据是条件判断,而非对数值大小敏感。
说话人表示他收集了关于某个人的数据,例如年龄、体重和身高。
他以“25年”为例,解释说25是量值,而“年”是单位。
用年龄作为例子,说明单个特征值如何分解为量值和单位。
一个人相关的数据集包含年龄、体重和身高这类特征。
一个观测到的年龄值被表述为25年。
指出“25年”中哪一部分是量值,哪一部分是单位。
说话人从一个人相关的数据集中选取年龄作为具体特征。
音频中直接陈述。
他将年龄的单位定义为从出生日期起算的年数。
音频中直接陈述。
对于“25年”这一数值,他将数字部分25与计量单位“年”分离开来。
音频中直接陈述。
他将25标记为量值,“年”标记为单位。
音频中直接陈述。
在“25年”中,量值是25,单位是“年”。
该示例与说话人对短语进行的明确口头分解(即分解为数值与单位)完全一致。
说话人指出,若存在多个特征,则它们可能使用不同的单位和量值进行计算。
他以身高为例,说明其可用英尺或英寸来计量。
说明为何同一数据集中的不同特征可能不具有相同的单位或量值。
一个数据集包含多个特征。
身高就是这样一个特征。
说明即使在同一数据集中,特征的单位也可能各不相同。
主讲人从年龄这一例子推广到具有多个特征的数据集。
音频中直接陈述。
他指出,这些特征将使用不同的单位和量级进行计算。
音频中直接陈述。
他以身高作为具体例子,说明其可能以英尺或英寸为单位进行测量。
音频中直接陈述。
这支持了如下论断:原始特征的尺度在不同变量之间并非天然对齐。
由主讲人的例子及其结论推导得出。
身高可用英尺或英寸表示,说明不同特征可能带有不同的单位和量级。
该示例与主讲人所陈述的“在机器学习前对数据进行缩放”这一动机一致。
代码:`df=pd.read_csv('https://raw.githubusercontent.com/rasbt/pattern_classification/master/data/wine_data.csv', header=None, usecols=[0,1,2])`,随后进行列重命名,并执行 `df.head()`,输出显示列为 Class、Alcohol、Malic。
讲解者描述了读取 CSV 文件、选取三列、重命名列名以及查看前五条记录的过程。
加载葡萄酒数据集的一个子集,并检查其初始结构。
wine_data.csv 的 URL 地址
选取前三个列(索引分别为0、1、2)
将列重命名为“Class”、“Alcohol”、“Malic”。
显示处理后的DataFrame的前五行。
读取无表头的CSV文件,并仅选取前三列。
Pandas read_csv函数的用法。
为所选列指定新的列名。
直接赋值给DataFrame的columns属性。
显示DataFrame的前五行。
Pandas head方法的默认行为。
一个表格,共显示5行,列名为Class、Alcohol和Malic,包含原始数值数据。
对Out[3]单元格输出结果进行目视检查,与所述步骤一致。
代码:`from sklearn.preprocessing import MinMaxScaler`,`scaling=MinMaxScaler()`,`scaling.fit_transform(df[['Alcohol', 'Malic']])`。输出为介于0与1之间的浮点数数组。
讲解者说明如何导入MinMaxScaler、创建其实例,并对“Alcohol”和“Malic”两列应用fit_transform方法。
完整输出数组在视图中被截断;仅显示开头部分。
将葡萄酒数据集中的“Alcohol”和“Malic”特征归一化到区间0、1。
包含“Alcohol”和“Malic”列的DataFrame df
来自sklearn.preprocessing的MinMaxScaler
使用最小-最大缩放法变换指定特征。
从库中导入必要的类。
标准Python导入语法。
实例化缩放器对象。
scikit-learn估计器所采用的面向对象编程模式。
一步完成缩放器的拟合与变换。
一种便捷方法,将拟合(学习最小值与最大值)和变换(应用公式)结合在一起。
一组归一化后的数值,其中原始最小值映射为0,原始最大值映射为1。
输出值被观察到处于[0, 1]范围内,这与最小-最大归一化的定义一致。
输出[3]显示前五行,列名为Class、Alcohol和Malic。
代码单元格In[8]:scaling.fit_transform(df[['Alcohol','Malic']])。
输出[8]显示数组值,例如[0.84210526, 0.1916996]、[0.5710263, 0.2055336],并包含1和0.5。
仅前几行变换后的数据清晰可读;完整数据集的尺寸不可见。
使用最小-最大归一化方法,对所展示的葡萄酒数据集中选定的数值特征“Alcohol”和“Malic”进行缩放。
输出[3]显示若干样本行,其中Alcohol值约为13.16至14.23,Malic值约为1.71至2.59。
代码从sklearn.preprocessing导入MinMaxScaler。
选定的列为['Alcohol','Malic']。
将变换后的特征值统一映射到0至1的尺度上。
导入最小-最大缩放器类。
显示在代码单元格 In[4] 中。
创建一个缩放器对象。
显示在代码单元格 In[5] 中。
对缩放器进行拟合并转换所选列。
显示在代码单元格 In[8] 中。
显示的输出数组包含介于 0 到 1 范围内的值,其中最大值为 1。
可见于 Out[8]。
所选特征被转换为介于 0 和 1 之间的值,且该特征的最大值映射为 1。
对 Out[8] 的可视化检查显示,变换后的条目均落在 [0,1] 区间内,并包含数值 1,符合所述的最小-最大变换行为。
代码单元格 In[9]:from sklearn.preprocessing import StandardScaler。
代码单元格 In[10]:scaling=StandardScaler()。
代码单元格 In[11]:scaling.fit_transform(df[['Alcohol','Malic']])。
Out[11]显示了诸如[1.51861254, -0.5622498]、[-0.2468963, -0.49941338]以及负值如-1.25345042等数值。
变换后输出的精确经验均值与标准差未在屏幕上进行数值验证。
使用标准化(z分数标准化)对同样选定的特征“Alcohol”和“Malic”进行缩放。
选取相同的DataFrame列['Alcohol','Malic']。
代码从sklearn.preprocessing导入StandardScaler。
屏幕上显示的公式为z = (x - mu)/sigma。
对特征进行变换,使每个特征的均值为0、标准差为1。
导入标准缩放器类。
显示在代码单元In[9]中。
创建一个缩放器对象。
显示在代码单元In[10]中。
拟合缩放器并对所选列进行变换。
显示在代码单元格 In[11] 中。
变换后的数值包含正数和负数,与 0 到 1 的最小-最大缩放输出不同。
可见于 Out[11]。
所选特征被变换为以 0 为中心的 z 分数,输出中同时出现正数和负数。
标准化后出现负值,且所展示的公式 z=(x-mu)/sigma,均符合均值中心化与单位方差缩放的特点。
可见代码:`from sklearn.preprocessing import MinMaxScaler`;`scaling = MinMaxScaler()`;`scaling.fit_transform(df[['Alcohol', 'Malic']])`。
可见输出以`array([[0.84210526, 0.1916996 ], [0.57105263, 0.2055336 ], ... [1., 0.17786561], ...])`开头。
本片段中未显示原始未变换的列值,因此仅凭所展示的输出无法验证缩放器实际使用的最小值和最大值。
在 scikit-learn 中对 DataFrame 的两列应用最小-最大缩放,并检查变换后的输出。
存在一个 DataFrame `df`。
选中的两列是“Alcohol”和“Malic”。
从`sklearn.preprocessing`中导入`MinMaxScaler`。
为选中的列生成缩放后的数值。
导入最小-最大缩放类。
直接显示在笔记本单元格中。
实例化缩放器对象。
直接显示在笔记本单元格中。
在一次调用中,对选中的列进行拟合并完成变换。
直接显示在笔记本单元格中。
将显示的变换后数组视为缩放步骤的输出。
可见于笔记本输出中。
选中的列被变换为一个数值数组,其可见元素大致位于0到1之间。
对输出数组的视觉检查显示,其数值如0.84210526、0.1916996和1.0所示,这与说话人后续所言“最小-最大缩放将数值映射到区间0、1内”一致。
整个片段展示了一位身穿亮粉色Polo衫的男士,正面对镜头讲话,背景是一面素净的浅色墙壁,右侧可见一块白板。
他在讲解概念时反复使用双手做手势;屏幕上未出现任何公式、图表、幻灯片或手写的等式。
主讲人身穿亮粉色Polo衫
素净的浅色墙壁
右侧有一块白板
手势
主讲人在讲话过程中不断变换手部位置和面部表情。
屏幕上没有数学内容发生变化,因为根本未显示任何数学内容。
镜头始终保持中景构图。
片段中未展示任何公式、图表、表格或代码。
数学内容完全通过口语和手势传达,而非借助视觉符号或图表。
屏幕录制画面向下滚动,依次展示 Jupyter Notebook 界面中的 Markdown 文本、公式、代码单元格以及输出表格/数组。
Markdown 标题
LaTeX 公式
Python 代码单元格
DataFrame 输出表格
NumPy 数组输出
滚动位置向下移动
笔记本的不同部分随之显现
滚动过程中笔记本的内容保持静止
展示了在计算环境中将理论讲解与实际代码实现并行呈现的工作流程。
笔记本中显示 Out[3] 表格,列名为 Class、Alcohol、Malic,并展示前五行。
讲解者指出,酒精含量(Alcohol)与苹果酸含量(Malic)依据不同单位和量级记录,并强调二者差异巨大。
DataFrame 输出[3]
列名:Class、Alcohol、Malic
数值行号为 0 至 4
鼠标高亮显示不同行,同时讲解者说明各数值量级存在差异。
在此区间内,原始数值保持不变。
仅讨论了两个数值型特征列的缩放处理。
该表格通过视觉方式表明所选特征具有不同的数值范围,从而引出特征缩放的必要性。
代码单元格 In[8] 调用 scaling.fit_transform(df[['Alcohol','Malic']]),Out[8] 显示一长串小数值。
讲解者指出所有数值均被缩放到 0 至 1 之间,并特别指出最大值为 1。
由于用户滚动页面,输出数组并非所有行都能同时可见。
Out[8] 数组输出
诸如 0.84210526、0.1916996、1、0.5 等数值
滚动输出区域以显示更多经变换的行。
像 1 和 0.5 这样的具体数值变得可见。
所有可见的变换后数值均保持在0与1之间。
该变换被应用于所选的两个特征列。
可视化输出展示了最小-最大归一化对所选特征的影响。
出现标题为“归一化(最小-最大归一化)”的Markdown章节,其中包含说明性语句和公式。
标题“归一化(最小-最大归一化)”
关于将数值缩放到0至1范围内的句子
公式 X_norm = (X - X_min)/(X_max - X_min)
笔记本视图向上移动,以展示Markdown说明内容。
公式保持静止,同时讲解者对其展开说明。
本片段提供了此前展示的MinMaxScaler输出背后的严格数学定义。
出现标题为“标准化(Z分数归一化)”的Markdown章节,其中包含关于均值(mu)=0和标准差(sigma)=1的文字说明,以及公式 z = (x - mu)/sigma。
标题“标准化(Z 分数标准化)”
关于标准正态分布性质的说明性句子
公式 z = (x - mu)/sigma
笔记本视图切换至标准化部分。
公式与目标统计量在讲解过程中保持固定。
本片段在代码演示之前介绍 Z 分数标准化的数学规则。
代码单元格 In[9]-In[11] 与输出 Out[11] 展示了 StandardScaler 的使用及包含负数的变换后数组值。
数据集的完整范围不可见。
Out[11] 数组输出
诸如 1.51861254、-0.5622498、-1.25345042 这样的数值
输出区域已滚动,显示出许多标准化的行。
所选列保持为['Alcohol','Malic']。
该变换基于所显示的z分数公式。
输出通过同时呈现正负居中数值,在视觉上与最小-最大缩放形成对比。
一条蓝色钟形曲线绘制在笔记本输出区域上方。
说话人称:若数据被转换为标准正态分布,则会如此转换为钟形曲线,此处均值为0,向右每经过一个标准差依次为1、2、3。
该图示为示意图,并非该数据集的实际直方图。
蓝色钟形曲线
隐含的横轴
口述标注0、1、2、3
在笔记本上徒手勾勒出一条曲线。
主讲人口头标出中心为0,并向右依次标出1、2、3。
该示意图仅为示意性展示,并非通过计算绘制的图像。
所期望的不变性质是:以0为中心,以标准差为单位间距进行标准化。
该图示直观呈现了一个标准化变量:它是一个以0为中心的对称分布,横轴上以标准差为单位进行标记。
Jupyter Notebook 界面占据整个屏幕,显示若干代码单元格及一个输出数组。
在此时间段内,代码与输出均保持静止。
Jupyter Notebook 窗口
代码单元格
输出数组
鼠标光标
在可见的时间段内,未发生滚动或代码执行操作。
相同的三行代码及输出数组的开头部分持续显示在屏幕上。
该画面确立了最小-最大归一化的实际应用背景,随后讲座转入概念性讨论。
说话人在讲话过程中反复抬起双手、指向屏幕、张开手掌,并做出小幅捏合动作。
大约在00:00:33,他在讲解梯度下降与极小值时,于空中划出一条曲线运动。
男性主讲人
白墙
白板边缘
手势
镜头在00:00:15处从笔记本切至主讲人。
当对比不同算法并解释缩放选择时,手势动作更加明显。
在纯口述段落中,屏幕上未绘制任何公式、图表或示意图。
这些手势仅起强调作用;数学内容由口语传达,而非屏幕上的符号表示。
整个视频片段显示一名男子站在素色墙面背景前,直视镜头讲话,并辅以手势;画面中未出现任何公式、图表、表格或代码。
单人主讲
素色墙面背景
手势表达
讲话者在整个片段中持续讲话并配合手势。
屏幕上未出现任何数学符号。
本片段中未展示任何代码窗口或示例输出。
画面内容服务于口头总结与建议环节,而非具体的数学推演演示。
主讲人指出,并非每种算法都必须进行特征缩放;本视频将探讨在何种情况下应优先选择归一化或标准化,以及哪些算法适合采用特征缩放。
该片段提出了这一区分,但尚未提供按算法逐一展开的具体指导。
人们或许会认为,每一种机器学习算法都需要特征缩放。
主讲人明确提醒,特征缩放并非对每种算法都必不可少;不过本片段仅预告后续讨论,尚未给出具体情形的详细说明。
Out[8]中的最小-最大缩放输出始终位于区间[0,1]内,而Out[11]中的标准化输出则包含负值。
主讲人区分了从0到1的最小-最大缩放与均值为0、标准差为1的标准化。
人们可能误以为所有特征缩放方法都会将数值强制映射到同一固定区间内。
该片段展示了两种不同规则:最小-最大归一化将每个特征映射至区间[0,1],而标准化则重新定心并重缩放,使其均值为0、标准差为1,从而允许出现负值。
Markdown 文本指出,变换后的特征将具有标准正态分布的性质,即均值(μ)=0,标准差(σ)=1。
主讲人重复了‘标准正态’这一表述,随后画出了钟形曲线。
此澄清由分析者补充;视频本身并未讨论非正态输入分布。
标准化并不能使任意特征都服从正态分布。
编者注:该公式可确保均值为0、标准差为1,但无法将任意分布精确变换为正态分布。视频中绘制的钟形曲线仅为示意图。
主讲人明确对比了基于树的模型与基于距离和基于梯度的模型,并指出前者无需特征缩放。
人们可能会认为,在训练任何模型之前,特征缩放都是必需的。
讲座指出,决策树、随机森林、XGBoost 以及相关的装袋法/提升法等方法无需缩放,因为它们的分裂依据是特征条件,而非特征值的绝对大小。
“现在可并不是说最小-最大缩放器不好,因而不该使用。”
在听说标准化对主讲人而言往往效果更好之后,人们可能就会得出结论:应避免使用最小-最大缩放。
主讲人随即补充道,最小-最大缩放在许多深度学习场景中依然适用,尤其是当输入需被限定在0与1之间时。
讲话者明确表示,‘标准化效果良好’这一主张‘完全基于我的个人经验’。
听众可能将‘标准化效果良好’理解为一条适用于所有机器学习模型与数据集的一般性数学事实。
该片段将这一观点呈现为说话人在多种场景下的经验性观察,而非基于明确假设或反例分析的已证明结论。
主讲人指出,归一化与标准化是特征缩放中的重要主题,而特征缩放本身又是特征工程中不可或缺的一部分。
该片段将归一化与标准化置于特征缩放及特征工程这一更宽泛的工作流程之中。
在定义监督学习数据集中的自变量特征与因变量特征之后,主讲人指出,这些特征具有两个重要属性:单位与量级。
关于数据集特征的讨论,自然引出用于论证缩放必要性的两个属性。
主讲人指出,由于许多特征具有不同的单位与量级,因此有必要对数据进行缩放,以适配机器学习算法。
量级各异这一属性被用作实施特征缩放的理由。
主讲人使用英尺和英寸等不同单位来表示身高,以此说明需将数据缩放至统一尺度。
不同单位这一特性也被用作实施特征缩放的理由。
主讲人在指出归一化与标准化是两种常用技术后,开始定义归一化。
该定义不完整,因为视频片段在句子中途结束。
归一化被介绍为实现前述动机所驱动的特征缩放的两种常用方法之一。
主讲人明确对比了刚刚给出的两种定义。
归一化的目标是将数据缩放到固定区间0到1,而标准化的目标是将数据变换为均值为0、方差为1的分布。
数学公式在实现它的代码之前立即呈现。
scikit-learn 中的 MinMaxScaler 类是数学上最小-最大归一化公式的软件实现。
主讲人首先指出各特征在量级上存在巨大差异,随后提出应将其缩放到同一量纲范围,并引出 MinMaxScaler。
原始表格输出 Out[3] 出现在 MinMaxScaler 代码及其输出 Out[8] 之前。
观测到的特征量级差异促使我们采用最小-最大归一化。
在讨论完量级差异后,主讲人转向标准化——另一种特征变换方式。
笔记本内容从原始数据出发,依次呈现标准化公式及 StandardScaler 代码。
将特征置于可比量纲下的相同动机,引出了标准化方法的介绍。
两个 Markdown 小节分别展示了两种公式:X_norm = (X - X_min)/(X_max - X_min) 和 z = (x - mu)/sigma。
Out[8] 显示的是区间 [0,1] 内的数值;Out[11] 显示的是正负 z 分数。
该片段直接对比了有界范围的最小-最大缩放与以均值为中心、以方差为基准的标准化。
MinMaxScaler 的代码与最小-最大 Markdown 公式并列显示。
该数学定义通过 MinMaxScaler.fit_transform 在笔记本中实现。
StandardScaler 的代码与 z 分数 Markdown 公式并列显示。
z 分数的定义通过 StandardScaler.fit_transform 在笔记本中实现。
主讲人解释道:不同特征具有不同的单位和量级,因此在机器学习中应进行缩放。
主讲人将量级界定为数值本身,而将单位界定为度量约定,并以“25年”为例。
主讲人指出,归一化与标准化是用于数据缩放的两种最常用技术。
主讲人指出,并非每个算法都必须进行特征缩放。
该片段未说明哪些算法需要或不需要缩放。
主讲人开始定义归一化,但句子在完成前被截断。
该片段中缺少完整定义。
主讲人给出的初始定义。
主讲人同时定义了二者,并指出它们的区别。
公式在笔记本中清晰展示。
代码单元格演示了其用法。
Markdown 小节明确定义了最小-最大归一化,并展示了其公式。
原始表格显示酒精(Alcohol)和苹果酸(Malic)的数值量级差异显著。
说话人指出,二者存在巨大差异,因此应将其缩放到同一量纲范围内。
代码单元格展示了导入 MinMaxScaler 并使用 fit_transform 的方法。
已覆盖 · 归一化、标准化、特征缩放与特征工程导论。
已覆盖 · 主讲人预告不同算法可能需要不同的缩放选择,并提及后续的代码示例;此处未展开任何新数学内容。
已覆盖 · 监督学习设定,包含自变量特征与因变量特征。
已覆盖 · 以“年龄 = 25岁”为例,说明单位与量值的概念。
已覆盖 · 指出特征间单位与量值的差异构成了缩放的动因;以身高用英尺或英寸表示为例。
已覆盖 · 归一化的定义开头已出现,但因片段在句中结束而未完成。
已覆盖 · 口语化介绍,定义归一化与标准化,并对比二者。
已覆盖 · 在 Jupyter Notebook 中以可视化方式呈现最小-最大归一化公式。
已覆盖 · 加载并检查葡萄酒数据集的代码演示。
已覆盖 · 对特定特征应用 MinMaxScaler 的代码演示。
已覆盖 · 展示了原始葡萄酒数据表,主讲人指出:由于“酒精含量”与“苹果酸”两列数值量级不同,因此需要进行缩放处理。
已覆盖 · 展示了MinMaxScaler代码及其变换后的输出;主讲人指出,数值被缩放到0与1之间。
已覆盖 · Markdown章节展示了最小-最大缩放公式,主讲人说明该公式将应用于每个特征。
已覆盖 · Markdown章节引入了标准化(即z分数归一化),给出公式z=(x-mu)/sigma,并指出目标均值为0、标准差为1。
已覆盖 · 展示了StandardScaler的导入、对象创建及fit_transform输出;变换后的数值中包含负值。
已覆盖 · 手绘的钟形曲线直观呈现了标准化分布的概念:以0为中心,且标准差间距为单位长度。
已覆盖 · 笔记本界面回滚展示两种方法,主讲人总结道:StandardScaler与MinMaxScaler是实现此类变换最常用的两个库。
已覆盖 · 静态笔记本视图:展示 MinMaxScaler 的导入、实例化、对 Alcohol 和 Malic 列的 fit_transform 操作,以及输出数组。
已覆盖 · 主讲人出镜讲解何时需要特征缩放,并举例说明基于距离、基于梯度和基于树的算法。
已覆盖 · 标准化与最小-最大归一化的直接对比,包括目标统计量、图像示例及神经网络应用场景。
已覆盖 · 关于机器学习中标准化的口头实用建议。
已覆盖 · 口头总结:本课讲解了标准化与归一化的基本区别,并辅以代码说明。
已覆盖 · 非数学类结束语:职业转型建议、描述链接、订阅请求及告别语。
基于树的模型不需要特征缩放,因为它们根据特征条件(阈值)而不是绝对量级来分割数据。特征值的单调重缩放不会改变分支结构或分裂的顺序。
适用条件:模型是决策树或树的集成(随机森林、XGBoost 等)。;分裂逻辑基于将特征值与阈值进行比较。
需要特征缩放是因为原始特征通常在单位和量级上有所不同,使它们不可比较。缩放将它们带到共同的尺度上,这对于许多机器学习算法正常工作是必要的。
适用条件:数据集包含具有不同单位或范围的多个特征。;模型对特征量级敏感(例如,基于距离或梯度的模型)。
从 `sklearn.preprocessing` 导入 `MinMaxScaler`,实例化它,并在选定的 DataFrame 列上调用 `fit_transform`。这将缩放器拟合到数据(学习最小/最大值)并将值转换到 [0, 1] 范围。
适用条件:输入数据是数值型的。;已安装 Scikit-learn 库。
标准化将特征值 转换为 ,针对转换后特征的均值为 0 和标准差为 1。
适用条件:逐数值特征应用。;使用特征均值 和标准差 。;假设 。
从 `sklearn.preprocessing` 导入 `StandardScaler`,实例化它,并在选定的 DataFrame 列上调用 `fit_transform`。这将数据转换为均值为 0 和标准差为 1。
适用条件:输入数据是数值型的。;已安装 Scikit-learn 库。
最小-最大归一化将特征值 转换为 ,将特征的观测范围映射到区间 。
适用条件:逐数值特征应用。;需要该特征在数据集中的有限最小值 和最大值 。;假设 以避免除以零。
对于依赖欧几里得距离或基于梯度的优化的算法,应使用特征缩放,例如 KNN、K-means、线性回归、逻辑回归和神经网络。对于基于树的模型,如决策树、随机森林和 XGBoost,通常不需要缩放。
适用条件:模型使用对特征尺度敏感的度量或迭代优化。;模型不是基于树或树的集成。
标准化将数据中心化在均值 () 处,因此低于均值的结果变为负值。最小-最大归一化平移和缩放数据,使最小值变为 0,最大值变为 1,将所有值保持在 [0, 1] 内的非负状态。
适用条件:标准化使用 。;最小-最大使用 。