Расчет потерь тензорного потока для нескольких положительных классификаций

Мой лейбл выглядит так

label = [0, 1, 0, 0, 1, 0]

Это означает, что классы 1, 4 присутствуют во входных данных соответствующего образца.

  1. Как мне создать ярлыки с горячим кодированием для таких ярлыков?
  2. Какая функция потерь больше подходит для такого случая (сигмовидная перекрестная энтропия, перекрестная энтропия softmax или разреженная перекрестная энтропия softmax)?

person rodrigo-silveira    schedule 27.01.2018    source источник
comment
Вы можете использовать перекрестную энтропию сигмоида или перекрестную энтропию softmax для меток с горячим кодированием. Редкая кросс-энтропия softmax допускает только индексные метки.   -  person Lerner Zhang    schedule 02.12.2018


Ответы (1)


  1. Нет веских причин для создания one-hot закодированной версии этого, и если вы хотите, чтобы размер выходных меток был точно таким же, как в вашем случае 6, вы не можете сделать его закодированную one-hot версию.

  2. Там, где нужно сделать multi-label classification, вы не можете (точнее, не должны) использовать softmax в качестве активации. Softmax подходит для случаев, когда только один из выходных данных может быть истинным значением. Итак, в вашем случае лучше использовать sigmoid cross-entropy.

person layog    schedule 27.01.2018