[英]How to find pattern with brain.js
免責聲明:
嗨,我正在嘗試使用brain.js在一組數字中查找模式。
我在brain.js github頁面上擴展了該示例。
const net = new brain.recurrent.LSTMTimeStep({
inputSize: 3,
hiddenLayers: [10],
outputSize: 3
});
net.train([
[1, 1, 1],
[2, 2, 2],
[3, 3, 3],
[4, 4, 4],
[5, 5, 5],
[6, 6, 6],
[7, 7, 7],
[8, 8, 8]
]);
const output = net.run([[7, 7, 7], [8, 8, 8]]);
我試圖得到[9,9,9]的輸出,但是我大多數時候都得到了[8,8,8]。
但是,如果我嘗試運行const output = net.run([[5, 5, 5], [6, 6, 6]]);
我很容易在訓練數據序列中獲得[7、7、7]和其他數字的連續輸出。
無論如何,有沒有訓練它,以便我可以獲得所需的輸出並將其用於其他模式?
您正在使用通過“監督學習”訓練的LSTM時步遞歸神經網絡: https : //en.wikipedia.org/wiki/Supervised_learning ,它提供的輸出值與之前給.run()
調用的輸出類似。
您似乎想要的是使用“強化學習”訓練的LSTM時間步遞歸神經網絡: https : //en.wikipedia.org/wiki/Reinforcement_learning ,它可以使用值輸出以前看到的值,也可以輸出新值以前從未根據開發和探索性(隨機)發現將它賦予.run()
調用。
Brain.js尚無增強學習API,盡管這將是v2穩定之后的重點。
請提供明確的問題和重現步驟。 我已經包含了您的示例,可以在瀏覽器中工作,以便其他人可以使用它: https : //jsfiddle.net/robertleeplummerjr/4o2vcajt/1/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.