Model parametrlərini tapmaq üçün gradient enişi necə işləyir?
sobes.tech Süni İntellekt
AI-dan cavab
Gradient enişməsi, itərli optimallaşdırma alqoritmidir və itki funksiyasını minimallaşdıran model parametrlərini tapmaq üçün istifadə olunur. Fikir, itki funksiyasının gradientinə zidd istiqamətdə addım-addım parametrləri tənzimləməkdir, çünki gradient ən çox artım istiqamətini göstərir.
Proses aşağıdakı kimidir:
-
Model parametrlərini təsadüfi dəyərlərlə başlatmaq.
-
Parametrlər üzrə itki funksiyasının gradientini hesablamaq — qismən törəmələr vektoru.
-
Parametrləri itki funksiyasını azaldan istiqamətdə yeniləmək:
( \theta := \theta - \alpha \nabla L(\theta) )
burada ( \alpha ) öyrənmə sürətidir.
-
2-3-cü addımları yaxınlaşma və ya maksimum iterasiya sayına çatana qədər təkrarlamaq.
Python ilə numpy istifadə edərək nümunə:
import numpy as np
def gradient_descent(x, y, theta, learning_rate, iterations):
m = len(y)
for _ in range(iterations):
predictions = x.dot(theta)
errors = predictions - y
gradient = (1/m) * x.T.dot(errors)
theta = theta - learning_rate * gradient
return theta
# x — xüsusiyyətlər matritsası, y — məqsəd dəyişəni, theta — model parametrləri
Beləliklə, gradient enişi modelin səhvini minimallaşdıraraq optimal parametrləri tapmağa imkan verir.