热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

NLP系列文章(一)——字词的表示

字词的表示引言离散词表征分布式词表征引言中文自然语言处理的基本单位是字与词,同时可以将字词的表示视为文本表示的基础,广义上的文本表示包含字词的表示&#


字词的表示

  • 引言
  • 离散词表征
  • 分布式词表征


引言

中文自然语言处理的基本单位是字与词,同时可以将字词的表示视为文本表示的基础,广义上的文本表示包含字词的表示,我们这里讨论的文本指的是句子以及篇章的形式。文本中词汇的表示可以分为离散表示和分布式表示。


离散词表征

文本经过分词工具的处理后会生成词汇的序列,把所有的词汇集中到一起去重后就组成了当前语料库的词表。离散型表示法中最经典的就是独热编码(One-Hot)表示方法。对每个词汇生成一个词表大小的全0向量,仅在该词出现的下标位置的值置为1。

例如:词表(vocab)={我,爱,自然,语言,处理}词汇“自然”的one-hot表示为:[0, 0, 1, 0, 0]词汇“我”的one-hot表示为:[1, 0, 0, 0, 0]

one-hot表示方法的优点在于:简单、有效;但是缺点也较为明显:词汇与词汇之间存在语义鸿沟(无法计算词汇之间的相似性),并且当语料中的词汇数量大幅增加时向量的维度也在增加,使用这种表示方法会带来大量的空间浪费与高稀疏性。


分布式词表征

由于离散表示方法的所带来的问题,研究人员就考虑是否可以利用低维的空间来表示高维空间数据的方法。并且利用”类似“二进制的思想可以在较小的空间中表示多个数(如4位二进制码可以表示16个数)。并且每位的数值是浮点型的,则表示的范围可以从2n2^n2n上升到“无穷大”。

Word2Vec就是NLP领域较为经典的分布式词表征方法。这个方法是受到神经语言模型NNLM启发而由Google在2013年提出的词向量模型,在NLP领域拥有里程碑式的意义,以至于后期的ELMo、BERT、GPT都是受词向量的影响而诞生。Word2Vec旨在解决one-hot表示方法的语义鸿沟以及稀疏性的问题,提出了两种词向量训练方式基于CBOW和Skip-Gram的模型。
图1
其中CBOW是利用上下文去预测中心词,而Skip-Gram与之相反,利用中心词预测背景词。
Word2Vec有较好的特点:


  1. 词向量的维度可以人为设定。
  2. 不需要标注数据即可训练。
  3. 词向量之间可以利用适当的度量方式进行相似度计算。
  4. 训练得到的词向量,语义相似的词汇在空间上也相近,并且具有较好的推理能力。

离散词表征的例子可能会变成如下情况:

例如:词表(vocab)={我,爱,自然,语言,处理}词汇“自然”的词向量表示为:[0.546, 1.253, 0.142, 0.954, 2.035, ...]词汇“我”的词向量表示为:[3.012, 0.506, 1.953, 0.127, 0.035, ...]

将词向量降维到2维平面,从图2可以看出,语义上相近的词汇在空间上也相近。
在这里插入图片描述


推荐阅读
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 从理想主义者的内心深处萌发的技术信仰,推动了云原生技术在全球范围内的快速发展。本文将带你深入了解阿里巴巴在开源领域的贡献与成就。 ... [详细]
  • 本文介绍如何使用JavaScript中的for循环来创建一个九九乘法表,适合初学者学习循环结构的应用。 ... [详细]
  • 深入解析:存储技术的演变与发展
    本文探讨了从单机文件系统到分布式文件系统的存储技术发展过程,详细解释了各种存储模型及其特点。 ... [详细]
  • 整理于2020年10月下旬:总结过去,展望未来Itistoughtodayandtomorrowwillbetougher.butthedayaftertomorrowisbeau ... [详细]
  • 【转】强大的矩阵奇异值分解(SVD)及其应用
    在工程实践中,经常要对大矩阵进行计算,除了使用分布式处理方法以外,就是通过理论方法,对矩阵降维。一下文章,我在 ... [详细]
  • 自然语言处理(NLP)——LDA模型:对电商购物评论进行情感分析
    目录一、2020数学建模美赛C题简介需求评价内容提供数据二、解题思路三、LDA简介四、代码实现1.数据预处理1.1剔除无用信息1.1.1剔除掉不需要的列1.1.2找出无效评论并剔除 ... [详细]
  • 本文节选自《NLTK基础教程——用NLTK和Python库构建机器学习应用》一书的第1章第1.2节,作者Nitin Hardeniya。本文将带领读者快速了解Python的基础知识,为后续的机器学习应用打下坚实的基础。 ... [详细]
  • 独家解析:深度学习泛化理论的破解之道与应用前景
    本文深入探讨了深度学习泛化理论的关键问题,通过分析现有研究和实践经验,揭示了泛化性能背后的核心机制。文章详细解析了泛化能力的影响因素,并提出了改进模型泛化性能的有效策略。此外,还展望了这些理论在实际应用中的广阔前景,为未来的研究和开发提供了宝贵的参考。 ... [详细]
  • 计算机视觉领域介绍 | 自然语言驱动的跨模态行人重识别前沿技术综述(上篇)
    本文介绍了计算机视觉领域的最新进展,特别是自然语言驱动的跨模态行人重识别技术。上篇内容详细探讨了该领域的基础理论、关键技术及当前的研究热点,为读者提供了全面的概述。 ... [详细]
  • 视觉图像的生成机制与英文术语解析
    近期,Google Brain、牛津大学和清华大学等多家研究机构相继发布了关于多层感知机(MLP)在视觉图像分类中的应用成果。这些研究深入探讨了MLP在视觉任务中的工作机制,并解析了相关技术术语,为理解视觉图像生成提供了新的视角和方法。 ... [详细]
  • 本文介绍了进程的基本概念及其在操作系统中的重要性,探讨了进程与程序的区别,以及如何通过多进程实现并发和并行。文章还详细讲解了Python中的multiprocessing模块,包括Process类的使用方法、进程间的同步与异步调用、阻塞与非阻塞操作,并通过实例演示了进程池的应用。 ... [详细]
  • 本文详细介绍了如何在 EasyUI 框架中实现 DataGrid 组件的分页功能,包括配置方法和常见问题的解决方案。 ... [详细]
  • 一家位于长沙的知名网络安全企业,现面向全国诚聘高级后端开发工程师,特别欢迎具有一线城市经验的技术精英回归故乡,共创辉煌。 ... [详细]
  • 本文介绍了如何利用X_CORBA实现远程对象调用,并通过多个示例程序展示了其功能与应用,包括基础的Hello World示例、文件传输工具以及一个完整的聊天系统。 ... [详细]
author-avatar
手机用户2602938525
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有