Neuronale Netze, grundlegende Funktionsprinzipien, Diversität und Topologie

    Neuronale Netze haben die Bilderkennung revolutioniert, werden aber aufgrund der nicht offensichtlichen Interpretierbarkeit des Funktionsprinzips in Bereichen wie Medizin und Risikobewertung nicht verwendet. Erfordert eine visuelle Darstellung des Netzwerks, wodurch es nicht zu einer Black Box wird, sondern zumindest "durchscheinend". Cristopher Olah zeigte in „Neuronale Netzwerke, Mannigfaltigkeiten und Topologie“ die Prinzipien des neuronalen Netzwerks anschaulich auf und verband sie mit der mathematischen Theorie der Topologie und Diversität, die als Grundlage für diesen Artikel diente. Um den Betrieb eines neuronalen Netzwerks zu demonstrieren, werden niedrigdimensionale tiefe neuronale Netzwerke verwendet.

    Das Verhalten tiefer neuronaler Netzwerke im Allgemeinen zu verstehen, ist keine triviale Aufgabe. Es ist einfacher, niedrigdimensionale tiefe neuronale Netzwerke zu erforschen - Netzwerke, in denen sich in jeder Schicht nur wenige Neuronen befinden. Für schwach dimensionierte Netzwerke können Sie Visualisierungen erstellen, um das Verhalten und Training dieser Netzwerke zu verstehen. Diese Perspektive wird ein tieferes Verständnis des Verhaltens neuronaler Netzwerke ermöglichen und die Verbindung zwischen neuronalen Netzwerken und dem als Topologie bezeichneten Bereich der Mathematik beobachten.

    Daraus ergeben sich eine Reihe interessanter Dinge, darunter die grundlegenden unteren Grenzen der Komplexität eines neuronalen Netzwerks, das bestimmte Datensätze klassifizieren kann.

    Betrachten Sie das Prinzip des Netzwerks am Beispiel

    Beginnen wir mit einem einfachen Datensatz - zwei Kurven in einer Ebene. Die Aufgabe des Netzwerks lernt, die Zuordnung von Punkten zu Kurven zu klassifizieren.



    Ein naheliegender Weg, um das Verhalten eines neuronalen Netzwerks zu visualisieren, besteht darin zu sehen, wie der Algorithmus alle möglichen Objekte (in unserem Beispiel Punkte) aus einem Datensatz klassifiziert.

    Beginnen wir mit der einfachsten Klasse neuronaler Netzwerke mit einer Eingabe- und Ausgabeebene. Ein solches Netzwerk versucht, die beiden Datenklassen zu trennen und sie durch eine Linie zu trennen.



    Ein solches Netzwerk wird in der Praxis nicht verwendet. Moderne neuronale Netzwerke haben normalerweise mehrere Schichten zwischen Eingabe und Ausgabe, die als "verborgene" Schichten bezeichnet werden.



    Einfaches Netzwerkdiagramm


    Wir visualisieren das Verhalten dieses Netzwerks und beobachten, was es mit verschiedenen Punkten in seinem Bereich macht. Ein Netzwerk mit einer verborgenen Schicht trennt die Daten mit einer komplexeren Kurve als eine Linie.



    Mit jeder Schicht transformiert das Netzwerk die Daten und erstellt eine neue Ansicht. Wir können die Daten in jeder dieser Ansichten betrachten und wie das Netzwerk mit der verborgenen Schicht sie klassifiziert. Wenn der Algorithmus die endgültige Darstellung erreicht, zieht das neuronale Netzwerk eine Linie durch die Daten (oder in höheren Dimensionen die Hyperebene).

    In der vorherigen Visualisierung werden die Daten in der Rohansicht berücksichtigt. Sie können sich das vorstellen, indem Sie die Eingabeebene betrachten. Betrachten Sie es jetzt, nachdem es von der ersten Ebene transformiert wurde. Sie können sich das vorstellen, indem Sie die verborgene Ebene betrachten.
    Jede Messung entspricht der Aktivierung des Neurons in der Schicht.



    Die verborgene Ebene wird auf die Präsentation trainiert, sodass die Daten linear getrennt werden können.

    Kontinuierliche Visualisierung von Ebenen

    In dem im vorigen Abschnitt beschriebenen Ansatz lernen wir, Netzwerke zu verstehen, indem wir die Präsentation anzeigen, die jeder Ebene entspricht. Dies gibt uns eine diskrete Liste von Ansichten.

    Der nichttriviale Teil ist zu verstehen, wie wir uns von einem zum anderen bewegen. Glücklicherweise verfügen neuronale Netzebenen über Eigenschaften, die dies ermöglichen.
    Es gibt viele verschiedene Arten von Schichten, die in neuronalen Netzwerken verwendet werden.

    Betrachten Sie die Tanh-Schicht für ein bestimmtes Beispiel. Die Tan Tan Tan (Wx + B) Schicht besteht aus:

    1. Lineare Transformation durch Gewichtsmatrix W
    2. Übersetzung mit dem Vektor b
    3. Gepunktete Tanh.

    Wir können uns dies als kontinuierliche Transformation wie folgt vorstellen:



    Dieses Funktionsprinzip ist anderen Standardschichten, die aus einer affinen Transformation bestehen, sehr ähnlich, gefolgt von einer punktweisen Anwendung der monotonen Aktivierungsfunktion.
    Diese Methode kann verwendet werden, um komplexere Netzwerke zu verstehen. Das nächste Netzwerk klassifiziert also zwei Spiralen, die mit vier verborgenen Ebenen leicht verschränkt sind. Im Laufe der Zeit wird deutlich, dass sich das neuronale Netzwerk von einer „rohen“ Sicht auf eine höhere Ebene bewegt, die das Netzwerk zur Klassifizierung der Daten untersucht hat. Während die Spiralen anfangs verschränkt sind, sind sie am Ende linear trennbar.



    Andererseits kann das folgende Netzwerk auch mehrere Ebenen verwenden, jedoch nicht zwei Spiralen klassifizieren, die stärker miteinander verflochten sind.



    Es sei darauf hingewiesen, dass diese Aufgaben von begrenzter Komplexität sind, da neuronale Netzwerke mit geringer Dimension verwendet werden. Wenn breitere Netzwerke verwendet werden, wäre die Problemlösung einfacher.

    Tang-Schicht-Topologie


    Jede Ebene dehnt und komprimiert den Raum, schneidet, zerbricht oder faltet ihn jedoch nie. Intuitiv sehen wir, dass die topologischen Eigenschaften auf jeder Ebene erhalten bleiben.

    Solche Transformationen, die die Topologie nicht beeinflussen, werden Homomorphismen genannt (Wiki - Dies ist eine Abbildung des algebraischen Systems A, wobei die grundlegenden Operationen und die grundlegenden Beziehungen beibehalten werden). Es handelt sich formal um Bijektionen, die in beide Richtungen stetig funktionieren. In einem bijektiven Mapping entspricht jedes Element eines Satzes genau einem Element eines anderen Satzes, und das inverse Mapping wird definiert, das dieselbe Eigenschaft hat.

    Satz

    Schichten mit N Eingaben und N Schlussfolgerungen sind Homomorphismen, wenn die Gewichtsmatrix W nicht entartet ist. (Sie müssen hinsichtlich der Domäne und des Bereichs vorsichtig sein.)

    Beweis:
    1. Предположим, что W имеет ненулевой детерминант. Тогда это биективная линейная функция с линейным обратным. Линейные функции непрерывны. Итак, умножение на W является гомеоморфизмом.
    2. Отображения — гомоморфизмы
    3. tanh (и сигмоиды и softplus, но не ReLU) являются непрерывными функциями с непрерывными обратными. Они являются биекциями, если мы внимательно относимся к области и диапазону, который мы рассматриваем. Применение их поточечно, является гомоморфизмом.

    Таким образом, если W имеет ненулевой детерминант, слой является гомеоморфным.

    Topologie und Klassifizierung


    Betrachten Sie einen zweidimensionalen Datensatz mit zwei Klassen A, B⊂R2:

    A = {x | d (x, 0) <1/3}

    B = {x | 2/3 <d (x, 0) <1}



    A rot, B blau

    Voraussetzung: Ein neuronales Netzwerk kann dieses Dataset nicht ohne 3 oder mehr ausgeblendete Layer klassifizieren, unabhängig von der Breite.

    Wie bereits erwähnt, entspricht eine Klassifizierung mit einer Sigmoid-Funktion oder einer Softmax-Schicht dem Versuch, eine Hyperebene (oder in diesem Fall eine Linie) zu finden, die A und B in der endgültigen Darstellung trennt. Da das Netzwerk nur über zwei verborgene Schichten verfügt, kann es topologisch nicht in der Lage sein, Daten auf diese Weise gemeinsam zu nutzen, und es ist zum Scheitern verurteilt, dass es in diesem Datensatz fehlschlägt.
    In der folgenden Visualisierung beobachten wir eine verborgene Ansicht, während das Netzwerk zusammen mit der Klassifizierungslinie trainiert.



    Für dieses Netzwerk reicht das Training nicht aus, um ein hundertprozentiges Ergebnis zu erzielen.
    Der Algorithmus fällt in ein unproduktives lokales Minimum, kann jedoch ~ 80% der Klassifizierungsgenauigkeit erreichen.

    In diesem Beispiel gab es nur eine ausgeblendete Ebene, die jedoch nicht funktionierte.
    Genehmigung Entweder ist jede Schicht ein Homomorphismus oder die Gewichtsmatrix der Schicht hat die Determinante 0.

    Beweis:
    Если это гомоморфизм, то A по-прежнему окружен B, и линия не может их разделить. Но предположим, что она имеет детерминант 0: тогда набор данных коллапсирует на некоторой оси. Поскольку мы имеем дело с чем-то, гомеоморфным исходному набору данных, A окруженных B, и коллапсирование на любой оси означает, что мы будем иметь некоторые точки из A и B смешенными, и что приводит к невозможности для различения.

    Wenn wir ein drittes verstecktes Element hinzufügen, wird das Problem trivial. Das neuronale Netzwerk erkennt die folgende Ansicht: Die



    Ansicht ermöglicht das Teilen von Datensätzen mit einer Hyperebene.
    Um besser zu verstehen, was los ist, betrachten wir einen noch einfacheren Datensatz, der eindimensional ist:



    A = [- 1 / 3.1 / 3]
    B = [- 1, -2 / 3] ∪ [2 / 3.1]
    Ohne die Verwendung von zwei oder mehr ausgeblendeten Elementen können wir dieses Dataset nicht klassifizieren. Wenn wir jedoch ein Netzwerk mit zwei Elementen verwenden, werden wir lernen, die Daten als eine gute Kurve darzustellen, die es uns ermöglicht, Klassen mit einer Linie zu trennen:



    Was ist los? Ein versteckter Gegenstand lernt zu schießen, wenn x> -1/2, und man lernt zu schießen, wenn x> 1/2. Wenn der erste arbeitet, der zweite aber nicht, wissen wir, dass wir in A sind.

    Diversity-Hypothese


    Trifft dies auf reale Datensätze zu, wie zum Beispiel Bildsätze? Wenn Sie die Hypothese der Vielfalt ernst meinen, denke ich, dass sie wichtig ist.

    Die multidimensionale Hypothese besagt, dass die natürlichen Daten niedrigdimensionale Mannigfaltigkeiten im Implantationsraum bilden. Es gibt sowohl theoretische [1] als auch experimentelle [2] Gründe für die Annahme, dass dies wahr ist. Wenn ja, besteht die Aufgabe des Klassifizierungsalgorithmus darin, das Bündel der verschränkten Mannigfaltigkeiten zu trennen.

    In den vorherigen Beispielen umgab eine Klasse die andere vollständig. Es ist jedoch unwahrscheinlich, dass die Vielfalt der Bilder von Hunden vollständig von einer Sammlung von Bildern von Katzen umgeben ist. Es gibt jedoch andere plausiblere topologische Situationen, die sich noch ergeben können, wie wir im nächsten Abschnitt sehen werden.

    Verbindungen und Homotopien


    Ein weiterer interessanter Datensatz besteht aus zwei verbundenen Tori A und B.



    Wie bei den vorherigen Datensätzen, die wir überprüft haben, kann dieser Datensatz nicht ohne n + 1-Dimensionen, nämlich die vierte Dimension, unterteilt werden.

    Beziehungen werden in der Knotentheorie, dem Gebiet der Topologie, untersucht. Wenn wir eine Verbindung sehen, ist es manchmal nicht sofort klar, ob dies Inkohärenz ist (viele Dinge, die miteinander verflochten sind, aber durch kontinuierliche Deformation getrennt werden können) oder nicht.



    Relativ einfache Inkohärenz.

    Wenn ein neuronales Netzwerk, das Schichten mit nur drei Einheiten verwendet, dies klassifizieren kann, ist es inkohärent. (Frage: Können alle Inkonsistenzen theoretisch in einem Netzwerk mit nur drei Inkonsistenzen klassifiziert werden?)

    Aus Sicht dieses Knotens ist die kontinuierliche Visualisierung der durch das neuronale Netzwerk erstellten Repräsentationen ein Verfahren zum Entflechten von Verbindungen. In der Topologie nennen wir diese Umgebungsisotopie zwischen der ursprünglichen Verbindung und der getrennten Verbindung.

    Formal ist die Isotopie des umgebenden Raums zwischen den Varietäten A und B eine kontinuierliche Funktion F: [0,1] × X → Y, so dass jede Ft ein Homöomorphismus von X bis zu ihrem Bereich ist, F0 die Identitätsfunktion ist und F1 A bis B ist . Ft geht kontinuierlich von A zu sich selbst, von A zu B.

    Satz: Es gibt eine Isotopie des umgebenden Raums zwischen der Eingabe und der Darstellung der Netzwerkschicht, wenn: a) W nicht entartet ist, b) wir bereit sind, Neuronen in die verborgene Schicht zu übertragen, und c) dort ist mehr als 1 versteckter Gegenstand.

    Beweis:
    1. Самая сложная часть — линейное преобразование. Чтобы это было возможно, нам нужно, чтобы W обладала положительным определителем. Наша предпосылка заключается в том, что она не равна нулю, и мы можем перевернуть знак, если он отрицательный, переключив два скрытых нейрона, и поэтому можем гарантировать, что определитель положителен. Пространство положительных детерминантных матриц является связным, поэтому существует p: [0,1] → GLn ®5 такое, что p (0) = Id и p (1) = W. Мы можем непрерывно переходить от функции тождества к W-преобразованию с помощью функции x → p (t) x, умножая x в каждой точке времени t на непрерывно переходящую матрицу p (t).
    2. Мы можем непрерывно переходить от функции тождества к b-отображению с помощью функции x → x + tb.
    3. Мы можем непрерывно переходить от тождественной функции к поточечному использованию σ с функцией: x → (1-t) x + tσ (x)

    Bislang ist es unwahrscheinlich, dass solche Verbindungen, über die wir gesprochen haben, in realen Daten auftauchen, aber es gibt Verallgemeinerungen auf höherer Ebene. Es ist plausibel, dass solche Merkmale in realen Daten vorhanden sein können.

    Verknüpfungen und Knoten sind eindimensionale Mannigfaltigkeiten, aber wir benötigen vier Dimensionen, damit Netzwerke alle entschlüsseln können. In ähnlicher Weise kann sogar ein Raum mit einer höheren Dimension erforderlich sein, um n-dimensionale Mannigfaltigkeiten zerlegen zu können. Alle n-dimensionalen Verteiler können in 2n + 2-Dimensionen erweitert werden. [3]

    Einfach verlassen


    Der einfache Weg ist, die Verteiler auseinander zu ziehen und die so verwirrenden Teile zu strecken. Obwohl dies nicht nahe an einer echten Lösung liegt, kann eine solche Lösung eine relativ hohe Klassifizierungsgenauigkeit erreichen und ein akzeptables lokales Minimum sein.



    Solche lokalen Minima sind absolut unbrauchbar, wenn man versucht, topologische Probleme zu lösen, aber topologische Probleme können eine gute Motivation für das Studium dieser Probleme darstellen.

    Wenn wir dagegen nur an guten Klassifizierungsergebnissen interessiert sind, ist der Ansatz akzeptabel. Wenn das winzige Bit des Datenverteilers am anderen Verteiler ankommt, ist das ein Problem? Es ist wahrscheinlich, dass trotz dieses Problems willkürlich gute Klassifikationsergebnisse erzielt werden.

    Verbesserte Schichten zum Manipulieren von Verteilern?

    Es ist schwer vorstellbar, dass standardisierte affine transformierte Schichten wirklich gut für die Manipulation von Mannigfaltigkeiten sind.

    Vielleicht macht es Sinn, eine völlig andere Schicht zu haben, die wir in einer Komposition mit traditionelleren verwenden können?

    Es ist vielversprechend, das Vektorfeld mit der Richtung zu studieren, in die wir die Mannigfaltigkeit verschieben wollen:



    Und dann deformieren wir den Raum basierend auf dem Vektorfeld:



    Wir könnten das Vektorfeld an festen Punkten untersuchen (nehmen Sie einige feste Punkte aus den Testdaten, um sie als Anker zu verwenden) und irgendwie interpolieren.

    Das Vektorfeld oben sieht folgendermaßen aus:
    Р (х) =( v0f0 (х) + v1f1 (х) )/( 1 + 0 (х) + f1 (х))

    Dabei sind v0 und v1 Vektoren und f0 (x) und f1 (x) sind n-dimensionale Gaußsche.

    K-nächstgelegene Nachbarschichten


    Die lineare Trennbarkeit kann für neuronale Netzwerke ein enormes und möglicherweise unzumutbares Bedürfnis sein. Es ist natürlich, die Methode der k-nächsten Nachbarn (k-NN) zu verwenden. Der Erfolg von k-NN hängt jedoch stark von der von ihm klassifizierten Präsentation ab. Daher ist eine gute Präsentation erforderlich, bevor k-NN gut funktionieren kann.

    k-nn ist hinsichtlich der Darstellung, auf die es wirkt, differenzierbar. So können wir das Netzwerk direkt für die Klassifizierung nach k-NN trainieren. Dies kann als eine Art „nächste Nachbarn“ betrachtet werden, die als Alternative zu Softmax fungiert.
    Wir möchten nicht das gesamte Trainingspaket für jede Mini-Party vorab verwalten, da dies ein sehr teures Verfahren sein wird. Ein angepasster Ansatz besteht darin, jedes Element der Mini-Charge basierend auf den Klassen anderer Elemente der Mini-Charge zu klassifizieren, wobei jedes Gewicht der Einheit durch die Entfernung vom Klassifizierungsziel dividiert wird.

    Unglücklicherweise reduziert die Verwendung von k-NN selbst bei einer komplexen Architektur die Fehlerwahrscheinlichkeit - und die Verwendung einfacherer Architekturen verschlechtert die Ergebnisse.

    Fazit


    Topologische Eigenschaften von Daten wie Beziehungen können es unmöglich machen, Klassen unabhängig von der Tiefe linear zu unterteilen. Auch wenn es technisch möglich ist. Zum Beispiel Spiralen, die sehr schwer zu trennen sind.

    Für eine genaue Datenklassifizierung benötigen neuronale Netze breite Schichten. Darüber hinaus sind die traditionellen Schichten des neuronalen Netzwerks schlecht geeignet, um wichtige Manipulationen mit Mannigfaltigkeiten darzustellen. Selbst wenn wir die Gewichtungen manuell einstellen, ist es schwierig, die gewünschten Transformationen kompakt darzustellen.

    Verweise auf Quellen und Erklärungen
    [1] A lot of the natural transformations you might want to perform on an image, like translating or scaling an object in it, or changing the lighting, would form continuous curves in image space if you performed them continuously.

    [2] Carlsson et al. found that local patches of images form a klein bottle.
    [3] This result is mentioned in Wikipedia’s subsection on Isotopy versions.

    Jetzt auch beliebt: