Come accennato, la memorizzazione della matrice del kernel richiede una memoria che si ridimensiona in modo quadratico con il numero di punti dati. Anche il tempo di addestramento per gli algoritmi SVM tradizionali si ridimensiona in modo superlineare con il numero di punti dati. Quindi, questi algoritmi non sono fattibili per grandi set di dati.
Kio jXioXjKio j= Φ ( xio) ⋅ Φ ( xj)Φè implicitamente definito dalla funzione kernel e gli SVM kernelized non calcolano esplicitamente le rappresentazioni dello spazio delle caratteristiche. Ciò è computazionalmente efficiente per set di dati di dimensioni medio-piccole, poiché lo spazio delle caratteristiche può essere di dimensione molto elevata o persino di dimensione infinita. Ma, come sopra, questo diventa impossibile per set di dati di grandi dimensioni. Invece, possiamo mappare esplicitamente i dati in modo non lineare nello spazio delle caratteristiche, quindi addestrare in modo efficiente un SVM lineare sulle rappresentazioni dello spazio delle caratteristiche. La mappatura dello spazio delle caratteristiche può essere costruita per approssimare una data funzione del kernel, ma usa meno dimensioni rispetto alla mappatura dello spazio delle caratteristiche "completa". Per insiemi di dati di grandi dimensioni, ciò può comunque fornirci rappresentazioni di spazi ricchi di funzionalità, ma con molte meno dimensioni rispetto ai punti dati.
Un approccio all'approssimazione del kernel utilizza l'approssimazione di Nyström (Williams e Seeger 2001). Questo è un modo per approssimare gli autovalori / autovettori di una matrice di grandi dimensioni usando una sottomatrice più piccola. Un altro approccio utilizza funzionalità randomizzate e talvolta viene chiamato "lavelli da cucina casuali" (Rahimi e Recht 2007).
Un altro trucco per la formazione di SVM su set di dati di grandi dimensioni è approssimare il problema di ottimizzazione con una serie di sottoproblemi più piccoli. Ad esempio, l'uso della discesa gradiente stocastica sul problema primario è un approccio (tra molti altri). Molto lavoro è stato fatto sul fronte dell'ottimizzazione. Menon (2009) offre un buon sondaggio.
Riferimenti
Williams e Seeger (2001). Utilizzo del metodo Nystroem per velocizzare le macchine del kernel.
Rahimi e Recht (2007). Funzionalità casuali per macchine kernel su larga scala.
Menon (2009) . Macchine vettoriali di supporto su larga scala: algoritmi e teoria.