zoukankan      html  css  js  c++  java
  • pytorch上的循环层和全连接层操作

    循环层

    pytorch中的三种循环层的实现:

    层对应的类 功能
    torch.nn.RNN() 多层RNN单元
    torch.nn.LSTM() 多层长短期记忆LSTM单元
    torch.nn.GRU() 多层门限循环GRU单元
    torch.nn.RNNCell() 一个RNN循环层单元
    torch.nn.LSTMCell() 一个长短期记忆LSTM单元
    torch.nn.GRUCell() 一个门限循环GRU单元

    下面以torch.nn.RNN()为例介绍循环层的参数、输入和输出

    nn.RNN(input_size, hidden_size, num_layers=1, nonlinearity=tanh, bias=True, batch_first=False, dropout=0, bidirectional=False)

    • input_size输入特征的维度, 一般rnn中输入的是词向量,那么 input_size 就等于一个词向量的维度
    • hidden_size隐藏层神经元个数,或者也叫输出的维度(因为rnn输出为各个时间步上的隐藏状态)
    • num_layers网络的层数
    • nonlinearity激活函数(默认是tanh激活函数,可选relu)
    • bias是否使用偏置(默认是True)
    • batch_first输入数据的形式,默认是 False,就是这样形式,(seq(num_step), batch, input_dim),也就是将序列长度放在第一位,batch 放在第二位,如果是True,那么输入输出的shape应该是[batch_size,time_step,feature]
    • dropout是否应用dropout(除外最后一层), 默认不使用,如若使用将其设置成一个0或者非0的数字即可
    • birdirectional是否使用双向的 rnn,默认是 False

      RNN的输入为input和h_0,其中input是一个形状为(seq_len,batch,input_size)的张量。h_0则是一个形状为(num_layers*num_directions,batch, hidden_size)保存着初始隐状态的张量。如果不提供就默认为0。如果是双向RNN,num_directions等于2,否则等于1.

      RNN的输出为output和h_n,其中output是一个形状为(seq_len, batch, hidden_size*num_directions)的张量,保存着RNN最后一层的输出特征。如果输入是被填充过的序列,那么输出也是被填充过的序列。

      h_n是一个形状为(num_layers*num_directions, batch, hidden_size)的张量,保存着最后一个时刻的隐状态。

    全连接层

      通常所说的全连接层是指一个由多个神经元组成的层,其所有的输出和该层所有的输入都有连接,即每个输入都会影响所有的神经元的输出。在pytorch中的nn.Linear()表示线性变换,全连接层可以看作是nn.Linear()表示线性边层再加上一个激活函数层所构成的结构。

    具体操作如下:

      torch.nn.Linear(in_features,out_features, bias = True)

      in_features:每个输入样本的特征数量(看作神经元个数)

      out_features:每个样本输出的特征数量

      bias :是否添加偏置

    Linear的输入为(N,in_features)的张量,输出为(N,out_features)的张量

  • 相关阅读:
    poj_2506_Tiling_201407211555
    poj_2524_Ubiquitous Religions_201407211506
    poj_2586_Y2K Accounting Bug_201407211318
    poj_3006_Dirichlet's Theorem on Arithmetic Progressions_201407041030
    POJ训练计划
    nyoj_10_skiing_201405181748
    nyoj_308_Substring_201405091611
    nyoj_205_求余数_201404271630
    hdu_2082_找单词_201404271536
    nyoj_176_队花的烦恼二_201404262008
  • 原文地址:https://www.cnblogs.com/2020zxc/p/13622561.html
Copyright © 2011-2022 走看看