Perceptron je základní stavební kámen neuronových sítí. V původní podobě se jedná o algoritmus pro binární klasifikaci (rozhodování mezi dvěma třídami), který na základě sady vstupů a jejich vah určí, zda „neuron“ vystřelí (výstup 1) nebo ne (výstup 0).
Fungování perceptronu lze popsat jako proces o třech krocích:
Perceptron se učí úpravou svých vah na základě chyb, které udělá. Proces učení je jednoduchý:
1. Předložíme modelu trénovací data. 2. Model vygeneruje odhad. 3. Pokud je odhad chybný, váhy se upraví směrem k opravě: * Pokud měl vyjít výsledek 1, ale vyšel 0, váhy se **zvýší**. * Pokud měl vyjít výsledek 0, ale vyšel 1, váhy se **sníží**.
Zásadním omezením jednoduchého perceptronu je, že dokáže řešit pouze úlohy, které jsou lineárně separabilní. To znamená, že mezi dvěma skupinami dat musí být možné nakreslit rovnou čáru (nebo rovinu ve více dimenzích), která je oddělí.
Aby bylo možné řešit složitější (nelineární) úlohy, začaly se perceptrony skládat do vrstev. Tím vznikl:
| Vlastnost | Původní Perceptron | Moderní Neuron (v hlubokých sítích) |
|---|---|---|
| Aktivační funkce | Skoková (všechno nebo nic) | Hladká (ReLU, Sigmoid, Tanh) |
| Výstup | Pouze 0 nebo 1 | Spojitá hodnota (např. 0.85) |
| Učení | Perceptron learning rule | Gradient Descent + Backpropagation |
| Schopnost | Pouze lineární vztahy | Komplexní, nelineární vzorce |
Zajímavost: Frank Rosenblatt věřil, že perceptron brzy povede ke strojům, které budou moci chodit, mluvit a uvědomovat si samy sebe. Přestože byl příliš optimistický, položil základy pro všechno, co dnes vidíme v technologiích jako ChatGPT.