machine-learning

___ tag123machineelearning ___ Implementierungsfragen zu Algorithmen des maschinellen Lernens. Allgemeine Fragen zum maschinellen Lernen sollten in ihren jeweiligen Communities veröffentlicht werden. ___ qstnhdr ___ Ein mehrschichtiges Perzeptron-Netzwerk verstehen ___ tag123neuralnetwork ___ Netzwerkstruktur inspiriert von vereinfachten Modellen biologischer Neuronen (Gehirnzellen). Neuronale Netze werden trainiert, um durch überwachte und unbeaufsichtigte Techniken zu "lernen" und können verwendet werden, um Optimierungsprobleme, Approximationsprobleme, Klassifikationsmuster und Kombinationen davon zu lösen. ___ qstntxt ___

Ich versuche zu verstehen, wie man einen Multilayer trainiert; Ich habe jedoch einige Schwierigkeiten herauszufinden, wie man eine geeignete Netzwerkarchitektur - d. h. die Anzahl der Knoten / Neuronen in jeder Schicht des Netzwerks - ermittelt.

Für eine bestimmte Aufgabe habe ich vier Eingabequellen, die jeweils einen von drei Zuständen eingeben können. Ich denke, das würde bedeuten, dass vier Input-Neuronen entweder 0, 1 oder 2 feuern würden, aber so weit ich es gesagt habe, sollte die Eingabe binär gehalten werden?

Außerdem habe ich Probleme bei der Auswahl der Neuronenmenge in der versteckten Schicht. Alle Kommentare wären großartig.

Danke.

    
___ answer2708040 ___

Die Bestimmung einer akzeptablen Netzwerkstruktur für ein mehrschichtiges Perzeptron ist eigentlich unkompliziert.

  1. Eingabeebene : Wie viele Features / Dimensionen sind enthalten? Ihre Daten - dh wie viele Spalten in jede Datenzeile. Fügen Sie einen hinzu (für der Bias - Knoten) und das ist die Anzahl der Knoten für die erste (Eingabe Ebene).

  2. Ausgabeschicht : Wird Ihr MLP in 'Maschine' ausgeführt? Modus oder Regressionsmodus ('Regression' hier in der maschinelles Lernen statt statistischer Sinn) - dh tut mein MLP Gibt eine Klassenbezeichnung oder eine vorhergesagte zurück Wert? Wenn letzteres, dann dein Die Ausgabeschicht hat einen einzelnen Knoten. Ob Erstere, dann Ihre Ausgabeschicht hat die gleiche Anzahl von Knoten wie Klassenlabels. Zum Beispiel, wenn der Ergebnis, das Sie wollen, ist jedes zu beschriften Instanz als entweder "Betrug" oder "nicht Betrug ", das sind zwei Klassenlabels, Daher zwei Knoten in Ihrer Ausgabe Ebene.

  3. Ausgeblendete Ebene (n) : Zwischen diesen beiden (Eingabe und Output) sind offensichtlich die versteckten Lagen. Beginnen Sie immer mit einem einzigen versteckte Ebene. Also wie viele Knoten? Hier ist eine Faustregel: Legen Sie die (ursprüngliche) Größe der ausgeblendeten Ebene auf eine bestimmte Anzahl von Knoten fest, die nur geringfügig größer als die Anzahl der Knoten in der Eingabeebene ist. Verglichen mit weniger Knoten als der Eingabeschicht hilft diese Überkapazität, Ihre numerische Optimierungsroutine (z. B. Gradientenabstieg) zu konvergieren.

