Как использовать отдельные значения атрибутов в пользовательской функции потерь - PullRequest
0 голосов
/ 19 ноября 2018

Я пытаюсь построить нейронную сеть с помощью Keras. Поэтому мне нужно реализовать пользовательскую функцию потерь, которая наказывает пример ложного предсказания на основе другого атрибута из примера. Я действительно не знаю, возможно ли вообще использовать одиночные значения атрибута внутри пользовательской функции потерь в кератах. Вот заголовок моего набора данных.

Ereignisart;KONTOPHASE;PRODUKTART;PRODUKT2;BAUSPAREINLAGE;BAUSPARSUMME;BEWERTUNGSZAHL;TREUEOPTIONSSTATUS;ZUTEILUNGSSTATUS;MEHRZUTEILUNG_BETRAG;SPARZINSSATZ;Marktzins;ZEITSCHEIBE;SALDO

Первый атрибут "Ereignisart" - это тот, который я хочу предсказать. С последним атрибутом «SALDO» я хочу наказать предсказание «Ereignisart» взвешенного. Я знаю, как написать собственную функцию потерь и присвоить ей атрибут «SALDO» (я получил это здесь, если кому-то интересно: https://datascience.stackexchange.com/questions/28440/custom-conditional-loss-function-in-keras). Но если я сделаю это так, как вы можете видеть ниже, каждый пример Будет использоваться SALDO, а не только заданное значение примера. содержимое SALDO в отладчике

def customLoss(SALDO):
def loss(yTrue, yPred):
    first_log=kBack.log(kBack.clip(yPred, kBack.epsilon(), None) + 1.)
    second_log=kBack.log(kBack.clip(yTrue, kBack.epsilon(), None) + 1.)
    return kBack.mean(kBack.square(first_log - "penalty dependent on SALDO" *second_log)), axis=-1)
return loss

Короче говоря, я думаю, что я хочу использовать соответствующее значение "SALDO" в моей функции потерь для каждой пары yTrue и yPred, чтобы наказать ложное предсказание, основанное на "SALDO".

tl; dr Можно ли использовать отдельные значения атрибутов в пользовательской функции потери Kears? Если да, то как?

Большое спасибо заранее

Fabian

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...