当前位置: 首页 > news >正文

建设机械网站案例app开发公司怎么找到需要定制的客户

建设机械网站案例,app开发公司怎么找到需要定制的客户,广州网站制作是什么,运输公司网站模板#x1f468;‍#x1f393;作者简介#xff1a;一位即将上大四#xff0c;正专攻机器学习的保研er #x1f30c;上期文章#xff1a;机器学习深度学习——NLP实战#xff08;情感分析模型——数据集#xff09; #x1f4da;订阅专栏#xff1a;机器学习‍作者简介一位即将上大四正专攻机器学习的保研er 上期文章机器学习深度学习——NLP实战情感分析模型——数据集 订阅专栏机器学习深度学习 希望文章对你们有所帮助 NLP实战情感分析模型——RNN实现 引入使用循环神经网络表示单个文本加载预训练的词向量训练和评估模型小结 引入 与词相似度和类比任务一样我们也可以将预先训练的词向量应用于情感分析。上节已经下载过了IMDb评论数据集了这个数据集也不算很大虽然下载了很久。。。使用在大规模语料库上预训练的文本表示可以减少模型的过拟合。我们将使用GloVe模型来表示每个词元并将这些词元表示送入多层双向循环神经网络以获得文本序列表示该文本序列表示将被转换为情感分析输出。对于相同的下游应用之后再讲不同的架构选择。 如上图所示将GloVe送入基于循环神经网络的架构用于情感分析。 import torch from torch import nn from d2l import torch as d2lbatch_size 64 train_iter, test_iter, vocab d2l.load_data_imdb(batch_size)使用循环神经网络表示单个文本 在文本分类任务中可变长度的文本序列将被转换为固定长度的类别。在下面的BiRNN类中虽然文本序列的每个词元经过嵌入层self.embedding获得其单独的预训练GloVe表示但是整个序列由双向循环神经网络self.encoder编码。更具体的说双向长短期记忆网络在初始和最终时间步的隐状态在最后一层被连结起来作为文本序列的表示。然后通过一个具有两个输出“积极”和“消极”的全连接层self.decoder将此单一文本表示转换为输出类别。 class BiRNN(nn.Module):def __init__(self, vocab_size, embed_size, num_hiddens,num_layers, **kwargs):super(BiRNN, self).__init__(**kwargs)self.embedding nn.Embedding(vocab_size, embed_size)# 将bidirectional设置为True以获取双向循环神经网络self.encoder nn.LSTM(embed_size, num_hiddens, num_layersnum_layers,bidirectionalTrue)self.decoder nn.Linear(4 * num_hiddens, 2)def forward(self, inputs):# inputs的形状是批量大小时间步数# 因为长短期记忆网络要求其输入的第一个维度是时间维# 所以在获得词元表示之前输入会被转置。# 输出形状为时间步数批量大小词向量维度embeddings self.embedding(inputs.T)self.encoder.flatten_parameters()# 返回上一个隐藏层在不同时间步的隐状态# outputs的形状是时间步数批量大小2*隐藏单元数outputs, _ self.encoder(embeddings)# 连结初始和最终时间步的隐状态作为全连接层的输入# 其形状为批量大小4*隐藏单元数encoding torch.cat((outputs[0], outputs[-1]), dim1)outs self.decoder(encoding)return outs让我们构造一个具有两个隐藏层的双向循环神经网络来表示单个文本以进行情感分析。 embed_size, num_hiddens, num_layers 100, 100, 2 devices d2l.try_all_gpus() net BiRNN(len(vocab), embed_size, num_hiddens, num_layers)def init_weights(m):if type(m) nn.Linear:nn.init.xavier_uniform_(m.weight)if type(m) nn.LSTM:for param in m._flat_weights_names:if weight in param:nn.init.xavier_uniform_(m._parameters[param]) net.apply(init_weights)加载预训练的词向量 下面我们为词表中的单词加载预训练的100维要与embed_size一致的GloVe嵌入。我们使用这些预训练的词向量来表示评论中的词元并且在训练期间不要更新这些向量。 glove_embedding d2l.TokenEmbedding(glove.6b.100d) embeds glove_embedding[vocab.idx_to_token] net.embedding.weight.data.copy_(embeds) net.embedding.weight.requires_grad False训练和评估模型 现在我们可以训练双向循环神经网络进行情感分析。使用Adam优化算法。 lr, num_epochs 0.01, 5 trainer torch.optim.Adam(net.parameters(), lrlr) loss nn.CrossEntropyLoss(reductionnone) d2l.train_ch13(net, train_iter, test_iter, loss, trainer, num_epochs,devices) d2l.plt.show()运行结果 loss 0.300, train acc 0.875, test acc 0.818 79.4 examples/sec on [device(type‘cpu’)] 运行图片 接着我们定义一下函数来使用训练好的模型net预测文本序列的情感。 #save def predict_sentiment(net, vocab, sequence):预测文本序列的情感sequence torch.tensor(vocab[sequence.split()], deviced2l.try_gpu())label torch.argmax(net(sequence.reshape(1, -1)), dim1)return positive if label 1 else negative最后让我们使用训练好的模型对两个简单的句子进行情感预测。 predict_sentiment(net, vocab, this movie is so great)运行结果 ‘positive’ predict_sentiment(net, vocab, this movie is so bad)运行结果 ‘negative’ 小结 1、预训练的词向量可以表示文本序列中的各个词元。 2、双向循环神经网络可以表示文本序列。例如通过连结初始和最终时间步的隐状态可以使用全连接的层将该单个文本表示转换为类别。
http://www.zqtcl.cn/news/23752/

相关文章:

  • 重庆网站建设网站做的比较好的几个宠物网站
  • 遂宁商城网站建设北京怎样建设公司网站
  • 阿里云个人网站建设wordpress 以前文章灯箱
  • 奉贤网站建设公司青岛市最大的网络公司是哪里
  • 网站建设系统计公司辽阳网站建设58
  • wordpress站点地图关于做情侣的网站的图片素材
  • 企业建网站能不能一次进费用长沙自动seo
  • 什么是企业网站建设电子工程师社区
  • 重庆做网站外包公司网站设计怎么做链接
  • 织梦手机网站怎么安装教程视频教程网络推广的策略方法
  • 怎么安装网站代码专业的网站设计网络
  • 便利的邯郸网站建设沛县做网站
  • 视频多的网站建设制作网线水晶头
  • 怎么制作网站地图有了域名空间怎么做网站
  • 网站tkd优化商城网站开发案例
  • 海盐建设局网站网站备案企业用个人来备案可以用吗
  • 中山优化网站wordpress更换域名重定向
  • 百度商桥的代码放到网站里wordpress 30天
  • 广州自助建站模板社交类网站手机模版
  • 做网站公司怎么开拓更多业务哈尔滨建筑信息网
  • 图片设计师网站大学网站方案设计
  • 网站建设论坛fantodo天津建设工程信息网怎么上传资质企业
  • 淡水网站建设公司wordpress推荐php版本
  • 如何介绍一个网站的促销功能怎么建立自己的企业网站
  • 手机网站建设czyzj沈阳企业免费建站
  • 做a视频 免费网站wordpress tag 收录
  • wordpress 招聘插件昆明seo代理商
  • 做推广网站公司编程猫加盟条件和费用
  • 义乌搭建网站wordpress 404跳转到首页
  • 用动易做的诗歌协会网站百度知道网页入口