ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

自然语言处理回顾

2021-12-12 14:30:01  阅读:194  来源: 互联网

标签:LDA 回顾 处理 模型 主题 单词 文档 自然语言 向量


这些天重新看了过去看过的有关于自然语言处理的内容,关注到很多之前没有注意到的,但现在看来很重要的要点,整理如下:

1.LDA(潜在狄利克雷分配):
主题模型采用未标记文档的集合, 并尝试在该集合中查找结构或主题。主题模型通常假设单词的使用与主题的出现相关。

  1. 训练LDA模型时, 首先要收集文档, 并且每个文档都由固定长度的矢量(单词袋)表示。 LDA是一种通用的机器学习(ML)技术, 这意味着它也可以用于其他无监督的ML问题, 其中输入是固定长度向量的集合, 目标是探索此数据的结构。

  2. 要实现LDA模型, 首先要定义文档集中存在的”主题”数量。这听起来很简单, 但通常不如处理大量文档时直观。在具有 M 个主题的 N 个文档上训练LDA模型与找到最能解释数据的文档和主题向量相对应。假设文档中的词汇表由 V 个单词组成。

  3. 每个文档将在LDA模型中由长度为M 的向量表示, 该向量详细说明了该文档中出现的主题。一个文档可以包括75%为”主题1″和25%为”主题2″。 LDA通常会导致文档向量带有很多零, 这意味着每个文档只出现有限数量的主题。

  4. 每 主题均由长度为V 的向量表示, 该向量详细说明了可能出现的单词(给定有关该主题的文档)。因此, 对于主题1, “学习”, “建模”和”统计”可能是一些最常用的词。这意味着你可以然后说这是”数据科学”主题。对于主题2, 单词” GPU”, “计算”和”存储”可能是最常见的单词。你可以将其解释为”计算”主题。

  5. 由于使用词袋模型来表示文档, 因此LDA可能遭受与词袋模型相同的缺点。 LDA模型学习一个文档向量, 该向量预测该文档内部的单词, 而忽略任何结构或这些单词在本地级别上如何相互作用。

2.词袋:

传统上, 文本文档在NLP中表示为单词袋。在词袋模型中(注意,在词袋模型中和在LDA模型中,文档的表示方式不同),这意味着每个文档都表示为固定长度的矢量, 其长度等于词汇量。此向量的每个维度对应于文档中单词的计数或出现。能够将可变长度的文档缩减为固定长度的矢量, 使其更适合与多种机器学习(ML)模型和任务(聚类, 分类等)一起使用。
在这里插入图片描述
上图显示了如何在词袋模型中表示文档:单词” document”的计数为1, 而单词” model”在文本中出现两次。

3.词嵌入
在这里插入图片描述
上图是使用t分布随机邻居嵌入(t-SNE)将单词嵌入空间投影到2D空间的图。 t-SNE是一种降维方法, 可用于可视化高维数据。该方法将单词嵌入作为输入, 并将其投影到二维空间中, 该空间可以在图形中轻松查看。仅调查单词空间的一个小节, 重点放在接近”老师”的单词上。代替使用向量中无意义的维表示词, 可以使用词嵌入通过语义相关向量来表示词。

使用单词嵌入时, ML模型可以将大量文档(也称为”语料库”)中的信息嵌入矢量表示形式中, 以利用这些信息。词袋模型无法做到这一点, 当没有大量数据可用时会损害模型性能。单词嵌入导致文档表示形式不再是固定长度的。取而代之的是, 文档由单词矢量嵌入的可变长度序列表示。

word2vec就是单词嵌入模型

4.LDA2vec

扩展了Mikolov等人描述的word2vec模型。于2013年推出主题和文档载体, 并融合了词嵌入和主题模型的构想。主题模型的总体目标是产生可解释的文档表示形式, 该表示形式可用于发现未标记文档集合中的主题或结构。这种可解释的文档表示形式的示例是:文档X为20%的主题a, 40%的主题b和40%的主题c。另外 lda2vec在单词嵌入的基础上构建文档表示形式。

简而言之, lda2vec的最终结果是一组稀疏文档权重向量以及易于解释的主题向量。通过在lda2vec模型中提供一个附加的上下文向量, 可以更好地猜测上下文词。

请考虑以下示例:在原始的word2vec模型中, 如果关键词是”法语”, 则可能的上下文词可能是”德语”, “荷兰语”, “英语”。如果没有任何全局(与文档相关的)信息, 这些将是最合理的猜测。

如果文档向量是”食物”和”饮料”主题的组合, 则”法式长棍面包”, “奶酪”和”酒”可能更合适。如果文档向量类似于”城市”和”地理”主题, 则”巴黎”, “里昂”和”格勒诺布尔”可能更合适。

请注意, 这些主题向量是在词空间中学习的, 这便于解释:你只需查看最接近主题向量的词向量即可。另外, 对文档权重向量施加约束, 以获得稀疏向量(类似于LDA), 而不是密集向量。这样可以轻松解释不同文档的主题内容。

尽管性能趋于类似于传统的LDA, 但是使用自动微分方法使该方法可扩展到非常大的数据集。此外, 通过组合上下文向量和词向量, 你可以获得”专用”词向量, 该词向量可在其他模型中使用(并且可能会胜过更多”通用”词向量)。

参考文献:http://www.srcmini.com/46652.html

标签:LDA,回顾,处理,模型,主题,单词,文档,自然语言,向量
来源: https://blog.csdn.net/DL_Iris/article/details/121875295

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有