Brain.js

Brain.jsは、数学の複雑さを隠しているため、ニューラルネットワークを簡単に理解できるJavaScriptライブラリです。

ニューラルネットワークの構築

Brain.jsを使用してニューラルネットワークを構築する:

例:

// Create a Neural Network
const network = new brain.NeuralNetwork();

// Train the Network with 4 input objects
network.train([
 {input:[0,0], output:{zero:1}},
 {input:[0,1], output:{one:1}},
 {input:[1,0], output:{one:1},
 {input:[1,1], output:{zero:1},
]);

// What is the expected output of [1,0]?
result = network.run([1,0]);

// Display the probability for "zero" and "one"
... result["one"] + " " + result["zero"];

説明された例:

ニューラルネットワークは次のもので作成されます。 new brain.NeuralNetwork()

ネットワークはで訓練されています network.train([examples])

例は、対応する出力値を持つ4つの入力値を表しています。

network.run([1,0])、「[1,0]の出力の可能性はどのくらいですか?」と尋ねます。

ネットワークからの答えは次のとおりです。

  • 1つ:93%(1に近い)
  • ゼロ:6%(0に近い)

コントラストを予測する方法

CSSを使用すると、RGBで色を設定できます。

Color RGB
BlackRGB(0,0,0)
YellowRGB(255,255,0)
RedRGB(255,0,0)
WhiteRGB(255,255,255)
Light GrayRGB(192,192,192)
Dark GrayRGB(65,65,65)

次の例は、色の暗さを予測する方法を示しています。

例:

// Create a Neural Network
const net = new brain.NeuralNetwork();

// Train the Network with 4 input objects
net.train([
// White RGB(255, 255, 255)
{input:[255/255, 255/255, 255/255], output:{light:1}},
// Light grey (192,192,192)
{input:[192/255, 192/255, 192/255], output:{light:1}},
// Darkgrey (64, 64, 64)
{ input:[65/255, 65/255, 65/255], output:{dark:1}},
// Black (0, 0, 0)
{ input:[0, 0, 0], output:{dark:1}},
]);

// What is the expected output of Dark Blue (0, 0, 128)?
let result = net.run([0, 0, 128/255]);

// Display the probability of "dark" and "light"
... result["dark"] + " " + result["light"];

説明された例:

ニューラルネットワークは次のもので作成されます。 new brain.NeuralNetwork()

ネットワークはで訓練されています network.train([examples])

例は、対応する出力値に対応する4つの入力値を表しています。

を使用network.run([0,0,128/255])して、「ダークブルーの出力の可能性はどのくらいですか?」と尋ねます。

ネットワークからの答えは次のとおりです。

  • 暗い:95%
  • ライト:4%

例を編集して、黄色または赤の出力の可能性をテストしてみませんか?