Diskussion zum Artikel "Tiefe Neuronale Netzwerke (Teil VI). Gruppen von Klassifikatoren von Neuronalen Netzen: Bagging" - Seite 2

 
elibrarius:

Version

Funktioniert. Sie gibt bei jedem Durchlauf die gleichen Netzgewichte an. Ich habe das zweite Netz verglichen. Ich habe env$Ens[2] ausgegeben und dann per Plugin in notepad++ verglichen.

Es funktionierte nicht mit Multithreading:

Fehler in setMKLthreads(2) :can't find function "setMKLthreads"

Was ist diese Funktion? Sie ist nicht im Code der Artikel 4 und 6 enthalten. Wie kann man sie verbinden?

PS: Es wäre bequemer gewesen, wenn Sie die R-Sitzung mit allen Funktionen und Quelldaten gepostet hätten.

Ich habe Zitate, alle Funktionen und ausführbare Skripte gepostet. Nacheinander ausführen durch Kopieren entweder aus dem Artikel oder aus GIThub.

Sie können die Funktion "setMKLthreads" sehen

 
Ich habe vergessen, Sie zu fragen, ob Sie MRO 3.4.3 installiert haben?
 
Vladimir Perervenko:
Ich habe vergessen, Sie zu fragen, ob Sie MRO 3.4.3 installiert haben?
Ich habe (R-3.4.3 für Windows) installiert von hier https://cloud.r-project.org/
 
elibrarius:
Ich habe (R-3.4.3 für Windows) von hier https://cloud.r-project.org/ installiert.

Kommentieren Sie einfach die Zeilen mit der Einstellung der Fadenzahl aus. Die Intel MKL-Bibliothek ist nicht im Lieferumfang von purem R enthalten.

 
Vladimir Perervenko:

Kommentieren Sie einfach die Zeilen aus, die die Anzahl der Threads festlegen. Die Intel MKL-Bibliothek funktioniert nicht mit reinem R.

Genau das habe ich getan. Ich habe die Optimierung zweimal ausgeführt, um das zu überprüfen, und erhielt das gleiche Ergebnis

numFeature r nh fact Value
1 11 8 19 4 0.768
2 8 8 18 4 0.754
3 11 8 15 4 0.753
4 11 9 13 8 0.750
5 12 8 15 4 0.750
6 9 8 39 4 0.748
7 10 8 6 3 0.745
8 11 8 20 6 0.743
9 10 8 14 3 0.743
10 8 9 40 7 0,743

Ein bisschen schlechter als bei Ihnen, aber ich denke, es ist einfach eine weniger erfolgreiche Kombination der HGC.

 
Vladimir Perervenko:

Die Intel MKL-Bibliothek funktioniert nicht mit purem R.

Ich wollte MKL herunterladen. Ich wurde aufgefordert, mich zu registrieren, was ich auch tat, woraufhin folgende Meldung angezeigt wurde:
Vielen Dank für die Registrierung für Intel® Performance Libraries.
Bitte prüfen Sie Ihre E-Mail auf Anweisungen zum Herunterladen Ihres Produkts.Beachten Sie, dass dies bis zu zwei Arbeitstage dauern kann.

Nach 20 Minuten habe ich immer noch keinen Download-Link erhalten. Meinen die das mit den 2 Tagen ernst?

 
elibrarius:

also habe ich es getan. Ich habe die Optimierung zweimal ausgeführt, um das zu überprüfen, und das gleiche Ergebnis erhalten

numFeature r nh fact Value
1 11 8 19 4 4 0.768
2 8 8 18 4 0.754
3 11 8 15 4 0.753
4 11 9 13 8 0.750
5 12 8 15 4 0.750
6 9 8 39 4 0.748
7 10 8 6 3 0.745
8 11 8 20 6 0.743
9 10 8 14 3 0.743
10 8 9 40 7 0,743

Ein bisschen schlechter als bei Ihnen, aber ich denke, es ist einfach eine weniger erfolgreiche Kombination von DSTs.

Ich verwende immer das doRNG-Paket, wenn ich foreach verwende (sehr stabile DST).

Dies sollte nicht der Fall sein. Jeder neue Durchlauf der Optimierung sollte andere Ergebnisse liefern!

 

Ich habe die Optimierung jetzt durchgeführt und erhalte

 Best Parameters Found: 
Round = 18      numFeature = 8.0000     r = 1.0000      nh = 34.0000    fact = 10.0000  Value = 0.7700 
> evalq({
+   OPT_Res %$% History %>% dplyr::arrange(desc(Value)) %>% head(10) %>%
+     dplyr::select(-Round) -> best.init
+   best.init
+ }, env)
   numFeature  r nh fact Value
1           8  1 34   10 0.770
2           7  1 15   10 0.766
3          11  2 15   10 0.765
4           9  1 36   10 0.765
5           3  7 13    5 0.761
6           7  8  8   10 0.748
7          11  6 29   10 0.748
8           3 10 49    1 0.748
9           7  7 23   10 0.746
10          3  1  1   10 0.745

Wenn Sie die Optimierung mit den resultierenden Top-10-Parametern durchführen, erhalten Sie weitere Optionen. Zum Beispiel so

#---Optim  Ensemble-----
evalq(
  OPT_Res <- BayesianOptimization(fitnes, bounds = bonds,
                                  init_grid_dt = best.init, init_points = 10, 
                                  n_iter = 20, acq = "ucb", kappa = 2.576, 
                                  eps = 0.0, verbose = TRUE)
  , envir = env)

Sie können so oft fortfahren, wie Sie wollen.

Viel Glück

 
Vladimir Perervenko:

Ich verwende immer das doRNG-Paket, wenn ich foreach verwende (sehr stabiles GCH).

Dies sollte nicht der Fall sein. Jeder neue Durchlauf der Optimierung sollte andere Ergebnisse liefern!

Ich habe Ihre Variante 2 mal ausprobiert - ich habe unterschiedliche Ergebnisse erhalten.
Es scheint mir, dass die Reproduzierbarkeit/Wiederholbarkeit mit Neustarts noch besser ist.

 
elibrarius:

Ich habe Ihre Variante 2 Mal ausprobiert - ich habe unterschiedliche Ergebnisse erhalten.
Es scheint mir, dass die Reproduzierbarkeit/Wiederholbarkeit mit Neustarts noch besser ist.

Spüren Sie jetzt den Unterschied? Lesen Sie einfach den Artikel aufmerksam. Ich habe diese Eigenschaft der Bayes'schen Optimierung besonders hervorgehoben.

Viel Glück bei Ihren Experimenten