Middle — Senior
Aký algoritmus je základem modelu?
sobes.tech AI
Odpoveď od AI
Základom väčšiny moderných modelov strojového učenia sú optimalizačné algoritmy, ako je gradientný zostup, ktorý minimalizuje funkciu straty. V závislosti od typu úlohy a modelu môžu byť tieto algoritmy lineárne regresné algoritmy, rozhodovacie stromy, náhodné lesy, podporné vektorové stroje (SVM), neurónové siete a ich variácie (napríklad konvolučné alebo rekurentné neurónové siete).
Napríklad v neurónových sieťach sa používa algoritmus spätného šírenia na trénovanie váh siete na základe gradientného zostupu.
# Príklad jednoduchého gradientného zostupu pre lineárnu regresiu
import numpy as np
X = np.array([[1], [2], [3], [4]])
y = np.array([2, 4, 6, 8])
w = 0.0 # váha
b = 0.0 # posun
learning_rate = 0.01
for epoch in range(1000):
y_pred = w * X + b
error = y_pred - y
grad_w = (2 / len(X)) * np.sum(error * X)
grad_b = (2 / len(X)) * np.sum(error)
w -= learning_rate * grad_w
b -= learning_rate * grad_b
print(f"Natrénovaná váha: {w}, posun: {b}")
Algoritmus teda závisí od konkrétneho modelu, ale v základe spočíva optimalizácia parametrov na minimalizáciu chyby.