Neuronales Netz in Form eines Skripts - Seite 2

 
YuraZ:
kombat:
Die Logik dieses Skripts erinnert ein wenig an einen einfachen 4v2-Encoder

das Gizmo ist natürlich interessant!


aber das, worauf das Netz trainiert wurde, ist das, was es garantiert anzeigt!


Versuchen Sie nun, ihre Eingaben mit dem zu füttern, was sie beim Training nicht gesehen hat!

Sie wird verrückt!




test_pat[0] = 1 ;
test_pat[1] = 1 ;
test_pat[2] = 0 ;
test_pat[3] = 0 ;
test_the_network() ;
Print(MathRound( ol_a[0]), " 1100 ", MathRound(ol_a[1]) ) ;

Sie antwortet 1 0

obwohl es logischerweise 1 1 antworten sollte

---

Das richtige Netz wird genau das tun - es wird 1 1 antworten, obwohl es während des Lernprozesses keine solchen Daten gesehen hat!



Versuchen Sie, dem Netz das folgende Beispiel beizubringen


OUTPUT = INPUT

30.00 = 100.00
27.50 = 87.50
25.00 = 75.00
20.00 = 50.00
15.00 = 25.00
13.75 = 18.75
12.50 = 12.5
11.25 = 6.25
10.00 = 0.00

und dann eine Eingabe von, sagen wir, 62,5, sollte eine Ausgabe von 22,50 ergeben.


MUSS = EINGABE

22.50 - 62.5

Dies ist ein einfaches Beispiel für die Skalierung von Netzen, die sich wie Erdnüsse ohne Schale verhalten



In diesem Algorithmus gibt es 4 Eingänge und 2 Ausgänge.



Sie müssen das Netz also auf diese Weise unterrichten:

______ входы_______________выходы

1______2_______3______4 _____1______2

30.00_ 100.00_ 27.50_ 87.50_ 25.00_ 75.00


Aber vorher muss man alles durch 100 teilen, um in den Bereich des Netzes 0 - 1 zu kommen.

Außerhalb dieses Bereichs lernt das Netz nicht. Nun, es reagiert nicht wie gelernt.


______ входы_______________выходы

1______2_______3______4 _____1______2

0,30___ 1,0___ 0,275_ 0,875___ 0,25___ 0,75


Beispiel für die Datenaufbereitung :

 

Eine lyrische Abschweifung... ;)

Белл с 1873 г. пытался сконструировать гармонический телеграф, добиваясь возможности передавать по одному проводу одновременно семь телеграмм (по числу нот в октаве). Он использовал семь пар гибких металлических пластинок, подобных камертону, при этом каждая пара настраивалась на свою частоту. Во время опытов 2 июня 1875 г. свободный конец одной из пластинок на передающей стороне линии приварился к контакту. Помощник Белла механик Томас Ватсон, безуспешно пытаясь устранить неисправность, чертыхался, возможно, даже используя не совсем нормативную лексику.

Als er sich in einem anderen Raum befand und die Empfängerplatten manipulierte, nahm Bell mit seinem sensiblen, geschulten Ohr den Ton auf, der durch das Kabel kam. Spontan an beiden Enden befestigt, wurde die Platte zu einer Art flexibler Membran und änderte, als sie über dem Pol des Magneten lag, ihren magnetischen Fluss. Infolgedessen veränderte sich der elektrische Strom, der in die Leitung floss, entsprechend den Luftschwingungen, die durch Watsons Gemurmel verursacht wurden. Neun Monate lang feilte Bell an seiner Erfindung. Am 14. Februar 1876 meldete er ein Patent an, das am 7. März erteilt wurde.

Drei Tage später, am 10. März 1876, übertrug das 12 Meter lange Kabel, das Balls Wohnung mit dem Labor auf dem Dachboden verband, den ersten artikulierten Satz, der in die Geschichte eingehen sollte:
"Mr. Watson, kommen Sie her. Ich brauche dich!"



- Wiki: CHIFRATOR (log. elektr.)

- CHIFRATOR

- CHIFRATOR

 

Ich sehe. Ich denke, das Netz kann als Scrambler funktionieren.

Was man lehrt, bekommt man auch. Sie wollen einen Verschlüsseler, Sie wollen einen Entschlüsseler.


Und ein Encoder ist höchstwahrscheinlich etwas Hartes, das auf einen bestimmten Fall zugeschnitten ist.

Im einfachsten Fall würde ich einen Kodierer für einen Datensatz wie diesen erstellen.

So viele Sätze, so viele Codestücke.


if ( inp1=10 && inp2=12 && inp3=23 && inp4= 100)
{
  outp1 = 0 ;
  outp2 = 0; 
}
 
sprite:

Ich verstehe. Ich denke, das Netz kann als Scrambler funktionieren.

Was man dir beibringt, bekommst du auch. Sie wollen einen Verschlüsseler, Sie wollen einen Entschlüsseler.

Sest ist lernbar, das ist sein Trick.


Und der Codierer ist entweder klar oder Fuzzy-Logik oder etwas anderes. Aber höchstwahrscheinlich etwas Starres, das auf den jeweiligen Fall zugeschnitten ist.

Im einfachsten Fall würde ich einen Encoder für einen einzelnen Datensatz auf diese Weise erstellen.

So viele Sätze, so viele Codestücke.


