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. 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

2

Kilder

1
  • Rosenblatt, F. (1958). The Perceptron: A Probabilistic Model for Information Storage and Organization in the Brain.