Объединение классификаторов путем подбрасывания монеты

15

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

Проблема в следующем: существует три классификатора:

  • классификатор А, обеспечивающий лучшую производительность в нижнем диапазоне порогов,
  • классификатор B, обеспечивающий лучшую производительность в более высоком диапазоне порогов,
  • Классификатор C, что мы получаем, подбрасывая p-монету и выбирая из двух классификаторов.

Какова будет производительность классификатора C, если смотреть на кривую ROC?

На слайдах лекции говорится, что, просто перевернув эту монету, мы получим магический « выпуклый корпус » кривой ROC классификатора A и B.

Я не понимаю этот момент. Как мы можем получить информацию, просто подбрасывая монетку?

Слайд лекции

слайды лекций

О чем говорит книга

С другой стороны, в рекомендованной книге ( Data Mining ... Ian H. Witten, Eibe Frank и Mark A. Hall ) говорится:

Чтобы увидеть это, выберите конкретное ограничение вероятности для метода A, который дает истинные и ложные положительные значения tA и fA, соответственно, и другое ограничение для метода B, который дает tB и fB. Если вы используете эти две схемы случайным образом с вероятностями p и q, где p + q = 1, то вы получите истинные и ложные положительные значения p. tA + q. ТБ и р. fA + q. Fb. Это представляет точку, лежащую на прямой линии, соединяющей точки (tA, fA) и (tB, fB), и, изменяя p и q, вы можете проследить всю линию между этими двумя точками.

В моем понимании, книга говорит о том, что для того, чтобы на самом деле получить информацию и достичь выпуклой оболочки, нам нужно сделать что-то более продвинутое, чем просто подбрасывание p-монеты.

AFAIK, правильный путь (как предполагает книга) заключается в следующем:

  1. мы должны найти оптимальный порог Oa для классификатора A
  2. мы должны найти оптимальный порог Ob для классификатора B
  3. определить C следующим образом:

    • Если t <Oa, используйте классификатор A с t
    • Если t> Ob, используйте классификатор B с t
    • Если Oa <t <Ob, выберите между классификатором A с Oa и B с Ob по вероятности в виде линейной комбинации того, где мы находимся между Oa и Ob.

Это верно? Если да, то есть несколько ключевых отличий по сравнению с тем, что предлагают слайды.

  1. Это не просто подбрасывание монет, а более продвинутый алгоритм, который требует заданных вручную точек и пиков в зависимости от того, в какой регион мы попадаем.
  2. Он никогда не использует классификаторы A и B с пороговыми значениями между Oa и Ob.

Можете ли вы объяснить мне эту проблему и как правильно ее понять , если мое понимание было неверным?

Что произойдет, если мы просто перевернем p-монету, как показывают слайды? Я думаю, что мы получим кривую ROC, которая находится между A и B, но никогда не «лучше», чем лучшая в данной точке.

Насколько я понимаю, я действительно не понимаю, как слайды могут быть правильными. Вероятностный расчет на левой стороне не имеет смысла для меня.

Обновление: нашел статью, написанную оригинальным автором, который изобрел метод выпуклой оболочки: http://www.bmva.org/bmvc/1998/pdf/p082.pdf

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

Ответы:

12

(Edited)

Слайды лекции верны.

Метод A имеет «оптимальную точку», которая дает истинные и ложные положительные значения (TPA, FPA на графике) соответственно. Эта точка будет соответствовать пороговому значению или, в общем, [*] оптимальной границе решения для A. Все то же самое относится и к B. (Но пороговые значения и границы не связаны).

Видно, что классификатор A работает хорошо при предпочтении «минимизировать ложные срабатывания» (консервативная стратегия) и классификаторе B, когда мы хотим «максимизировать истинные срабатывания» (нетерпеливая стратегия).

Ответ на ваш первый вопрос, в основном, да, за исключением того, что вероятность монеты (в некотором смысле) произвольна. Окончательный класс будет:

ИксИксп

(Исправлено: на самом деле, лекции абсолютно правильные, мы можем просто перевернуть монету в любом случае. См. Схемы)

п

[*] Вы должны быть здесь общими: если вы думаете с точки зрения единственного скалярного порога, все это имеет мало смысла; одномерный объект с классификатором на основе пороговых значений не дает достаточных степеней свободы, чтобы иметь разные классификаторы, такие как A и B, который работает по разным кривым при изменении свободных параметров (граница решения = порог). Другими словами: A и B называются «методами» или «системами», а не «классификаторами»; потому что A - это целое семейство классификаторов, параметризованных некоторым параметром (скаляр), который определяет границу решения, а не просто скаляр]

Я добавил несколько диаграмм, чтобы сделать их более понятными:

введите описание изображения здесь

TTTTAзнак равно2TTВзнак равно4

Тогда в этом сценарии можно сказать, что заполненная оранжевая линия является «оптимальным классификатором A» (внутри его семейства), и то же самое для B. Но нельзя сказать, лучше ли оранжевая линия, чем синяя: лучше, когда мы назначаем высокую стоимость ложным срабатываниям, а другую - когда ложные отрицания намного дороже.

введите описание изображения здесь

