Sobes.tech
Middle

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:

  1. Model parametrlərini təsadüfi dəyərlərlə başlatmaq.

  2. Parametrlər üzrə itki funksiyasının gradientini hesablamaq — qismən törəmələr vektoru.

  3. Parametrləri itki funksiyasını azaldan istiqamətdə yeniləmək:

    ( \theta := \theta - \alpha \nabla L(\theta) )

    burada ( \alpha ) öyrənmə sürətidir.

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