SlideShare une entreprise Scribd logo
1  sur  30
Télécharger pour lire hors ligne
Статистическое сравнение классификаторов на
         множестве наборов данных

                   Влад Шахуро

         Факультет ВМК МГУ им. М.В.Ломоносова
                   Лаборатория КГиМ
            Семинар «Компьютерное зрение»




                 29 октября 2012 г.
Постановка задачи



  Дано k обученных классификаторов, протестированных
  на N наборов данных. Пусть cj — оценка качества j-го
                              i
  классификатора на i-м наборе данных. Предполагается, что
  оценки качества классификаторов достаточно надёжны.

  Требуется определить по значениям cj , являются ли
                                      i
  результаты классификаторов статистически различными и,
  в случае k > 2, определить, какие именно классификаторы
  отличаются по качеству.




                                                             1
Проверка гипотез

   X = (X1 , . . . , Xn ) - данные (выборка)
   F — совокупность априори допустимых распределений X
   FX — неизвестное истинное распределение данных, FX ∈ F
   F0 ⊂ F — выделенное множество функций распределения

   Задача проверки гипотез: необходимо по данным X проверить
   справедливость утверждения H0 : FX ∈ F0 . H0 называется
   нулевой гипотезой. Утверждение H1 : FX ∈ FF0 называется
   альтернативной гипотезой.

   Правило, согласно которому мы, наблюдая X, принимаем
   решение принять гипотезу H0 как истинную либо принять
   альтернативную гипотезу H1 , называется статистическим
   критерием.

                                                               2
Проверка гипотез (продолжение)



  P(H1 |H0 ) = α — вероятность ошибки I рода или уровень
  значимости (significance level) критерия

  P(H0 |H1 ) = β — вероятность ошибки II рода, 1 − β —
  мощность критерия

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




                                                           3
Проверка гипотез (продолжение)


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

  Критерии, включающие в себя расчёт параметров
  вероятностного распределения признака, называются
  параметрическими.

  Критерии, основанные на оперировании частотами и рангами,
  называются непараметрическими.


                                                               4
Сравнение двух классификаторов




  Простейший способ сравнения множества классификаторов —
  выделить все возможные пары классификаторов и сравнивать
  каждую пару классификаторов выбранным критерием.




                                                             5
Парный критерий Стьюдента



  Пусть c1 , c2 — результаты двух классификаторов на i-м из N
         i i
  наборов данных и di = c2 − c1 — их разница.
                           i   i

                 ¯ ¯
  Статистика t = d/σd распределена по закону Стьюдента
                                   ¯
  с N − 1 степенью свободы. Здесь d — среднее арифметическое
  разниц результатов, а σd — стандартная ошибка.
                         ¯

                          t ∼ t(N − 1)




                                                                6
Парный критерий Стьюдента (продолжение)


  Недостатки критерия:
   — Не работает на несоизмеримых наборах данных,
     отвечающих различным проблемам. Можно решить,
     поделив разницу на среднее значение качества
            c2 −c1
     di = (c1 +c2 )/2
              i   i
            i   i

   — Требует, чтобы k был достаточно большим (≥ 30).
     В противном случае выборка должна быть взята
     из нормального распределения. Любопытно, что все тесты
     на нормальное распределение недостаточно мощны
     при таких размерах выборки
   — Чувствителен к выбросам


                                                              7
Критерий Уилкинсона
  Проранжируем di по возрастанию модулей. Посчитаем суммы
  рангов результатов на наборах данных, на которых один
  классификатор показал результат лучше другого.
                                           1
              R+ =           rank(di ) +               rank(di )
                                           2
                     di >0                     di =0

                                           1
              R− =           rank(di ) +               rank(di )
                                           2
                     di <0                     di =0

  Введём статистику T = min(R+ , R− ). Для T при N < 25
  существуют таблицы точных критических значений,
  при больших N статистика

                               T − 1 N (N + 1)
                                   4
                  z=
                             1
                             24 N (N   + 1)(2N + 1)

  имеет примерно нормальное распределение.                         8
Критерий Уилкинсона (продолжение)



  Особенности критерия:
   — Работает на несоизмеримых наборах данных
   — Устойчив к выбросам
   — Не требует предположений о характере распределения
     результатов классификаторов
   — Если выполняются условия для критерия Стьюдента,
     то критерий Уилкинсона менее мощен




                                                          9
Критерий знаков

  Посчитаем количество наборов данных, на которых один
  классификатор превосходит второй. Если гипотеза
  эквивалентности классификаторов верна, то каждый
  классификатор должен выиграть примерно N/2 раз на N
  наборах данных. Количество побед является случайной
  величиной, распределённой по биномиальному закону.

  При больших N количество побед при условии верности  √
  гипотезы распределено по нормальному закону N (N/2, N /2).
  Тогда для проверки гипотезы эквивалентности можно
  использовать √
               z-тест: если количество побед по меньшей мере
  равно N/2 + N , алгоритм значительно превосходит другой
  алгоритм с ошибкой предсказания 5%.


                                                               10
Критерий знаков (продолжение)



  Особенности критерия:
    — Применим к любым наборам данных, не требует
      ни соизмеримости сложности данных, ни нормальности
      результатов
    — Намного слабее критерия Уилкинсона, не отвергает
      нулевую гипотезу до тех пор, пока исследуемый алгоритм
      не превосходит значительно второй алгоритм




                                                               11
Сравнение множества классификаторов



  Приведенные ранее критерии не были созданы специально для
  исследования множества случайный величин. В силу того, что
  для проверки нулевой гипотезы нужно сделать k(k−1)
                                                 2
  сравнений, определённая доля нулевых гипотез отвергается
  из-за погрешностей и случайностей.

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




                                                               12
ANOVA

  В случае множественного сравнения классификаторов выборка
  поделена на k групп с N наблюдений в каждой группе.
                                     k
                       2       N
                      σbg   =             (¯j − c)2
                                           c    ¯
                              k−1
                                    j=1

                                     k     N
                           1
                 2
                σwg   =                        (cj − cj )2
                                                 i   ¯
                        k(N − 1)
                                    j=1 i=1
   2                             2
  σbg — межгрупповая дисперсия, σwg — внутригрупповая
  дисперсия
                       2
                      σbg
                 F = 2 ∼ F (k − 1, k(N − 1))
                     σwg


                                                              13
ANOVA (продолжение)



  Для попарного сравнения классификаторов используется
  статистика         √
                       N (¯i − cj )
                          c    ¯
                T =                 ∼ t(k(N − 1))
                             2
                          2σwg

  Необходимые условия для теста:
   — Выборки должны быть взяты из нормального
     распределения
   — Равенство дисперсий результатов каждого классификатора




                                                              14
Тест Фридмана




  Тест Фридмана является непараметрическим аналогом ANOVA
  с повторными измерениями.
          j
  Пусть ri — ранг j-го алгоритма на i-м наборе данных,
        1     j
  Rj = N i ri - средний ранг j-го алгоритма. Если верна
  гипотеза об эквивалентности алгоритмов, их средние ранги
  также должны быть равны.




                                                             15
Тест Фридмана (продолжение)

  Введём статистику Фридмана
                                                        
                     12N                  k(k +   1)2
              χ2 =
               F
                                     2
                                    Rj −                 
                   k(k + 1)                    4
                                j


                 χ2 ∼ χ2 (k − 1), k > 5, N > 10
                  F

  Статистика Фридмана косервативна (т.е. стремится
  к недооценке). Можно ввести более надежную статистику

                              (N − 1)χ2F
                     FF =
                            N (k − 1) − χ2
                                         F

                 FF ∼ F (k − 1, (k − 1)(N − 1))

                                                             16
Тест Фридмана (продолжение)



  Если тест Фридмана отвергает нулевую гипотезу, можно ввести
  статистику для сравнения i-го и j-го классификаторов:

                             (Ri − Rj )
                        z=
                                k(k+1)
                                  6N

  Статистика z имеет нормальное распределение. Значение z
  используется для определения соответствующей вероятности
  (p-value) и её последующего сравнения с вероятностью α
  ошибки I рода.




                                                                17
Корректировки вероятностей ошибок



  В самом простом случае каждая гипотеза, соответствующая
  паре классификаторов, тестируется независимо от всех
  остальных гипотез. Более хорошие результаты даёт
  тестирование гипотез в совокупности.

  Будем контролировать ошибку на семействе гипотез
  (family-wise error) — вероятность совершить хотя бы одну
  ошибку I рода при сравнении множества пар.




                                                             18
Процедуры Nemenyi и Хольма



  Nemenyi: значение ошибки α делится на количество
  произведённых сравнений классификаторов m = k(k−1)
                                                  2

  Хольм-Бонферрони: пусть p1 , . . . , pm — упорядоченные
  вероятности (p-values) и H1 , . . . , Hm — соответствующие
  им гипотезы. Процедура Хольма отвергает гипотезы
  H1 , . . . , Hi−1 , если i — минимальное целое число, для которого
  выполнено неравенство pi > α/(m − i + 1).




                                                                       19
Процедура Бергманна и Хоммеля

  Множество индексов I ⊆ {1, . . . , m} называется
  исчерпывающим (exhaustive), если в точности все гипотезы
  Hj , j ∈ I, могут быть верными.

  Рассмотрим это определение для трёх классификаторов.
  H1 : C1 ∼ C2 , H2 : C2 ∼ C3 , H3 : C3 ∼ C1

  Из 23 возможных сочетаний гипотез исчерпывающими
  являются следующие:
   — Все гипотезы верны
   — H1 верна, H2 и H3 неверны
   — H2 верна, H1 и H3 неверны
   — H3 верна, H1 и H2 неверны
   — Все гипотезы неверны
                                                             20
Процедура Бергманна и Хоммеля (продолжение)
  function obtainExhaustive(C = {c1 , . . . , ck }):
    let E = ∅
    E = E ∪ {all possible pairwise comparisons using C}
    if E == ∅:
      return E
    for all possible divisions of C into C1 & C2 , ck ∈ C2 and C1 = ∅:
      E1 = obtainExhaustive(C1 )
      E2 = obtainExhaustive(C2 )
      foreach family of hypotheses e1 of E1 :
        foreach family of hypotheses e2 of E2 :
          E = E ∪ (e1 ∪ e2 )
    return E

  Процедура Бергманна и Хоммеля: отвергнуть гипотезу Hj ,
  если j ∈ A

        A=       {I : I − exhaustive, min{pi : i ∈ I} > α/|I|}
                                                                         21
Статическая процедура Шеффера


  Пусть p1 , . . . , pm — упорядоченные вероятности (p-values) и
  H1 , . . . , Hm — соответствующие им гипотезы. Процедура
  отвергает гипотезы H1 , . . . , Hi−1 , если i — минимальное целое
  число, для которого выполнено неравенство pi > α/ti , где ti —
  максимальное число гипотез, которые могут быть верны,
  при условии, что какая-то i − 1 гипотеза неверна. ti ∈ S(k), где
  S(k) — набор чисел возможных верных гипотез при
  k сравниваемых классификаторов.
                          k
                                2
                S(k) =         Cj + x : x ∈ S(k − j)
                         j=1




                                                                      22
Сравнение критериев

  Будем сравнивать мощности критериев косвенно через
  следующие параметры:
    — Количество отвергнутых нулевых гипотез
    — Среднее значение статистики критерия (average p-value,
      APV)
      Чем меньше значение APV, тем больше вероятность
      отвергнуть нулевую гипотезу на заданном уровне доверия
    — Вопроизводимость результатов — вероятность того, что
      два эксперимента на одной и той же паре алгоритмов
      дадут одинаковый результат (отвергнут или примут
      нулевую гипотезу):

                                               − p)
                                             i (pi
                                                 ¯
                R(p) = 1 − 2var(p) = 1 − 2
                                             n−1

                                                               23
Сравнение критериев (продолжение)




  При сравнении двух классификаторов сэмплирование
  производится из нескольких наборов данных так, что
  вероятность выбрать i-й набор данных пропорциональна
  1/(1 + e−kdi ), где di — разница точности классификаторов
  на этом наборе данных, а k — смещённость.




                                                              24
Сравнение парных критериев




  Слева: k и APV, справа: k и количество отвергнутых нулевых
  гипотез


                                                               25
Сравнение множественных критериев




  Слева: k, APV и R(p), справа: k и количество отвергнутых
  нулевых гипотез



                                                             26
Сравнение процедур корректировки




                                   27
Резюме


   — При сравнении классификаторов на реальных данных
     непараметрические критерии более предпочтительны,
     т.к. они накладывают меньшие ограничения на выборку
     результатов
   — Для сравнения большого количества классификаторов
     стоит пользоваться специализированными критериями,
     например, тестом Фридмана
   — Для попарного сравнения классификаторов после того, как
     отвергнута нулевая гипотеза, стоит пользоваться
     корректировками (post hoc tests), учитывающими
     зависимость гипотез друг от друга



                                                               28
Список материалов


  Demˇar. Statistical Comparison of Classifiers over Multiple Data
       s
  Sets. JMLR 6 (2006).

  Garc´ Herrera. An Extension on «Statistical Comparison
       ıa,
  of Classifiers over Multiple Data Sets» for all Pairwise
  Comparisons. JMLR 9 (2008).

  Ивченко, Медведев. Введение в математическую статистику.

  http://statmaster.sdu.dk/courses/st111/module11/index.html

  http://ru.wikipedia.org/wiki/F-тест


                                                                    29

Contenu connexe

Tendances

Изучайте Machine Learning во имя добра или Teach my shiny metal ass
Изучайте Machine Learning во имя добра или Teach my shiny metal assИзучайте Machine Learning во имя добра или Teach my shiny metal ass
Изучайте Machine Learning во имя добра или Teach my shiny metal assAnjLab
 
Корреляция и МНК
Корреляция и МНККорреляция и МНК
Корреляция и МНКKurbatskiy Alexey
 
Machine Learning. Курс лекций
Machine Learning. Курс лекцийMachine Learning. Курс лекций
Machine Learning. Курс лекцийZolotykh
 
20110409 quantum algorithms_vyali_lecture09
20110409 quantum algorithms_vyali_lecture0920110409 quantum algorithms_vyali_lecture09
20110409 quantum algorithms_vyali_lecture09Computer Science Club
 
20110409 quantum algorithms_vyali_lecture09
20110409 quantum algorithms_vyali_lecture0920110409 quantum algorithms_vyali_lecture09
20110409 quantum algorithms_vyali_lecture09Computer Science Club
 
Методы оценивания
Методы оцениванияМетоды оценивания
Методы оцениванияKurbatskiy Alexey
 
20110204 quantum algorithms_vyali_lecture01
20110204 quantum algorithms_vyali_lecture0120110204 quantum algorithms_vyali_lecture01
20110204 quantum algorithms_vyali_lecture01Computer Science Club
 
Lecture 7 continuous_distribution
Lecture 7 continuous_distributionLecture 7 continuous_distribution
Lecture 7 continuous_distributionKurbatskiy Alexey
 
Сравнение выборок
Сравнение выборокСравнение выборок
Сравнение выборокKurbatskiy Alexey
 
Доверительные интервалы
Доверительные интервалыДоверительные интервалы
Доверительные интервалыKurbatskiy Alexey
 

Tendances (12)

4
44
4
 
Изучайте Machine Learning во имя добра или Teach my shiny metal ass
Изучайте Machine Learning во имя добра или Teach my shiny metal assИзучайте Machine Learning во имя добра или Teach my shiny metal ass
Изучайте Machine Learning во имя добра или Teach my shiny metal ass
 
Корреляция и МНК
Корреляция и МНККорреляция и МНК
Корреляция и МНК
 
Machine Learning. Курс лекций
Machine Learning. Курс лекцийMachine Learning. Курс лекций
Machine Learning. Курс лекций
 
20110409 quantum algorithms_vyali_lecture09
20110409 quantum algorithms_vyali_lecture0920110409 quantum algorithms_vyali_lecture09
20110409 quantum algorithms_vyali_lecture09
 
урок3
урок3урок3
урок3
 
20110409 quantum algorithms_vyali_lecture09
20110409 quantum algorithms_vyali_lecture0920110409 quantum algorithms_vyali_lecture09
20110409 quantum algorithms_vyali_lecture09
 
Методы оценивания
Методы оцениванияМетоды оценивания
Методы оценивания
 
20110204 quantum algorithms_vyali_lecture01
20110204 quantum algorithms_vyali_lecture0120110204 quantum algorithms_vyali_lecture01
20110204 quantum algorithms_vyali_lecture01
 
Lecture 7 continuous_distribution
Lecture 7 continuous_distributionLecture 7 continuous_distribution
Lecture 7 continuous_distribution
 
Сравнение выборок
Сравнение выборокСравнение выборок
Сравнение выборок
 
Доверительные интервалы
Доверительные интервалыДоверительные интервалы
Доверительные интервалы
 

Similaire à Classifier evaluation and comparison

Лекция №9. Сортировка. Часть №1. Предмет "Структуры и алгоритмы обработки дан...
Лекция №9. Сортировка. Часть №1. Предмет "Структуры и алгоритмы обработки дан...Лекция №9. Сортировка. Часть №1. Предмет "Структуры и алгоритмы обработки дан...
Лекция №9. Сортировка. Часть №1. Предмет "Структуры и алгоритмы обработки дан...Nikolay Grebenshikov
 
1.4 Точечные оценки и их свойства
1.4 Точечные оценки и их свойства1.4 Точечные оценки и их свойства
1.4 Точечные оценки и их свойстваDEVTYPE
 
20091108 algorithmsfornphardproblems kulikov_lecture08
20091108 algorithmsfornphardproblems kulikov_lecture0820091108 algorithmsfornphardproblems kulikov_lecture08
20091108 algorithmsfornphardproblems kulikov_lecture08Computer Science Club
 
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"Nikolay Grebenshikov
 
лекция07
лекция07лекция07
лекция07cezium
 
L7:Задача кластеризации. Метрики качества
L7:Задача кластеризации. Метрики качестваL7:Задача кластеризации. Метрики качества
L7:Задача кластеризации. Метрики качестваTechnosphere1
 
Прогнозирование - Лекция 3. Множественная регрессия
Прогнозирование - Лекция 3. Множественная регрессияПрогнозирование - Лекция 3. Множественная регрессия
Прогнозирование - Лекция 3. Множественная регрессияGleb Zakhodiakin
 
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Technosphere1
 
Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства" Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства" Technosphere1
 
Прогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессия
Прогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессияПрогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессия
Прогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессияGleb Zakhodiakin
 
Свойства оценок
Свойства оценокСвойства оценок
Свойства оценокKurbatskiy Alexey
 
Domain-тестирование
Domain-тестированиеDomain-тестирование
Domain-тестированиеSPB SQA Group
 
Лекция №10. Сортировка. Часть №2. Предмет "Структуры и алгоритмы обработки да...
Лекция №10. Сортировка. Часть №2. Предмет "Структуры и алгоритмы обработки да...Лекция №10. Сортировка. Часть №2. Предмет "Структуры и алгоритмы обработки да...
Лекция №10. Сортировка. Часть №2. Предмет "Структуры и алгоритмы обработки да...Nikolay Grebenshikov
 
Supervised ML in Practice: Tips & Tricks
Supervised ML in Practice:  Tips & TricksSupervised ML in Practice:  Tips & Tricks
Supervised ML in Practice: Tips & TricksDzianis Pirshtuk
 
Прикладная эконометрика. Лекция 3.
Прикладная эконометрика. Лекция 3.Прикладная эконометрика. Лекция 3.
Прикладная эконометрика. Лекция 3.Vladimir Tcherniak
 
Regress 2015.05.011
Regress 2015.05.011Regress 2015.05.011
Regress 2015.05.011Kh Ider
 
20111202 machine learning_nikolenko_lecture05
20111202 machine learning_nikolenko_lecture0520111202 machine learning_nikolenko_lecture05
20111202 machine learning_nikolenko_lecture05Computer Science Club
 
Мезенцев Павел - Машинное обучение на MapReduce
Мезенцев Павел - Машинное обучение на MapReduceМезенцев Павел - Машинное обучение на MapReduce
Мезенцев Павел - Машинное обучение на MapReducePavel Mezentsev
 

Similaire à Classifier evaluation and comparison (18)

Лекция №9. Сортировка. Часть №1. Предмет "Структуры и алгоритмы обработки дан...
Лекция №9. Сортировка. Часть №1. Предмет "Структуры и алгоритмы обработки дан...Лекция №9. Сортировка. Часть №1. Предмет "Структуры и алгоритмы обработки дан...
Лекция №9. Сортировка. Часть №1. Предмет "Структуры и алгоритмы обработки дан...
 
1.4 Точечные оценки и их свойства
1.4 Точечные оценки и их свойства1.4 Точечные оценки и их свойства
1.4 Точечные оценки и их свойства
 
20091108 algorithmsfornphardproblems kulikov_lecture08
20091108 algorithmsfornphardproblems kulikov_lecture0820091108 algorithmsfornphardproblems kulikov_lecture08
20091108 algorithmsfornphardproblems kulikov_lecture08
 
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
 
лекция07
лекция07лекция07
лекция07
 
L7:Задача кластеризации. Метрики качества
L7:Задача кластеризации. Метрики качестваL7:Задача кластеризации. Метрики качества
L7:Задача кластеризации. Метрики качества
 
Прогнозирование - Лекция 3. Множественная регрессия
Прогнозирование - Лекция 3. Множественная регрессияПрогнозирование - Лекция 3. Множественная регрессия
Прогнозирование - Лекция 3. Множественная регрессия
 
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
Лекция №2 "Задача кластеризации и ЕМ-алгоритм"
 
Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства" Лекция №8 "Методы снижения размерности пространства"
Лекция №8 "Методы снижения размерности пространства"
 
Прогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессия
Прогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессияПрогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессия
Прогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессия
 
Свойства оценок
Свойства оценокСвойства оценок
Свойства оценок
 
Domain-тестирование
Domain-тестированиеDomain-тестирование
Domain-тестирование
 
Лекция №10. Сортировка. Часть №2. Предмет "Структуры и алгоритмы обработки да...
Лекция №10. Сортировка. Часть №2. Предмет "Структуры и алгоритмы обработки да...Лекция №10. Сортировка. Часть №2. Предмет "Структуры и алгоритмы обработки да...
Лекция №10. Сортировка. Часть №2. Предмет "Структуры и алгоритмы обработки да...
 
Supervised ML in Practice: Tips & Tricks
Supervised ML in Practice:  Tips & TricksSupervised ML in Practice:  Tips & Tricks
Supervised ML in Practice: Tips & Tricks
 
Прикладная эконометрика. Лекция 3.
Прикладная эконометрика. Лекция 3.Прикладная эконометрика. Лекция 3.
Прикладная эконометрика. Лекция 3.
 
Regress 2015.05.011
Regress 2015.05.011Regress 2015.05.011
Regress 2015.05.011
 
20111202 machine learning_nikolenko_lecture05
20111202 machine learning_nikolenko_lecture0520111202 machine learning_nikolenko_lecture05
20111202 machine learning_nikolenko_lecture05
 
Мезенцев Павел - Машинное обучение на MapReduce
Мезенцев Павел - Машинное обучение на MapReduceМезенцев Павел - Машинное обучение на MapReduce
Мезенцев Павел - Машинное обучение на MapReduce
 

Plus de Anton Konushin

CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.Anton Konushin
 
CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.Anton Konushin
 
CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.Anton Konushin
 
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.Anton Konushin
 
CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.Anton Konushin
 
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.Anton Konushin
 
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.Anton Konushin
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.Anton Konushin
 
Технологии разработки ПО
Технологии разработки ПОТехнологии разработки ПО
Технологии разработки ПОAnton Konushin
 
CV2011-2. Lecture 08. Multi-view stereo.
CV2011-2. Lecture 08. Multi-view stereo.CV2011-2. Lecture 08. Multi-view stereo.
CV2011-2. Lecture 08. Multi-view stereo.Anton Konushin
 
CV2011-2. Lecture 12. Face models.
CV2011-2. Lecture 12.  Face models.CV2011-2. Lecture 12.  Face models.
CV2011-2. Lecture 12. Face models.Anton Konushin
 
CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.Anton Konushin
 
CV2011-2. Lecture 10. Pose estimation.
CV2011-2. Lecture 10.  Pose estimation.CV2011-2. Lecture 10.  Pose estimation.
CV2011-2. Lecture 10. Pose estimation.Anton Konushin
 
CV2011-2. Lecture 07. Binocular stereo.
CV2011-2. Lecture 07.  Binocular stereo.CV2011-2. Lecture 07.  Binocular stereo.
CV2011-2. Lecture 07. Binocular stereo.Anton Konushin
 
CV2011-2. Lecture 06. Structure from motion.
CV2011-2. Lecture 06.  Structure from motion.CV2011-2. Lecture 06.  Structure from motion.
CV2011-2. Lecture 06. Structure from motion.Anton Konushin
 
CV2011-2. Lecture 05. Video segmentation.
CV2011-2. Lecture 05.  Video segmentation.CV2011-2. Lecture 05.  Video segmentation.
CV2011-2. Lecture 05. Video segmentation.Anton Konushin
 
CV2011-2. Lecture 04. Semantic image segmentation
CV2011-2. Lecture 04.  Semantic image segmentationCV2011-2. Lecture 04.  Semantic image segmentation
CV2011-2. Lecture 04. Semantic image segmentationAnton Konushin
 
CV2011-2. Lecture 03. Photomontage, part 2.
CV2011-2. Lecture 03.  Photomontage, part 2.CV2011-2. Lecture 03.  Photomontage, part 2.
CV2011-2. Lecture 03. Photomontage, part 2.Anton Konushin
 
CV2011-2. Lecture 02. Photomontage and graphical models.
CV2011-2. Lecture 02.  Photomontage and graphical models.CV2011-2. Lecture 02.  Photomontage and graphical models.
CV2011-2. Lecture 02. Photomontage and graphical models.Anton Konushin
 
CV2011-2. Lecture 09. Single view reconstructin.
CV2011-2. Lecture 09.  Single view reconstructin.CV2011-2. Lecture 09.  Single view reconstructin.
CV2011-2. Lecture 09. Single view reconstructin.Anton Konushin
 

Plus de Anton Konushin (20)

CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.CV2015. Лекция 7. Поиск изображений по содержанию.
CV2015. Лекция 7. Поиск изображений по содержанию.
 
CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.CV2015. Лекция 6. Нейросетевые алгоритмы.
CV2015. Лекция 6. Нейросетевые алгоритмы.
 
CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.CV2015. Лекция 5. Выделение объектов.
CV2015. Лекция 5. Выделение объектов.
 
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
 
CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.CV2015. Лекция 2. Основы обработки изображений.
CV2015. Лекция 2. Основы обработки изображений.
 
CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.CV2015. Лекция 8. Распознавание лиц людей.
CV2015. Лекция 8. Распознавание лиц людей.
 
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
CV2015. Лекция 1. Понятия и история компьютерного зрения. Свет и цвет.
 
CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.CV2015. Лекция 2. Простые методы распознавания изображений.
CV2015. Лекция 2. Простые методы распознавания изображений.
 
Технологии разработки ПО
Технологии разработки ПОТехнологии разработки ПО
Технологии разработки ПО
 
CV2011-2. Lecture 08. Multi-view stereo.
CV2011-2. Lecture 08. Multi-view stereo.CV2011-2. Lecture 08. Multi-view stereo.
CV2011-2. Lecture 08. Multi-view stereo.
 
CV2011-2. Lecture 12. Face models.
CV2011-2. Lecture 12.  Face models.CV2011-2. Lecture 12.  Face models.
CV2011-2. Lecture 12. Face models.
 
CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.CV2011-2. Lecture 11. Face analysis.
CV2011-2. Lecture 11. Face analysis.
 
CV2011-2. Lecture 10. Pose estimation.
CV2011-2. Lecture 10.  Pose estimation.CV2011-2. Lecture 10.  Pose estimation.
CV2011-2. Lecture 10. Pose estimation.
 
CV2011-2. Lecture 07. Binocular stereo.
CV2011-2. Lecture 07.  Binocular stereo.CV2011-2. Lecture 07.  Binocular stereo.
CV2011-2. Lecture 07. Binocular stereo.
 
CV2011-2. Lecture 06. Structure from motion.
CV2011-2. Lecture 06.  Structure from motion.CV2011-2. Lecture 06.  Structure from motion.
CV2011-2. Lecture 06. Structure from motion.
 
CV2011-2. Lecture 05. Video segmentation.
CV2011-2. Lecture 05.  Video segmentation.CV2011-2. Lecture 05.  Video segmentation.
CV2011-2. Lecture 05. Video segmentation.
 
CV2011-2. Lecture 04. Semantic image segmentation
CV2011-2. Lecture 04.  Semantic image segmentationCV2011-2. Lecture 04.  Semantic image segmentation
CV2011-2. Lecture 04. Semantic image segmentation
 
CV2011-2. Lecture 03. Photomontage, part 2.
CV2011-2. Lecture 03.  Photomontage, part 2.CV2011-2. Lecture 03.  Photomontage, part 2.
CV2011-2. Lecture 03. Photomontage, part 2.
 
CV2011-2. Lecture 02. Photomontage and graphical models.
CV2011-2. Lecture 02.  Photomontage and graphical models.CV2011-2. Lecture 02.  Photomontage and graphical models.
CV2011-2. Lecture 02. Photomontage and graphical models.
 
CV2011-2. Lecture 09. Single view reconstructin.
CV2011-2. Lecture 09.  Single view reconstructin.CV2011-2. Lecture 09.  Single view reconstructin.
CV2011-2. Lecture 09. Single view reconstructin.
 

Classifier evaluation and comparison

  • 1. Статистическое сравнение классификаторов на множестве наборов данных Влад Шахуро Факультет ВМК МГУ им. М.В.Ломоносова Лаборатория КГиМ Семинар «Компьютерное зрение» 29 октября 2012 г.
  • 2. Постановка задачи Дано k обученных классификаторов, протестированных на N наборов данных. Пусть cj — оценка качества j-го i классификатора на i-м наборе данных. Предполагается, что оценки качества классификаторов достаточно надёжны. Требуется определить по значениям cj , являются ли i результаты классификаторов статистически различными и, в случае k > 2, определить, какие именно классификаторы отличаются по качеству. 1
  • 3. Проверка гипотез X = (X1 , . . . , Xn ) - данные (выборка) F — совокупность априори допустимых распределений X FX — неизвестное истинное распределение данных, FX ∈ F F0 ⊂ F — выделенное множество функций распределения Задача проверки гипотез: необходимо по данным X проверить справедливость утверждения H0 : FX ∈ F0 . H0 называется нулевой гипотезой. Утверждение H1 : FX ∈ FF0 называется альтернативной гипотезой. Правило, согласно которому мы, наблюдая X, принимаем решение принять гипотезу H0 как истинную либо принять альтернативную гипотезу H1 , называется статистическим критерием. 2
  • 4. Проверка гипотез (продолжение) P(H1 |H0 ) = α — вероятность ошибки I рода или уровень значимости (significance level) критерия P(H0 |H1 ) = β — вероятность ошибки II рода, 1 − β — мощность критерия На практике обычно стараются выбрать наиболее мощный критерий при заданном значении ошибки первого рода. 3
  • 5. Проверка гипотез (продолжение) В случае сравнения классификаторов в качестве нулевой гипотезы выступает предположение о том, что все классификаторы в некотором роде эквивалентны, в качестве альтернативной гипотезы — предположение о том, что хотя бы два некоторых классификатора неэквивалентны. Критерии, включающие в себя расчёт параметров вероятностного распределения признака, называются параметрическими. Критерии, основанные на оперировании частотами и рангами, называются непараметрическими. 4
  • 6. Сравнение двух классификаторов Простейший способ сравнения множества классификаторов — выделить все возможные пары классификаторов и сравнивать каждую пару классификаторов выбранным критерием. 5
  • 7. Парный критерий Стьюдента Пусть c1 , c2 — результаты двух классификаторов на i-м из N i i наборов данных и di = c2 − c1 — их разница. i i ¯ ¯ Статистика t = d/σd распределена по закону Стьюдента ¯ с N − 1 степенью свободы. Здесь d — среднее арифметическое разниц результатов, а σd — стандартная ошибка. ¯ t ∼ t(N − 1) 6
  • 8. Парный критерий Стьюдента (продолжение) Недостатки критерия: — Не работает на несоизмеримых наборах данных, отвечающих различным проблемам. Можно решить, поделив разницу на среднее значение качества c2 −c1 di = (c1 +c2 )/2 i i i i — Требует, чтобы k был достаточно большим (≥ 30). В противном случае выборка должна быть взята из нормального распределения. Любопытно, что все тесты на нормальное распределение недостаточно мощны при таких размерах выборки — Чувствителен к выбросам 7
  • 9. Критерий Уилкинсона Проранжируем di по возрастанию модулей. Посчитаем суммы рангов результатов на наборах данных, на которых один классификатор показал результат лучше другого. 1 R+ = rank(di ) + rank(di ) 2 di >0 di =0 1 R− = rank(di ) + rank(di ) 2 di <0 di =0 Введём статистику T = min(R+ , R− ). Для T при N < 25 существуют таблицы точных критических значений, при больших N статистика T − 1 N (N + 1) 4 z= 1 24 N (N + 1)(2N + 1) имеет примерно нормальное распределение. 8
  • 10. Критерий Уилкинсона (продолжение) Особенности критерия: — Работает на несоизмеримых наборах данных — Устойчив к выбросам — Не требует предположений о характере распределения результатов классификаторов — Если выполняются условия для критерия Стьюдента, то критерий Уилкинсона менее мощен 9
  • 11. Критерий знаков Посчитаем количество наборов данных, на которых один классификатор превосходит второй. Если гипотеза эквивалентности классификаторов верна, то каждый классификатор должен выиграть примерно N/2 раз на N наборах данных. Количество побед является случайной величиной, распределённой по биномиальному закону. При больших N количество побед при условии верности √ гипотезы распределено по нормальному закону N (N/2, N /2). Тогда для проверки гипотезы эквивалентности можно использовать √ z-тест: если количество побед по меньшей мере равно N/2 + N , алгоритм значительно превосходит другой алгоритм с ошибкой предсказания 5%. 10
  • 12. Критерий знаков (продолжение) Особенности критерия: — Применим к любым наборам данных, не требует ни соизмеримости сложности данных, ни нормальности результатов — Намного слабее критерия Уилкинсона, не отвергает нулевую гипотезу до тех пор, пока исследуемый алгоритм не превосходит значительно второй алгоритм 11
  • 13. Сравнение множества классификаторов Приведенные ранее критерии не были созданы специально для исследования множества случайный величин. В силу того, что для проверки нулевой гипотезы нужно сделать k(k−1) 2 сравнений, определённая доля нулевых гипотез отвергается из-за погрешностей и случайностей. В статистике существуют методы, специально предназначенные для тестирования эквивалентности многих случайных величин. 12
  • 14. ANOVA В случае множественного сравнения классификаторов выборка поделена на k групп с N наблюдений в каждой группе. k 2 N σbg = (¯j − c)2 c ¯ k−1 j=1 k N 1 2 σwg = (cj − cj )2 i ¯ k(N − 1) j=1 i=1 2 2 σbg — межгрупповая дисперсия, σwg — внутригрупповая дисперсия 2 σbg F = 2 ∼ F (k − 1, k(N − 1)) σwg 13
  • 15. ANOVA (продолжение) Для попарного сравнения классификаторов используется статистика √ N (¯i − cj ) c ¯ T = ∼ t(k(N − 1)) 2 2σwg Необходимые условия для теста: — Выборки должны быть взяты из нормального распределения — Равенство дисперсий результатов каждого классификатора 14
  • 16. Тест Фридмана Тест Фридмана является непараметрическим аналогом ANOVA с повторными измерениями. j Пусть ri — ранг j-го алгоритма на i-м наборе данных, 1 j Rj = N i ri - средний ранг j-го алгоритма. Если верна гипотеза об эквивалентности алгоритмов, их средние ранги также должны быть равны. 15
  • 17. Тест Фридмана (продолжение) Введём статистику Фридмана   12N  k(k + 1)2 χ2 = F 2 Rj −  k(k + 1) 4 j χ2 ∼ χ2 (k − 1), k > 5, N > 10 F Статистика Фридмана косервативна (т.е. стремится к недооценке). Можно ввести более надежную статистику (N − 1)χ2F FF = N (k − 1) − χ2 F FF ∼ F (k − 1, (k − 1)(N − 1)) 16
  • 18. Тест Фридмана (продолжение) Если тест Фридмана отвергает нулевую гипотезу, можно ввести статистику для сравнения i-го и j-го классификаторов: (Ri − Rj ) z= k(k+1) 6N Статистика z имеет нормальное распределение. Значение z используется для определения соответствующей вероятности (p-value) и её последующего сравнения с вероятностью α ошибки I рода. 17
  • 19. Корректировки вероятностей ошибок В самом простом случае каждая гипотеза, соответствующая паре классификаторов, тестируется независимо от всех остальных гипотез. Более хорошие результаты даёт тестирование гипотез в совокупности. Будем контролировать ошибку на семействе гипотез (family-wise error) — вероятность совершить хотя бы одну ошибку I рода при сравнении множества пар. 18
  • 20. Процедуры Nemenyi и Хольма Nemenyi: значение ошибки α делится на количество произведённых сравнений классификаторов m = k(k−1) 2 Хольм-Бонферрони: пусть p1 , . . . , pm — упорядоченные вероятности (p-values) и H1 , . . . , Hm — соответствующие им гипотезы. Процедура Хольма отвергает гипотезы H1 , . . . , Hi−1 , если i — минимальное целое число, для которого выполнено неравенство pi > α/(m − i + 1). 19
  • 21. Процедура Бергманна и Хоммеля Множество индексов I ⊆ {1, . . . , m} называется исчерпывающим (exhaustive), если в точности все гипотезы Hj , j ∈ I, могут быть верными. Рассмотрим это определение для трёх классификаторов. H1 : C1 ∼ C2 , H2 : C2 ∼ C3 , H3 : C3 ∼ C1 Из 23 возможных сочетаний гипотез исчерпывающими являются следующие: — Все гипотезы верны — H1 верна, H2 и H3 неверны — H2 верна, H1 и H3 неверны — H3 верна, H1 и H2 неверны — Все гипотезы неверны 20
  • 22. Процедура Бергманна и Хоммеля (продолжение) function obtainExhaustive(C = {c1 , . . . , ck }): let E = ∅ E = E ∪ {all possible pairwise comparisons using C} if E == ∅: return E for all possible divisions of C into C1 & C2 , ck ∈ C2 and C1 = ∅: E1 = obtainExhaustive(C1 ) E2 = obtainExhaustive(C2 ) foreach family of hypotheses e1 of E1 : foreach family of hypotheses e2 of E2 : E = E ∪ (e1 ∪ e2 ) return E Процедура Бергманна и Хоммеля: отвергнуть гипотезу Hj , если j ∈ A A= {I : I − exhaustive, min{pi : i ∈ I} > α/|I|} 21
  • 23. Статическая процедура Шеффера Пусть p1 , . . . , pm — упорядоченные вероятности (p-values) и H1 , . . . , Hm — соответствующие им гипотезы. Процедура отвергает гипотезы H1 , . . . , Hi−1 , если i — минимальное целое число, для которого выполнено неравенство pi > α/ti , где ti — максимальное число гипотез, которые могут быть верны, при условии, что какая-то i − 1 гипотеза неверна. ti ∈ S(k), где S(k) — набор чисел возможных верных гипотез при k сравниваемых классификаторов. k 2 S(k) = Cj + x : x ∈ S(k − j) j=1 22
  • 24. Сравнение критериев Будем сравнивать мощности критериев косвенно через следующие параметры: — Количество отвергнутых нулевых гипотез — Среднее значение статистики критерия (average p-value, APV) Чем меньше значение APV, тем больше вероятность отвергнуть нулевую гипотезу на заданном уровне доверия — Вопроизводимость результатов — вероятность того, что два эксперимента на одной и той же паре алгоритмов дадут одинаковый результат (отвергнут или примут нулевую гипотезу): − p) i (pi ¯ R(p) = 1 − 2var(p) = 1 − 2 n−1 23
  • 25. Сравнение критериев (продолжение) При сравнении двух классификаторов сэмплирование производится из нескольких наборов данных так, что вероятность выбрать i-й набор данных пропорциональна 1/(1 + e−kdi ), где di — разница точности классификаторов на этом наборе данных, а k — смещённость. 24
  • 26. Сравнение парных критериев Слева: k и APV, справа: k и количество отвергнутых нулевых гипотез 25
  • 27. Сравнение множественных критериев Слева: k, APV и R(p), справа: k и количество отвергнутых нулевых гипотез 26
  • 29. Резюме — При сравнении классификаторов на реальных данных непараметрические критерии более предпочтительны, т.к. они накладывают меньшие ограничения на выборку результатов — Для сравнения большого количества классификаторов стоит пользоваться специализированными критериями, например, тестом Фридмана — Для попарного сравнения классификаторов после того, как отвергнута нулевая гипотеза, стоит пользоваться корректировками (post hoc tests), учитывающими зависимость гипотез друг от друга 28
  • 30. Список материалов Demˇar. Statistical Comparison of Classifiers over Multiple Data s Sets. JMLR 6 (2006). Garc´ Herrera. An Extension on «Statistical Comparison ıa, of Classifiers over Multiple Data Sets» for all Pairwise Comparisons. JMLR 9 (2008). Ивченко, Медведев. Введение в математическую статистику. http://statmaster.sdu.dk/courses/st111/module11/index.html http://ru.wikipedia.org/wiki/F-тест 29