本文是从H20.ai的视频翻译之后总结而来。
特征工程主要在与模型训练的时候使用.
例如使用极坐标便可以将十分难转化的数据转化为非常好分割的数据。
在特征工程的Hypothesis set(假设集)的过程,使用领域知识、先验经验、EDA和模型的训练反馈得到特征。
在特征工程的validate hypothesis(验证假设)的过程可以使用交叉验证,metrics的检验,也一定要避免leak。
在变量呈现出一个非常奇怪的分布的时候,使用该方法效果不错。
下图为效果
关于特征的编码,有些特征可以用labeled Encoding,简单的把cat的特征变为整数,可以使用LabelEncoder.这个方法对树模型很有用。
独热编码则是把数据变为独立的0和1,包邮DictVectorizer和OneHotEncoder,对K-means,线性模型和神经网络效果很好。
如图
还有一种编码叫做频率编码,就是把频率表示出来。
还有一种编码叫做target mean encoding,私人理解算是一种先验吧
为了避免过拟合,也可以采用留一法,留一个不管,其他进行encoding,而这一个的encode为1