Benutzer-Werkzeuge

Webseiten-Werkzeuge


ss16:07.07.2016

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
ss16:07.07.2016 [2016/07/07 16:28]
henrikfrenzel
ss16:07.07.2016 [2016/07/07 16:46] (aktuell)
henrikfrenzel
Zeile 4: Zeile 4:
 === Ziele: === === Ziele: ===
   * knn-Algorithmus von scikit-learn für MNIST-Datensatz implementieren   * knn-Algorithmus von scikit-learn für MNIST-Datensatz implementieren
- 
 <code python> <code python>
 from __future__ import division from __future__ import division
Zeile 33: Zeile 32:
 zahl=zahl.reshape((trainingsize,​)) zahl=zahl.reshape((trainingsize,​))
 </​code>​ </​code>​
-Aus Laufzeitgründen ​haben wir den Datensatz verkleinert.+Da der Algorithmus von sklearn mit einem anderen shape arbeitet als der MNIST-Datensatz,​ musste wir den Datensatz transponieren. Außerdem ​haben wir aus Laufzeitgründen ​den Datensatz verkleinert.
  
-== Ausgabe der Genauigkeit:​ ==+=== Ausgabe der Genauigkeit: ​===
 <code python> <code python>
 clf = neighbors.KNeighborsClassifier(k) clf = neighbors.KNeighborsClassifier(k)
 clf.fit(datenkurz,​ zahl) clf.fit(datenkurz,​ zahl)
-clf.predict(test) 
 print clf.score(test,​labels) print clf.score(test,​labels)
 </​code>​ </​code>​
  
-=== Genauigkeit in Abhängigkeit von k: ===+== Genauigkeit in Abhängigkeit von k: ==
 {{ :​ss16:​printme.png |}} {{ :​ss16:​printme.png |}}
 Der Algorithmus ist bei k von 6-9 am genausten. Aus diesem Grund haben wir uns für k=8 entschieden. Der Algorithmus ist bei k von 6-9 am genausten. Aus diesem Grund haben wir uns für k=8 entschieden.
 +
 +=== Support Vector Classification(SVC):​ ===
 +<code python>
 +for i in range(2):
 + if i==0:
 + clf = neighbors.KNeighborsClassifier(8)
 + if i==1:
 + clf = svm.SVC()
 + t1=time.clock()
 + clf.fit(datenkurz,​ zahl)
 + Genauigkeit=clf.score(test,​labels)
 + t2=time.clock()
 + zeit=t2-t1
 + print
 + print "​Genauigkeit:​ ", Genauigkeit,​ "Zeit: ", zeit 
 +</​code>​
 +== Ausgabe: ==
 +<code terminal>​
 +Genauigkeit: ​ 0.957 Zeit:  12.72157 #knn
 +
 +Genauigkeit: ​ 0.955 Zeit:  24.224649 #SVC
 +</​code>​
 +Genauigkeit bei Support Vector Classification und k-nearest-Neighbor-Algorithmus ist ähnlich allerdings ist SVC deutlich langsamer als knn.
ss16/07.07.2016.1467901722.txt.gz · Zuletzt geändert: 2016/07/07 16:28 von henrikfrenzel