50、自然语言处理中的字符与词级模型及情感分析

自然语言处理中的字符与词级模型及情感分析

一、字符级RNN模型构建与应用

1.1 数据集准备

对于分类输入特征,通常需要进行编码,这里由于不同字符数量较少(仅39个),使用独热向量对每个字符进行编码。具体操作如下:

dataset = dataset.map( 
    lambda X_batch, Y_batch: (tf.one_hot(X_batch, depth=max_id), Y_batch))
dataset = dataset.prefetch(1)

1.2 构建和训练字符级RNN模型

为了根据前100个字符预测下一个字符,使用一个包含两个GRU层(每层128个单元)的RNN模型,同时在输入和隐藏状态上都应用20%的Dropout。输出层是一个时间分布的全连接层,有39个单元,并使用softmax激活函数,以输出每个可能字符的概率。

import keras

model = keras.models.Sequential([ 
    keras.layers.GRU(128, return_sequences=True, input_shape=[None, max_id], 
                     dropout=0.2, recurrent_dropout=0.2), 
    keras.layers.GRU(128, return_sequences=True, 
                     dropout=0
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值