- Она принимает входные данные
X
, меткиY
, весаweights
, смещенияbias
, и скорость обученияlearning_rate
. - Вложенный
for
цикл выполняется с внешним циклом, который инициализируется с помощьюepochs
. Внутренний цикл инициализируется длиной обучающих примеровlen(X)
. Мы обновляем веса и смещение после повторения одного обучающего примера. Внутри внутренней итерации:- Вызывается функция
forward_propagation
для вычисления прогнозируемого значения и сохраняет возвращаемое значение вY_predicted
. - Вызывается функция
compute_error
для вычисления ошибки в каждую эпоху и сохраняет значение вsum_error
. - Вызывается функция
gradient
для вычисления градиента ошибки относительно веса и смещения. - Вызывается функция
update_parameters
, которая возвращает обновленное значение весов и смещения.
- Вызывается функция
- Она принимает входную переменную
X
и весweights
, затем вычисляет скалярное произведение, используяnp.dot
и добавляет смещение для вычисления взвешенной суммы. - Применяется
sigmoid
к вычисленной взвешенной сумме.
- Функция принимает фактическую метку
y
и прогнозируемое значениеy_predicted
(после применения сигмоидной функции активации) и возвращает значение двоичной кросс-энтропийной потери.
- Функция принимает фактическую метку
Y
, прогнозируемое значениеY_predicted
и входное значениеX
. Онa вычисляет ошибку, беря разницу между целевым и выходным значениями. - Онa вычисляет производную ошибки по весу
dW
, взяв произведение ошибки и вводаX
. - Производная ошибки по смещению
db
- это ошибка.
- Функция принимает параметры, веса
W
и смещениеb
вместе с их производнымиdW
и,db
соответственно, применяет правило обновления. - Этот метод обновления весов известен как стохастический градиентный спуск.