Freitag, 19. April 2024, 14:36 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Lieber Besucher, herzlich willkommen bei: INVESTOX-Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

John

unregistriert

1

Sonntag, 14. September 2003, 18:43

NN Frage

Hallo Leute,

hat schon mal jemand eine einfache Addition mit einem NN versucht? Zum Beispiel: Input1 ist High, Input2 ist Low und Output soll High+Low sein.

Wenn ja, welche Einstellungen benutzt man dafür am besten für Lerntoleranz, Epochen, abs.+quadr.+proz. Abweichung, Trefferquote, Korr., t-Test und Random Walk.

Trotzdem ich annahm, dass dies lt. Theorie für ein NN doch eine einfache Aufgabe wäre, habe ich es weder mit Bund, noch für FDAX Daten geschafft.

Danke für Eure Tipps und Anregungen.

John

sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

2

Montag, 15. September 2003, 09:33

RE: NN Frage

Hallo John,

so funktioniert das nicht. Nicht immer ist ein NN die beste Lösung. Wenn Du eine Aufgabenstellung hast, die sich mit Gleichungen exakt beschreiben läßt, dann programmiere es lieber direkt.

NN's verwendet man gerade dann, wenn sich Zusammenhänge nicht in Formeln, Gleichungssystemen, Differenzialgleichungen und dergleichen beschreiben lassen (das sind z.B. komplexe nichtlineare Zusammenhänge). Nur dann ist auch der Aufwand gerechtfertigt.

Gruss
Torsten

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »sten« (15. September 2003, 09:34)


Jasper

unregistriert

3

Montag, 15. September 2003, 10:01

Ich finde die Frage von John sehr interessant und bin eigentlich der Meinung, dass ein Neuronales Netz auch und gerade solche einfachen Aufgaben lösen können muss.
Oder anders ausgedrückt: Wenn ein NN nicht einmal einfache Aufgaben lösen könnte, warum sollte es dann komplizierte Aufgaben lösen können ? Alle komplizierten Aufgaben setzen sich doch auch nur aus sehr vielen einfachen Aufgaben zusammen .....
Wenn NN nichtlineare Zusammenhänge erkennen können, müßte Ihnen doch das Erkennen linearer Zusammenhänge erst recht leichtfallen-oder ?

Mich interessiert es auch, ob NN solch einfachen Aufgaben wie die Addition von John oder die Voraussage des nächsten Wertes der Zahlenfolge:

2, 3, 5, 9, 17, lösen können und wie man es am leichtesten umsetzt.
Mir geht es da dann weniger um Aufwand / Nutzen- eher um die Verdeutlichung der Funktionsweise von NN ....

Registrierungsdatum: 2. September 2002

Beiträge: 433

Wohnort: Freiburg

4

Montag, 15. September 2003, 10:59

Hallo zusammen,

man sieht bei dieser Fragestellung wieder, wie wichtig es ist, zu schauen, wie ein NN "denkt".
Nur, wenn man die "Fragen" richtig formuliert, können auch vernünftige Antworten dabei rauskommen.

Warum funktioniert jetzt die Frage nach dem High + low nicht besonders gut?? Aktien bewegen sich normalerweise in sehr grossen Ranges, ein NN aber im Bereich zwischen -1 und 1, bzw. 0 und 1 (hängt von dem Netz ab). Das Netz muss also einen riesigen Bereich mit seinem Output abdecken.
Wie wäre die Frage also besser gewesen?? Man muss also sozusagen den Wertebereich einschränken und in unabhängig von absoluten Massen machen. Dies kann man z.B.
über die RATE OF CHANGE machen. Also wie hat sich (prozentual, sehr wichtig) das High + Low von gestern zu Heute verändert. Dies sollte dann wesentlich besser funktionieren...

Fehlermasse:
Kommen wir jetzt zu den Fehlermassen. Bei obiger Vorgehensweise ist natürlich die Trefferquote absolut untauglich. Wie soll bei einem absoluten Wert die Trefferquote bestimmt werden, welchen Grenzwert soll man da angeben???
Ähnliches gilt für die absolute Abweichung. Die ist nunmal bei einem Stand von 10 und 5000 sehr unterschiedlich. Auch noch die quadratische Abweichung hat damit ihre Probleme...

Man sieht, man sollte vorher immer erst über die richtige Fragestellung nachdenken!!!

Grüsse
Bernhard

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

5

