问题
特征归一化
- 为什么要进行特征归一化?
- 方法?
- 使用场景?
离散型特征处理
- 为什么要处理?
- 方法?
特征组合
- 什么是?
- 方法?
- 存在的问题?
- 如何有效的进行?
文本表示
- 方法?
- Word2Vec的原理?
- Word2Vec和LDA的区别?
数据不足
- 问题?
- 处理方法?
解答
特征归一化
-
为什么要进行特征归一化?
由于特征之间的量纲不同,不同特征的大小将会对结果产生影响,通过归一化可以将特征统一到一个大致相同的数值范围,便于分析,得到更加准确的结果。 -
方法?
线性函数归一化
等比缩放到0-1之间。
零均值归一化
映射到均值为0,标准差为1的分布上。 -
使用场景?
梯度下降,线性回归,逻辑回归,支持向量机,神经网络。
决策树不适合,如C4.5以信息增益比分裂节点,归一化并不会对信息增益比产生影响。
离散型特征处理
-
为什么要处理?
离散型特征一般来说都是一些非数值型特征,大多数模型是无法直接使用的,所以需要对其进行处理,将其转化为数值型特征。 -
方法?
序号编码
对于原始数据具有大小关系的特征,对其进行序号编码,转换之后的特征保留了其大小关系。
独热编码
对于不具备大小关系的离散型特征,通过独热编码对其进行转换。
但是通常其编码的维度较高,可能导致模型的参数过多,产生过拟合问题。通过可能只有部分维度对结果有帮助。
二进制编码
维度少于独热编码,节省空间。
特征组合
-
什么是?
将一阶的离散特征两两组合构成高阶的组合特征,可以提高对复杂关系的拟合能力。 -
方法?
两两组合在一起。 -
存在的问题?
当离散特征的取值非常多的时候,或者离散特征非常多的时候,简单的两两特征组合将会使得模型的参数过多,容易出现过拟合问题。同时,并不是所有的特征组合都是有用的。 -
如何有效的进行?
可以通过梯度提升决策树,构造之后的决策树就是一种特征组合方法。
文本表示
-
方法?
由于词的不同词性可能表达的含义相同,所以首先进行词干转化。
词袋模型
使用一个长向量表示文章,每一维表示一个单词。权重使用TF-IDF。
这是对文章进行词级别的划分,但是词和词组的意义差别较大,可能无法正确表达含义。
N-gram模型
通过n个词组成词组,建立词袋模型。
主题模型
词具有主题分析,通过词的主题分布表示文章的主题分布。
词嵌入模型
将词转化成向量,通常使用深度学习实现。这是因为可以自动进行特征工程,每一个隐层可以对应不同层的抽象处理。可以更好对文本建模,抽取高层的语义特征。
同时,CNN和RNN效果更好的原因:一方面可以更好地抓住文本特征,另一方面可以减少学习的参数,提高训练速度,降低过拟合的风险。 -
Word2Vec的原理?
Word2Vec有两种结构:CBOW和Skip-gram。
在结构上,前者是通过上下文得到当前词,后者是通过当前词得到上下文。但是最终的结果都将导致相邻的词之前的距离较小。训练之后的权重矩阵就是所有词的向量表示。 -
Word2Vec和LDA的区别?
Word2Vec属于词嵌入模型,学习“上下文-单词”矩阵。
LDA是主题模型,将“文档-单词”矩阵转化为“文档-主题”和“主题-单词”矩阵。
两者最大的区别在于模型本身:
主题模型:基于概率图模型的生成式模型,似然函数是若干条件概率连乘得到的。
词嵌入模型:神经网络,似然函数是定义在网络上的,通过网络权重得到的稠密向量。
数据不足
-
问题?
当训练数据不足时,将会导致过拟合现象的发生,使得模型的泛化效果不佳。 -
处理方法?
由于一个模型包含了两方面的信息:训练数据蕴含信息和先验信息。
当前者不足时可以通过提升后者来提高模型的效果。具体有两种方法。
将先验信息作用到模型上
可以设计特点结构的模型;增加约束项,缩小搜索空间;集成学习。
将先验信息作用到数据集中
在一定的程度上调整、变换训练数据,扩大训练数据集。
比如在图像分类问题中,可以改变图像的亮度、对比度、清晰度、锐度等,可以对图像进行平移、旋转、裁剪、填充、反转等操作,可以对像素增加扰动,对图像进行颜色变换等处理。
还可以先提取特征,在特征空间上进行变换。
通过生成模型生成数据,比如GAN。
还可以将大规模数据集上训练的模型迁移到小数据集上,通过微调提高模型表现。(迁移学习)
作者原创,如需转载及其他问题请邮箱联系:lwqiang_chn@163.com。
个人网站:https://www.myqiang.top。
GitHub:https://github.com/liuwenqiang1202。
网友评论