首页 > 其他 > 详细

多项式特征展开学习【转载】

时间:2019-02-17 17:46:00      阅读:151      评论:0      收藏:0      [点我收藏+]

转自:https://blog.csdn.net/august_81/article/details/79167563

有时需要构建更多的特征,然后对特征再进行特征选择。

通过增加一些输入数据的非线性特征来增加模型的复杂度通常是有效的。

一个简单通用的办法是使用多项式特征,这可以获得特征的更高维度和互相间关系的项。这在 PolynomialFeatures 中实现: 

>>> import numpy as np
>>> from sklearn.preprocessing import PolynomialFeatures
>>> X = np.arange(6).reshape(3, 2)
>>> X                                                 
array([[0, 1],
       [2, 3],
       [4, 5]])
>>> poly = PolynomialFeatures(2)
>>> poly.fit_transform(X)                             
array([[  1.,   0.,   1.,   0.,   0.,   1.],
       [  1.,   2.,   3.,   4.,   6.,   9.],
       [  1.,   4.,   5.,  16.,  20.,  25.]])

X 的特征已经从 技术分享图片 转换为 技术分享图片 。

 

在一些情况下,只需要特征间的交互项,这可以通过设置 interaction_only=True 来得到:

>>> X = np.arange(9).reshape(3, 3)
>>> X                                                 
array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])
>>> poly = PolynomialFeatures(degree=3, interaction_only=True)
>>> poly.fit_transform(X)                             
array([[   1.,    0.,    1.,    2.,    0.,    0.,    2.,    0.],
       [   1.,    3.,    4.,    5.,   12.,   15.,   20.,   60.],
       [   1.,    6.,    7.,    8.,   42.,   48.,   56.,  336.]])
 

X的特征已经从 技术分享图片 转换为 技术分享图片 。

多项式特征展开学习【转载】

原文:https://www.cnblogs.com/BlueBlueSea/p/10391913.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!