Multi¶
Описание¶
Модуль, дающий возможность реализовать ансамбль из различных функций ошибок.
Инициализация¶
def __init__(self):
Параметры
-
Пояснения
-
Методы¶
def append(self, cost):
Добавляет переданную функцию ошибки для дальнейших расчётов.
Параметры
Параметр | Возможные типы | Описание | По умолчанию |
---|---|---|---|
cost | Cost | Объект класса-наследника Cost | - |
Пояснения
-
Примеры¶
Необходимые импорты:
import numpy as np
from PuzzleLib.Backend import gpuarray
from PuzzleLib.Cost import Multi, Abs, MSE
Info
gpuarray
необходим для правильного размещения тензора на GPU.
Синтетические целевой и предсказательный тензоры:
pred = gpuarray.to_gpu(np.random.randn(10, 10).astype(np.float32))
target = gpuarray.to_gpu(np.random.randn(10, 10).astype(np.float32))
Инициализация функции ошибки:
multi = Multi().append(MSE()).append(Abs())
Расчёт ошибки и градиента на батче:
error, grad = multi([pred, pred], [target, target])
# error[0], grad[0] - ошибка и градиент для MSE-Loss
# error[1], grad[1] - ошибка и градиент для Abs-loss