if ( inp1=10 && inp2=12 && inp3=23 && inp4= 100)
{
  outp1 = 0 ;
  outp2 = 0; 
}

Aber das Raster hat mehr Möglichkeiten, es kann nicht nur den Betrieb des Encoders im Besonderen simulieren.

Es kann direkt "on the fly", z.B. im EA, nach einigen Handelstagen neu trainiert werden.

Kurzum, es handelt sich um ein recht interessantes mathematisches Phänomen :), das Aufmerksamkeit verdient.


Bei diesem Algorithmus müssen nur die Eingangs- und Ausgangswerte in den Sichtbarkeitsbereich des Netzes eingegeben werden, d. h. 0 bis 1 .

Oder überarbeiten Sie den Code.

 
kombat:
Die Logik dieses Skripts erinnert mich irgendwie an einen einfachen 4v2-Encoder.

Der Encoder ist ein nicht trainierendes System.

Und das Netz wird mit diesem Skript trainiert. Und der Lernprozess wird in seiner Dynamik von Epoche zu Epoche auf dem Bildschirm dargestellt.

Sie können sehen, wie sich die Gewichte der Neuronen in jeder Schicht ändern und wie das Gitter mit dem Training immer genauer wird.

Oben sehen Sie drei Beiträge, bei denen derselbe Algorithmus gelernt hat

mit drei verschiedenen Datensätzen zu arbeiten.

Im Falle eines Encoders wären drei Encoder für jeden Datensatz erforderlich.

 

Ich bin nicht dagegen, aber ich bin noch nicht für den Einsatz neuronaler Netze im Handel...


NS ist mein Verständnis auf dem Niveau von Wellendirektoren, die mit einem Radiergummi am Reißbrett stehen

und zeichnen die aktuelle Marktsituation mit einem Bleistift in der Hand ... :)))


Obwohl Perzeptronisten cooler sind als Wave Shaper... wahrscheinlich... :)))

 
kombat:

Ich bin nicht gegen, aber auch noch nicht für den Einsatz neuronaler Netze im Handel...



Gleichfalls :) !!!

Aber der Algorithmus funktioniert und lernt :) Und dann werden wir sehen :)


Das Interesse an Netzwerken wird durch den Sieg von EAs mit Netzwerken in der Meisterschaft weiter angeheizt.

Natürlich ist es ein anderes Netz da draußen. Aber der Mann hat die Arbeit gemacht und das Ergebnis erhalten.

 
sprite:


1. Zunächst müssen Sie alles normalisieren - sowohl die Eingabe als auch die Ausgabe, d. h. in den Bereich 0 - 1 setzen

(oder Sie müssen den Netzcode für den neuen Bereich der Datenänderung neu schreiben)

2. Dieses Netz hat 4 Eingänge und 2 Ausgänge.

Welche Zahlen aus diesen Spalten und in welchen Eingang sollen eingegeben werden?


Nach dem Algorithmus

das Netz setzt jedes Vierfache der Eingangswerte 1 0 0 0

setzt ein Paar von Ausgangsdaten 1 0


Es kann mehrere solcher Datensätze geben, z. B. 4 .

Und füttern sie nach dem Gitteralgorithmus

Eingabe _Ausgabe


1 0 0 0_ 0 0

1 0 0 1_ 1 0

1 0 1 0_ 0 1

1 0 1 1_ 1 1


oder wie folgt, wenn 4 Eingänge und 3 Ausgänge


1 0 0 0_ 1 1 1

1 1 0 0_ 1 0 0

1 0 1 1_ 0 0 1

1 0 1 0_ 0 1 1

1 0 1 0_ 0 0 0

1 1 1 1_ 0 1 0

für diesen Fall den Code ändern











Es ist nicht immer notwendig zu normalisieren, wer sagt, dass ein Netzwerk nur mit 0 und 1 arbeiten KANN und SOLL?


Ich kann ein einfaches Raster mit einem Beispiel anhängen (leider habe ich im Moment keine Materialien zur Hand) - ich werde es später anhängen

wo ein einfaches NN dieses Problem ohne Datenaufbereitung mit Normalisierung löst

leider ist dies nicht die Quelle


Das Beispiel, das ich gegeben habe! Es ist, als ob es bereits normalisiert wäre.

Bedingung gibt es zwei Bereiche


1 0-100

2 10-30


ist es einfach notwendig, das Verhältnis der Position in einem Bereich zu finden - was bekanntlich zu

im Wesentlichen handelt es sich um eine Skalierung



In dem Beispiel habe ich deutlich gemacht, dass ich die Grenzen kenne.


0 = 10

...

25 = 15

..

50 = 20

...

75 = 25

...

100 = 30


das Problem ist einfach und nicht einmal allgemein für ein Netz, aber ein gutes Netz wird leicht eine Lösung finden

---



Ihre Branche ist interessant!

 
kombat:

Ich bin nicht dagegen, aber ich bin noch nicht für den Einsatz neuronaler Netze im Handel...


NS ist mein Verständnis auf dem Niveau von Wellendirektoren, die mit einem Radiergummi am Reißbrett stehen

und zeichnen die aktuelle Marktsituation mit einem Bleistift in der Hand ... :)))


Obwohl Perzeptronisten cooler sind als Wave Shaper... wahrscheinlich... :)))

Nun, das ist eine interessante Meinung


wirklich erschüttert - es wurde erschüttert - durch den Sieg von BETTER,a bei der Meisterschaft 2007