多项式特征变换
2021-9-2
| 2023-8-6
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
Property
 
多项式特征是通过将现有特征提升到指数而创建的那些特征。
例如,如果数据集有一个输入特征 ,那么多项式特征将是添加一个新特征,其值是通过对 X 中的值进行平方来计算的,例如 。可以对数据集中的每个输入变量重复此过程,从而创建每个输入变量的转换版本。因此,多项式特征是一种特征工程,基于现有特征创建新的输入特征。
 
多项式的“度”用于控制添加的特征数量,例如,3的度数将为每个输入变量添加两个新变量。通常使用较小的度数,例如 2 或 3。
添加表示特征之间相互作用的新变量也很常见,例如,表示一个变量乘以另一个变量的新列。这也可以对每个输入变量重复,为每对输入变量创建一个新的“交互”变量。
输入变量的平方或立方版本将改变概率分布,将小值和大值分开,这种分离随着指数的大小而增加。
这种分离可以帮助一些机器学习算法做出更好的预测,并且在回归预测建模任务和具有数字输入变量的一般任务中很常见。
通常线性算法,例如线性回归和逻辑回归,对多项式输入变量的使用反应良好。当用作线性回归算法的输入时,该方法更广泛地称为多项式回归。
 
多项式特征变换可通过PolynomialFeatures 类在 scikit-learn 库中使用。
创建的功能包括:
  • 偏差(1.0 的值)
  • 每个度数的值(例如
  • 所有特征对之间的交互(例如 x1 * x2、x1 * x3、...)
 
例如,对于两个值为 2 和 3 且度数为 2 的输入变量,创建的特征将是:
  • 1(偏差)
  • “ degree ” 参数控制创建的特征数量,默认为 2
  • “ interaction_only ”参数意味着只包括原始值(1 级)和交互(值对相互相乘),默认为False
  • “ include_bias ” 参数默认为True以包含偏差功能
 
  • Scikit-Learn
  • Column Transformer数据泄漏
    目录