Beginnen Sie zusammen mit drei Schichten für Ihre Netzwerkarchitektur; Die Größen der ersten (Eingabe) und letzten (Ausgabe werden durch Ihre Daten bzw. durch Ihren Modellentwurf festgelegt. Eine verborgene Ebene, die gerade etwas größer als die Eingabeebene ist, ist fast immer ein gutes Design, um zu beginnen.

In Ihrem Fall wäre eine geeignete Netzwerkstruktur:

Eingabeschicht : 5 Knoten - & gt; versteckte Ebene : 7 Knoten - & gt; Ausgabeschicht : 3 Knoten

    
___ answer2747813 ___

Ich stimme Dougs Antwort oben in einigen Punkten nicht zu.

Sie haben 4 diskrete (3-Wege kategoriale) Eingänge. Sie sollten (sofern Sie keinen starken Grund dafür haben) dies als 12 Binäreingänge darstellen, die eine 1-aus-3-Codierung für jeden Ihrer vier konzeptionellen Eingänge verwenden. Wenn Sie also [2,0,1,1] eingeben, sollte Ihr Netzwerk Folgendes erhalten: 0 0 1 1 0 0 0 1 0 0 1 0 Wenn Ihre Netzwerkimplementierung einen manuellen Bias erfordert, sollten Sie ein weiteres Always-On-Bit für den Bias hinzufügen, aber die meisten sinnvollen neuronalen Netzimplementierungen erfordern dies nicht.

Probiere ein paar verschiedene Zahlen von versteckten Einheiten aus. Sie müssen sich nicht auf eine versteckte Layer-Größe beschränken, die kleiner ist als die Eingabe-Layer-Größe, aber wenn Sie es größer machen, sollten Sie darauf achten, dass Sie Ihre Gewichtungen normalisieren, vielleicht mit L2- oder L1-Gewicht-Verfall und vielleicht sogar früher Stopps im Training (stoppe das Training, wenn dein Fehler in einem ausgehaltenen Validierungssatz aufhört sich zu verbessern).

    
___ tag123deeplearning ___ Deep Learning ist ein Bereich des maschinellen Lernens, dessen Ziel es ist, komplexe Funktionen mit speziellen neuronalen Netzwerkarchitekturen zu erlernen, die "tief" sind (aus vielen Schichten bestehen). Dieses Tag sollte für Fragen zur Implementierung von Deep-Learning-Architekturen verwendet werden. Allgemeine Fragen zum maschinellen Lernen sollten mit "maschinelles Lernen" gekennzeichnet werden. Eine Markierung für die relevante Softwarebibliothek (z. B. "keras" oder "tensorflow") ist hilfreich. ___
1
Antwort

Was bedeutet Korrelationskoeffizient tatsächlich [geschlossen]

Was bedeutet Korrelationskoeffizient intuitiv? Wenn ich eine Reihe von X und dann eine Reihe von Y habe, und wenn ich diese beiden in Weka mehrschichtiges Perzeptron gebe, das Y als Ausgabe und X als Eingabe behandelt, erhalte ich einen Korrelat...
03.10.2011, 06:46
1
Antwort

Log-Verlust-Ausgabe ist größer als 1

Ich habe mehrere Modelle für die binäre Klassifizierung von Dokumenten im Bereich Betrug vorbereitet. Ich habe den Log-Verlust für alle Modelle berechnet. Ich dachte, es würde im Wesentlichen die Zuverlässigkeit der Vorhersagen messen und der Lo...
26.01.2016, 12:25
1
Antwort

Erste Schritte mit neuronalen Netzen (ANN)?

Ich war mit einer Menge C-Programmierung und RT-Linux beschäftigt, jetzt möchte ich etwas Künstliches Neuronales Networking machen, ABER: Wie fange ich an? Ich bin auch sehr an Evolutionären Algorithmen (Lernalgorithmen) und Künstlicher Intel...
09.01.2012, 17:32
4
Antworten

Wie werden Rasterwerte von GridSearchCV grafisch dargestellt?

Ich bin auf der Suche nach einer Möglichkeit, grid_scores_ von GridSearchCV in sklearn zu zeichnen. In diesem Beispiel versuche ich, nach den besten Gamma- und C-Parametern für einen SVR-Algorithmus zu suchen. Mein Code sieht folgendermaßen aus:...
11.05.2016, 11:41
3
Antworten

tflearn / Tensorflow lernt nicht xor

Der folgende Code wurde geschrieben, um die XOR-Funktion zu lernen, aber ungefähr die Hälfte der Zeit lernt das Netzwerk nicht und der Verlust nach jeder Epoche bleibt derselbe. %Vor% Manchmal bekomme ich korrekte Ergebnisse wie folgt: %Vo...
11.05.2016, 14:52
2
Antworten

Fehler im Python-Skript "Erwartetes 2D-Array, stattdessen 1D-Array:"?

Ich folge diesem Tutorial, um diese ML-Vorhersage zu machen: Link-Lernprogramm %Vor% Ich benutze Python 3.6 und erhalte den Fehler "Erwartetes 2D-Array, habe stattdessen ein 1D-Array:" Ich denke, das Skript ist für ältere Versionen, abe...
07.08.2017, 19:02
2
Antworten

Wie repariere ich MatMul Op hat den Typ float64, der nicht zum Typ passt float32 TypeError?

Ich versuche, Nueral Network-Gewichtungen in einer Datei zu speichern und dann diese Wertigkeiten wiederherzustellen, indem ich das Netzwerk initialisiere anstelle einer zufälligen Initialisierung. Mein Code funktioniert gut mit zufälliger Initi...
24.03.2016, 22:12
1
Antwort

Beschreiben Sie den gesamten Datenrahmen (alle Spalten) mit Scikit-learn (sklearn), ohne über die Spalten zu iterieren

Ich möchte alle Spalten auf einem Pandas DataFrame imputieren ... die einzige Möglichkeit, dies zu tun, ist Spalte für Spalte, wie unten gezeigt ... Gibt es eine Operation, bei der ich den gesamten DataFrame unterstellen kann, ohne die Spalt...
11.11.2015, 22:12
1
Antwort

Verwenden Sie Azure Machine Learning, um ein Symbol in einem Bild zu erkennen

Vor 4 Jahren habe ich diese Frage gestellt und ein paar Antworten bekommen, die leider außerhalb meiner Fähigkeiten lagen. Ich habe gerade an einer Build-Tour-Konferenz teilgenommen, wo sie über maschinelles Lernen sprachen, und das brachte mi...
16.06.2015, 05:58
3
Antworten

CPU vs GPU für (Conv) Neuronale Netze Berechnung [geschlossen]

Ich bin ein Student in KI, der in diesem Jahr viel mit pylearn und Theano arbeiten wird (ich könnte auch Fackel und Caffe ausprobieren), um neurale Netze zu implementieren, und ich bin dabei, mir einen Laptop zu kaufen. Ich würde gerne Ihre Hilf...
06.09.2015, 18:16