自然语言处理(NLP)介绍和词向量

本文介绍了自然语言处理(NLP)的基本概念,包括如何将文本转化为模型输入,详细阐述了一种常见的文本表示方法——one-hot编码及其局限性,接着探讨了分布式编码,特别是word2vec模型,如Skipgram和CBOW,并提及了霍夫曼树在优化词向量计算中的应用。
摘要由CSDN通过智能技术生成

Task 1:NLP introduction and word vectors

1 什么是NLP?

自然语言处理(natural language processing)简称NLP。
人类比猩猩更加聪明,是因为人们可以通过语言进行交互,对语言的理解和思考,展现了人类语言的复杂和高效。每个人对于语言都可以有自己的理解,因此语言不光具有信息传递的功能,还可以通过语言来影响其他人。当今社会,网络速度不断更新迭代,5G已经油然而生,相对于人类语言,我们使用NLP技术可以高速学习构建更强大的处理能力。

简单点说:NLP就是对各种文本内容进行处理
通俗一点理解就是:教计算机懂人话!

2 文本的表示方法

在所有的NLP任务中,第一个也是最重要是我们如何将单词表示为任何模型的输入。

2.1 one-hot编码

2.1.1 单词的编码

什么是one-hot编码?简单来说就是0,1编码,将词用向量的方式表达。
例子:
词库:{我们,去,爬山,今天,你们,昨天,跑步}
我们—(1,0,0,0,0,0,0,)
爬山—(0,0,1,0,0,0,0,)
昨天—(0,0,0,0,0,1,0,)
编码规则:
词向量的长度=词库中元素的数量
将要编码的词在对应的位置标1,其他位置为0

2.1.2 句子的编码

使用2.1.1中单词的one-hot的编码规则,可以对句子进行编码。可以分为两种方式,布尔型编码和计数型编码
a 布尔型编码
词库:{我们,又,去,爬山,今天,你们,昨天,跑步}
我们 今天 去 爬山 ----(1,0,1,1,0,0,0,0)
编码规则:
词向量的长度=词库中元素的数量
词典中的词在句子中出现的对应位置编码为1,未出现编码为0

b 计数型编码
词库:{我们,又,去,爬山,今天,你们,昨天,跑步}
我们 今天 去 爬山 ----(1,0,1,1,0,0,0,0)
你们 又 去 爬山 又 去 跑步----(0,2,2,1,0,1,0,1)
编码规则:
词向量的长度=词库中元素的数量
词典中的词在句子中出现的对应位置编码为出现的次数,未出现编码为0

计算向量的余弦相似度时,使用布尔型编码,无法统计重复出现的词,计数型编码解决了这个问题,有些可能是重要的,但是大部分对于语义是无用的,例如,a,an,the等。
为解决该问题,引入了tf-idf表示方法

T F w =  在某一类中词条  w  出现的次数   该类中所有的词条数目  T F_{w}=\frac{\text { 在某一类中词条 } w \text { 出现的次数 }}{\text { 该类中所有的词条数目 }} TFw= 该类中所有的词条数目  在某一类中词条 w 出现的次数 

I D F = log ⁡ (  语料库的文档总数   包含词条  w  的文档数  + 1 ) ,

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值