Deep Learning kann in bestimmten Bereichen eine extrem hohe Genauigkeit bieten, und sein Anwendungsbereich wird stetig erweitert. Solch tiefes Lernen hat jedoch auch seine Schwächen. Eines der größten Probleme ist, dass ich nicht weiß, worauf das Urteil basiert. Deep Learning hat die Eigenschaft, dass es gut darin ist, die Merkmale selbst in den Daten während des Lernprozesses zu lernen. Dies kann gesagt werden, dass "Benutzer keine Features extrahieren müssen", aber umgekehrt ist es Sache des Netzwerks, zu entscheiden, welche Features extrahiert werden sollen. Wie der Name schon sagt, sind die extrahierten Merkmale im Gewicht des tiefen Netzwerks latent, und es ist äußerst schwierig, "etwas" daraus in einer Form zu extrahieren, die der Mensch verstehen kann.
Beispiel: Antwort aus der obigen Abbildung, die das Gewicht des Netzwerks darstellt, auf welcher Grundlage dieses Netzwerk die Katze als Katze beurteilt (Zeitlimit: 3 Minuten) * Bild aus [CS231n Visualizations](http: //cs231n.github) .io / neuronale Netze-3 /) *
"Ich sollte etwas lernen, aber ich bin mir nicht sicher, was ich lerne."
Dies ist ein Problem der Interpretierbarkeit beim tiefen Lernen. Die Forschung zu diesem Punkt hat in den letzten Jahren jedoch Fortschritte gemacht, und es wurden verschiedene Methoden vorgeschlagen, um die Grundlage für das Urteil zu klären. In diesem Dokument möchte ich diese Methoden vorstellen.
Es gibt auch eine Theorie, dass "wenn die Genauigkeit hoch ist, ist das in Ordnung", also werde ich zuerst die Vorzüge der Erklärungskraft anhand einiger Beispiele vorstellen.
Das Folgende ist eine Studie, die Pixel visualisiert, die wichtige Hinweise für Vorhersagen bei der Bildklassifizierung sind.
SMOOTHGRAD//SmoothGrad:removingnoisebyaddingnoise
Das linke ist das Eingabebild, und das Schwarzweißbild auf der rechten Seite ist eine Visualisierung der wichtigen Teile für die Beurteilung (das obere ist die vorhandene Methode, das untere ist die vorgeschlagene Methode). Bei Anwendung auf ein Modell der pathologischen Diagnose kann geklärt werden, wo im Bild beispielsweise eine Röntgenaufnahme fokussiert wurde. Es ist schwer, Leute zu überzeugen, die sagen: "Du bist krank. Ich weiß nicht warum, aber mit hoher Wahrscheinlichkeit." Daher ist das Teilen des Prozesses ein wichtiger Prozess, um die getroffenen Entscheidungen zu überzeugen. .. Deep Learning war auf dem Gebiet der Bildgebung sehr erfolgreich, und diese Techniken sind ein wirksames Mittel, um den Entscheidungsprozess zu verstehen.
Als nächstes möchte ich eine Studie vorstellen, die nicht nur anhand der Aussagen zu SNS erkennt, ob eine Krisensituation vorliegt (z. B. Selbstmord wahrscheinlich), sondern auch die Grundlage für die Erkennung bildet.
Detecting and Explaining Crisis
In dieser Studie verwenden wir eine Technik namens Aufmerksamkeit, die häufig in der Verarbeitung natürlicher Sprache verwendet wird, um die Wichtigkeit der Beurteilung für jedes Wort in einer Aussage zu berechnen und zu visualisieren. Da es so viele Kommentare zu SNS gibt, versuchen wir zu helfen, indem wir diejenigen mit hohem Risiko priorisieren (testen) (Übrigens führen wir diese Forschung gemeinsam durch Koko. //itskoko.com/) ist ein Unternehmen des MIT Media Lab, das über die Messenger-App Funktionen zur Fehlerberatung bereitstellt. Da er von einer Forschungseinrichtung stammt, versucht er, die neuesten Forschungsergebnisse im Service zu nutzen. Es ist eine Funktion).
Es gibt auch Studien, die diese Aufmerksamkeitstechnik auf Bildunterschriften anwenden, um herauszufinden, auf welche Stelle im Bild Sie sich beim Generieren von Untertiteln konzentrieren.
Show, Attend and Tell: Neural Image Caption Generation with Visual Attention
Es kann gesagt werden, dass alle Studien davon ausgehen, dass Menschen auf der Grundlage des Urteils des maschinellen Lernmodells handeln (Arbeit verrichten). Ich denke, dass maschinelles Lernen in Zukunft in verschiedenen Bereichen eingesetzt wird, aber ich denke, dass ein solcher Mechanismus für Menschen und Modelle des maschinellen Lernens unabdingbar ist, um zusammenzuarbeiten. In Europa wird dieser Punkt in Betracht gezogen, und bei Geräten, die mit einer sogenannten KI ausgestattet sind, wird auch in Betracht gezogen, dass es möglich sein sollte, den Beurteilungsprozess darzustellen, wenn der Benutzer ihn anfordert]( https://arxiv.org/abs/1606.08813).
Dies ist auch wichtig für die Überprüfung des Verhaltens des maschinellen Lernmodells. Dies liegt daran, dass in den letzten Jahren berichtet wurde, dass es eine Methode zum "Hacken" des Lernmodells gibt. Dies wird auch als Adversarial Attack bezeichnet, und es ist möglich, das Erkennungsergebnis falsch zu identifizieren, indem dem Eingabebild winziges Rauschen hinzugefügt wird, das auf einen Blick nicht sichtbar ist. In der folgenden Abbildung wird der Panda durch Hinzufügen von Rauschen zum Eingabebild mit einem Tenagazaru verwechselt.
Intriguing properties of neural networks
Darüber hinaus haben einige Studien gezeigt, dass es möglich ist, Verkehrszeichen falsch zu identifizieren. Dies ist ein etwas schreckliches Beispiel, wenn Sie glauben, dass das Stoppschild während des automatischen Betriebs falsch identifiziert wird. Diese Methode ist eine Top-Konferenz des maschinellen Lernens [NIPS prüft auch aktiv die Methode und die Verteidigungsmethode in einem Wettbewerbsformat](https://www.kaggle.com/c/nips-2017-non- gezielter gegnerischer Angriff).
Wenn Sie die Urteilsgründe des maschinellen Lernmodells verstehen, können Sie erkennen, dass es sich um eine "ungewöhnliche Begründung" handelt, wenn Sie von einem solchen Angriff getroffen werden. Außerdem kann die Genauigkeit verringert werden, selbst wenn es nicht separat angegriffen wird, indem lediglich die Tendenz von Daten (wie z. B. das Benutzerverhalten) geändert wird. Selbst in diesem Fall ist es einfach, damit umzugehen, wenn Sie die Anzahl der Funktionen kennen, auf die sich das Modell stützt. Mit anderen Worten, es ist wichtig, die Grundlage für die Beurteilung im Hinblick auf die Aufrechterhaltung des von uns verwendeten Modells zu interpretieren.
Von hier aus werden wir uns ansehen, wie man die Urteilsgrundlage des tiefen Lernens tatsächlich "versteht". Es ist jedoch unklar, was unter "Verstehen" zu verstehen ist. Daher hier einige Definitionen.
Erstens gibt es zwei Perspektiven für das Verständnis des Modells.
Da es verschiedene Arten von Modellen gibt, die tatsächlich verwendet werden, ist es schwierig, den Mechanismus der Inhalte einzeln zu verstehen. Daher konzentrieren wir uns hier auf das "Verstehen von Verhalten". Insbesondere wird davon ausgegangen, dass Sie "verstehen" können, wenn Sie "erklären" können, welche Art von Eingabe und welche Art von Ausgabe erhalten wird, beginnend mit dem Zustand, in dem das trainierte Modell angegeben wird. Apropos Verkaufsautomaten: Es ist in Ordnung, wenn Sie verstehen, welche Art von Getränk beim Drücken der Taste austritt, und wenn Sie die Taste drücken, wird dieses Signal zum internen Automaten geleitet ... ,darüber.
Nun, da "Erklärung" dem Menschen gegeben wird, muss sie in "Ausdrücken" gegeben werden, die der Mensch verstehen kann. Wenn Sie es jedoch "ausdrücken" können, können Sie es erklären. Auch wenn es sich um einen vom Menschen erkennbaren Ausdruck wie das Bild handelt, das das Gewicht des zuvor gezeigten Netzwerks visualisiert, ist es eine andere Geschichte, ob es erklärende Kraft hat. Der Unterschied zwischen diesem Ausdruck und der Beschreibung ist wie folgt definiert.
Mit anderen Worten, "Erklärung" ist nicht nur "Ausdruck" wie Visualisierung und Schreiben, sondern "Erklärung" erst nach "Ausdrücken" der "Merkmale, die zur Ausgabe des Netzwerks beitragen". ist. Mit anderen Worten, die Erklärung umfasst zwei Schritte: Berechnen der Auswirkung jeder Eingabe auf die Ausgabe und Ausdrücken in einer für Menschen lesbaren Form. Die nachfolgend eingeführten Methoden wurden auch für diese beiden Punkte entwickelt.
Von hier aus werde ich eine Methode vorstellen, um die Ausgabe des Netzwerks tatsächlich zu erklären. Die Methoden können wie folgt grob unterteilt werden.
Das Einbeziehen des letzten Gesichtspunkts in das Modell (Achtung) erfolgt aus der Perspektive einer Black Box, da Änderungen am Netzwerk selbst erforderlich sind. Dies ist jedoch eine sehr effektive Methode und wird hier vorgestellt.
Bei Netzwerken, die sich mit Klassifizierungsproblemen befassen, ist die Ausgabe die Klassifizierungswahrscheinlichkeit für jede Kategorie. Wenn Sie hier eine Eingabe mit einer sehr hohen Klassifizierungswahrscheinlichkeit einer Kategorie finden, ist dies gleichbedeutend mit dem, was das Netzwerk als "typisches Beispiel" für diese Kategorie ansieht. Wenn Sie sie identifizieren können, ist sie hilfreich bei der Schätzung der Beurteilungsgrundlage. ist.
Das Folgende ist eine 2012 von Google veröffentlichte Studie, die es einem Netzwerk, das die Eigenschaften eines Bildes durch unbeaufsichtigtes Lernen (Auto Encoder) gelernt hat, ermöglicht, es zu identifizieren und die Daten als die menschlichsten (oben) und die menschlichsten zu beurteilen Es ist eine Zusammenstellung der zu beurteilenden Daten (unten).
Building high-level features using large scale unsupervised learning
Das Problem hierbei ist, $ x ^ * $ zu finden, das die Wahrscheinlichkeit maximiert, dass $ p $ in die Klasse $ c $ eingestuft wird, was im Grunde die minimale Eingabe ist.
(
Dies wird jedoch sicherlich ein mysteriöses Bild erzeugen, das die maximale Ausgabe hat, aber vom Menschen nicht verstanden werden kann (ein Zustand wie Überlernen), so dass es auch ein Muster gibt, das die Einschränkung auferlegt, dass es näher an der tatsächlichen Ausgabe liegt. Es gibt.
Dies bedeutet, dass $ p (x) $ hinzugefügt wird, dh die Wahrscheinlichkeit, dass die Daten tatsächlich angezeigt werden. Es gibt eine Studie, die Bildmerkmale unter Verwendung derselben Einschränkungen visualisiert.
Understanding Deep Image Representations by Inverting Them
Wenn die Eingabedaten jedoch hochdimensional sind, ist es sehr schwierig, dieses $ p (x) $ mit hoher Genauigkeit zu schätzen. Daher gibt es auch eine Methode, um sie in Kombination mit einem Generierungsmodell wie VAE oder GAN durchzuführen. Hier wird $ x ^ * $ aus dem entsprechenden Vektor $ z $ durch den Generator generiert.
Es besteht aus der Erzeugung eines Bildes aus $ z $, das in die Klasse $ w_c $ eingeteilt ist. Die Bilderzeugung ist GAN, aber es gibt eine Studie in Richtung GAN, die dieser Einschränkung entspricht, dh mit der Einschränkung, dass das erzeugte Bild in dieselbe Klasse wie die reale Klasse eingeteilt wird ([Bedingte Bildsynthese mit Hilfsmitteln]]. Klassifikator-GANs](https://arxiv.org/abs/1610.09585)).
Darüber hinaus unterscheiden sich das Ziel von GAN und das Ziel, die Grundlage des Urteils zu verstehen, geringfügig.(Kurz gesagt, es ist besser, bis zu einem gewissen Grad abstrahiert zu werden als die reale Sache).. Daher in der obigen Formel
Übrigens verwendet Deep Dream, das für eine Weile ein heißes Thema wurde, diese Methode. Die Optimierung des Eingabebildes (oder des zufälligen Rauschens) zur Maximierung der Ausgabe des Netzwerks führt zu einem solchen Bild. Dieser Artikel enthält eine detaillierte Erläuterung der Visualisierung von Bildfunktionen durch diese Aktivierungsmaximierung (die folgenden Bilder stammen ebenfalls aus diesem Artikel).
Als Fortsetzung dieses Artikels wird außerdem ein Artikel veröffentlicht, der eine Demo enthält, in der Sie die Grundlage der Beurteilung interaktiv auf der Seite sehen können. Dieser Artikel geht noch einen Schritt weiter und versucht zu identifizieren, wo im Netzwerk das Urteil jeder Klasse maximiert wird.
The Building Blocks of Interpretability
Wenn eines der Eingabefunktionen durch Ändern einen signifikanten Einfluss auf die Ausgabe hat, kann es als wichtiges Merkmal angesehen werden. Mit anderen Worten, es scheint, dass seine Bedeutung verstanden werden kann, indem das Ausmaß der Änderung untersucht wird, bei der die Eingabe für das Netzwerk empfindlich ist.
Dies kann erreicht werden, indem der Gradient untersucht wird, da das Ausmaß der Änderung der Punkt ist, an dem die Differenzierung ins Spiel kommt. Da das neuronale Netz in erster Linie durch Gradienten lernt, funktioniert dies gut mit dem vorhandenen Optimierungsmechanismus. Sie können die Empfindlichkeit für die Eingabe von $ x $ einfach wie folgt berechnen:
Das zu Beginn eingeführte SMOOTH GRAD ist ein Gerät, das diesen Look sauberer macht (absichtlich, weil der Farbverlauf zu empfindlich für Rauschen ist). Erstellen Sie mehrere Samples mit Rauschen und mitteln Sie die Ergebnisse.
Daraus ergibt sich jedoch, welcher Teil der Änderung den Fehler größer / kleiner macht. Ich weiß zum Beispiel, wo ich es ändern muss, damit es eher wie ein Auto aussieht, aber ich weiß nicht, warum es überhaupt als Auto eingestuft wird. Sie müssen sich dessen bewusst sein, wenn Sie es verwenden.
Die nächste Idee ist, dass Sie möglicherweise einige aussagekräftige Ergebnisse erhalten, wenn Sie die Eingabe von der Ausgabe umkehren.
Im Folgenden wird ein Verfahren vorgeschlagen, bei dem die Eingabe, die zu einer bestimmten Schicht beiträgt, zurückgerechnet werden kann, indem das Netzwerk auf eine bestimmte Schicht übertragen und dann der andere Teil als der zu untersuchende Teil auf 0 gesetzt und zurückverteilt wird.
Striving for Simplicity: The All Convolutional Net
Um den negativen Wert zu entfernen, der die Aktivierung bei dieser Rückausbreitung abschwächt, wird der Teil, in dem der Wert zum Zeitpunkt der Ausbreitung / Rückausbreitung negativ wird, auf 0 gesetzt und weitergegeben (daher ist er nicht linear äquivalent zu ReLU). Wird bearbeitet). In der vorherigen Forschung haben wir diese "geführte Rückausbreitung" genannt, und als Ergebnis ist es uns gelungen, wichtige Punkte in den folgenden Eingaben zu visualisieren.
Es wurde auch ein Verfahren vorgeschlagen, bei dem der Gradient von der gewünschten Markierung umgekehrt wird, da nur der Teil bekannt sein soll, der zur Klassifizierung der Klasse beigetragen hat.
Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization
Dies ist eine Methode zur Berechnung des Beitrags jeder Merkmalskarte bis zur Klassifizierung und zur Rückausbreitung mit dem Gewicht. Dadurch erhalten Sie eine Heatmap-ähnliche Ausgabe (das Grad-CAM-Diagramm am unteren Rand der zweiten Spalte von links in der Abbildung oben). Da der Beitrag jedoch in Karteneinheiten berechnet wird, ist es nicht möglich, Beiträge in Pixeleinheiten wie der oben erwähnten geführten Rückausbreitung zu erhalten. Daher wird im obigen Artikel gesagt, dass es zusammen verwendet werden sollte (Guided Grad-CAM). Die ausführliche Erläuterung von Grad-CAM und das Ergebnis der tatsächlichen Anwendung werden im folgenden Blog vorgestellt.
Die schichtweise Relevanzausbreitung (LRP) ist eine Technik, die die Beziehungen zwischen Schichten in umgekehrter Reihenfolge weitergibt, um die Eingabe zu erreichen. Die Idee ist, dass die Summe der Beiträge jeder Eingabe zur Ausgabe zwischen jeder Schicht gleich ist und sich ihre Verteilung nur durch Ausbreitung ändert.
Anschließend wird die Berechnung dieses Beitragsbetrags (Relevanz) wie folgt festgelegt (Ableitung lautet Erklären nichtlinearer Klassifizierungsentscheidungen mit tiefer Taylor-Zerlegung / pii / S0031320316303582? via% 3Dihub)).
Die normale Ausbreitung ist die Aktivierung in ReLU (oben in der Tabelle). Wenn der Wertebereich wie in der Eingabeebene, die das Bild empfängt, begrenzt ist (0 bis 255), gilt die Regel in der Mitte der Tabelle (Pixelintensitäten = geschlossenes Intervall). Wird angewandt. Ein Tutorial, um dies tatsächlich zu implementieren, ist ebenfalls verfügbar und Sie können es ausprobieren.
Tutorial: Implementing Layer-Wise Relevance Propagation
Sie können das Ergebnis von LRP für das Bild sehen, das Sie auf dieser Site geschrieben haben Demo ist ebenfalls verfügbar.
Als verbesserte Version dieser Methoden wurde eine Methode namens PatternNet / PatternAttribution vorgeschlagen.
Learning how to explain neural networks: PatternNet and PatternAttribution
In diesem Artikel heißt es, dass es nicht möglich ist, die Gründe für die Beurteilung einfach durch Analyse der "Gewichte" im Netzwerk zu verstehen. Teilen Sie aus diesem Grund zuerst die Eingabe $ x $ in $ s $, die zur endgültigen Ausgabe $ y $ beiträgt, und $ d $ anders als das (dh Rauschen) und drücken Sie sie als $ x = s + d $ aus. Ich werde. Zu diesem Zeitpunkt filtert das Gewicht $ w $ $ d $ von $ x $ und setzt $ s $, was zu $ y $ beiträgt, wenn man bedenkt, dass die Ausgabe eines einfachen Netzwerks $ w ^ T x = y $ ist. Sie können sich vorstellen, dass es eine Rolle zu extrahieren gibt. Dann besteht die Rolle des Gewichts $ w $ darin, das Rauschen $ d $ aufzuheben, sodass die Vektorrichtung von $ w $ von $ d $ abhängt. Unabhängig davon, wie viel Sie suchen, können Sie $ s $ nicht finden. In der folgenden Abbildung ist der schwarze Pfeil $ w $ und der gelbe Pfeil $ d $, und Sie können sehen, dass sie in die Richtung zeigen, in der sie sich gegenseitig aufheben. Die Richtung von $ w $ hängt von $ d $ ab und hat nichts mit dem $ s $ zu tun, das Sie finden möchten.
Zu diesem Zeitpunkt sollten $ y = w ^ T x = w ^ T (s + d) $ und $ d $ um $ w $ gelöscht werden, also $ w ^ T d = 0 $ und $ w ^ T s = y $. Da $ y $ und $ d $ keine Korrelation haben sollten, entspricht $ cov [y, d] = 0 $ und $ cov [x, y] $ $ cov [s, y] $. Ich werde. Wenn die Funktion, die $ s $ aus $ x $ extrahiert, $ S (x) $ ist, dann ist $ cov [s, y] = cov [S (x), y] $. Sie können dies verwenden, um $ S (x) $ zu finden.
Erstens kann im Fall einer linearen Transformation nur lineares $ y $ ausgegeben werden = $ s $ sollte ebenfalls linear sein, so dass die Korrelation eine lineare Beziehung sein sollte. Mit anderen Worten gilt die folgende Formel.
Ersetzen Sie dies durch die obige $ cov $ -Beziehung
von hier,
Es wird sein. Dies ist jedoch nur ein linearer Fall, und es handelt sich um eine nichtlineare Funktion, die sich in ReLU, die häufig in Bildern verwendet wird, nicht in die negative Richtung ausbreitet. In diesem Fall ist es notwendig, $ s $ und $ d $ getrennt für $ s_ + und d_ + $ in positiver Richtung und $ s_- und d_- $ in negativer Richtung zu betrachten. Diese Ableitungsformel wird weggelassen, aber die auf diese Weise zurückpropagierten Werte werden in der erweiterten DeConvNet / Guided Backpropagation und LRP, die als PatternNet bzw. PatternAttribution bezeichnet werden, durch $ s_ + und s_- $ ersetzt.
Zusätzlich kann die Extraktionskapazität von $ S (x) $ unter Verwendung des folgenden Bewertungsindex $ \ rho $ gemessen werden.
$ x - S (x) $ hat eine sehr hohe Korrelation mit $ w ^ T x = y $, denn wenn $ S (x) $ $ s $ vollständig verlässt, bleibt nur $ d $ übrig, was ein Wrack ist. Infolgedessen wird der Wert hoch. Jetzt können Sie die Grundlage der Beurteilung mit höherer Genauigkeit schätzen und ihre Schätzfähigkeit messen.
Die nächste Idee besteht darin, das Verhalten des Modells anhand unterschiedlich transformierter Eingaben und nicht anhand einer einzelnen Eingabe zu untersuchen. Dies ist das LIME (Local Interpretable Model), das in [„Warum sollte ich Ihnen vertrauen?“ (Erklären der Vorhersagen eines Klassifikators) (http://www.kdd.org/kdd2016/papers/files/rfp0573-ribeiroA.pdf) vorgeschlagen wurde. -Agnostische Erklärungen).
Die Technik besteht darin, zuerst eine Eingabe zu generieren, die wie das in mehrere Teile unterteilte Originalbild aussieht. Füttere es einem trainierten Modell, um Beurteilungsergebnisse zu erhalten. Dann erhalten Sie ein Paar Input und Modellbeurteilung. Lassen Sie dies durch ein einfacheres und aussagekräftigeres Modell lernen, das getrennt vom Hauptkörpermodell erstellt wurde.
Introduction to Local Interpretable Model-Agnostic Explanations (LIME)
Dann kann die hervorgehobene Merkmalsmenge aus dem trainierten einfachen Modell erhalten werden. Aufgrund der Einfachheit der Technik kann dies auf jedes Modell angewendet werden. Die folgenden Artikel enthalten detailliertere Erklärungen und die Ergebnisse der tatsächlichen Verwendung.
Versuchen Sie, das Vorhersageergebnis des maschinellen Lernens mit LIME zu interpretieren
Black-Box-Vorhersagen über Einflussfunktionen verstehen ist eine Studie, die die Auswirkung dieser Schwankung von Eingabedaten auf die Ausgabe formuliert. Wir haben sowohl die Auswirkung der einzelnen Trainingsdaten als auch die Auswirkung von Änderungen auf die Trainingsdaten formuliert. Auf diese Weise können wir Stichproben identifizieren, die zur Beurteilung des Modells beitragen / die Beurteilungsgenauigkeit verringern, und Änderungen vornehmen, die die Beurteilung des Modells beeinflussen. Ich kann dich führen.
Darüber hinaus gibt es eine Studie, die ein maschinelles Lernmodell des LIME-Mechanismus erstellt hat, um zu identifizieren, was durch Maskieren des Bildes wichtig ist (Lernen, wie das Bilderkennungsmodell maskiert wird). Dies ermöglicht die Visualisierung des maskierten Teils = des wichtigen Teils.
Interpretable Explanations of Black Boxes by Meaningful Perturbation
Wenn das Ergebnis ist, dass A in Ordnung ist und B NG ist, wie kann B in Ordnung sein / schließen? Wenn Sie das verstehen, können Sie anscheinend verstehen, was zwischen OK und NG = Beurteilungskriterien liegt. Die folgenden Artikel konzentrieren sich auf diesen Punkt.
Interpretable Predictions of Tree-based Ensembles via Actionable Feature Tweaking
Dies ist eine Methode, die auf dem Lernen von Ensembles unter Verwendung eines Entscheidungsbaums basiert. Die minimalen Kosten werden berechnet, indem der Änderungsbetrag berechnet wird, um NG x in jedem Entscheidungsbaum auf OK zu bringen, und der minimale Änderungsbetrag daraus ermittelt wird. Dies ist eine Methode, um den Änderungsbetrag zu ermitteln, mit dem Sie einverstanden sind. In diesem Dokument wird dies auf die Anzeigenschaltung angewendet und versucht, "nicht verkaufbare" Anzeigen in "verkaufbare" Anzeigen umzuwandeln (mit denen geeignete Anzeigengebühren entsprechend den Änderungsgebühren festgelegt werden können).
Dies ist eine Umkehridee, und es geht nicht darum, Entscheidungen zu treffen, die Sie überhaupt nicht verstehen. Im Folgenden finden Sie eine Aufgabe, bei der versucht wird, Empfehlungen für Coffeeshops zu erlernen, die normalerweise für Coffeeshops in der Nähe besser sind. Wenn sie jedoch tatsächlich geschult werden, machen sie falsche Vorhersagen, z. B. Empfehlungen, obwohl sie weit entfernt von Datenmangel sind Es ist dafür ausgelegt (linke Abbildung). Um dies zu verhindern, beschränken wir die Tendenz, "eintönig" zu sein (rechte Abbildung).
TensorFlow Lattice: Flexibility Empowered by Prior Knowledge Implementierung: Tensorflow / Gitter
Das Konzept besteht darin, den Gesamttrend zu steuern und gleichzeitig die Ausdruckskraft des Modells zu nutzen. Dies ermöglicht es Ihnen, eine feinere Tendenz zu reflektieren, ein lineares Modell oder dergleichen zu treffen. Erstens kann es notwendig sein, die Daten zu erhöhen, aber es gibt viele Fälle, in denen sie nicht verfügbar sind. Es besteht das Risiko, dass Sie nicht in der Lage sind, auf die Situation zu reagieren, mit der Sie sich befassen sollten, indem Sie Einschränkungen anwenden. Sie können jedoch das Risiko eines unvorhersehbaren Verhaltens vermeiden. Dies wird ein Kompromiss sein.
Schließlich werden wir eine Methode zur Einführung eines Mechanismus einführen, der den interessierenden Punkt für die Eingabedaten im Modell angibt. Dies ist eine Technik namens Aufmerksamkeit. Wahrscheinlich war das erste Auftreten die Anwendung auf das Übersetzungsmodell, und es schien ein Mechanismus zu sein, um zu lernen, auf welches Wort im ursprünglichen Satz man sich bei der Ausgabe des übersetzten Wortes konzentrieren sollte. In der folgenden Abbildung ist die x-Achse der ursprüngliche Satz und die y-Achse der Übersetzungszielsatz. Es wird gezeigt, auf welches Wort im ursprünglichen Satz Bezug genommen wird, wenn das Wort im Übersetzungszielsatz ausgegeben wird.
Neural Machine Translation by Jointly Learning to Align and Translate
Die Grundidee von Attention besteht darin, bei der Ausgabe nicht nur die unmittelbar vorhergehende verborgene Ebene, sondern auch die vergangene verborgene Ebene zu verwenden, und das Gewicht wird gemäß den zu diesem Zeitpunkt wichtigen Punkten verteilt.
Effective Approaches to Attention-based Neural Machine Translation
Angesichts der versteckten Ebenen zum Zeitpunkt $ t $ als $ h_t $ und der versteckten Ebenen in der Vergangenheit als $ \ override {h_s} $ kann die Aufmerksamkeit für sie wie folgt definiert werden:
Es gibt verschiedene Variationen der Punktzahl, z. B. einfach das innere Produkt zu nehmen oder Gewichte für die Aufmerksamkeit vorzubereiten.
Multiplizieren Sie dann diese Aufmerksamkeit, um einen Vektor (Kontext) $ c $ für die Ausgabe der Zeit $ t $ zu erstellen. Es mag so aussehen, als würden Sie etwas Schwieriges tun, aber es entspricht in etwa einem gewichteten Durchschnitt.
Dies ist der grundlegende Mechanismus der Aufmerksamkeit. Auf diese Weise können Sie von $ a_t $ abrufen, auf welche der Datenreihen Sie sich gerade konzentrieren.
Oben haben wir verschiedene Methoden der "Erklärung" eingeführt, aber gibt es eine Möglichkeit, diese "Erklärungskraft" zu überprüfen? Unter diesem Gesichtspunkt gibt es die folgenden zwei Punkte.
Sie können die Konsistenz der Beschreibung überprüfen, indem Sie sich ansehen, wie sich die Beschreibung ändert, z. B. wenn es sich bei der Eingabe um ein Bild handelt, und Sie es schrittweise verschieben. In der folgenden Abbildung wird, wenn das Bild von Nummer 2 nach rechts verschoben wird, verglichen, wie sich die Erklärung ($ R (x) $) für jede Methode ändert (wenn das LRP ganz rechts verschoben wird). Es ist ersichtlich, dass der Grad des Einflusses von gering ist.
Methods for Interpreting and Understanding Deep Neural Networks
Für die Richtigkeit der Erklärung gibt es eine Technik, die als Pixelflipping bezeichnet wird. Dies dient dazu, die für die Erklärung wichtigen Pixel (Wörter, wenn die Daten eine natürliche Sprache sind) schrittweise zu entfernen und den Grad der Änderung der Genauigkeit zu messen. Die folgende Abbildung zeigt, wie die Klassifizierungsgenauigkeit abnimmt, wenn die wichtigen Pixel extrahiert werden (wieder können Sie sehen, dass der LRP am schnellsten gesunken ist und sehr erklärend ist).
Methods for Interpreting and Understanding Deep Neural Networks
Mit diesen Methoden können Sie die "Erklärungskraft" der zur Erklärung verwendeten Methode überprüfen.
Die Schätzung der Grundlage für die Beurteilung in der Black Box bezieht sich im Wesentlichen nur auf die Eingabe und Ausgabe. Dies bedeutet, dass Sie beiseite legen, was Sie im Inneren tun. Solange die Ein- und Ausgänge in einem Netzwerk im Inneren übereinstimmen, muss die Schätzung der Grundlage für diese Entscheidung dieselbe sein ... ·darüber.
Was kann man mit den Techniken tun, die ich bisher eingeführt habe, um die Entscheidungen von DNN zu erklären? Da DNN sehr gut im Ausdruckslernen ist (Merkmalsextraktion), kann es möglich sein, neues Bewusstsein zu gewinnen, indem Menschen den Ausdruck von einem Objekt lernen lassen, das das Merkmal überhaupt nicht gut erkennt, und es dann erklären. ..
Das Folgende ist eine Visualisierung der Beziehungen zwischen den Atomen, die zur Bildung der Molekülstruktur beitragen, unter Verwendung eines Modells, das die Molekülstruktur trainiert (zum Lesen des Papiers, das diese Präsentation erstellt hat, ist eine beträchtliche Menge an chemischem Wissen erforderlich). Diese Beschreibung kann also etwas ungenau sein.
Quantum-Chemical Insights from Deep Tensor Neural Networks
AlphaGo übertraf die Leute in Go, aber wenn AlphaGo ein hohes Maß an Rechenschaftspflicht hätte, hätten die Leute mehr Wissen über Go gewonnen. Es gibt viele Forschungsbereiche, die die Menschen noch nicht vollständig verstanden haben. Ich denke, dass die Kraft des tiefen Lernens eine große Hilfe sein wird, um dies zu klären.
Es gibt viele ungelöste Probleme nicht nur im Bereich der Wissenschaft, sondern auch im Bereich der Sozialwissenschaften. Es ist übertrieben zu sagen, warum Menschen weiter kämpfen, aber in den letzten Jahren wurden Daten zu terroristischen Vorfällen zusammengestellt.
Solche Daten können Hinweise auf einige wirksame Maßnahmen liefern. Abgesehen davon führt die University of Columbia, die Untersuchungen zur Erkennung von Krisensituationen anhand der zu Beginn eingeführten Aussagen zu SNS durchführt, auch Untersuchungen zur Erkennung von Anzeichen von Bandenkonflikten bei SNS durch. Dies scheint in Zusammenarbeit mit Sozialarbeitern Datenanmerkungen durchgeführt zu haben.
Automatically Processing Tweets from Gang-Involved Youth: Towards Detecting Loss and Aggression
In Japan, wo es viele Erdbeben gibt, ist es eine vielversprechende Möglichkeit, es für Gegenmaßnahmen gegen Katastrophen einzusetzen. Vor und nach dem Erdbeben im Großen Osten Japans gibt es ein Satellitenbild namens ABCD-Datensatz, das angibt, was nach dem Tsunami sicher war und was nicht.
Um nach einer Beschädigung des Gebäudes eine Versicherung und eine Entschädigung zu erhalten, muss die Schadenssituation bewertet werden. Bei einer Katastrophe größeren Ausmaßes dauert es jedoch einige Zeit, bis das Geld das Opfer erreicht. Es gibt ein Problem, das es braucht. Zu diesem Zeitpunkt ist es eine große Hilfe, wenn Sie den Grad und die Gründe des Schadens sowie das Vorhandensein oder Fehlen eines Schadens nachweisen können.
Auf diese Weise gibt es nicht nur im wissenschaftlichen Bereich, sondern auch in der Gesellschaft so viele ungelöste Probleme, und es ist für den Menschen allein schwierig, "Merkmale" zu entdecken, um sie zu lösen. Unter diesen Umständen kann es möglich sein, eine Gelegenheit zu erhalten, das Problem zu lösen, indem nicht nur dem maschinellen Lernen, sondern auch dem tiefen Lernen, das besonders stark im Ausdruckslernen ist, "Erklärungskraft" verliehen wird.
Ich denke, dass die Methode, diese "Erklärungen" zu geben, wichtiger wird, um in Zukunft mehr Probleme zu lösen.
Articles
Datasets