Perceptron
En perceptron er den enkleste form for et neuralt netværk, en lineær binær klassifikator.
Kort fortalt
En perceptron er en algoritme der kan lære at skelne mellem to kategorier ud fra input.
- Kategori
- model
- Niveau
- begynder
- Udtale
- pərˈsɛptrɒn
Betydninger
1- 1
En perceptron er en enkeltlags neural netværksmodel der udfører en lineær klassifikation ved at anvende en trin-funktion på en vægtet sum af input.
- Perceptron-algoritmen opdaterer vægtene når der er en fejl.
Hvornår bruges det
Perceptronen bruges som byggeblok i større neurale netværk og til introduktion af maskinlæring. I praksis anvendes den sjældent alene på grund af dens begrænsninger i at løse ikke-lineære problemer.
Formel
f(x) = step( w·x + b )Kodeeksempel
import numpy as np
class Perceptron:
def __init__(self, lr=0.01, n_iter=1000):
self.lr = lr
self.n_iter = n_iter
def fit(self, X, y):
self.weights = np.zeros(1 + X.shape[1])
for _ in range(self.n_iter):
for xi, target in zip(X, y):
update = self.lr * (target - self.predict(xi))
self.weights[1:] += update * xi
self.weights[0] += update
return self
def net_input(self, X):
return np.dot(X, self.weights[1:]) + self.weights[0]
def predict(self, X):
return np.where(self.net_input(X) >= 0.0, 1, -1)En simpel implementering af perceptron-algoritmen i Python.
Oprindelse
Termen stammer fra Frank Rosenblatt, der i 1958 introducerede perceptronen som en model af biologisk perception.
Afledte ord
2Kilder
1- Rosenblatt, F. (1958). The Perceptron: A Probabilistic Model for Information Storage and Organization in the Brain.