美文网首页每天写500字数据科学家书房就是我的全世界
《百面机器学习》笔记-特征工程相关面试题

《百面机器学习》笔记-特征工程相关面试题

作者: 不会停的蜗牛 | 来源:发表于2019-05-13 21:18 被阅读119次

1. 什么是特征工程

对数据进行一系列处理构成特征输入给模型

例如,我们想让机器识别这个图片是不是苹果,可以选择 形状,颜色分布,边 来作为feature:

特征越好,模型的性能越好,而且可以不用很复杂的数学模型也能达到不错的效果

特征工程的目的

  • 去掉数据中的杂质

  • 构造更高级的高效的特征来描述数据。

怎么做特征工程?

特征工程一般包括三个子模块:特征构建->特征提取->特征选择

  • 特征构建:根据原始数据构建新的特征,需要找出一些具有物理意义的特征。

  • 特征提取:自动地构建新的特征,将原始特征转换为一组具有明显物理意义或者统计意义或核的特征。例如 Gabor、几何特征、纹理等。

常用的方法有:

PCA (Principal component analysis,主成分分析)
ICA (Independent component analysis,独立成分分析)
LDA (Linear Discriminant Analysis,线性判别分析)

  • 特征选择:从特征集合中挑选一组最具统计意义的特征子集,把无关的特征删掉,从而达到降维的效果

常用的方法:

filter 方法:Pearson相关系数,Gini-index(基尼指数),IG(信息增益)等

wrapper :有逐步回归(Stepwise regression 递归特征消除法)、向前选择(Forward selection)和向后选择(Backward selection)等

Embeded :Regularization(基于L1,L2惩罚项的特征选择法),或者使用决策树思想,Random Forest和Gradient boosting等


2. 两种常用的数据类型

  • 结构化数据

即每一行数据表示一个样本,每列都有清晰的定义

有数值型、类别型两种基本类型

  • 非结构化数据

主要包括文本、图像、音频、视频数据

无法用一个简单的数值表示,每条数据的大小各不相同


3. 为什么需要对数值类型的特征做归一化?

什么是特征归一化?

将所有的特征都统一到一个大致相同的数值区间内。

如何进行归一化?

  • Min-Max Scaling

    结果映射到[0, 1]之间

    公式:

  • Z-Score Normalization

    将原始数据映射到均值为 0、标准差为 1 的分布上

    公式:

为什么要进行归一化?

例如,身高特征会在 1.6~1.8m 范围,体重特征会在 50~100kg 的范围,体重特征会对问题有更大的影响

理论上看

因为特征的数值范围不同的话,会影响梯度下降的速率

如果将目标函数的等值图画出来,数值范围大的特征,那个方向会需要更多次的迭代才能找到最优解。

如果将每个特征的范围转化成一致的,那么等值图的图形会是一个圆形,梯度下降在各个方向的速率是一样的,可以更快地找到最优解。

什么时候需要进行归一化?

  • 通常在需要用到梯度下降法的时候。

    包括线性回归、逻辑回归、支持向量机、神经网络等模型。

  • 决策树模型就不适用

    例如 C4.5 ,主要根据信息增益比来分裂,归一化不会改变样本在特征 x 上的信息增益


4. 类别型特征

什么是类别型特征?

例如:性别(男、女)、血型(A、B、AB、O)

通常是字符串形式,需要转化成数值型,传递给模型

如何处理类别型特征?

  • 序号编码(Ordinal Encoding)

    例如学习成绩有高中低三档,也就是不同类别之间关系。

    这时可以用321来表示,保留了大小关系。

  • 独热编码(One-hot Encoding)

    例如血型,它的类别没有大小关系。A 型血表示为(1, 0, 0, 0),B 型血表示为(0, 1, 0, 0)……

  • 二进制编码(Binary Encoding)

    第一步,先用序号编码给每个类别编码

    第二步,将类别 ID 转化为相应的二进制

    例如,B 型血的 ID 为 2,二进制表示为 010

    优点:这种方法得到的结果维数少于独热编码

相关文章

  • 《百面机器学习》笔记-特征工程相关面试题

    1. 什么是特征工程 对数据进行一系列处理构成特征输入给模型 例如,我们想让机器识别这个图片是不是苹果,可以选择 ...

  • 《百面机器学习》笔记-特征工程相关面试题2

    1. 高维组合特征的处理 什么是组合特征? 将一阶离散特征两两组合,就可以构成二阶组合特征 例如,特征a有m个取值...

  • 【百面机器学习笔记】特征工程

    数据类型 结构化数据 : 可以看作关系型数据库的一张表,包含数值型和类别型两种基本类型; 非结构化数据:非结构化数...

  • 【百面机器学习-特征工程】

    特征工程的定义,是对原始数据进行一系列工程处理,将其提炼为特征,作为输入以供算法和模型使用。 机器学习主要包含以下...

  • 机器学习之特征工程 - 整理

    以下内容整理自机器学习之特征工程 特征工程: 定义:利用数据领域的相关知识来创建能够使机器学习算法达到最佳性能的特...

  • 机器学习面试题-决策树如何计算特征重要性

    关注微信公众号“百面机器学习”获得更多机器学习面试题 问题引入 笔者在所有的面试中都会被问答到项目中的具体特征的情...

  • 特征预处理

    前言 特征工程在机器学习中占有相当重要的地位,,那么特征工程是什么呢? 特征工程是利用数据领域的相关知识来创建能够...

  • ​特征工程:预处理

    数据和特征决定了机器学习的上限 特征工程是利用数据领域的相关知识来创建能够使机器学习算法达到最佳性能的特征的过程。...

  • 面试题:过拟合原因

    更多面试题关注"百面机器学习"有劳动下手指啦 ----------------------------------...

  • 机器学习笔记---特征工程

    转 机器学习中的数据清洗与特征处理综述 摘要 本文转自美团技术团队(见转载链接),非常优秀的博文,该文通过一个实例...

网友评论

    本文标题:《百面机器学习》笔记-特征工程相关面试题

    本文链接:https://www.haomeiwen.com/subject/krulaqtx.html