Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03257.jsonl.gz/155

- Mehrere Schichten von Neuronen:
- eine Ausgangsschicht (die oberste Ebene)
- eine Zwischenschicht (die versteckte Ebene)
- eine Eingangsschicht (die unterste Ebene)
- Deep Learning: Statt nur einer versteckten Schicht gibt es mehrere, möglicherweise sogar hundert solcher versteckten Zwischenschichten. Also:
- Ausgangsebene
- Versteckte Zwischenebene
- Versteckte Zwischenebene
- Versteckte Zwischenebene
- Versteckte Zwischenebene
- Versteckte Zwischenebene
- Versteckte Zwischenebene
- Eingangsebene
Beispiel Bilderkennung:
- Die unterste Schicht kümmert sich darum, Pixel zu erkennen. Bunte Pixel; da ist was Rotes, hier ist was Schwarzes.
- Die Schicht darüber verbindet Pixel, die zusammenhängen. Zwei schwarze Pixel, die zusammenhängen, ergeben vielleicht einen Strich.
- Eine weitere Schicht darüber trainiert auf den zusammengesetzten Pixeln, auf den Strichen und setzt daraus wieder etwas Komplexeres zusammen.
- Jede weitere Schicht lernt kompliziertere Dinge. Auf der obersten Neuronenschicht erkenne ich dann ein Gesicht oder ein Nummernschild.
Klassisches Machine Learning bisher:
- Es mussten Merkmale definiert werden (erkenne ein Gesicht, erkenne eine Farbe).
Neuronale Netzwerke:
- Erkennen Merkmale selbständig von sich aus.
- Durch die vielen Zwischenschichten bilden sich verschiedene Strukturen von Merkmalen;
-
- Pixel bilden Striche bilden Formen bilden ein Gesicht;
- Buchstaben bilden Wörter bilden Wortarten (Adjektiv, Nomen) bilden Sätze bilden Bedeutungen.
-
Beispiel: Text lernen
- Das Programm word2vec von Google rennt über einen riesigen Text (z.B. die gesamte Wikipedia), guckt sich 5-8 Wörtern gleichzeitig an und trainiert damit ein neuronales Netzwerk.
- Das neuronale Netz kennt weder die Sprache noch um was es da geht. word2vec kennt nur die Textinformation, und allein durch das mehrmalige Anschauen hat es Strukturen gelernt und Regeln daraus abgeleitet. Basierend auf dem Grundsatz: Die Regeln der deutschen Sprache sind endlich. Nach einer gewissen Zeit lernen sind die Strukturen, Grammatik und Semantik im neuronalen Netz verankert.
- Nach ein paar Stunden oder Tagen kann man komplexe Fragen stellen wie „Berlin verhält sich zu Deutschland wie Paris zu…?“ und dann kann es dir „Frankreich“ beantworten.
- Das funktioniert für jede beliebige Sprache. Wirf der Maschine genug Text hin, und nach zwei Tagen hat das neuronale Netz die Strukturinformation daraus gelernt und kann Fragen beantworten.
Der vereinfachte Lernprozess:
- Die Optimierungsvorschrift ist: Gehe mit der festen Wortanzahl (=Sliding Window, diese 5-8 Wörter pro Mal) über den Text. Dabei wird das Programm irgendwann sehen, dass Frankreich und Paris oft nebeneinander vorkommen.
- Das trainiert man mit einem positiven Belohnungsschritt: „Das hier ist ein echter Satz.“
- Dann nimmt man diese Sequenz, ersetzt ein Wort durch Müll und sagt: „Das hier ist kein guter Satz.“
- Diese einfachste Vorschrift bewirkt, dass sich auf den jeweiligen Neuronenschichten automatisch Wörter, Grammatik und Bedeutungen bilden.
- automatisch Wörter, Grammatik und Bedeutungen bilden.
Der Lernprozess (detailliert):
- Das Programm verwandelt Wörter in Vektoren. Das heisst:
- Du gehst durch den gesamten Text durch, zählst jedes Wort, hebst das auf und machst ein Wörterbuch daraus.
- Man will natürlich nicht jedesmal das Wort „Haus“ ins Wörterbuch aufnehmen, sondern es reicht, es einmal aufzunehmen und dranschreibt, wie oft es vorkommt.
- Jetzt geht man durch diese Sequenz von Wörtern, die gerade in diesem Sliding Window sind, und sagt: Dieses Ding besteht aus: [Erstes Wort, guck im Wörterbuch nach: Dieses Wort ist im Wörterbuch auf Position 1300], [zweites Wort, guck im Wörterbuch nach: Position 15934].
- Jetzt hat man statt 5-8 Wörter Gruppen von Zahlen. Und Zahlen sind für Computer einfacher.
- Diese Zahlen (sog. Vektoren) wirft man jetzt dem neuronalen Netz zum Frass vor. Die Eingangsneuronen kriegen die Zahlen geliefert.
- Jedes Neuron hat Verbindungen mit anderen Neuronen.
- Die Anzahl der Verbindungen ist fix.
- Jede dieser Verbindung hat ein Gewicht; einen Zahlenwert.
- Oben gibt es ein Endneuron, dass dafür zuständig ist zu sagen: Das ist ein echter Satz,
- und es gibt ein zweites Neuron, das sagt: Das ist kein echter Satz.
- Unten liegen die Werte, und oben weiss ich: Entweder feuert das linke oder das rechte Neuron, das was ich haben möchte.
- Dann lässt man von oben das Netzwerk zurückrechnen. Das wird Backpropagation genannt.
- Das geht jedesmal in ganz kleinen Schrittchen.
- Man justiert jeden Wert nur ein kleines bisschen, dafür macht man das ganz oft.
- Man lernt ein paar Tausend mal in ganz kleinen Schritten.
- Durch die Backpropagation verändert sich die Vernetzung zwischen den Neuronen, weil sie merken: Über diese Verkettung erziele ich mehr positive Signale, deswegen verstärke ich jetzt diesen Bereich (=die Gewichtung der Verbindung wird erhöht).
- Irgendwann ist das Netzwerk so stabil, dass sich die Verbindungen kaum noch verändert, egal wie oft man den Text noch durch das Netzwerk lässt.
- Dann ist das Netzwerk ausgelernt und hat die Struktur erfasst.
- Auf der untersten Ebene fallen die Worte rein.
- Auf der obersten Ebene „echter Satz“ oder „nicht echter Satz“.
- Dazwischen entstehen auf den verschiedenen Neuronenebenen die verschiedenen Teilaspekte der Grammatik – völlig automatisch.
- Jede Ebene kann eine andere Fragestellung beantworten (=ist das ein Adjektiv, was ist das überhaupt? Gibt es das auch auf Chinesisch oder wie heisst das dort?).
Menschliche Sprache genügt bestimmten Regeln, diese Regeln formen sich in ihrer Struktur aus. Wenn ich ein Netzwerk trainiere auf die Struktur einer Sprache, und das verändert sich irgendwann nicht mehr, dann hat es offensichtlich die Struktur komplett erfasst, und dann finde ich auf bestimmten Ebenen dieses Netzwerks meine Grammatik wieder heraus.
- Die Kunst besteht darin, zu wissen, wie viele Neuronenschichten und Anzahl Eingangsneuronen es braucht, um mein Problem zu lösen.
Google hat ein neuronales Netzwerk mit allen Youtube-Videos trainiert. Das Netz soll Katzen in einem Video erkennen. Hier ist die Visualisation durch die einzelnen Neuronenschichten, angefangen von der untersten Schicht (Bildrauschen) über die nächste (Striche und Linien) bis hin zu Augen und Gesichtern:
- Man muss eine Sache so oft sehen, bis man sie verstanden hat.
- Das „Sehen“ ist das Datenset (Millionen von Varianten von Bildern, Zahlen, Formen).
- Das „Verstehen“ sind die neuronalen Verbindungen.
- So funktioniert DeepL.
- Das neuronale Netz hat nur Strukturinformationen gelernt, es weiss selber gar nicht, was es da gelernt hat. Es kann gute Antworten geben, fängt aber nicht plötzlich an, selber zu denken.
- Diese Strukturinformation, das Extrakt aus dem tagelangen Lernen und Trainieren von Millionen von Datensätzen ist das Einzige, was ich brauche, um kluge Antworten auf meine Fragen zu erhalten. Es sind die gespeicherten Neuronenverbindungen, und die sind ein paar wenige Megabytes gross und passen auf jedes Telefon.
Was bedeutet das für uns?
Sprache analysieren und verstehen, Nummernschilder und Gesichter erkennen, die optimale Route finden, Logikprobleme lösen. Merkt ihr was? Das sind alles Bereiche der Linken Gehirnhälfte.
Die Rechte Gehirnhälfte – Persönlichkeit, Musik, Kunst, Inspiration, Kreativität – das wird eine Maschine niemals modellieren können. Sie kann es bestenfalls nachahmen, basierend auf vorhandenen Trainingsdaten. Man kann mit neuronalen Netzen ein Gehirn bauen, dass aus allen Erkenntnissen der Welt das beste Gehirn der Welt wird und die schnellste und optimalste Lösung findet und andere Gehirne modellieren kann, die noch besser sind – aber Inspiration wird es niemals bekommen. Die göttliche Spontanität ist unberechenbar. Das ist unser Trumpf.
Verschlüsselung besiegt neuronale Netzwerke
Mit neuronalen Netzwerken stehen den Geheimdiensten mächtige Abfrage- und Modellierungswerkzeuge zur Verfügung. Trotzdem: Mit verschlüsselten Daten können sie nach wie vor nichts anfangen, auch nicht mit neuronalen Netzen. Und jetzt verstehe ich auch, wieso.
Eine Maschine erzeugt immer nur Bilder aus einem Eingangssignal (oben im Video das Bildrauschen). Verschlüsselter Text als Eingangssignal erzeugt immer wieder andere Bilder, weil das Rauschen immer wieder ein anderes ist. Eine gute Verschlüsselung garantiert mir eine hohe Entropie, und dass ich in keinem Fall Rückschlüsse über den Originaltext treffen kann.
Hier ist 2x der gleiche Text verschlüsselt:
- a) KnkHYNA7A32VCG3Oht8gU2yi1Knp68Eoq/ToP3Ph4/xZ/dUQ+bNwqXohRauABOWFIxANQCtVZxQ==
- b) t5r8N05wwMyBd4AjzDEtA9Uh5BUisFb55azh26gfKHyR3nYmAf6b8D9KNzBV8Toc3f82ezGDDPw==
Die einzige Regel, die es daraus abzulesen gibt, ist: Es gibt keine Regel daraus abzuleiten, selbst der gleiche Klartext sieht verschlüsselt immer wieder anders aus. Das besiegt neuronale Netzwerke.
Verschlüsselung ist mächtiger, als die Leute da draussen annehmen.
Anders verhält es sich mit unverschlüsselten Daten
Jedesmal, wenn du ein Gesicht bei Facebook markierst, mit Google mailst, das selbstfahrende Auto aus der Garage holst, in eine Kamera lächelst, „Ok Google“ und „Hey Siri“ in ein Telefon brüllst, hinterlässt du eine Datenspur, die ein neuronales Netz trainiert, welches dann für Zwecke eingesetzt wird, die wir jetzt noch nicht sehen. Eine Maschine kann dann Fragen beantworten, wie sie mit dir umgehen soll, wie dein Tagesablauf aussieht und ob du nächstens eine Gefahr darstellen wirst.
Gib neuronalen Netzen keine Trainingsdaten.
Quelle: scratchbook.ch
Originaldatei: CRE208 Neuronale Netze