In den meisten Beispielen, die ich bisher für neuronale Netze gesehen habe, wird das Netz zur Klassifizierung verwendet, und die Knoten werden mit einer Sigmoidfunktion transformiert. Ich möchte jedoch ein neuronales Netzwerk verwenden, um einen kontinuierlichen Realwert auszugeben (realistisch wäre die Ausgabe normalerweise im Bereich von -5 bis +5).
Meine Fragen sind:
1. Should I still scale the input features using feature scaling? What range?
2. What transformation function should I use in place of the sigmoid?
Ich bin auf der Suche , um es zunächst zu implementieren PyBrain der diese beschreibt Schichttypen .
Also denke ich, dass ich 3 Ebenen haben sollte (eine Eingabe-, versteckte und Ausgabeebene), die alle lineare Ebenen sind? Ist das ein vernünftiger Weg? Oder könnte ich alternativ die Sigmoidfunktion über den Bereich von -5 bis 5 "strecken"?
regression
neural-networks
Benutzer
quelle
quelle
Antworten:
1 . Sollte ich die Eingabe-Features dennoch mithilfe der Feature-Skalierung skalieren? Welcher Bereich?
Skalierung macht nichts schlimmer. Lesen Sie diese Antwort aus Sarles FAQ zu neuronalen Netzen: Betreff: Soll ich die Daten normalisieren / standardisieren / neu skalieren? .
2 . Welche Transformationsfunktion soll ich anstelle des Sigmas verwenden?
quelle