Ich habe mich gefragt, wie der Status für LSTMs am besten initialisiert werden kann. Momentan initialisiere ich es einfach auf alle Nullen. Ich kann online nichts darüber finden, wie man es initialisiert. Eine Sache, an die ich gedacht habe, ist, den Ausgangszustand zu einem trainierbaren Parameter zu machen. Irgendein Rat?
neural-networks
lstm
chasep255
quelle
quelle
Antworten:
Normalerweise würden Sie die Anfangszustände auf Null setzen, aber das Netzwerk wird lernen, sich an diesen Anfangszustand anzupassen.
Der folgende Artikel schlägt vor, die anfänglichen verborgenen Zustände zu lernen oder zufälliges Rauschen zu verwenden.
Wenn Ihre Daten viele kurze Sequenzen enthalten, kann das Training des Ausgangszustands das Lernen beschleunigen.
Wenn Ihre Daten eine kleine Anzahl langer Sequenzen enthalten, sind möglicherweise nicht genügend Daten vorhanden, um den Anfangszustand effektiv zu trainieren. In diesem Fall kann die Verwendung eines lauten Anfangszustands das Lernen beschleunigen. Eine Idee, die sie nicht erwähnen, wäre, den Mittelwert und den Standard des Geräuschgenerators zu lernen.
In dem Artikel wird darauf hingewiesen, dass das Hinzufügen von Rauschen von geringem Nutzen ist, wenn Sie den Ausgangszustand lernen möchten.
quelle