深度学习核心技术精讲100篇(四)-用预训练语言表征模型Bert抽取文本特征做语义相似度分析
【摘要】
前言
如果我们想拿到一个句子的特征向量可以采用什么样的方式?
基于词袋模型(Bag of Words)
Bag of Words : 主要思想是基于对句子中字出现的次数来构建句子向量,向量大小即为词表大小。可以采用的工具是gensim中的doc2bow
TF-IDF:在BOW的基础上,考虑到每个字的重要程度,向量大小依然等于...
前言
如果我们想拿到一个句子的特征向量可以采用什么样的方式?
基于词袋模型(Bag of Words)
- Bag of Words : 主要思想是基于对句子中字出现的次数来构建句子向量,向量大小即为词表大小。可以采用的工具是gensim中的doc2bow
- TF-IDF:在BOW的基础上,考虑到每个字的重要程度,向量大小依然等于词表大小。可以采用的工具是gensim中的TfidfModel
基于无监督神经网络模型
- 词向量的平均(mean):直观理解就是将句子中每个词的词向量求平均,向量维度等于词向量维度。可以使用工具是gensim中的word2vec。
- Doc2Vec:主要借鉴了word2vec思想去训练句子向量,向量维度可以自己设置。可以使用工具是gensim中的doc2vec。
- Bert 生成的句子向量:BERT的每一层的输出其实都可以看作句子的向量,你可以有很多种方式去抽取文本向量,比如官方给出的取最后四层的句子向量拼接(输出维度:[maxlen,768*4])或者求平均(输出维度:[maxlen,768]。后续也许你需要在对句子向量求一下平均,这样文本向量的维度就为768。 可以采用的工具是官方开源的代码中的extract_features.py,当然也可以采用一些其他方式,我在实战部分会介绍另外一种。
基于文本主题的模型
- LDA 主题模型:在词袋模型的基础上通过文本中主题的分布去表示文本向量,向量维度等于预设主题的个数。可以采用工具是gensim中的LdaModel
- LSI 隐语义模型:也是需要预设文本主题的个数,在词袋模型的基础上采用矩阵分解的方式去表示句子向量,向量维度等于预设主题的
文章来源: wenyusuran.blog.csdn.net,作者:文宇肃然,版权归原作者所有,如需转载,请联系作者。
原文链接:wenyusuran.blog.csdn.net/article/details/107338008
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)