AI-For-Beginners/translations/sr/lessons/3-NeuralNetworks/03-Perceptron
localizeflow[bot] 43c61babaf chore(i18n): sync translations with latest source changes (chunk 1/1, 201 changes) 2026-01-30 02:36:47 +00:00
..
lab chore(i18n): sync translations with latest source changes (chunk 1/1, 201 changes) 2026-01-30 02:36:47 +00:00
Perceptron.ipynb 🌐 Update translations via Co-op Translator 2025-12-12 20:42:50 +00:00
README.md chore(i18n): sync translations with latest source changes (chunk 1/1, 201 changes) 2026-01-30 02:36:47 +00:00

README.md

Увод у неуронске мреже: Перцептрон

Квиз пре предавања

Један од првих покушаја да се имплементира нешто слично модерној неуронској мрежи направио је Френк Розенблат из Корнел лабораторије за ваздухопловство 1957. године. То је била хардверска имплементација названа "Mark-1", дизајнирана да препозна примитивне геометријске фигуре, као што су троуглови, квадрати и кругови.

Frank Rosenblatt The Mark 1 Perceptron

Слике са Википедије

Улазна слика је била представљена низом од 20x20 фотоћелија, тако да је неуронска мрежа имала 400 улаза и један бинарни излаз. Једноставна мрежа је садржала један неурон, који се називао и јединица логичког прага. Тежине неуронске мреже су функционисале као потенциометри који су захтевали ручно подешавање током фазе тренинга.

Потенциометар је уређај који омогућава кориснику да подеси отпор у колу.

Њујорк Тајмс је у то време писао о перцептрону: ембрион електронског рачунара за који [морнарица] очекује да ће моћи да хода, говори, види, пише, репродукује се и буде свестан свог постојања.

Модел перцептрона

Претпоставимо да имамо N карактеристика у нашем моделу, у ком случају би улазни вектор био вектор величине N. Перцептрон је модел за бинарну класификацију, односно може да разликује две класе улазних података. Претпоставићемо да за сваки улазни вектор x излаз нашег перцептрона буде или +1 или -1, у зависности од класе. Излаз ће се рачунати помоћу формуле:

y(x) = f(wTx)

где је f функција активације у облику степенасте функције.

Тренинг перцептрона

Да бисмо обучили перцептрон, потребно је да пронађемо вектор тежина w који класификује већину вредности исправно, односно резултира најмањом грешком. Ова грешка E је дефинисана критеријумом перцептрона на следећи начин:

E(w) = -∑wTxiti

где:

  • збир се узима за оне тачке података за тренинг i које резултирају погрешном класификацијом
  • xi су улазни подаци, а ti је или -1 или +1 за негативне и позитивне примере, респективно.

Овај критеријум се сматра функцијом тежина w, и потребно је да га минимизирамо. Често се користи метода названа градијентни спуст, у којој почињемо са неким почетним тежинама w(0), а затим на сваком кораку ажурирамо тежине према формули:

w(t+1) = w(t) - η∇E(w)

Овде је η такозвана стопа учења, а ∇E(w) означава градијент E. Након што израчунамо градијент, добијамо:

w(t+1) = w(t) + ∑ηxiti

Алгоритам у Python-у изгледа овако:

def train(positive_examples, negative_examples, num_iterations = 100, eta = 1):

    weights = [0,0,0] # Initialize weights (almost randomly :)
        
    for i in range(num_iterations):
        pos = random.choice(positive_examples)
        neg = random.choice(negative_examples)

        z = np.dot(pos, weights) # compute perceptron output
        if z < 0: # positive example classified as negative
            weights = weights + eta*weights.shape

        z  = np.dot(neg, weights)
        if z >= 0: # negative example classified as positive
            weights = weights - eta*weights.shape

    return weights

Закључак

У овом предавању сте научили о перцептрону, који је модел за бинарну класификацију, и како да га обучите користећи вектор тежина.

🚀 Изазов

Ако желите да покушате да направите свој перцептрон, пробајте ову лабораторију на Microsoft Learn која користи Azure ML designer.

Квиз после предавања

Преглед и самостално учење

Да бисте видели како можемо користити перцептрон за решавање једноставних проблема као и проблема из стварног живота, и да наставите са учењем - идите на Perceptron бележницу.

Ево занимљивог чланка о перцептронима.

Задатак

У овом предавању смо имплементирали перцептрон за задатак бинарне класификације и користили га за класификацију између две руком писане цифре. У овој лабораторији, од вас се тражи да решите проблем класификације цифара у потпуности, односно да одредите која цифра највероватније одговара датој слици.