美文网首页
Pytorch学习-GRU使用

Pytorch学习-GRU使用

作者: 致Great | 来源:发表于2021-12-22 22:35 被阅读0次
    import torch.nn as nn
    import torch
    
    # gru = nn.GRU(input_size=50, hidden_size=50, batch_first=True)
    # embed = nn.Embedding(3, 50)
    # x = torch.LongTensor([[0, 1, 2]])
    # x_embed = embed(x)
    # out, hidden = gru(x_embed)
    
    
    gru = nn.GRU(input_size=5, hidden_size=6,
                 num_layers=2,  # gru层数
                 batch_first=False,  # 默认参数 True:(batch, seq, feature) False:True:( seq,batch, feature),
                 bidirectional=False,  # 默认参数
                 )
    
    # N=batch size
    # L=sequence length
    # D=2 if bidirectional=True else 1
    # Hin=input size
    # Hout=outout size
    
    
    input_ = torch.randn(1, 3, 5)  # (L,N,hin)(序列长度,batch size大小,输入维度大小)
    h0 = torch.randn(2 * 1, 3, 6)  # (D∗num_layers,N,Hout)(是否双向乘以层数,batch size大小,输出维度大小)
    
    output, hn = gru(input_, h0)
    # output:[1, 3, 6] (L,N,D*Hout)=(1,3,1*6)
    # hn:[2, 3, 6] (D*num_layers,N,Hout)(1*2,3,6)
    
    print(output.shape, hn.shape)
    # torch.Size([1, 3, 6]) torch.Size([2, 3, 6])
    
    

    相关文章

      网友评论

          本文标题:Pytorch学习-GRU使用

          本文链接:https://www.haomeiwen.com/subject/utpcqrtx.html