Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Equipment >> Industrieroboter

Neuronale Netze mit Excel trainieren: Python Multilayer Perzeptron bauen & validieren

In diesem Artikel zeigen wir, wie man Trainingsdaten in Excel generiert, ein Multilayer Perzeptron in Python trainiert und dessen Performance validiert.

Wenn Sie ein Python Neuronales Netz entwickeln wollen, sind Sie hier richtig. Bevor wir in die Excel-basierte Datenvorbereitung eintauchen, betrachten Sie den Rest der Serie unten für grundlegenden Kontext:

  1. Klassifikation mit neuronalen Netzen: Was ist der Perzeptron?
  2. Einfaches Perzeptron-Beispiel zur Datenklassifikation nutzen
  3. Einen Basic Perzeptron trainieren
  4. Einfaches Neuronales Netzwerk Training verstehen
  5. Einführung in Trainings-Theorie für Neuronale Netze
  6. Lernrate in Neuronalen Netzen verstehen
  7. Advanced Machine Learning mit dem Multilayer Perzeptron
  8. Die Sigmoid-Aktivierungsfunktion: Aktivierung in Multilayer Perzeptronen
  9. Einen Multilayer Perzeptron trainieren
  10. Trainingsformeln und Backpropagation für Multilayer Perzeptronen verstehen
  11. Neuronales Netzwerk-Architektur für Python-Implementation
  12. Einen Multilayer Perzeptron in Python erstellen
  13. Signalverarbeitung mit Neuronalen Netzen: Validierung im Neuronalnetz-Design
  14. Trainingsdaten für Neuronale Netze: Training und Validierung eines Python Neuronalen Netzes

Was sind Trainingsdaten?

In realen Anwendungen bestehen Trainingsamples aus gemessenen Inputs, gepaart mit bekannten Targets, die ein Neuronales Netz befähigen, eine konsistente Input-Output-Abbildung zu lernen. Angenommen, Sie wollen ein Netz, das die Essqualität einer Tomate basierend auf Farbe, Form und Dichte vorhersagt. Indem Sie tausende Tomaten sammeln, physische Attribute aufzeichnen, jede verkosten und Ergebnisse in eine Tabelle kompilieren, erstellen Sie den Datensatz, den das Netz nutzt, um die Beziehung zwischen Attributen und Qualität zu lernen.

Jede Zeile repräsentiert ein Trainingsample mit drei Input-Spalten (Farbe, Form, Dichte) und einer einzelnen Target-Output-Spalte.

Neuronale Netze mit Excel trainieren: Python Multilayer Perzeptron bauen & validieren
 

Während des Trainings identifiziert das Neuronale Netz das zugrundeliegende Muster – falls existent – zwischen den drei Input-Werten und dem Output-Wert.

Trainingsdaten quantifizieren

Alle Inputs und Outputs müssen numerisch sein. Strings wie „pflaumenförmig“ oder „mundwässernd“ können nicht direkt ins Netz eingespeist werden. Quantisierung konvertiert qualitative Deskriptoren in numerische Skalen. Beispielsweise könnte Form von –1 (perfekte Kugel) bis +1 (extrem langgestreckt) kodiert werden. Essqualität könnte auf einer Fünf-Punkt-Skala bewertet und dann One-Hot-encodiert in einen fünf-elementigen Output-Vektor.

Das folgende Diagramm illustriert One-Hot-Encoding für eine Fünf-Klassen-Klassifikation.

Neuronale Netze mit Excel trainieren: Python Multilayer Perzeptron bauen & validieren
 

One-Hot-Encoding harmoniert gut mit logistisch-sigmoider Aktivierung, die Werte nahe 0 oder 1 außerhalb einer schmalen Transitionszone produziert. Ein einzelner Output-Node mit Target-Werten 0–4 würde das Netz zu Extremen biasen und zu nonsensischen Vorhersagen führen.

Neuronale Netze mit Excel trainieren: Python Multilayer Perzeptron bauen & validieren

Trainingsdatensatz erstellen

Das in Teil 12 referenzierte Python Neuronale Netz importiert Samples aus einer Excel-Datei. Die hier verwendeten Daten sind wie folgt angeordnet:

