Neuronales Netzwerk

Du hast eine Idee für ein Projekt?
Antworten
Popkultur
User
Beiträge: 30
Registriert: Donnerstag 20. Oktober 2016, 16:46

Mittwoch 30. November 2016, 15:26

Hallo!

Ich möchte gerne ein neuronales Netzwerk programmieren, und benötige da etwas Unterstützung. Meine Schwäche liegt in Mathe und Numpy.

Ich habe im Grunde zwei Datenreihen, beides Zahlen. Ich möchte ein neuronales Netzwerk, dass Korrelation und Kausalitäten zwischen diesen zwei Datenreihen erkennt und für die eine Datenreihe eine Vorhersage macht. Eine der Datenreihen sind Zahlen über Zeit, die andere Datenreihe sind Wörter über Zeit (in Vektoren konvertiert). Als Eingabe habe ich also sehr viele Dimensionen, wenn ich das richtig verstehe.

Ganz einfaches Beispiel:
---> Zeitache
1 1 1 1 1 1 1 2 2 2 2 2 1 1 1 1 1
1 2 3 1 3 3 3 1 3 1 2 1 1 2 1 1 2 (vorher: a b c a c c c etc.)

Hier würde der Algorithmus den Anstieg von 1 auf 2 oben in Korrelation setzen zum Auftreten von 3 im Unteren. Wobei da vielleicht noch ein Zwischenschritt fehlt, der die Wörter zu Themen zusammenfasst.

Wie würdet ihr sowas angehen? Knackpunkt: Ich habe die Daten im Stream, der Algorithmus soll sich laufend aktualisieren und im Takt neue Werte berechnen für die Vorhersage. Sozusagen dauerhaftes Lernen. Dies aufgrund der Datenmenge. Hat jemand a) Mathestoff zum Lernen der Grundlagen (Lineare Algebra) b) Beispiele für solche Umsetzungen und am Wichtigsten c) Tipps zur Umsetzung oder Kritik an der Vorgehensweise?

Ich bin über LSTM und RNN gestolpert.

Anwendungsbeispiel: Zahlen zu Todesfällen von Wildvögeln in Korrelation setzen zu Nachrichtenmeldungen über Wildvögel / Vogelgrippe etc.

Vielleicht findet sich hier im Forum jemand, der sich schon mit NN beschäftigt hat, mit Dingen wie Tensorflow oder Keras.
schenkd
User
Beiträge: 2
Registriert: Dienstag 3. Januar 2017, 12:22
Wohnort: Bonn
Kontaktdaten:

Dienstag 3. Januar 2017, 12:53

Grüße dich Popkultur!

Möchtest du ein Programm schreiben, dass ein neuronales Netzwerk verwendet oder möchtest du eigene Neuronen programmieren?
Ich gehe mal davon aus, dass du auf der Suche nach einem NN bist, mit dem du dein Problem lösen kannst.

Schau dir mal in den scikit-learn docs das preceptron/multi layer preceptron an.
Es handelt sich dabei um eines der ersten NN. Das Preceptron hat zwei Inputs und ein Outputs.
Der Output konvergiert gegen 0 oder gegen 1 was bedeutet, dass du bei einem einfachen Preceptron
lediglich eine binär Klassifikation vornehmen kannst.
http://stamfordresearch.com/scikit-learn-perceptron/

Wichtig ist dabei die lineare Separierbarkeit sicherzustellen. Falls dem nicht so ist wird dein Lern-Algorithmus Over- bzw. Underfitten.
Da ich deine Problemstellung noch nicht ganz verstanden habe, kann ich dir leider auch kein Beispiel nennen für deine Problemlösung.

Korrelation und Kausalität kannst du einfacher ohne NN lösen. Schau dir mal die lib Pandas an.
Dort findest du bereits viele Methoden zur Analyse von Daten mit Python.
http://pandas.pydata.org/pandas-docs/st ... .corr.html

Kanst dir da sogar den Korrelations-Algorithmus aussuchen, je nachdem wie deine Daten beschaffen sind.
z.B. Pearson (http://www.statisticshowto.com/what-is- ... efficient/)

Viele Grüße
Antworten