Мне интересно, если какой-либо алгоритм может сделать классификацию и регрессию одновременно. Например, я бы хотел, чтобы алгоритм изучал классификатор, и в то же время внутри каждой метки он также изучал непрерывную цель. Таким образом, для каждого примера обучения он имеет категориальную метку и непрерывное значение.
Я мог бы сначала подготовить классификатор, а затем обучить регрессор для каждого ярлыка, но я просто думаю, что если бы существовал алгоритм, который мог бы выполнять оба этих действия, это было бы замечательно.
Ответы:
Проблема, которую вы описываете, может быть решена с помощью латентной регрессии классов , или кластерной регрессии , или ее смеси расширений линейных обобщенных моделей, которые являются членами более широкого семейства моделей конечных смесей , или моделей латентных классов .
Это не комбинация классификации (контролируемого обучения) и регрессии как таковой , а скорее кластеризация (неконтролируемое обучение) и регрессии. Базовый подход может быть расширен, так что вы можете предсказать членство в классе, используя сопутствующие переменные, что делает его еще ближе к тому, что вы ищете. На самом деле, использование моделей скрытого класса для классификации было описано Vermunt и Magidson (2003), которые рекомендуют его для такого использования.
Латентная регрессия классов
Этот подход в основном представляет собой модель конечной смеси (или анализ скрытого класса ) в форме
Прогнозирование вероятности членства в классе на основе сопутствующих переменных
Простую модель регрессии латентного класса можно расширить, включив в нее сопутствующие переменные, которые предсказывают членство в классе (Dayton and Macready, 1998; см. Также: Linzer and Lewis, 2011; Grun and Leisch, 2008; McCutcheon, 1987; Hagenaars and McCutcheon, 2009) в таком случае модель становится
где снова является вектором всех параметров, но мы также включаем сопутствующие переменные и функцию (например, логистическую), которая используется для прогнозирования скрытых пропорций на основе сопутствующих переменных. Таким образом, вы можете сначала предсказать вероятность членства в классе и оценить кластерную регрессию в рамках одной модели.ψ вес πК( ш , а )
Плюсы и минусы
Что приятно, так это то, что это метод кластеризации на основе моделей, что означает, что вы подгоняете модели к своим данным, и такие модели можно сравнивать, используя различные методы сравнения моделей (тесты отношения правдоподобия, BIC, AIC и т. Д. ), поэтому выбор конечной модели не так субъективен, как в случае кластерного анализа в целом. Если разбить проблему на две независимые проблемы кластеризации, а затем применить регрессию, это может привести к смещенным результатам, а оценка всего в одной модели позволит вам более эффективно использовать ваши данные.
Недостатком является то, что вам нужно сделать ряд предположений о вашей модели и подумать об этом, так что это не метод черного ящика, который просто берет данные и возвращает некоторый результат, не беспокоя вас об этом. С шумными данными и сложными моделями у вас также могут возникнуть проблемы с идентификацией моделей. Кроме того, поскольку такие модели не так популярны, они широко не применяются (вы можете проверить отличные пакеты R
flexmix
иpoLCA
, насколько я знаю, они также в некоторой степени реализованы в SAS и Mplus), что делает вас зависимым от программного обеспечения.пример
Ниже вы можете увидеть пример такой модели из
flexmix
библиотеки (Leisch, 2004; Grun and Leisch, 2008), в которой смесь двух регрессионных моделей подобрана к составным данным.Он визуализируется на следующих графиках (формы точек - это истинные классы, цвета - классификации).
Ссылки и дополнительные ресурсы
Для получения дополнительной информации вы можете проверить следующие книги и документы:
источник