Теперь может случиться так, что эти два классификатора слишком экстремальны для наших нужд, нам бы хотелось, чтобы оба типа ошибок имели одинаковый вес. Мы бы предпочли вместо того, чтобы использовать классификатор A (оранжевая точка) или B (синяя точка), чтобы достичь производительности, которая находится между ними. Как говорят участники курса, этого можно достичь, просто подбросив монетку и выбрав один из классификаторов наугад.

Как мы можем получить информацию, просто подбрасывая монетку?

Мы не получаем информацию. Наш новый рандомизированный классификатор не просто «лучше», чем A или B, его производительность является своего рода средним значением для A и B в отношении затрат, связанных с каждым типом ошибки. Это может быть или не выгодно для нас, в зависимости от наших затрат.

AFAIK, правильный путь (как предполагает книга) заключается в следующем ... Это правильно?

п

leonbloy
источник
@leonboy Я считаю, что x является порогом, и для низких значений x классификатор A работает лучше всего. При больших значениях x классификатор B работает лучше всего. Под лучшим я подразумеваю, что для данного ложного положительного показателя истинный положительный показатель является самым высоким. Если все, что мы знаем, это то, что A работает лучше всего до одной точки, где они пересекаются, и B для всех пороговых значений выше этого, то любой алгоритм, который дает вес меньше 1 A в области между FPa и FPb, где A имеет более высокий TP, не может выполнить а также А. Таким образом, такой алгоритм C должен упасть ниже A в этой области.
Майкл Р. Черник
Точно так же в области между FPa и FPb, где TP выше для B, ни один алгоритм с p больше 0 не будет работать лучше, чем B. Формула для TPc верна, но фиксированное средневзвешенное значение между TPb и TPa не может быть больше, чем большее из TPa и тпб. Это должно упасть между ними. Но диаграмма всегда показывает TPc выше TPa и TPb во всем регионе от FPa и FPb. Вы видите здесь что-то, чего нам не хватает? Я не нахожу это в вашем ответе.
Майкл Р. Черник
1
Хорошо, лампочка погасла! X - это вектор в вашем уме, а не скалярный порог. Это действительно что-то меняет? FP aixs - это скалярная вероятность. Моя точка пересечения - точка равенства FP для A и B. Там может быть много векторов X, которые приводят к ней. Я просто говорю, что в любой точке вдоль оси FP между FPa и FPb. TPc = p TPa + (1-p) TPb. Линия на графике находится в плоскости TP против FP. Как эта линия могла пройти через точки над кривыми как для А, так и для В, как опрошенный ОП (я думаю, правильно)?
Майкл Р. Черник
1
@Michael: Я думаю, что A и B - это разные методы, которые дают разные граничные решения. Каждый из них имеет настраиваемый параметр (то, что в 1D является порогом), параметры независимы и дают (для каждого) семейство классификаторов. Я постараюсь построить диаграмму, чтобы попытаться уточнить, держись.
leonbloy
1
Я дал Леонблою голос за это красивое описание. Но мне нравится последний комментарий кардинала, потому что этот аргумент мне понятен и согласуется с моим последним мнением. @leobloy Единственное, чего не хватает в вашей диаграмме, - это графика точек для рандомизированного правила, которое превосходит оба отдельных. я думаю, что вы можете описать новое правило как правило, которое взвешивает две ошибки по-разному, но это не является необходимым, и я думаю, что менее запутанно, если вы пропустите этот аргумент.
Майкл Р. Черник
2

Я согласен с твоими рассуждениями. Если вы используете классификатор путем подбрасывания монет, чтобы выбрать один, когда вы находитесь между точками А и В, ваша точка на кривой всегда будет ниже лучшего классификатора и выше более низкого, и, возможно, не выше обоих! Там должно быть что-то не так с диаграммой. В точке пересечения 2 кривых ROC алгоритм случайного выбора будет иметь ту же производительность, что и два алгоритма. Он не будет выше того, что изображено на диаграмме.

Майкл Р. Черник
источник
1
Я считаю, что слайд правильный. Если вы используете две разные процедуры принятия решения с двумя различными пороговыми значениями, а затем принимаете рандомизированное решение, вы получите выпуклую комбинацию, которая даст точку, лежащую между ними. Эта точка может быть выше обеих ( ! ) Кривых с одинаковой ошибочной положительной скоростью. Это связано с тем, что пороговое значение, используемое для каждой процедуры, отличается в этой точке.
кардинал
1
Таким образом, A и B в выпуклой комбинации отличаются от A и B, которые выбираются индивидуально с этой ошибочной положительной скоростью. Я просто думаю, что диаграмма сбивала с толку, поскольку я не видел, чтобы А и В были выбраны из семейства классификаторов.
Майкл Р. Черник
1
AВ
Я считаю, что этот ответ правильный, дополненный комментарием кардинала! Выход из области пересечения может произойти, но это не метод. Я нашел оригинальную статью от парня, который изобрел этот метод, и это очень хорошо объясняет! bmva.org/bmvc/1998/pdf/p082.pdf
hyperknot
@zsero: Я полагаю, что даже Майкл признает, что этот ответ был основан на понимании схемы на момент публикации ответа, и его интерпретация изменилась с момента появления комментариев и других ответов. Как показано на рисунке, можно путем рандомизации достичь любой точки на любой линии между точкой на первой кривой и точкой на второй, даже если результирующий истинно положительный показатель доминирует над двумя другими кривыми для данного ложно положительного показателя.
кардинал