当前位置:   article > 正文

百面机器学习(一) 特征工程_lda模型 citespace

lda模型 citespace

01 特征归一化

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

借助随机梯度下降的实例,两种不同取值范围的数值型特征,进行归一化后,两个特征的更新速度变得更为一致,容易更快地通过梯度下降找到最优解。

最常用的两种方法:
1)线性函数归一化
2)零均值归一化

通过梯度下降法求解的模型通常是需要归一化的:线性回归,逻辑回归,SVM,神经网络模型

对于决策树模型并不适用:因为决策树在进行节点分裂时主要依据数据集D关于特征x的信息增益比,而信息增益比跟特征是否经过归一化是无关的,归一化并不会改变样本在特征x上的信息增益

02 类别型特征

1. 在对数据进行预处理是,应该怎样处理类别型特征?

1)序号编码
2)独热编码(one-hot):1)使用稀疏向量来节省空间 ,2)配合特征选择来降低维度

高纬度特征带来的问题:
1)在k近邻算法中,高维空间下两点之间的距离很难得到有效的衡量;
2)在LR模型中,参数的数量会随着维度的增高而增加,容易引起过拟合问题
3)通常只有部分维度是对分类、预测有帮助

3) 二进制编码 :1)先用序号编码给每个类别赋予一个类别ID。2)将类别ID对应的二进制编码作为结果

本质:利用二进制对ID进行哈希映射

03 高维组合特征的处理

1.什么是组合特征?如何处理高纬度组合特征?

为了提高复杂关系的拟合能力,经常把一阶离散特征两两组合,构成高阶组合特征。

用低维向量表示

04 文本表示模型

1.有哪些文本表示模?他们各有什么优缺点?

1)词袋模型和N-gram模型

词袋模型: 将整段文本以词为单位切分开,然后每篇文章可以表示成一个长向量,向量中的每一个维代表一个单词,而该维对应的权重反映了这个词在原文章中的重要程度。常用TF-IDF计算权重,公式:
TF-IDF(t,d) = TF(t,d) x IDF(t)
TF(t,d)为单词t在文档d中出现的频率,IDF(t)是逆文档频率,用来衡量单词t对表达语义所起的重要性,表示为
IDF(t)=log(文章总数/包含t的文档总数+1)

直观解释:如果一个单词在非常多的文章里都出现,那么他可能是一个比较通用的词汇,对于区分谋篇文章特殊语义的贡献较小,因此对权重做一定惩罚

该模型有可能将短语单独按词切分后,导致语义发生较大的变化。

通常,可以将连续出现的n(n<=N)个词组成的词组(N-gram)也作为一个单独的特征放到向量表示中去,构成N-gram模型

2)主题模型

用于从文本库中发现有代表性的主题(得到每个主题上面词的分布特性),并且能够计算出每篇文章的主题分布

3)词嵌入与深度学习模型

词嵌入是一类将词向量化的模型的统称,核心思想是将每个词都映射成低维空间上的一个稠密向量。

05 Word2Vec

1.Word2Vec是如何工作的?它和LDA有什么区别和联系?

CBOW:根据上下文出现的词语来预测当前词的生成概率。
Skip-gram:根据当前词来预测上下文中各词的生成概率。

都可以由输入层、映射层、输出层组成的神经网络。

输入层:由One-hot编码表示
映射层(隐含层):K个隐含单元的取值可以由N维输入向量以及连接输入和隐含单元之间的NxK维权重矩阵计算得到。在CBOW中,还需要将各个书如此所计算出的隐含单元求和
输出层:输出层向量的值可以通过隐含层向量(K维),以及连接隐含层和输出层之间的KxN维权重矩阵得到。输出层是一个N维向量,每维与词汇表中的一个单词相对应。

最后,对输出层向量应用softmax激活函数,计算出每个单词的生成概率。然后训练神经网络的权重,使得语料库中所有单词的整体生成概率最大化。

和LDA区别:
1、Word2vec是词聚类,属于词嵌入模型,LDA是主题词聚类,属于主题模型。主题模型和词嵌入模型最大的不同在于其模型本身,主题模型是一种基于概率图模型的生成式模型,其似然函数可以写成若干个条件概率连乘的形式,其中包含需要推测隐含变量(即主题);词嵌入模型一般表达为神经网络的形式,似然函数定义在网络输出之上。需要通过学习网络的权重以得到单词的稠密向量表示。

2、词向量所体现的是语义(semantic)和语法(syntactic)这些 low-level的信息。而LDA的主题词表现的是更 high-level的文章主题(topic)这一层的信息。比如:

1)计算词的相似度。同样在电子产品这个主题下,“苹果”是更接近于“三星”还是“小米”?

2)词的类比关系:vector(小米)- vector(苹果)+ vector(乔布斯)近似于 vector(雷军)。

3)计算文章的相似度。这个LDA也能做但是效果不好。而用词向量,即使在文章topic接近的情况下,计算出的相似度也能体现相同、相似、相关的区别。   反过来说,想用词向量的聚类去得到topic这一级别的信息也是很难的。很有可能,“苹果”和“小米”被聚到了一类,而“乔布斯”和“雷军”则聚到另一类。

和LDA联系:
1、在方法模型上,他们两者是不同的,但是产生的结果从语义上来说,都是相当于近义词的聚类,只不过LDA是基于隐含主题的,WORD2VEC是基于词的上下文的,或者说LDA关注doc和word的共现,而word2vec真正关注的是word和context的共现。

2、主题模型通过一定的结构调整可以基于”上下文-单词“矩阵进行主题推理。同样的,词嵌入方法也可以根据”文档-单词“矩阵学习出词的隐含向量表示。

3、加入LDA的结果作为word embeddings的输入,可以增强文章分类效果。

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号