深い学習について学び始めていて、synaptic.js
が見つかりました。簡単な深い学習の予測
数字の入力があり、AIがパターンを理解したいと思う予測システムを作成したいと思います。
私の訓練データは2つの数字の配列で、検証したい出力は[x、y、z]です。ここでxとzは偶数/奇数のブール値の一種であり、yは両方入力の数字。
ので:
var trainingSet = [{
'input': [20, 34],
'output': [1, 54, 0]
}, {
'input': [22, 33],
'output': [1, 55, 1]
},{
'input': [24, 35],
'output': [1, 59, 1]
},{
'input': [23, 36],
'output': [0, 59, 0]
}];
と私は答えを知っているAIをご希望の場合はI入力[20, 31]
。
どうすればこのようなロジックを設定できますか?
// training data generator:
var trainingSet = [];
for (var i = 0; i < 500; i++) {
var obj = {};
obj.input = [
Math.random() * 10,
Math.random() * 10
].map(Math.round);
obj.output = [
Number(obj.input[0] % 2 == 0),
obj.input[0] + obj.input[1],
Number(obj.input[1] % 2 == 1)
]
\t trainingSet.push(obj);
}
document.body.innerHTML = JSON.stringify(trainingSet);
は基本的にin this jsFiddleをtrainigデータを生成するためのループを作った... YouTube talkに基づいてjsFiddleを開始したが、コードが実際に何をするか理解していません
なぜ、「あまりにも幅広い」クローズ投票が理由を説明するのは大歓迎です。私はこれを特定の問題、特定の言語、特定のAPI /ライブラリに細分化しようとしました。私はこれがどこに "広すぎる"ことができるかわかりませんが、もちろんそのコメントを歓迎します。 – Rikard
あなたは言語と問題を選択したかもしれませんが(どちらもNNの悪い選択肢ですが)、独自の試みは追加しませんでした。これは悪い準備のようです。 **編集:**このjsFiddleリンクを訪問した後(SOに行く最良の方法ではない)、単純なモデルかもしれませんが、それが本当に(線形の)パーセプトロンなら、うまく動作せず、良いニューラルネットワークコースの最初の部分(問題のモデル複雑度はどれくらいですか?問題は線形分離可能ですか?いいえ、いいえ)です。最初に理論を学びましょう。 – sascha
@サシャ私はこの問題をdownvoteする理由はありません。それは具体的であり、よく記述され、著者はそれを解決しようとしています。 「理論を学ぶ」と言うのは役に立たず、SOの大部分の質問にも適用できます。著者に:私が間違っていれば訂正してください。問題はやや逆転してはいけませんか?あなたの声明では、出力に基づいて入力を予測したいので、効果的な出力はあなたの訓練でなければなりません。 –