Учет мультиколлинеария важен в регрессионном анализе, потому что в экстремумах он напрямую зависит от того, идентифицированы ли ваши коэффициенты уникально в данных. В менее серьезных случаях он все еще может испортить ваши оценки коэффициентов; небольшие изменения в данных, используемых для оценки, могут вызвать резкие колебания в оценочных коэффициентах. Это может быть проблематично с точки зрения логического вывода: если две переменные сильно коррелированы, увеличение одной переменной может быть компенсировано уменьшением другой, поэтому комбинированный эффект сводит на нет друг друга. С более чем двумя переменными эффект может быть еще более тонким, но если прогнозы стабильны, этого часто достаточно для приложений машинного обучения.
Подумайте, почему мы регуляризируем в контексте регрессии: нам нужно ограничить модель от чрезмерной гибкости. Применение правильного количества регуляризации немного увеличит смещение для большего уменьшения дисперсии. Классическим примером этого является добавление полиномиальных членов и эффектов взаимодействия к регрессии: в вырожденном случае уравнение прогнозирования будет интерполировать точки данных, но, вероятно, будет ужасно при попытке предсказать значения невидимых точек данных. Сокращение этих коэффициентов, вероятно, сведет к минимуму или полностью устранит некоторые из этих коэффициентов и улучшит обобщение.
Однако можно заметить, что случайный лес имеет параметр регуляризации по числу переменных, выбранных при каждом разделении: чем лучше разделение, тем больше mtry
(больше возможностей для выбора; некоторые из них лучше других), но это также делает каждое дерево более тесно коррелированным с другим деревом, что несколько смягчает диверсифицирующий эффект оценки множества деревьев в первую очередь. Эта дилемма заставляет искать правильный баланс, обычно достигаемый с помощью перекрестной проверки. Важно отметить, что, в отличие от регрессионного анализа, никакая часть модели случайного леса не подвергается воздействию коллинеарных переменных: даже если две переменные обеспечивают одинаковую чистоту дочернего узла, вы можете выбрать одну из них, не ухудшая качество результата.
Аналогично, для чего-то вроде SVM вы можете включить больше предикторов, чем функций, потому что уловка ядра позволяет вам работать исключительно с внутренним произведением этих векторов функций. Наличие большего количества возможностей, чем наблюдений, было бы проблемой в регрессиях, но хитрость ядра означает, что мы оцениваем коэффициент только для каждого образца, в то время как параметр регуляризации снижает гибкость решения - что, безусловно, хорошо, так как оценка параметров дляCNNнеограниченные наблюдения всегда будут давать идеальную модель на тестовых данных - и мы возвращаемся к полному кругу, возвращаясь к сценарию регрессии гребня / LASSO / эластичной сети, в котором гибкость модели ограничена как проверка чрезмерно оптимистичной модели. Обзор условий KKT проблемы SVM показывает, что решение SVM уникально, поэтому нам не нужно беспокоиться о проблемах идентификации, возникших в случае регрессии.
Наконец, рассмотрим фактическое влияние мультиколлинеарности. Это не меняет прогнозирующую способность модели (по крайней мере, на данных обучения), но вредит нашим оценкам коэффициентов. В большинстве приложений ML мы не заботимся о самих коэффициентахпросто потеря наших модельных прогнозов, поэтому в этом смысле проверка VIF на самом деле не отвечает на дополнительный вопрос. (Но если небольшое изменение в данных вызывает огромные колебания в коэффициентах [классический признак мультиколлинеарности], это также может изменить прогнозы, и в этом случае нам все равно - но все это [мы надеемся!] Характерно, когда мы выполнить перекрестную проверку, которая в любом случае является частью процесса моделирования.) Регрессия легче интерпретируется, но интерпретация может быть не самой важной целью для некоторых задач.
Причина в том, что цели «традиционной статистики» отличаются от многих методов машинного обучения.
Под «традиционной статистикой» я предполагаю, что вы имеете в виду регрессию и ее варианты. В регрессии мы пытаемся понять влияние независимых переменных на зависимую переменную. Если существует сильная мультиколлинеарность, это просто невозможно. Ни один алгоритм не собирается это исправить. Если старательность соотносится с посещаемостью и оценками в классе, мы не можем знать, что действительно вызывает повышение оценок - посещаемость или старательность.
Однако в методах машинного обучения, ориентированных на точность прогнозирования, все, что нас интересует, - это то, как мы можем использовать набор переменных для прогнозирования другого набора. Нас не волнует влияние этих переменных друг на друга.
По сути, тот факт, что мы не проверяем мультиколлинеарность в методах машинного обучения, не является следствием алгоритма, это является следствием цели. Это можно увидеть, заметив, что сильная коллинеарность между переменными не влияет на точность прогнозирования методов регрессии.
источник
Похоже, здесь есть основополагающее предположение, что не проверка на коллинеарность является разумной или даже лучшей практикой. Это кажется ущербным. Например, проверка на идеальную коллинеарность в наборе данных со многими предикторами покажет, являются ли две переменные на самом деле одинаковыми, например, дата рождения и возраст (пример взят из Dormann et al. (2013), Ecography , 36 , 1, pp 27–46). ). Я также иногда видел проблему совершенно коррелированных предикторов, возникающих в соревнованиях Kaggle, где участники на форуме пытаются устранить потенциальных предикторов, которые были анонимными (то есть ярлык предиктора скрыт, распространенная проблема в Kaggle и Kaggle-подобных соревнованиях).
Кроме того, в машинном обучении все еще существует активность выбора предикторов - идентификация высококоррелированных предикторов может позволить работнику найти предикторы, которые являются прокси для другой базовой (скрытой) переменной, и в конечном итоге найти одну переменную, которая лучше всего работает для представления скрытой переменной или альтернативно предложите переменные, которые могут быть объединены (например, через PCA).
Следовательно, я хотел бы предположить, что, хотя методы машинного обучения обычно (или, по крайней мере, часто) разрабатываются так, чтобы быть надежными перед лицом коррелированных предикторов, понимание степени, с которой коррелируют предикторы, часто является полезным шагом в создании надежной и точной модели. и является полезным помощником для получения оптимизированной модели.
источник
Основная проблема с мультиколлинеарностью заключается в том, что она портит коэффициенты (бета) независимых переменных. Вот почему это серьезная проблема, когда вы изучаете отношения между переменными, устанавливаете причинность и т. Д.
Однако, если вы не заинтересованы в понимании этого явления, а сосредоточены исключительно на прогнозировании и прогнозировании, то мультиколлинеарность - это не проблема. Или, по крайней мере, так думают люди.
Я не говорю об идеальной мультиколлинеарности здесь, которая является технической проблемой или проблемой идентификации. Технически это просто означает, что проектная матрица приводит к сингулярности, а решение не определено.
источник
Регуляризация в тех машинном обучении стабилизирует коэффициенты регрессии, так что, по крайней мере, этот эффект мультиколлинеарности приручен. Но что еще более важно, если вы идете на прогнозирование (которым часто занимаются машинные студенты), то проблема «мультиколлинеарности» не была такой большой проблемой в первую очередь. Это проблема, когда вам нужно оценить определенный коэффициент, а у вас нет информации.
Кроме того, мой ответ на вопрос « Когда LASSO выбирает коррелированные предикторы » может оказаться полезным для вас.
источник
Я думаю, что мультиколлинеарность должна быть проверена в машинном обучении. И вот почему: предположим, что у вас есть две сильно коррелированные особенности X и Y в нашем наборе данных. Это означает, что плоскость ответа не является надежной (небольшое изменение в данных может оказать существенное влияние на ориентацию плоскости ответа). Что подразумевает, что прогнозы модели для данных указывают далекоот линии, где X и Y имеют тенденцию падать, не надежны. Если вы используете свою модель для прогнозов для таких точек, прогнозы, вероятно, будут очень плохими. Другими словами, когда у вас есть две сильно коррелированные особенности, в качестве модели вы изучаете плоскость, где данные в основном располагаются в одну линию. Поэтому важно удалить сильно коррелированные функции из ваших данных для предотвращения ненадежных моделей и ошибочных прогнозов.
источник