【完结】囚生CYの备忘录(20220906-20221120)

序言

下午田径队第一次训练。其实我有点不太想去,一来太阳特别晒,二来自七月下旬住院回来之后,整个八月只进行了五六次路跑,这学期回来已有一周,每天跑2km就足以折煞我,心理落差特别大。

可是转念又想昨天偶遇王炳杰相谈甚欢,暑期又给陈嘉伟的队伍做指导老师,不去队里露脸见个面有点说不过去,之前也注意到李婷玉也住在三门路13号楼,尽管以我的能力可能也不太能搞得好关系吧,反正难得队里有另一个住在同一栋楼的博士,说不定以后能多一点机会呢… 所以尽管时间卡得很紧,还是去训练。

4×15开合深蹲跳,4×10箭步深蹲跳,4×15俯卧挺身,2×60次的交替抬腿跨栏,最后3000米慢跑恢复,大半年没上过这种强度,标准不标准得都勉强坚持下来,差点就要交代在田径场。想到王炳杰暑期每天还能四五点起来跑步,依然保持着10km以上的体能,我真的是要羞愧得无地自容。

说到底运动是能改变一个人的精神面貌,正如前文收尾写得那样,八月份如同泥石流般的颓败,也不知道自己就突然想摆烂到底,找不到可以刺激自己神经的支撑点。但是这场训练之后,我又找回了去年那种做事的激情。

作为一个开端这是值得乐观的,尽管在未来无穷的变数里我仍未发现那束属于自己的光芒,它或有或无,或是注定错失,然而似乎我已经别无选择,大不了自己成为一束最弱的光去点亮下一代罢。


文章目录

  • 序言
    • 20220906
    • 20220907
    • 20220907-20220908
    • 20220909-20220911
    • 20220912~20220913
    • 20220915~20220916
    • 20220916~20220917
    • 20220918~20220919
    • 20220920
    • 20220921~20220924
    • 20220925~20220927
    • 20220928~20221002
    • 20221003~20221005
    • 20221006
    • 20221007~20221008
    • 20221009~20221013
    • 20221014~20221015
    • 20221016~20221018
    • 20221019
    • 20221020
    • 20221021~20221022
    • 20221023~20221024
    • 20221025~20221027
    • 20221028
    • 20221029
    • 20221030~20221031
    • 20221101~20221102
      • 2022 高级统计学 学科综合考试试题回忆
      • Problem 1
      • Problem 2
      • Problem 3
      • Problem 4
      • Problem 5
      • Problem 6
      • Problem 7
      • Problem 8
      • Problem 9
    • 20221103
      • 2022 学科综合考试 高级计量经济学试题回忆
      • Problem 1
      • Problem 2
      • Problem 3
      • Problem 4
      • Problem 5
      • Problem 6
      • Problem 7
      • Problem 8
      • Problem 9
      • Problem 10
    • 20221104
    • 20221105
    • 20221106~20221108
    • 20221109~20221111
    • 20221112
    • 20221113~20221115
    • 20221116~20221117
    • 20221118
    • 20221119~20221120

20220906

关于torch的RNN模块做一个详解记录,重点要注意输入输出张量,以及参数张量的形状,另外像LSTM的输出相比GRU以及RNN要多一个 c i c_i ci?,GRU与RNN是相似的,RNN类的两个输出是有关联的,具体见下面代码中的注释:

  • LSTM网络由若干层的LSTM层构成,每个LSTM层中包含若干LSTM的单元(数量一般为序列长度),每一个LSTM层里面有两条线贯穿始终,即 h t , c t h_t,c_t ht?,ct?,因此需要设置初始的 h 0 h_0 h0? c 0 c_0 c0?,默认值应该是零张量,需要自定义的话,形状是(num_layers, batch_size, hidden_size),如果是双向,则是2倍的num_layers,

    下面这个例子里说明的是,hidden_output其实是最后一个LSTM层所有 h t h_t ht?的合并输出,final_states则是每一个LSTM层的最后一个单元格的输出,即每一层的(h_n, c_n)。

  • RNN网络类似,可以指定初始状态 h 0 h_0 h0?,但是final_states只有一个值:

    • input_size – 输入的特征数量。
    • hidden_size – 隐层的特征数量。
    • num_layers – RNN的层数。
    • nonlinearity – 指定非线性函数使用还是。默认是。
    • bias – 如果是,那么RNN层就不会使用偏置权重 b i h b_ih bi?h b h h b_hh bh?h,默认是
    • batch_first – 如果的话,那么输入的shape应该是[batch_size, time_step, feature],输出也是这样。
    • dropout – 如果值非零,那么除了最后一层外,其它层的输出都会套上一个层。
    • bidirectional – 如果,将会变成一个双向,默认为。
  • GRU网络:

    GRU的输出与RNN完全相同,但是也可以指定初始状态 h 0 h_0 h0?,GRU是只有一条线贯穿始终,与LSTM有所区别。

  • LSTMCell,RNNCell,GRUCell

    这个就是每一个LSTM层中包含的若干LSTM的单元的一个,具体而言输入输出形状:

    from torch.nn import LSTMCell, RNNCell, GRUCellimport torchx = torch.FloatTensor(32, 256)	# (batchsize, input_size)h_0 = torch.FloatTensor(32, 512) # (batchsize, hidden_size)rnncell = RNNCell(input_size=256, hidden_size=512, bias=True, nonlinearity='tanh')h_1 = rnncell(x, h_0)	# (batchsize, hidden_size)x = torch.FloatTensor(32, 256)	# (batchsize, input_size)h_0 = torch.FloatTensor(32, 512) # (batchsize, hidden_size)grucell = GRUCell(input_size=256, hidden_size=512, bias=True)h_1 = grucell(x, h_0)	# (batchsize, hidden_size)x = torch.FloatTensor(32, 256)	# (batchsize, input_size)h_0 = torch.FloatTensor(32, 512) # (batchsize, hidden_size)c_0 = torch.FloatTensor(32, 512) # (batchsize, hidden_size)lst
    

    来源:囚生CY

    声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年10月18日
下一篇 2022年10月18日

相关推荐