batch gradient descent
Batch gradient descent er en variant af gradient descent, hvor gradienten beregnes over hele træningsdatasættet i én iteration.
Kort fortalt
Batch gradient descent opdaterer modelparametrene ved at beregne den gennemsnitlige gradient over hele datasættet.
- Kategori
- træning
- Niveau
- øvet
Betydninger
1- 1
Batch gradient descent er en optimeringsalgoritme, der opdaterer modelparametrene ved at beregne gradienten af tabsfunktionen over hele træningsdatasættet.
- I batch gradient descent beregnes gradienten over alle 10.000 træningseksempler, før parametrene opdateres.
- Batch gradient descent kan være langsom for store datasæt, da hver iteration kræver en fuld gennemgang af data.
Hvornår bruges det
Batch gradient descent bruges typisk til små til mellemstore datasæt, hvor det er beregningsmæssigt overkommeligt at beregne gradienten over alle data. Det giver stabile opdateringer, men kan være langsom for store datasæt.
Kodeeksempel
import numpy as np
def batch_gradient_descent(X, y, theta, learning_rate, num_iters):
m = len(y)
for i in range(num_iters):
gradient = (1/m) * X.T @ (X @ theta - y)
theta -= learning_rate * gradient
return thetaImplementering af batch gradient descent til lineær regression.
Oprindelse
Betegnelsen batch gradient descent stammer fra, at den behandler hele datasættet som en 'batch' i hver iteration.
Kilder
2- Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning.
- Ruder, S. (2016). An overview of gradient descent optimization algorithms.