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