Neuronale Netze mit Excel trainieren: Python Multilayer Perzeptron bauen & validieren
 

Da unsere Perzeptron-Implementation nur einen einzelnen Output-Node unterstützt, führen wir binäre Klassifikation durch. Input-Werte sind Zufallszahlen zwischen –5 und +5, generiert mit dieser Excel-Formel:

 =RANDBETWEEN(-10, 10)/2 

Der Output leitet sich aus folgender Regel ab:

 =IF(AND(A2>0, B2>0, C2<0), 1, 0) 

Das Netz lernt also, dass ein Sample Label 1 erhält nur wenn input_0 > 0, input_1 > 0 und input_2 < 0; andernfalls 0.

Für dieses simple Problem reichen 5.000 zufällig generierte Samples und eine einzelne Epoche für hohe Klassifikationsgenauigkeit.

Netzwerk trainieren

Konfigurieren Sie das Netz mit Input-Dimensionalität drei (I_dim = 3), vier Hidden Nodes (H_dim = 4) und Lernrate 0,1 (LR = 0.1). Ersetzen Sie die training_data = pandas.read_excel(...) Zeile mit dem Pfad zu Ihrem Spreadsheet. Falls Sie Excel fehlt, kann Pandas auch ODS-Dateien lesen.

Das Trainingsskript auf einem 2,5 GHz Windows Laptop mit 5.000 Samples läuft in wenigen Sekunden. Wenn Sie das vollständige MLP_v1.py Skript nutzen, startet Validierung automatisch nach dem Training.

Netzwerk validieren

Validierung erfordert ein zweites Spreadsheet, generiert mit denselben Formeln. Importieren Sie diese Daten analog zu den Trainingsdaten:

Neuronale Netze mit Excel trainieren: Python Multilayer Perzeptron bauen & validieren
 

Der folgende Snippet demonstriert eine einfache Validierungsroutine:

 # Feed-Forward für Post-Aktivationswert
output = sigmoid(np.dot(W_out, hidden_output))
# Threshold für binäre Vorhersage anwenden
prediction = 1 if output > 0.5 else 0
# Mit Target vergleichen und korrekte Vorhersagen akkumulieren 

Klassifikationsgenauigkeit berechnet sich durch Division korrekter Vorhersagen durch Gesamtzahl Validierungssamples.

Wird np.random.seed(1) weggelassen, variiert Gewichtsinitialisierung zwischen Runs, was Genauigkeit fluktuieren lässt. Über 15 Runs mit spezifizierten Parametern (5.000 Trainings, 1.000 Validierungssamples) lag Genauigkeit zwischen 88,5% und 98,1%, im Mittel 94,4%.

Fazit

Wir erforschten Schlüsselkonzepte hinter Neuronalnetz-Trainingsdaten, implementierten ein Python Multilayer Perzeptron und evaluierten dessen Performance mit Excel-generierten Datensätzen. Die Serie ist weit fortgeschritten, und viele weitere fortgeschrittene Themen erwarten in kommenden Posts.


Industrieroboter

  1. Aktuelles Datum und Uhrzeit in Python abrufen: Praktischer Leitfaden
  2. Innatera stellt erste neuromorphe KI-Chips für ultra-energiesparende Edge-Anwendungen vor
  3. Kostenloser VHDL-Simulator & Editor: Ein Leitfaden für Studierende
  4. Lokale Minima im neuronalen Netzwerk-Training: Mythos oder Realität?
  5. Hidden Layer Größe optimieren für höhere Neuronale Netzwerk Genauigkeit
  6. Die richtige Anzahl Hidden Layers und Nodes im Neuronalen Netz wählen
  7. 5Gs Top 5 Herausforderungen: Spektrum, Kosten, Abdeckung, Geräte, Sicherheit navigieren
  8. Deploying und Managing Wireless Sensor Networks im Enterprise
  9. BECKER Vakuumpumpen-Schulung: Expertenwissen für CNC-Profis
  10. Roboterschweiß-Training beschleunigen: Zeit sparen, Effizienz steigern