Прямой проход двухслойной сети

Прямой проход — прогон данных через слои по очереди, от входа к предсказанию. Между слоями стоит функция активации: без неё два слоя схлопываются в один, потому что произведение двух матриц весов — снова одна матрица.

ReLU работает поэлементно: отрицательное превращает в ноль, положительное оставляет как есть. Форму она не меняет и параметров не имеет. Ставят её между слоями, а не после последнего — иначе сеть не сможет выдать отрицательный ответ.

Подробно это разобрано в учебнике: Прямой проход и функция активации

В первой строке четыре целых числа: n — заказов, k — входов, h — нейронов скрытого слоя, m — выходов.

Далее n строк по k чисел — заказы. Далее k строк по h чисел — веса первого слоя, затем строка из h чисел — его смещения. Далее h строк по m чисел — веса второго слоя, затем строка из m чисел — его смещения.

Между слоями примени ReLU. На выходном слое ReLU нет.

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

Примеры
Входные данныеВыходные данные
1
2 3 4 2
4 2 6
1 8 2
-0.5 -0.5 0.25 2
-0.5 0 0 1
-0.25 -0.5 -0.5 -0.25
-0.5 0 3.75 4.25
-0.25 0.25
0.5 -0.25
0 3
1.5 0
1.25 1
20.375 6.250
21.875 10.000

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

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

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