前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >简单maxPooling单层网络句子分类框架和数学理论

简单maxPooling单层网络句子分类框架和数学理论

作者头像
zenRRan
发布2018-04-10 10:54:56
5770
发布2018-04-10 10:54:56
举报
文章被收录于专栏:深度学习自然语言处理

为了完成我的基于深度学习的立场检测系统毕业论文,我会从最简单的Pooling单层网络开始系统学习句子分类。接下来会有卷积神经网络CNN层,循环神经网络RNN层等,以后更新。这些都是理论+实践代码(下期会给基于pytorch的python实现代码)。望大家发现错误积极指出,互相在自然语言处理道路上进步!

1

数据清洗

2

分词

英文的文本肯定不用这一步,中文就必须分词了。

3

词向量化

这里我将用随机的向量化,一个词的维度为 n*1

4

句子向量化,标签01化

假设句子 x 词的数量是m,那么它的向量为 n*m(一列一个词向量,顺序排m列)

比如三分类标签 G 分别为[1,0,0],[0,1,0],[0,0,1]

5

初始化权重W

维度为 n*classSize (classSize分类大小)

6

句子向量过maxPooling层

maxPooling就是在一个维度中选择最大的一个,其余抛弃

句子向量 n*m也就是每一行是一个维度,每一行选择最大的,最终维度为 n*1

7

Softmax概率化

P = Softmax(xT*W) 维度1*classSize

8

通过Loss算梯度grad

grad需要通过链式求导求得,即

而其中的

对Loss化简得:

其中

的g表示这个句子的标签中[0,1,0] 1 的位置,y为概率化的结果,y为[0.5,0.3,0.2]

可以推出

由于

,所以:

所以梯度

9

更新W

W=Wαgrad

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-12-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 深度学习自然语言处理 微信公众号,前往查看

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

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

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