pytorch中lstm学习

举报
风吹稻花香 发表于 2021/10/22 22:13:29 2021/10/22
【摘要】 学习资料: pytorch-doc-zh/nlp_sequence_models_tutorial.md at master · apachecn/pytorch-doc-zh · GitHub if __name__ == '__main__': import torch import torch.nn as nn...

学习资料:

pytorch-doc-zh/nlp_sequence_models_tutorial.md at master · apachecn/pytorch-doc-zh · GitHub


  
  1. if __name__ == '__main__':
  2. import torch
  3. import torch.nn as nn # 神经网络模块
  4. rnn = nn.LSTM(10, 20, 2)
  5. # 输入数据x的向量维数10, 设定lstm隐藏层的特征维度20, 此model用2个lstm层。如果是1,可以省略,默认为1)
  6. input = torch.randn(5, 3, 10)
  7. # 输入的input为,序列长度seq_len=5, 每次取的minibatch大小,batch_size=3, 数据向量维数=10(仍然为x的维度)。每次运行时取3个含有5个字的句子(且句子中每个字的维度为10进行运行)
  8. # 初始化的隐藏元和记忆元,通常它们的维度是一样的
  9. # 2个LSTM层,batch_size=3, 隐藏层的特征维度20
  10. h0 = torch.randn(2, 3, 20)
  11. c0 = torch.randn(2, 3, 20)
  12. # 这里有2层lstm,output是最后一层lstm的每个词向量对应隐藏层的输出,其与层数无关,只与序列长度相关
  13. # hn,cn是所有层最后一个隐藏元和记忆元的输出
  14. output, (hn, cn) = rnn(input, (h0, c0))
  15. ##模型的三个输入与三个输出。三个输入与输出的理解见上三输入,三输出
  16. print(output.size(), hn.size(), cn.size())

文章来源: blog.csdn.net,作者:AI视觉网奇,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jacke121/article/details/120897071

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。