Модуль: Обратное распространение (Backpropagation)


Проверь backward

Проверь backward

Числа правильной формы ещё не означают, что backward верен. Напишите численную проверку одного веса.

Оформите функцию:

def numeric_gradient(x, w, b, y, index, h=1e-5):
    ...

Она должна изменить только w[index] и вычислить центральную разность:

\(g_{num}=\dfrac{L(w_i+h)-L(w_i-h)}{2h}\).

Функция потерь и нейрон те же, что в предыдущей задаче: линейная часть → ReLU → квадрат ошибки.

Входные данные
n
x1 x2 ... xn
w1 w2 ... wn
b y
index

index нумеруется с нуля. Используйте h = 1e-5.

Выходные данные

Выведите численный градиент с 6 знаками после точки.

Тесты не содержат точек излома ReLU в интервале [w[index]-h, w[index]+h].

Примеры
№Входные данныеВыходные данные
1
3
1 2 3
0.5 -0.25 1
0.5 2
0
3.000000
2
3
1 2 3
0.5 -0.25 1
0.5 2
2
9.000000

Напишите программу
Auto
       

time 1500 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
Python1