簡體   English   中英

如何使用brain.js查找模式

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM