我们为什么要收集数据呢?因为有些问题需要靠数据找出答案。从数据到答案的路上,充满了错误的开始和死胡同,经常是有意栽花花不发,无心插柳柳成荫。数据处理工作流往往是对阶段的迭代过程。
数学模型:描述了数据不同部分之间的关系。
特征:原始数据的数值表示。
特征工程:是在给定数据、模型和任务的情况下设计出最合适的特征的过程。
特征的数量也非常重要,如果没有足够的有信心量的特征,那么模型将不能完成最终的任务。如果特征过多,或者多数特征不合适,那么模型将很难训练而且训练成本高昂。
特征和模型位于原始数据和我们想得到的知识之间,在ML流程中,我们要选择的不仅是模型,还有特征。模型和特征相辅相成,对其中一个的选择会影响另一个。
数值型数据:首先看看它的量级,然后还要考虑一下特征的尺度(逻辑函数不需要考虑特征尺度,除非其输入的尺度会随时间变化)。
数值型特征工程技术:
处理计数:二值化、分箱;
对数变换、指数变换;
特征缩放/归一化:min-max缩放、特征标准化/方差缩放、欧几里得范数归一化;
交互特征;
特征选择:过滤、打包方法、嵌入式方法
文本的特征工程:
将自然文本转换为扁平向量:词袋、N元词袋
使用过滤获取清洁特征:停用词、基于频率的过滤、词干提取
意义的单位(从单词、n元词到短语):解析与分词、通过搭配提取进行短语检测(基于频率、用于搭配提取的假设检验、文本分块和词性标注)
TF-IDF:特征缩放技术。
分类变量的编码:one-hot编码、虚拟编码、效果编码
处理大型分类变量:one-hot编码、特征散列化、分箱计数(如何处理稀有类、防止数据泄露、无界计数)
数据降维:
PCA:使用一些新特征代替冗余特征,这些新特征能恰当地总结初始特征空间中包含的信息。