SVM bei großen Datensätzen

Allgemeine Statistik mit R, die Test-Methode ist noch nicht bekannt, ich habe noch keinen Plan!

Moderatoren: EDi, jogo

Antworten
Student88
Beiträge: 12
Registriert: Fr Jun 08, 2018 3:32 pm

SVM bei großen Datensätzen

Beitrag von Student88 »

Ich versuche mit Hilfe des Packets e1071 und dem Befehl svm() eine Support Vector Machine für einen großen Datensatz, mit über 210.000 Beobachtungen und über 280 Variablen, zu bestimmten. Jetzt habe ich hierbei das Problem, dass ich Anfangs die Fehlermeldung cannot allocate Vector of size 335 GB bekommen habe. Habe dann um den Fehler zu umgehen memorysize(max = T) gemacht. Nach 3 Tagen ist die Funktion immer noch nicht durchgelaufen. Bei einem kleinen Datensatz mit lediglich 7000 Beobachtungen hat der svm() Befehl nur etwa 5 Sekunden gebraucht.
Jetzt bin ich auf der Suche nach einer Lösung um auch große Datenmenge zu verarbeiten. Ich würde mich sehr über Hilfe freuen.
jogo
Beiträge: 2086
Registriert: Fr Okt 07, 2016 8:25 am

Re: SVM bei großen Datensätzen

Beitrag von jogo »

Hallo Student88,

hat denn der Computer, auf dem Du rechnest mehr als 335 GB RAM? (R arbeitet grundsätzlich im RAM)
Hast Du eine Abschätzung der Laufzeit vorgenommen?
n=7000 t=5 sec
n=10000 t=...
n=14000 t=...

Gruß, Jörg
Athomas
Beiträge: 769
Registriert: Mo Feb 26, 2018 8:19 pm

Re: SVM bei großen Datensätzen

Beitrag von Athomas »

R arbeitet grundsätzlich im RAM
... oder im Swap-Speicher, wenn der RAM aufgebraucht ist - dann geht natürlich die Performance in den Keller!
Student88
Beiträge: 12
Registriert: Fr Jun 08, 2018 3:32 pm

Re: SVM bei großen Datensätzen

Beitrag von Student88 »

Der Unterschied in der Laufzeit scheint auch nicht nur an der Größe des Datensatzes zu liegen.
Bei der einen Datei waren nur 7000 Beobachtungen vorhanden und es hat 5 Sekunden gedauert und bei der anderen Datei habe ich jetzt eine Stichprobe von 7000 Beobachtungen gezogen und die Funktion läuft schon seit mehreren Minuten.
Die Datensätze unterscheiden sich darin, dass ich bei dem einen Datensatz weniger als 100 Beobachtungen hatte, die als 1 klassifiziert waren und fast 7000 0er und bei dem anderen ist es deutlich ausgeglichener.

Hat vielleicht jemand ne Ahnung davon ob es Funktionen für SVMs gibt, die deutlich weniger Rechenintesiv sind als die von mir verwendete ?


Viele Grüße
Athomas
Beiträge: 769
Registriert: Mo Feb 26, 2018 8:19 pm

Re: SVM bei großen Datensätzen

Beitrag von Athomas »

Vielleicht beschreibst Du mal Dein Problem (binäre Klassifikation?) und sagst, warum es eine SVM sein muss!?
Student88
Beiträge: 12
Registriert: Fr Jun 08, 2018 3:32 pm

Re: SVM bei großen Datensätzen

Beitrag von Student88 »

Ja, genau. Ich will eine binäre Klassifikation machen und ich wollte unterschiedliche Verfahren miteinander vergleichen. Neuronale Netze, logistische Regression, SVM, Random Forrest und eventuell noch ein zusätzliches Verfahren was ich mir überlegen müsste. Ich wollte es auch mal mit Support Vector Machine versuchen, weil die linearen SVMs von der Interpretierbarkeit der Modelle her Vorteile gegenüber Verfahren wie zum Beispiel neuronalen Netzen haben.
Antworten