前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自然语言处理之文本卷积

自然语言处理之文本卷积

原创
作者头像
我爱自然语言处理
修改2018-07-18 14:52:01
1.3K1
修改2018-07-18 14:52:01
举报
文章被收录于专栏:我的python我的python

*注:本文仅适用于已了解图像卷积过程的童鞋们

自然语言处理之文本卷积 1.文本的向量表示 2.文本的1维卷积 3.池化

1.文本的向量表示

在文本处理时,首先要将文本用向量表示出来。这里用词袋模型和word2vec来举例。

1.词袋模型

词袋模型的文本向量表示
词袋模型的文本向量表示

•每个单词用一个one-hot vector来表示

•将每个单词的向量相加得到文本的向量表示

•向量的长度会很长,并且会稀疏

2.word2vec

word2vec的文本向量表示
word2vec的文本向量表示

•用word2vec embeddings来表示每个单词

•每个向量的长度减少,并且是稠密向量

•将每个单词的向量相加来得到文本的向量表示

2.文本的1维卷积

卷积
卷积

3.卷积核

卷积核的宽度和词向量的长度相同,行数代表n-grams中的n,即有n行则这个卷积核一次能卷积n个词向量的信息

4.向量的距离

在word2vec中,意义越接近的词会有越接近的向量表示,用cosine距离来表示就会越小

5.值

每次经过卷积操作得到一个值,这个值越大说明被卷积的词向量(n个)和卷积核的距离越小,也就意味着表示的意义接近。例如,卷积核代表动物+动作,而被卷积的词向量组合代表cat sitting和dog resting,这样卷积得到的值就会比较大。

1维卷积
1维卷积

•卷积核的大小可改变(行数),可以进行3-gram,4-gram卷积

•和图像处理一样,需要多个卷积核

•1维卷积是因为只在一个方向上进行卷积(时间方向)

一维卷积
一维卷积

一个卷积核对一段文本进行卷积最终得到一个向量(与前面直接将每个词向量相加得到得到文本向量不同)。

3.池化

最大池化
最大池化

进行最大池化。由于与卷积核越接近的矩阵卷积得到的值越大,因此最大池化最终得到一个最能表达这个卷积核筛选出来的特征的值。

用多个卷积核来处理文本
用多个卷积核来处理文本

•用3,4,5-gram的卷积核各100个来处理文本,经过卷积池化最终得到一个长度为300的向量

•这个向量可以用于机器学习模型中(MLP、朴素贝叶斯等)

•这样解决了处理文本信号时输入长度不一的问题。最终表示文本的向量的长度只取决于卷积核的个数,而与输入的长度无关。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.文本的向量表示
  • 2.文本的1维卷积
  • 3.池化
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档