Корень квадратного уравнения градиентным спуском

MediumML coding
06:00
Лучше работает на десктопе
ML CodingGradient DescentOptimization
Реальный собес00:37:54-00:47:092026-03-18 13-04-11.movСтраница собеса

Дано квадратное уравнение:

f(x) = a * x^2 + b * x + c

Нужно приблизить один из корней через gradient descent по loss:

loss(x) = f(x)^2

На каждом шаге обновляйте:

x = x - lr * 2 * f(x) * (2 * a * x + b)

Сигнатура

def gd_quadratic_root(a: float, b: float, c: float, x0: float, lr: float, steps: int) -> float:

Верните x, округленный до 6 знаков.

Примеры

Пример 1

Вход:
a = 1
b = -3
c = 2
x0 = 0
lr = 0.05
steps = 100
Выход:0.999995

Пример 2

Вход:
a = 1
b = -5
c = 6
x0 = 4
lr = 0.03
steps = 120
Выход:3.000118

Пример 3

Вход:
a = 1
b = 0
c = -4
x0 = 3
lr = 0.02
steps = 80
Выход:2
Консоль
Нажмите Run или Ctrl+Enter для запуска