Pull to refresh

Comments 20

В конце шага 02 для отображения всей числовой прямой на отрезок [0; 1] предлагается использовать функцию логистического отклика. Почему именно её? Например арктангенс тоже непрерывно и монотонно отображает все числа на отрезок. Чем обратное-логит преобразование лучше?
Если я правильно понял вопрос, то он хороший и с подвохом :) даже хотел поставить лайк, но не хватает кармы))

Правильно ли я понимаю, что Вы предлагаете вместо выражения log(odds) использовать arctg(odds)?

Если так, то наша функция обратного отклика будет уже называться не логит-отклика, а как-то арктангенс-отклика)) и в соответствии с ней вероятность принадлежности объекта к классу будет определяться следующим образом:
p = 1 / (1+tg(w^Tx)^(-1)).
Эта формула получается посредством несложных математических выкладок. И все бы хорошо, но эта функция будет приводить нас к тому, что вероятность сможет принимать отрицательные значения, а некоторые значения w^Tx (при которых tg(w^Tx)^(-1) будет равен минус 1) будут недопустимы, так как делить на ноль нельзя.
Полагаю, что именно по этим причинам используется логарифмирование шансов, а не заведение их под арктангенс.
Переместить интервал (-Pi/2; +Pi/2) в (0;1) можно простым умножением и прибавлением константы, это не проблема. Вопрос без подвоха, действительно интересно почему выбрана именно функция с экспонентой, а не какая-либо другая.
Ничем принципиальным logloss от арктангенса не отличается на самом деле, и иногда таки используется арктангенс. Основные причины, почему всё-таки логлосс на первом месте, как я понимаю — это связь с кросс-энтропией и т.п. из теорвера, что иногда удобнее для теоретических выкладок; и то что арктангенс медленее приближается к +-1, чем логлосс — тоже иногда удобнее.
Disclaimer — я этими вещами давно не занимаюсь, может есть и другие причины/различия.
Спасибо, за комментарий. Для меня пока остается не ясным механизм применения арктангенса. Сделал небольшие математические выкладки на этот счет. Прошу обратить внимание, что в п.3 арктангенс заменяется на тангенс и с этого собственно все беды и выходят. Если не затруднит, укажите, где ошибка.
Вообще не понял вашего подхода. С чего вдруг логарифм заменяется на арктангенс, они же вообще не похожи друг на друга? Надо менять 1/(1+exp(kx)) на atan(kx).
По начальному вопросу, я именно так и понял, что спрашивают о возможной замене логарифма на арктангенс. Поэтому такие выкладки и сделал.

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

А может Вы знаете случаи когда и для чего в линейных классификаторах применяют такую функцию?
Замена сигмоиды на тангенс абсолютно эквивалентна замене логарифма на некую фунцию — легко арифметическими действиями вывести, какую именно. Поэтому интерпретация с шансами никуда не девается.

А может Вы знаете случаи когда и для чего в линейных классификаторах применяют такую функцию?

Из головы не знаю, но статьи и реализации различных методов, включая бустинг и нейросети, гуглятся по запросу в духе logloss vs arctan. Так что где-то да используется.
Пока не понял как сохраняется связь с шансами, так как мы их просто не используем в arctg, но на досуге попробую разобраться

Спасибо за обсуждение
Если разберешься напиши сюда плз.

Спасибо.
Ну смотрите, вы берёте odds = exp(-wx) и получаете p = 1/(1 + odds) = 1/(1+exp(-wx)). Давайте возьмём теперь odds = 1/atan*(wx) — 1, тогда получим p = 1/(1 + odds) = atan*(wx), вот и всё. Здесь за atan* я обозначил atan / pi + 0.5 для нормировки.
Вопрос был к абзацу:
Но с такой информацией к директору идти нельзя, ведь от нас хотели получить вероятность возврата кредита каждым заемщиком. Что делать? Ответ простой — нам нужно как-то преобразовать функцию f(w,x)=..., значения которой лежат в диапазоне (-Inf; +Inf) на функцию, значения которой будут лежать в диапазоне [0; 1]. И такая функция существует, ее называют функцией логистического отклика или обратного-логит преобразования.

Я это интерпретировал как «нам нужна функция, отображающая всю числовую прямую на отрезок [0;1]». Таких функций можно придумать много и разных, например 0,5+1/2*sin(x). Даже если дополнительно потребовать непрерывности, монотонности и как следствие существования обратной функции, то кандидатов тоже можно измыслить предостаточно, например 0,5+arctg(x)/Pi.

Вопрос был почему из всего многообразия вариантов было решено использовать именно логит.

Upd: выше уже назвали аргументы в пользу logloss. Спасибо!
Прошу посмотреть выкладки, которые я записал на бумаге. Мы об одном и том же говорим? Или Вы по другому видите применение арктангенса?
Допустим, для указанного диапазона размера заработных плат было выявлено, что соотношение зарплаты к платежу не может опускаться ниже 3 и еще у заемщика должно оставаться в запасе 5.000Р. И только в таком случае, мы будем считать, что заемщик вернет кредит банку. Тогда, уравнение линейной регрессии примет вид:


Что-то тут у меня логика теряется. Мы строим модель явления и пытаемся апроксимировать линейной функцией? Если модель, то зачем лишняя переменные w2? В линейной зависимости 2 свободных параметра, а не три. То есть w2 и w1 приводяться к одному
Ну смотрите,
w0 = 5.000 это свободный член (пересечение) линии оценки. Это значение Y, когда x1,x2,..,xn=0, то есть независимо от соотношения дохода к платежу у заемщика должно быть 5.000Р

w1 = 1, угловой коэффициент. Представляет собой величину, на которую Y увеличивается в среднем, если мы увеличиваем x1 на одну единицу. В нашем случае, этот коэф-т оказывает влияние на доходы, но так он никак их не «искажает», то он и равен 1

w2 = -3, угловой коэф-т. В нашем случае, этот коэф-т должен в три раза увеличить расходы и поменять их знак, чтобы доходы можно было сопоставить с расходами в соответствии с условиями.

Можно было бы w1 приравнять 1/3, тогда w2 был бы равен -1…

Или иначе:
Для построения линейной зависимости целевой переменной от двух факторов необходимо использовать эти факторы с какими-то весами (w1 и w2) и также добавить свободный коэф-т (w0). Это собственно и есть линейная функция аппроксимации
Для построения линейной зависимости целевой переменной от двух факторов необходимо использовать эти факторы с какими-то весами (w1 и w2) и также добавить свободный коэф-т (w0). Это собственно и есть линейная функция аппроксимации


Спасибо за объяснения! Вроде так понятнее. Все мысли по поводу явления переносим в формулу.

(Проблема в том, что чем больше свободных параметров, тем хуже точность, так как каждый параметр определяется неточно и вносит свой вклад в ошибку)
Sign up to leave a comment.

Articles