Montag, 15. September 2003, 11:33

RE: NN Frage

Hallo,

Zitat

Trotzdem ich annahm, dass dies lt. Theorie für ein NN doch eine einfache Aufgabe wäre, habe ich es weder mit Bund, noch für FDAX Daten
geschafft.


die Frage ist ja, wie Sie "geschafft" definieren. Das Neuronale Netz wird auf jeden Fall eine Annäherung finden (nach meinem Test sogar mit guter Generalisierung - nicht vergessen, die Lerntoleranz auf 0 zu setzen!), allerdings natürlich keine vollkommene Übereinstimmung.

Wenn Sie das NN ein paar tausend Epochen lernen lassen (also Standardeinstellungen und nur Epochen erhöhen), können Sie beobachten, wie die Abweichung fortlaufend geringer wird und dann mal die Ergebniskurve im Chart anzeigen lassen (und mit gleicher Skalierung mit High+Low vergleichen). Dann können Sie noch z.B. mit einer Erhöhung der Hiddenunits experimentieren.

Viele Grüße
Andreas Knöpfel

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Investox« (15. September 2003, 11:34)


Fritz

unregistriert

6

Montag, 15. September 2003, 12:30

Hallo,
ich finde eine interessante Frage hat John da gestellt.
Also habe ich auch mal schnell einen Test gemacht. Natürlich darf man dem NN die Aufgabe nur Periodengleich stellen. D.h. Inputs sind das aktuelle high und das aktuelle Low, Output ist Summe von beiden.
Die Aufgabe des NN ist also: "Addition" zu erkennen.
Und da kann ich A.K. nur zustimmen. Doch eine Frage erhebt sich für mich.
Weshalb sind die Ergebnisse im Evaluierungszeitraum deutlich schlechter?

Gruß Fritz

Hier die Ergebnisse:
**** Output(Trainingsziel) ****
Berechnung:
high+low
Formel:
high+low

**** Verwendete Inputs ****
1.) Aktuell, Parameter: high:
Calc Daten: high;

Ref(Daten,0);

2.) Aktuell, Parameter: Low:
Calc Daten: Low;

Ref(Daten,0);


**** Architektur ****
Reduktionsschicht: - keine -
Hiddenschicht: 3 Hidden-Units

Inputrekonstruktion: Nein

Linearer Output: Nein

**** Training ****
Bewertungsmethode: Evaluierungszeitraum
Mindest-Epochen: 10000
Max.-Epochen: 10000
Lernversuche: 1
Bestes Netz speichern: Ja


**** Trainingsergebnis ****
Lernepochen: 10000

Ergebnisse im Trainingszeitraum:
Start: 30.06.92
Ende: 01.12.98
Absolute Abweichung: 17,6151
Quadratische Abweichung: 636,1868
Prozentuale Abweichung: 0,34%
Treffer: 100,00%
Korrelation: 1,00
Trivial-Test: 0,15
Random-Walk-Test: 0,00


Ergebnisse im Evaluierungszeitraum:
Start: 02.12.98
Ende: 17.02.02
Absolute Abweichung: 288,1000
Quadratische Abweichung: 214814,1000
Prozentuale Abweichung: 2,06%
Treffer: 100,00%
Korrelation: 1,00
Trivial-Test: 1,29
Random-Walk-Test: 1,24


Ergebnisse im Kontrollzeitraum:
Start: 18.02.02
Ende: 14.03.03
Absolute Abweichung: 38,0788
Quadratische Abweichung: 1957,9190
Prozentuale Abweichung: 0,57%
Treffer: 100,00%
Korrelation: 1,00
Trivial-Test: 0,13
Random-Walk-Test: 0,12

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

7

Montag, 15. September 2003, 12:43

Hallo,

Zitat

Weshalb sind die Ergebnisse im Evaluierungszeitraum deutlich schlechter?


Vielleicht ist der absolute Wertebereich des Titels (welcher?) in diesem Zeitraum deutlich höher?

Viele Grüße
Andreas Knöpfel

Fritz

unregistriert

8

Montag, 15. September 2003, 14:57

Hallo Herr Knöpfel,
es handelt sich um den Dax und es ist tatsächlich so, das die Abweichungen nicht über den gesamten Evaluierungszeitraum, sondern vor allem in 2000 extrem sind.
Die Inputs als LOG(high) bzw LOG(low) bringen zwar von den Ergebnissen der Kennzahlen eine Verbesserung, die Abweichung in 2000 wird aber nicht wesentlich besser.

