Различение между двумя группами в статистике и машинном обучении: проверка гипотез против классификации и кластеризации

29

Предположим, у меня есть две группы данных, помеченные A и B (каждая из которых содержит, например, 200 образцов и 1 особенность), и я хочу знать, отличаются ли они. Я мог бы:

  • а) выполнить статистический тест (например, t-тест), чтобы увидеть, отличаются ли они статистически.

  • б) использовать контролируемое машинное обучение (например, классификатор опорных векторов или классификатор случайных лесов). Я могу обучить это на части моих данных и проверить это на остальных. Если после этого алгоритм машинного обучения правильно классифицирует остальные, я могу быть уверен, что выборки дифференцируемы.

  • c) использовать неконтролируемый алгоритм (например, K-Means) и дать ему разделить все данные на две выборки. Затем я могу проверить, соответствуют ли эти два найденных образца моим ярлыкам А и В.

Мои вопросы:

  1. Как эти три различных способа перекрываются / исключают?
  2. Б) и в) полезны для каких-либо научных аргументов?
  3. Как я могу получить «значимость» для разницы между образцами A и B из методов b) и c)?
  4. Что изменится, если данные будут иметь несколько функций, а не одну функцию?
  5. Что произойдет, если они содержат различное количество образцов, например, 100 против 300?
MAXg
источник
3
Я бы сказал , что разница между (а) и (б) в том , что статистические тесты сосредоточиться на ли это различие, в то время как методы классификации сосредоточить внимание на размер этой разницы. Когда вы используете случайный лес, вы хотите знать перекрестную проверку точности; возможно это 78%. Это число, которое вас интересует, а не в утверждении, что оно не равно 50% .
говорит амеба, восстанови Монику
4
ИМХО ситуации, когда a / b / c имеют смысл, отличаются типичным отношением сигнал / шум, и оно увеличивается от (a) до (b) и (c). В типичном применении t-теста наблюдается высокий уровень шума; мы хотим показать, что группы не равны. Если группы явно не равны (меньше шума), нам больше не нужен тест; вместо этого мы хотим дать количественную оценку различий между группами, и здесь может помочь точность классификации вне выборки. Если шумов еще меньше, а точность классификации составляет ~ 100%, мы можем спросить, настолько ли различны группы, чтобы их можно было определить алгоритмом кластеризации.
говорит амеба: восстанови Монику
1
@amoeba, я обращаюсь к вам, потому что вы редактировали заголовок вопроса и т. д. Я бы попросил вас рассмотреть его еще раз. «Классификация» и «кластеризация»: не находятся в (единственном) владении машинным обучением. Эти задачи появились и обычно выполнялись в статистике / анализе данных до первого m. ученик родился. Это верно только для немногих недавних методов, таких как SVM, которые развивались благодаря ML и внутри него. Нельзя связывать классификацию / кластеризацию / деревья только с ML. ML, однако, отличается от статистического анализа данных тем, что в нем интенсивно используется тренировка / тестирование.
ttnphns
@ttnphns Конечно, это все правильно, но оригинальное название было «Отличительные образцы: машинное обучение и статистические тесты (например, t-тест)», и я просто хотел добавить к нему некоторую точность, потому что вопрос действительно задает вопрос о t-тесте. против классификации против кластеризации (для этой конкретной научной цели). Я подумаю о возможных улучшениях в названии.
говорит амеба, восстанови Монику
@ttnphns Я отредактировал заголовок, посмотрим, понравится ли он тебе больше.
говорит амеба, восстанови Монику

Ответы:

15

Отличный вопрос Все может быть хорошим или плохим, полезным или нет, в зависимости от ваших целей (и, возможно, от характера вашей ситуации). По большей части эти методы предназначены для достижения различных целей.

  • Статистические тесты , такие как test, позволяют проверять научные гипотезы. Они часто используются для других целей (потому что люди просто не знакомы с другими инструментами), но, как правило, не должны. Если у вас есть априорная гипотеза о том, что две группы имеют разные средние значения для нормально распределенной переменной, то t- тест позволит вам проверить эту гипотезу и контролировать частоту ошибок долгосрочного типа I (хотя вы не будете знать, вы сделали тип ошибки I в данном конкретном случае). TT
  • Классификаторы в машинном обучении, такие как SVM, предназначены для классификации шаблонов как принадлежащих к одному из известных наборов классов. Типичная ситуация состоит в том, что у вас есть несколько известных экземпляров, и вы хотите обучить классификатор, используя их, чтобы он мог обеспечить наиболее точные классификации в будущем, когда у вас будут другие шаблоны, истинный класс которых неизвестен. Акцент здесь делается на точности выборки ; Вы не проверяете никакую гипотезу. Конечно, вы надеетесь, что распределение переменных / признаков предикторов отличается между классами, потому что в противном случае будущая помощь в классификации не будет возможна, но вы не пытаетесь оценить свою уверенность в том, что средства Y отличаются на X. Вы хотите правильно угадать X в будущем, когда Y известен.
  • Алгоритмы обучения без присмотра, такие как кластеризация , предназначены для обнаружения или наложения структуры на набор данных. Есть много возможных причин, почему вы можете захотеть сделать это. Иногда вы можете ожидать, что в наборе данных есть истинные скрытые группировки, и хотите посмотреть, покажутся ли результаты кластеризации разумными и пригодными для ваших целей. В других случаях вы можете захотеть наложить структуру на набор данных, чтобы включить сокращение данных. В любом случае, вы не пытаетесь проверить гипотезу ни о чем, и при этом вы не надеетесь быть в состоянии точно предсказать что-либо в будущем.

Имея это в виду, давайте ответим на ваши вопросы:

  1. Три метода существенно различаются по целям, которым они служат.
  2. b и c могут быть полезны в научных аргументах, это зависит от природы рассматриваемых аргументов. Безусловно, наиболее распространенный тип научных исследований - проверка гипотез. Однако формирование прогнозных моделей или обнаружение скрытых паттернов также являются возможными, законными целями.
  3. Обычно вы не пытаетесь получить «значимость» от методов b или c.
  4. Предполагая, что эти функции носят категорический характер (я полагаю, это то, что вы имеете в виду), вы все равно можете проверять гипотезы, используя факторный ANOVA. В машинном обучении есть подтема для классификации по нескольким меткам . Существуют также методы для нескольких членских / перекрывающихся кластеров, но они менее распространены и представляют собой гораздо менее решаемую проблему. Для обзора темы см. Krumpleman, CS (2010) Перекрывающаяся кластеризация. Диссертация, UT Остин, Электротехника и вычислительная техника ( pdf ).
  5. Вообще говоря, все три типа методов имеют большую сложность, так как количество случаев в разных категориях расходится.
Gung - Восстановить Монику
источник
2
По поводу № 4: Я думаю, вы неправильно поняли слово «особенность» в ОП. В машинном обучении «особенность» означает просто переменную. Таким образом, «множественные функции» означает, что можно использовать многовариантную версию t-критерия (такого как T Хотеллинга), а не факторный ANOVA.
говорит амеба, восстанови Монику
11

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

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

Tp

Возможно, было бы легче подумать о некоторых из этих проблем, если вы построите тест с двумя выборками из классификатора, например, как недавно предложили Lopez-Paz и Oquab (2017) . Процедура выглядит следующим образом:

  • XYИкспоездИкстестYпоездYтест
  • ИкспоездYпоезд
  • ИкстестYтест
  • п^пзнак равно12п12п12

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

Обратите внимание, что важно разделить тест на поезд: в противном случае классификатор, который только что запомнил свои входные данные, всегда имел бы идеальную различимость. Увеличение доли баллов в обучающем наборе дает больше данных для изучения хорошего классификатора, но дает меньше возможностей быть уверенным в том, что точность классификации действительно отличается от случайной. Этот компромисс будет варьироваться в зависимости от проблемы и семейства классификаторов и пока еще недостаточно понят.

Лопес-Пас и Окуаб показали хорошие эмпирические показатели этого подхода по нескольким проблемам. Рамдас и соавт. (2016) дополнительно показали, что теоретически близкородственный подход является оптимальным по скорости для одной конкретной простой задачи. «Правильная» вещь, которую нужно сделать в этой настройке, является областью активного исследования, но этот подход, по крайней мере, разумен во многих ситуациях, если вы хотите немного большей гибкости и интерпретации, чем просто применение стандартного стандартного теста.

Дугал
источник
(+1) Кроме того, вложенная перекрестная проверка - путь, который я имею. Затем проверьте оценку производительности, полученную во внешнем цикле повторной выборки, с производительностью модели без информации. Если случайность значительно выше ожидаемой, то ваши данные несколько различаются.
Firebug
@Firebug Что вы подразумеваете под "не-информационной моделью производительности"? Я не совсем понял вашу предложенную процедуру.
Дугал
2
@Firebug Важное, но тонкое предостережение заключается в том, что если точность классификации оценивается с помощью CV, то нельзя использовать биномиальный тест.
говорит амеба: восстанови Монику
2
@Firebug Моя точка зрения по-прежнему остается: вы не можете применить какой-либо тест с одной выборкой к AUC из разных сгибов и, в частности, из повторного CV, потому что эти оценки не являются независимыми. Это общеизвестная проблема.
говорит амеба, восстанови Монику
2
Повторное тестирование: я сделал это сам. Вы запускаете CV для получения оценки производительности, затем перемешиваете метки и снова запускаете весь конвейер CV (и делаете это перемешивание 100 или 1000 раз, чтобы получить нулевое распределение). Это, как правило, занимает очень много времени, хотя. Копия в @Firebug.
говорит амеба, восстанови Монику
3

Только подход (а) служит для проверки гипотезы.

В случае использования контролируемых алгоритмов машинного обучения (b) они не могут ни доказать, ни опровергнуть гипотезу об удаленности групп. Если алгоритм машинного обучения не классифицирует группы должным образом, это может произойти из-за того, что вы использовали «неправильный» алгоритм для своей задачи или недостаточно настроили его и т. Д. С другой стороны, вы можете «замучить» полностью «случайные» данные долго Достаточно, чтобы произвести подходящую модель, которая делает хорошие прогнозы. Еще одна проблема заключается в том, когда и как вы узнаете, что алгоритм делает «хорошие» прогнозы? Почти никогда вы не будете стремиться к 100% точности классификации, поэтому, когда вы узнаете, что результаты классификации что-то доказывают?

Алгоритмы кластеризации (с) не предназначены для контролируемого обучения. Они не нацелены на воссоздание меток, а на группирование ваших данных по сходству. Теперь результаты зависят от того, какой алгоритм вы используете, и какое сходство вы ищете. Ваши данные могут иметь различного рода сходства, вы можете искать различия между мальчиками и девочками, но алгоритм может вместо этого найти группы бедных и богатых детей, или умных и менее умных, правых и левшей и т. Д. группировка, которую вы намеревались, не доказывает, что группировка не имеет смысла, но только то, что она нашла другую «значимую» группировку. Как и в предыдущем случае, результаты могут зависеть от используемого алгоритма и параметров. Подойдет ли вам, если один из десяти алгоритмов / настроек найдет «ваш» этикетки? Что если бы это был один из ста? Как долго вы будете искать, прежде чем остановиться? Обратите внимание, что при использовании машинного обучения в подавляющем большинстве случаев вы не остановитесь после использования одного алгоритма с настройками по умолчанию, и результат может зависеть от процедуры, которую вы использовали.

Тим
источник
2
Для подхода (b): вы можете построить тест на гипотезу, как отмечено в моем ответе, чтобы решить проблему определения значимости вашего результата (хотя это, безусловно, приводит к наивному использованию классификаторов для этой проблемы). Обратите внимание, что любой данный тест гипотезы также может не отклонить нуль, потому что это «неправильный» тест для вашей проблемы, точно так же, как это происходит с классификатором; проблема переоснащения полностью решается путем разделения данных.
Дугал
@ Хорошие баллы (+1), но мой главный аргумент в том, что с помощью машинного обучения результат зависит от того, как вы выбираете алгоритм, используете его, тестируете и оцениваете результаты; поэтому исход такого теста во многом зависит от ваших действий. Это означает, что потенциально два разных статистика могут получить разные результаты при использовании этого метода. С другой стороны, с традиционными проверками гипотез это зависит только от выбора теста.
Тим
Более того, не существует единого «правильного» способа его применения, и вы можете легко манипулировать им (целенаправленно или нет) для получения ожидаемых результатов.
Тим
Если вы просто пробуете миллион вещей, пока не получите желаемый результат, да. Если вы делаете правильное разделение данных, в том числе и из своего собственного анализа, то процедура тестирования является абсолютно допустимой. Наличие большего количества опций дает вам большую власть в ситуациях, когда вы знаете, как его использовать, но да, дает больше возможностей для обмана (непреднамеренного или иного), если вы не будете осторожны.
Дугал
@ Даугал да, но результат зависит также от процедуры, используемой для перекрестной проверки и самого разделения (например, размер тестовой группы). Таким образом, на каждом этапе результат зависит от вашей процедуры. Более того, это ваше решение, когда вы перестаете учиться и пытаетесь достичь лучших результатов (один алгоритм с настройками по умолчанию, против отдельных алгоритмов и настройки параметров, против нескольких алгоритмов - сколько?). Для этой процедуры, возможно, потребуются некоторые исправления для множественного тестирования (но что именно?), Чтобы учесть использованную процедуру - хорошие результаты для одного алгоритма с настройками по умолчанию, по-видимому,
Тим
2
  1. а) только отвечает на вопрос, отличается ли распределение, но не как их различить. б) также найдет наилучшее значение для дифференциации двух распределений. c) будет работать, если два распределения имеют некоторые специфические свойства. Например, он будет работать с нормальным распределением, но не с некоторыми двумя модальными распределениями, потому что метод может дифференцировать два режима одной и той же группы вместо двух разных групп.

  2. в) бесполезен для научных аргументов из-за двух модальных распределений. б) может быть использован для дифференциации двух распределений, потому что вы можете рассчитать значение (см. 3.) Хотя я никогда не встречал его.

  3. По самозагрузке. Вы рассчитываете модель на основе случайных подвыборок 1000 раз. Вы получаете оценку, например, минимальную сумму ошибок альфа и бета. Вы сортируете счет по возрастанию. Для 5% уверенности вы выбираете 950-е значение. Если это значение меньше 50% (для равного количества баллов для групп А и В), то с 95% -ной уверенностью можно игнорировать нулевую гипотезу о том, что распределения одинаковы. Проблема в том, что если оба распределения нормальны, имеют одинаковое среднее значение, но имеют разные вариации, то вы не сможете понять, что они различаются по методикам ML. С другой стороны, вы можете найти тест вариации, который сможет различить два распределения. И может быть наоборот, что ML будет сильнее, чем статистический тест, и сможет различать распределения.

  4. Когда у вас есть только одна особенность в ML, вам нужно найти только одно значение, чтобы различать распределения. С двумя особенностями граница может быть синусом, а в многомерном пространстве это может быть действительно странно. Так что найти правильную границу будет намного сложнее. С другой стороны, дополнительные функции приносят дополнительную информацию. Так что это, как правило, позволит легче различать два распределения. Если обе переменные нормально распределены, то граница - это линия.

  5. Меньшие выборки могут вести себя ненормально, потому что Центральная Предельная Теорема не может быть применена. Большая выборка начинает вести себя более нормально, потому что начинает работать Центральная предельная теорема. Например, среднее значение обеих групп будет почти нормально распределено, если выборка достаточно велика. Но обычно это не 100 против 300, а 10 наблюдений против 1000 наблюдений. Таким образом, согласно этому сайту t-критерий для разности средних значений будет работать независимо от распределения, если число наблюдений больше 40 и без выбросов.

