Riconoscimento del modello
Le reti neurali sono utilizzate in applicazioni come il riconoscimento facciale.
Queste applicazioni utilizzano il riconoscimento del modello .
Questo tipo di classificazione può essere fatto con un Perceptron .
Classificazione del modello
Immagina una linea retta (un grafico lineare) in uno spazio con punti xy sparsi.
Come classificare i punti sopra e sotto la linea?
Un perceptron può essere addestrato a riconoscere i punti sopra la linea, senza conoscere la formula per la linea.
Un Perceptron viene spesso utilizzato per classificare i dati in due parti.
Un Perceptron è anche noto come classificatore binario lineare.
Come programmare un perceptron
Per saperne di più su come programmare un perceptron, creeremo un programma JavaScript molto semplice che:
- Crea un semplice plotter
- Crea 500 punti xy casuali
- Visualizza i punti xy
- Crea una funzione di linea: f(x)
- Visualizza la linea
- Calcola le risposte desiderate
- 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