torch.nn.functional.kl_div
-
torch.nn.functional.kl_div(input, target, size_average=None, reduce=None, reduction='mean', log_target=False)[source] -
Потеря расхождения Кульбака-Лейблера
Подробнее см.
KLDivLoss.- Параметры
-
- input (Тензор) – Тензор произвольной формы в логарифмических вероятностя х.
-
target (Тензор) – Тензор той же формы, что и входной. См.
log_targetдля интерпретации целевого значения. -
size_average (bool, необязательно) – Устаревший параметр (см.
reduction). По умолчанию потери усредняются по каждому элементу потерь в батче. Обратите внимание, что для некоторых потерь может быть несколько элементов на образец. Если полеsize_averageустановлено вFalse, потери суммируются для каждого мини-батча. Игнорируется, когда reduce равенFalse. Значение по умолчанию:True -
reduce (bool, необязательно) – Устаревший параметр (см.
reduction). По умолчанию потери усредняются или суммируются по наблюдениям для каждого мини-батча в зависимости отsize_average. КогдаreduceравенFalse, возвращает потерю на элемент батча вместо этого и игнорируетsize_average. Значение по умолчанию:True -
reduction (str, необязательно) – Указывает, какое сокращение применить к выводу:
'none'|'batchmean'|'sum'|'mean'.'none': не будет применено сокращение'batchmean': сумма вывода будет разделена на размер батча'sum': вывод будет просуммирован'mean': вывод будет разделен на количество элементов в выводе Значение по умолчанию:'mean' -
log_target (bool) – Флаг, указывающий, что
targetпередаётся в логарифмическом пространстве. Рекомендуется передавать некоторые распределения (например,softmax) в логарифмическом пространстве, чтобы избежать численных проблем, вызванных явнымlog. Значение по умолчанию:False
- Тип возвращаемого значения
Примечание
size_averageиreduceнаходятся в процессе устаревания, и в то же время указание любого из этих двух аргументов переопределитreduction.Предупреждение
reduction='mean'не возвращает истинное значение расхождения Кульбака-Лейблера, используйтеreduction='batchmean', которое соответствует математическому определению KL.
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.nn.functional.kl_div.html