keiv.fly
источник
0

Статистическое тестирование предназначено для того, чтобы сделать вывод из данных, оно показывает, как все связано. Результатом является то, что имеет значение в реальном мире. Например, как курение связано с раком легких, как с точки зрения направления, так и величины. Это все еще не говорит вам, почему вещи произошли. Чтобы ответить, почему что-то произошло, нам нужно также рассмотреть взаимосвязь с другими переменными и внести соответствующие коррективы (см. Pearl, J. (2003). ПРИЧИНА: МОДЕЛИ, ПРИЧИНЫ И ВЛИЯНИЕ).

Контролируемое обучение предназначено для прогнозирования, оно говорит вам, что произойдет. Например, учитывая статус курения человека, мы можем предсказать, будет ли у него рак легких. В простых случаях он по-прежнему говорит вам «как», например, глядя на предельное состояние курения, идентифицированное алгоритмом. Но более сложные модели труднее или невозможно интерпретировать (глубокое обучение / повышение с большим количеством функций).

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

  • Для статистического тестирования, обнаруживая некоторые неизвестные основные подгруппы данных (кластеризация), мы можем вывести неоднородность в ассоциациях между переменными. Например, курение увеличивает вероятность возникновения рака легких для подгруппы А, но не для подгруппы В.
  • Для контролируемого обучения мы можем создавать новые функции для повышения точности и надежности прогнозирования. Например, путем определения подгрупп (кластеризация) или сочетания признаков (уменьшение размеров), которые связаны с вероятностью возникновения рака легких.

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

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

Иногда мы хотим знать, «как» и «почему», чтобы информировать интервенционные действия, например, путем определения того, что курение вызывает рак легких, может быть разработана политика для борьбы с этим. Иногда мы хотим знать, «что» сообщать при принятии решений, например, выяснять, у кого может быть рак легких, и назначать им раннее лечение. В журнале Science опубликован специальный выпуск о прогнозировании и его пределах ( http://science.sciencemag.org/content/355/6324/468.). «Похоже, что успех достигается наиболее последовательно, когда вопросы решаются междисциплинарными усилиями, которые объединяют человеческое понимание контекста с алгоритмической способностью обрабатывать терабайты данных». По моему мнению, например, знания, обнаруженные с помощью тестирования гипотез, могут помочь контролировать обучение, информируя нас какие данные / особенности мы должны собирать в первую очередь. С другой стороны, контролируемое обучение может помочь генерировать гипотезы, сообщая, какие переменные

Том К.Л.
источник