Интерпретация сигмовидного результата как вероятности в нейронных сетях

Я создал нейронную сеть с функцией активации сигмовидной формы на последнем слое, поэтому я получаю результаты от 0 до 1. Я хочу классифицировать вещи по 2 классам, поэтому проверяю, что «это число> 0,5, затем класс 1, еще класс. 0 ". Все основное. Однако я хотел бы сказать, что «вероятность того, что он находится в классе 0, равна x, а в классе 1 - y».

Как я могу это сделать?

  • Число вроде 0,73 говорит мне, что он на 73% точно относится к классу 1? И тогда 1-0,73 = 0,27, то есть 27% в классе 0?
  • Когда он равен 0,27, означает ли это, что он уверен на 27% в классе 0 и на 73% в классе 1? Не имеет смысла.

Должен ли я работать с 0,5 и смотреть, «как далеко от центра находится число, и тогда это процент»?

Или я неправильно понимаю результат НН?


person Tominator    schedule 12.09.2019    source источник
comment
Обычные нейронные сети не являются вероятностными моделями. Хотя интерпретация сигмовидного сигнала как вероятности довольно распространена, правда в том, что на самом деле нет никакой связи между этим значением и математической концепцией вероятности. Использование 0,5 в качестве точки разделения довольно распространено, но также оставляет средний диапазон (например, 0,2-0,8), как не знаю. Но на самом деле все это эвристика. Вы можете использовать кривую ROC, чтобы проанализировать, что происходит с разными пороговыми значениями - это может по крайней мере, дать вам вероятности с точки зрения TPR / FPR.   -  person jdehesa    schedule 12.09.2019
comment
@jdehesa Да, я уже думал, что модель просто учится тому или иному, а не сколько из этого. Меня смутило так много статей в сети, в которых говорится, что сигмовидную диаграмму можно интерпретировать как вероятность, потому что она находится между 0 и 1! а потом не отвечайте на мой вопрос выше. Думаю, мне следует отказаться от этой идеи и просто принять классификацию такой, какая она есть. Спасибо за ссылку на дополнительную информацию!   -  person Tominator    schedule 12.09.2019
comment
Однако вы должны отметить, что в контексте использования кросс-энтропийной потери для обучения мы фактически интерпретируем сигмовидный сигнал как p (y = 1), поэтому в некотором смысле эта вероятностная интерпретация встроена в сеть.   -  person xdurch0    schedule 12.09.2019


Ответы (2)


Как указывает Теджа, краткий ответ - нет, однако, в зависимости от потерь, которые вы используете, он может быть ближе к истине, чем вы думаете.

Представьте, что вы пытаетесь обучить свою сеть различать числа на две произвольные категории: beautiful и ugly. Предположим, ваш входной номер - 0 или 1, и 0s имеют 0.2 вероятность быть помеченным ugly, тогда как 1s имеют o 0.6 вероятность быть ugly.

Представьте, что ваша нейронная сеть принимает в качестве входных данных 0s и 1s, передает их на некоторые уровни и завершает функцию softmax. Если ваши потери составляют двоичную кросс-энтропию, то оптимальным решением для вашей сети является вывод 0.2, когда он видит 0 на входе и 0.6, когда видит 1 на входе (это свойство перекрестная энтропия, которая сводится к минимуму, когда вы выводите истинные вероятности каждой метки). Следовательно, вы можете интерпретировать эти числа как вероятности.

Конечно, примеры из реального мира не так просты и, как правило, детерминированы, поэтому интерпретация немного сложна. Однако я считаю, что не совсем ложно думать о ваших результатах как о вероятностях, если вы используете кросс-энтропию как потерю.

Извините, это не черный и не белый ответ, но в реальности иногда бывает сложно;)

person Joseph Budin    schedule 12.09.2019

Does a number like 0.73 tell me it's 73% sure to be in class 1? And then 1-0.73 = 0.27 so 27% in class 0?

Ответ - нет. Когда мы используем сигмовидную функцию, сумма результатов не будет равна 1. Есть вероятность, что сумма результатов классов будет меньше 1 или в некоторых случаях будет больше 1.

В том же случае, когда мы используем функцию softmax. Сумма всех выходов будет добавлена ​​к 1.

person Teja    schedule 12.09.2019
comment
Это неверно для простой двоичной классификации, когда у вас есть только один выход, который находится в диапазоне [0, 1] и дает p (y = 1). Тогда p (y = 0) = 1 - p (y = 1) и вероятности в сумме равны 1 по расчету. - person xdurch0; 12.09.2019