Brain.js

Brain.js là một thư viện JavaScript giúp bạn dễ hiểu về Mạng thần kinh vì nó ẩn đi sự phức tạp của toán học.

Xây dựng mạng thần kinh

Xây dựng mạng nơ-ron với Brain.js:

Thí dụ:

// 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"];

Giải thích ví dụ:

Mạng thần kinh được tạo bằng:new brain.NeuralNetwork()

Mạng được đào tạo vớinetwork.train([examples])

Các ví dụ đại diện cho 4 giá trị đầu vào với một giá trị đầu ra tương ứng.

Với network.run([1,0]), bạn hỏi "Sản lượng có khả năng xảy ra của [1,0] là bao nhiêu?"

Câu trả lời từ mạng là:

  • một: 93% (gần bằng 1)
  • 0: 6% (gần bằng 0)

Cách dự đoán sự tương phản

Với CSS, màu sắc có thể được đặt bằng RGB:

Thí dụ

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)

Ví dụ dưới đây trình bày cách dự đoán độ tối của một màu:

Thí dụ:

// 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"];

Giải thích ví dụ:

Mạng thần kinh được tạo bằng:new brain.NeuralNetwork()

Mạng được đào tạo vớinetwork.train([examples])

Các ví dụ đại diện cho 4 giá trị đầu vào một giá trị đầu ra tương ứng.

Với network.run([0,0,128/255]), bạn hỏi "Sản lượng có thể có của màu xanh đậm là bao nhiêu?"

Câu trả lời từ mạng là:

  • Tối: 95%
  • Nhẹ: 4%

Tại sao không chỉnh sửa ví dụ để kiểm tra đầu ra có khả năng là màu vàng hoặc đỏ?