图片出处:Unsplash
原文:Unsupervised NLP : Methods and Intuitions behind working with unstructured texts[1]
作者:Divish Dayal(全栈 ML 工程师)
译者:青苹果
本文将介绍自然语言处理中无监督技术及其应用领域的入门内容,包括词向量背后的直觉如何走向更大范围的使用和进步,并逐渐发展为对语言模型细节的核心讨论、在行业中的活跃应用以及针对不同用例的可能应用。
自然语言处理 (NLP, Natural Language Processing) 和自然语言理解 (NLU, Natural Language Understanding) 两大领域方兴未艾,十分前沿,无监督学习更是在其中占据重要地位。这是因为它同时满足了两个条件 —— 不仅无处不在,而且相当复杂。
在这个行业中,经常会出现这样的情况:遇到一个业务问题,然后展开头脑风暴,设想各种可能的解决方案。
甚至有时候,你会想出创新的数据集和标签来解决你的问题。但通常情况下,标签并不存在,接下来,你要么与 Mturk 打交道 (一个众包数据注释平台),要么只能在没有任何标签的情况下解决问题,即使用无监督技术。
本文会试图把在无监督学习 NLP 任务领域多年的经验和知识分解成简单的 “零部件”,希望你能更多地、更好地了解这个领域,深入探索和研究 —— 甚至可以在解决和处理自然语言处理问题时,产生一种更好、更结构化的直觉思维。
从词向量和语言模型这两个最基本、最普遍的子领域开始,本文在讨论基本概念和基础理论的同时,还将介绍有关最佳实践、实际应用和工业应用以及相关库的优缺点的一点个人经验。
词向量
你或许会问,为何要把词表示成向量?
将单词表示为 50-300 个浮点值的向量数组是 NLP 中最大的飞跃之一,也是最容易理解的一种。在现在普遍流行的词向量出现之前,词汇表中的词是使用传统的独热编码(One-Hot 编码)进行向量化,如下所示。该图中给出了 “I love NLP” 这句话中所包含的 3 个单词的独热向量。目前,这种方法仍广泛应用于 ML 算法中,如,TF-IDF;而且在数字电路中应用的也很普遍。

图片源自作者:此处的单词 “love” 的独热编码表示为向量 [0,1,0]
过去十年中,诸如 word2vec [1] 和 Glove [2] 等词向量的出现,极大得推动着 NLP 领域的发展。可以说,伴随着深度学习的兴起,词向量在越来越多的文本任务中得到广泛的应用,几乎可以很好地完成所有 “分内” 的任务。
那么,词向量是如何训练的?
word2vec 词向量模型有两种训练模式 —Skip-gram (Continuous Skip-gram Model) 和 CBOW (Continuous Bag-of-Words Model),如下图所示。这两种模型的基本原则大致是相同的 —— 两者都是用于将文本进行向量表示的实现方法,而单词的信息就依赖于所处的上下文语义信息中。
例如,“Man” 和 “Woman” 可以在非常相似的上下文中使用,比如下面两句话间的对比,“Man can do somethi

本文介绍了无监督学习在自然语言处理(NLP)中的应用,重点探讨了词向量和语言模型的基础概念、训练方法及实际应用。词向量通过word2vec等模型学习,如Skip-gram和CBOW,捕捉单词的上下文关系。语言模型则预测句子中单词的概率分布,常用于句子向量化、分类任务、生成任务和信息检索。此外,还提到了少样本学习和零样本学习在AI领域的进展。

最低0.47元/天 解锁文章
1284

被折叠的 条评论
为什么被折叠?