Gruß Fritz

John

unregistriert

9

Montag, 15. September 2003, 15:15

Hallo zusammen,

freue mich die vielen Antworten. Auch, dass Ihr den ernsten Hintergrund dieses einfachen Beispiels erkannt habt.

Deiner Aussage, Torsten, stimme ich zu. Nur wenn sich bereits bei den Vorversuchen (hier: Addition) schon Schwierigleiten ergeben, sollte ich mein eigentliches (komplizierteres) Ziel anders angehen. Daher völlig richtig, Jasper, das wäre meine nächste Frage: "Wenn ein NN nicht einmal einfache Aufgaben (wie in der Theorie) lösen könnte, warum sollte es dann komplizierte Aufgaben lösen können ?"

Allerdings ist diese Sicht des Problems nicht konstruktiv genug. Sicherlich interessiert mich nicht das Ergebnis einfachen Addition von High und Low als Handelsansatz. Aber (H+L+C)/3 ergibt bekanntlich die Pivotlinie - einen potentiellen Intraday Umkehrpunkt. Neben den 7 Pivotlinien (Supp., Res.) gibt es noch die Fibo Retracements und einige weitere. Mein Bestreben wäre es nun, den umgekehrten Weg zu gehen. Kann mir das NN sagen, welche Linien für den kommenden Tag zu beachten sind? Auch hier wieder: Ein nur scheinbar einfaches Problem!

Dieses wäre dann, vgl. Jasper´s Frage, die kompliziertere Aufgabe. Doch dazu müßte m i r als Beispiel erstmal die einfache Addition mit einem NN gelingen.

Geschätzer Andreas Knöpfel, Sie (Du) haben natürlich genau den interessanten Punkt mit der Frage nach dem Begriff "geschafft" getroffen. Ich meinte mit "geschafft" tatsächlich ein 100%ig richtiges Ergebnis und zwar auf die zweite Kommastelle (Bund) genau, also 5-stellig. Jedes Kind aus der Grundschule kann zwei Zahlen richtig addieren, und mindestens dasselbe würde ich doch von einem NN verlangen. - Einfügen möchte ich an dieser Stelle, dass sich dies k e i n e s w e g s gegen die Software Investox richtet, im Gegenteil, ich möchte versuchen, meine (unsere) Kenntnisse - dem Potential von Investox entsprechend - zu erweitern.

Du hast völlig recht, Bernhard, auch ich kenne keine NN-Software, die nicht für Werte von -1 bis 1 ihren optimalen Lern-Bereich hat. Ich möchte aber doch stark davon ausgehen, dass Investox diese Skalierung bei der Datenaufbereitung vornimmt, indem es von allen Daten den Minimumwert abzieht, die Daten auf den Bereich -1 bis 1 skaliert, das Ergebnis wieder transformiert und den abgezogenen Wert wieder addiert.(???) Desweiteren könnte man zum Beispiel auch solche Sachen wie einen Trend mit Hilfe eines MA´s aus der Datenreihe subtrahieren.

Fast in jedem Buch über NN findet man das als trivial dargestellte Beispiel mit der XOR-Schaltung. Und eine Addition ist nun noch einfacher, z.B. beide Gewichte auf "1", mit dem Bias in Investox gibt es aber noch viele weitere Möglichkeiten, auf das richtige Ergenis zukommen. Daher hätte ich als Anwort eher vermutet, dass es relativ unwahrscheinlich ist bzw. sehr viele Epochen benötigt, bevor sich die zufällige, erste Gewichtsbelegung (mit bis zu 7 Kommastellen) gegen den exakten Wert, z.B. "1", konvergiert.

Eure bisherigen Tipps zusammenfassend, sollte ich also:
- Lerntoleranz auf NULL,
- sonst Standardeinstellungen,
- Erhöhung der Hiddenanzahl
- mehrere tausend Epochen einstellen,
- evtl. gesonderte Skalierung und
- mit keiner "keine vollkommene Übereinstimmung" rechnen!

Abgesehen von den letzten beiden Punkten hatte ich das bereits auch versucht. Der letzte Punkt hieße aber leider, dass man ein NN zum Erreichen von 4(bis 5)-stelligen Genauigkeiten nicht verwenden sollte.


Bis hierhin danke und viele erfolgreiche Trades!

John