一个说法在最前面:
创造新的特征是一件十分困难的事情,需要丰富的专业知识和大量的时间。机器学习应用的本质基本上就是特征工程。
——Andrew Ng、
大佬整理的一个时间序列预测方法总结 时间序列预测方法总结 - 知乎
特征工程的流程介绍:
关于做特征工程的一个流程:特征工程完全手册 - 从预处理、构造、选择、降维、不平衡处理,到放弃 - 知乎
介绍两本书:金融机器学习,还有
![](https://img-blog.csdnimg.cn/4779ee7d48d841a3972f9b22e2cc960b.png)
自动化特征工程工具:
-
tslearn:开源的时间序列机器学习python工具包
-
tsfresh:开源的时间序列特征提取python工具包
- katz
- tsfle
- tsaug time series augmentation也是一个做时序特征的关键词
-
pyts:开源的时间序列分类Python工具包。提供预处理工具及若干种时间序列分类算法
- statmodels:想不到吧,除了能进行线性回归,还能用于构造特征工程,特征分解,异常点检测,统统都可以,6666
关于时间序列分解法:
时间序列分解法总结:【时间序列】时间序列分解总结 - 知乎
时间序列分解:时间序列分解 - 简书
相似的介绍,这个是在百度文库上:时间序列分解法 - 百度文库
以上的是对于时间序列分解法的一些介绍,落地到具体的实现,则有:
数据挖掘——时间序列分析 - 没有神保佑的瓶子 - 博客园
DataCamp的 Time series decomposition | Python
![](https://img-blog.csdnimg.cn/2021030323164774.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzM3ODc2NzQ1,size_16,color_FFFFFF,t_70)
一个github上的package time-series-decomposition · GitHub Topics · GitHub
Python Time Series ETS Decomposition · GitHub
STL Decompose GitHub - jrmontag/STLDecompose: A Python implementation of Seasonal and Trend decomposition using Loess (STL) for time series data.
介绍:This is a relatively naive Python implementation of a seasonal and trend decomposition using Loess smoothing. Commonly referred to as an "STL decomposition", Cleveland's 1990 paper is the canonical reference.
TimeSeries-Decomposition.ipynb TimeSeries Decomposition in Python with statsmodels and Pandas · GitHub
特征工程过滤:
特征工程之特征选择之过滤法 内容选自西瓜书: 特征工程之特征选择之过滤法(卡方检验_上进的菜鸟的博客-CSDN博客
https://hackernoon.com/key-tactics-the-pros-use-for-feature-extraction-from-time-series-e7q3wfr
特征筛选事后的特征重要性检验:
多重检验:Benjamini-Yekutieli 法的介绍 多重比较-Bonferroni法和Benjamini & Hochberg法 - 简书
一些大佬写的好文章:
特征工程系列:时间特征构造以及时间序列特征构造 特征工程系列:时间特征构造以及时间序列特征构造_J-JunLiang的博客-CSDN博客_时间序列特征
数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。由此可见,特征工程在机器学习中占有相当重要的地位。在实际应用当中,可以说特征工程是机器学习成功的关键。
![](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9tbWJpei5xcGljLmNuL21tYml6X2pwZy9qQTF3TzhpY3cwZ0IySEVaaWN1aWJNaGliRjVhRW1rMGhyQTlscUZxNmR3RW96cmh3NVVWVmptQ2lhZTRBNEJYUk5Fa3JqOGppY25LejNVVndxM0FadGJZeXVPUS82NDA?x-oss-process=image/format,png)
如何对周期性的如时间,月份进行特征工程表示:
周期特征的循环编码
说明:
一些数据具有固有的周期性。时间就是一个很好的例子:分钟,小时,秒,星期几,一个月的某周,一个月,季节等都是具有循环往复的周期性的,生态特征(如潮汐),星座特征(如轨道位置),空间特征(如旋转或经度),视觉特征(如色轮)也都是自然循环的。
如何让我们的机器学习模型知道某个功能是周期性的?让我们探索一个简单的24小时时间数据集,我们想将其周期性性质传达给我们的模型
周期特征的循环编码 - 知乎
Encoding cyclical continuous features - 24-hour time – Ian London's Blog
一言以蔽之,使用三角函数进行转换
除此之外,其实还有很多比较有价值的工具,大家用一下谷歌搜索一下子就可以找到,有兴趣的可以去看一看:
![](https://img-blog.csdnimg.cn/fa315fc96bdc4bd2b94182a27fc24cb0.png)
![](https://img-blog.csdnimg.cn/847b645c43b14f4aa827b7e2d290c6bf.png)