2015-05-22 12 views
7

Nel mio problema, ho un dataset molto grande che è fuori dalla mia memoria. Mi piacerebbe allenare il mio modello usando dati del disco come HDF5 o simili. Sklearn supporta questo o c'è qualche altra alternativa?C'è un modo per addestrare un modello sklearn con dati del disco come HDF5 o simili?

+0

Questa domanda presuppone che in linea di principio tutti i modelli possano essere addestrati senza avere tutti i dati in memoria. Dubito che questo sia il caso. – cel

+1

Questo è perfettamente possibile, ad esempio, Caffe usa la struttura simile a db per recuperare i dati dal disco durante l'addestramento. – erogol

+0

Ogrisel ha fornito una risposta ma hai trovato altri modi? Sto cercando di fare la stessa cosa. – KobeJohn

risposta

4

Quello che chiedi è chiamato out-of-core o streaming learning. È possibile solo con un sottoinsieme di modelli scikit-learn che implementano il metodo partial_fit per il fitting incrementale.

C'è un example in the documentation. Non esiste un'utilità specifica per adattare i modelli ai dati in HDF5 in particolare, ma può adattare questo esempio per recuperare i dati da qualsiasi origine dati esterna (ad esempio dati HDF5 sul disco locale o un database sulla rete, ad esempio utilizzando l'adattatore SQL panda)).

Problemi correlati