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

11

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

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

John_dydx
источник
Можете ли вы определить, что вы подразумеваете под «машинным обучением»? Вы можете повысить LME после соответствующей стратификации. Это было бы довольно романтично на самом деле!
usεr11852
@ usεr11852, я добавил немного больше объяснений к вопросу - надеюсь, это прояснит это немного больше.
John_dydx
Ах ... так что повышение не является ML по твоему определению. Круто, спасибо за разъяснения, надеюсь, это скоро получит некоторое внимание.
usεr11852
... и повышение тоже.
John_dydx
3
Этот вопрос кажется довольно расплывчатым. «Машинное обучение» - это широкий термин, и даже категории «случайный лес, классификация / кластеризация, деревья решений и даже глубокое обучение и т. Д.» довольно широк. Есть ли понятное приложение, которое вас интересует? Если, например, вам нужно классифицировать дихотомический результат, вы можете использовать модель логистических смешанных эффектов или логистический GEE. Машинное обучение и статистические модели не обязательно относятся к разным вещам.
Джон

Ответы:

7

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

Документация sklearn для перекрестной проверки содержит итераторы перекрестной проверки для сгруппированных данных. Смотрите GroupKFold , LeaveOneGroupOut и LeavePGroupsOut .

Более того, попробуйте Рекуррентные нейронные сети или скрытые марковские модели .

Пользователь0
источник
4

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

Если вы креативны с созданием / извлечением объектов, вы можете смоделировать все что угодно с помощью ML-алгоритмов

PhilippPro
источник
1
@PhlippePro, я немного запутался в этом ответе. (1) Что, если вы хотите предсказать человека, не входящего в ваш тренировочный комплекс? У вас есть коэффициенты только для тех, кто в вашем тренировочном наборе, верно? (2) Добавление функции, соответствующей человеку, может привести к добавлению до 100 000 новых фиктивных переменных, при условии, что в вашем наборе данных есть 100 000 человек. Эти новые функции подойдут вместе с оригинальными?
user0
(1) Если у вас нет людей, которых вы хотите предсказать в своем учебном наборе данных, то вы не можете использовать «функцию личности», которая является правильной. (2) Вместо создания фиктивных объектов вы можете сделать одну "категориальную" функцию (например, вы указываете их как категориальные с помощью as.factor в R). Некоторые алгоритмы не могут обрабатывать так много категорий (как, например, randomForest может обрабатывать только приблизительно 50), тогда вам действительно нужно указать их как фиктивные переменные, и вы можете получить (слишком) много функций, как вы указали.
PhilippPro
ML не так легко перевести в продольные данные
Аксакал