Pengenalan Pola

Neural Networks digunakan dalam aplikasi seperti Pengenalan Wajah.

Aplikasi ini menggunakan Pengenalan Pola .

Jenis Klasifikasi ini dapat dilakukan dengan Perceptron .

Klasifikasi Pola

Bayangkan sebuah garis lurus (grafik linier) dalam ruang dengan titik-titik xy yang tersebar.

Bagaimana cara mengklasifikasikan titik-titik di atas dan di bawah garis?

Seorang perceptron dapat dilatih untuk mengenali titik-titik di atas garis, tanpa mengetahui rumus untuk garis tersebut.

Perceptron

Perceptron sering digunakan untuk mengklasifikasikan data menjadi dua bagian.

Perceptron juga dikenal sebagai Linear Binary Classifier.


Bagaimana Memprogram Perceptron

Untuk mempelajari lebih lanjut tentang cara memprogram perceptron, kami akan membuat program JavaScript yang sangat sederhana yang akan:

  1. Buat plotter sederhana
  2. Buat 500 poin xy acak
  3. Tampilkan titik xy
  4. Buat fungsi garis: f(x)
  5. Menampilkan garis
  6. Hitung jawaban yang diinginkan
  7. Display the desired answers

Create a Simple Plotter

Use the simple plotter object described in the AI Plotter Chapter.

Example

const plotter = new XYPlotter("myCanvas");
plotter.transformXY();

const xMax = plotter.xMax;
const yMax = plotter.yMax;
const xMin = plotter.xMin;
const yMin = plotter.yMin;

Create Random X Y Points

Create as many xy points as wanted.

Let the x values be random, between 0 and maximum.

Let the y values be random, between 0 and maximum.

Display the points in the plotter:

Example

const numPoints = 500;
const xPoints = [];
const yPoints = [];
for (let i = 0; i < numPoints; i++) {
  xPoints[i] = Math.random() * xMax;
  yPoints[i] = Math.random() * yMax;
}


Create a Line Function

Display the line in the plotter:

Example

function f(x) {
  return x * 1.2 + 50;
}


Compute Desired Answers

Compute the desired answers based on the line function:

y = x * 1.2 + 50.

The desired answer is 1 if y is over the line and 0 if y is under the line.

Store the desired answers in an array (desired[]).

Example

let desired = [];
for (let i = 0; i < numPoints; i++) {
  desired[i] = 0;
  if (yPoints[i] > f(xPoints[i])) {desired[i] = 1;}
}

Display the Desired Answers

For each point, if desired[i] = 1 display a blue point, else display a black point.

Example

for (let i = 0; i < numPoints; i++) {
  let color = "blue";
  if (desired[i]) color = "black";
  plotter.plotPoint(xPoints[i], yPoints[i], color);
}


How to Train a Perceptron

In the next chapters, you will learn more about how to Train the Perceptron