lstm timestep一般是多少_请问rnn和lstm中batchsize和timestep的区别是什么?
圖說(shuō)起來(lái)可能更直觀些:
Tensor是一個(gè)高維數(shù)組,每單一個(gè)樣本是一個(gè)Input_Size*Time_Step的二維矩陣,其中Input_Size 代表觀察的特征數(shù)量,比如我需要用電池的電壓電流和溫度來(lái)預(yù)測(cè)SoC,此時(shí)Input_Size為3 。 Time_Step代表窗口的寬度。 而B(niǎo)atch_Size借評(píng)論里@ViVi 的話說(shuō),“就是表示有batch_size個(gè)這樣的二維矩陣送入網(wǎng)絡(luò)中訓(xùn)練“。
以及,附送一個(gè)隨機(jī)抽取batch的小方法:
筆芯
以下為原答,年輕人還是輕狂。。。
##################################################################
愚以為,在上各位答主, 說(shuō)的都不對(duì)。。。
理論上沒(méi)問(wèn)題, 但是實(shí)際在設(shè)置RNN的時(shí)候, 如果這么理解的話估計(jì)訓(xùn)到明年也訓(xùn)不出。
一般在給訓(xùn)練集的時(shí)候都會(huì)用的Dataloader, 此時(shí)就已經(jīng)涉及到了一次BATCH_SIZE。再以pytorch為例, 在定義torch.nn.RNN()的時(shí)候,根據(jù)問(wèn)題種類不同batch 和time_seq的含義不同:圖片分類:Dataloader 里的BS表示一次給幾張圖片。RNN的batch和time_seq分別為圖片像素的長(zhǎng)寬。 此時(shí)不需要特別區(qū)分。
語(yǔ)句預(yù)測(cè):BS指一次給幾段話, 而此時(shí)time_seq代表了把一段話分成幾句,batch表示每句話里有多少個(gè)字。
時(shí)間預(yù)測(cè):這個(gè)就非常關(guān)鍵了。 BS表示一次給多長(zhǎng)時(shí)間的數(shù)據(jù)量, time_seq代表把這段時(shí)間再劃分為幾小段時(shí)間,而 batch 則是每小段時(shí)間里有多少數(shù)據(jù)量。 而RNN展開(kāi)的時(shí)間長(zhǎng)度其實(shí)是batch的值。
我之前做時(shí)間預(yù)測(cè)的時(shí)候,BS設(shè)為100,且希望RNN展開(kāi)100步。 參照其他答主的回答, 把time_seq設(shè)為了100,然后在迷途中游蕩了半個(gè)月,train的時(shí)候誤差e-3量級(jí),一test壓根不擬合。直到在github上看了語(yǔ)句預(yù)測(cè)的例子,才發(fā)現(xiàn)概念完全弄反了。
以上。如有指正歡迎賜教。
總結(jié)
以上是生活随笔為你收集整理的lstm timestep一般是多少_请问rnn和lstm中batchsize和timestep的区别是什么?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 多少钱一炮啊?
- 下一篇: 架设win2003r2下配置好iis6+