tecniche di apprendimento automatico per dati longitudinali


11

Mi chiedevo se esistessero tecniche di apprendimento automatico (senza supervisione) per la modellazione di dati longitudinali? Ho sempre usato modelli di effetti misti (per lo più non lineari) ma mi chiedevo se ci fossero altri modi per farlo (usando l'apprendimento automatico).

Per apprendimento automatico, intendo foresta casuale, classificazione / raggruppamento, alberi decisionali e persino apprendimento profondo, ecc.


Puoi definire cosa intendi per "apprendimento automatico"? È possibile potenziare un LME dopo un'appropriata stratificazione. Sarebbe davvero un bel romanzo!
usεr11852,

@ usεr11852, ho aggiunto un po 'più di spiegazione alla domanda, si spera che questo lo chiarisca un po' di più.
John_dydx,

Ah ... quindi il potenziamento non è ML secondo la tua definizione. Cool Grazie per il chiarimento, spero che presto riceverai qualche attenzione.
usεr11852,

... e anche aumentare.
John_dydx,

3
Questa domanda appare piuttosto vaga. "Apprendimento automatico" è un termine generico e persino le categorie di "foresta casuale, classificazione / raggruppamento, alberi decisionali e persino apprendimento profondo, ecc." sono abbastanza ampi. Esiste un'applicazione chiara che ti interessa? Se, ad esempio, è necessario classificare l'output dicotomico, è possibile utilizzare un modello logistico di effetti misti o un GEE logistico. L'apprendimento automatico e i modelli statistici non sono necessariamente diversi.
Jon

Risposte:


7

Nel caso in cui vi siano più osservazioni di un soggetto (ad es. Più visite dello stesso paziente), l '"ID paziente" è una variabile di "raggruppamento". Bisogna fare attenzione durante la valutazione del modello in modo che le visite dello stesso paziente non compaiano sia nei dati di addestramento che di test, poiché questi sono correlati e porteranno all'inflazione della precisione del classificatore .

La documentazione sklearn di convalida incrociata ha iteratori di convalida incrociata per dati raggruppati. Vedi GroupKFold , LeaveOneGroupOut e LeavePGroupsOut .

Ancora meglio, prova le reti neurali ricorrenti oi modelli nascosti di Markov .


4

Puoi modellare il tuo longitudinale con metodi di apprendimento automatico standard semplicemente aggiungendo funzioni che rappresentano la longitudinalità, ad esempio aggiungendo una funzione che rappresenta il tempo. O una funzione che indica l'appartenenza a un gruppo, persona ecc. (Nel caso dei dati del pannello).

Se sei creativo con la creazione / estrazione di funzionalità puoi modellare qualsiasi cosa con gli algoritmi ML.


1
@PhlippePro, sono un po 'confuso su questa risposta. (1) Cosa succede se si desidera prevedere una persona che non rientra nel proprio set di allenamento? Hai solo coefficienti per quelli nel tuo set di allenamento, giusto? (2) L'aggiunta di una funzione che corrisponde a una persona potrebbe comportare l'aggiunta di un massimo di 100.000 nuove variabili fittizie, supponendo che nel set di dati siano presenti 100.000 persone. Queste nuove funzionalità si adatterebbero proprio accanto a quelle originali?
user0

(1) Se non si dispone delle persone che si desidera prevedere nel set di dati di allenamento, non è possibile utilizzare la "funzione persona", è corretto. (2) Invece di creare funzionalità fittizie, è possibile creare una funzione "categoriale" (ad esempio, specificarli come categorici con as.factor in R). Alcuni algoritmi non possono gestire così tante categorie (come ad esempio randomForest può gestire solo circa 50), quindi devi davvero specificarle come variabili fittizie e puoi ottenere (anche) molte funzionalità, come hai sottolineato.
PhilippPro,

ML non si traduce così facilmente in dati longitudinali
Aksakal
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.