Die folgende Seite / Studie zeigt, dass die tiefen neuronalen Netze leicht getäuscht werden können, indem Vorhersagen mit hohem Vertrauen für nicht erkennbare Bilder abgegeben werden, z
Wie ist das möglich? Kannst du das bitte im Idealfall im Klartext erklären?
Antworten:
Erstens sind diese Bilder (auch die ersten) kein kompletter Müll, obwohl sie für Menschen Junk sind. Sie sind tatsächlich mit verschiedenen fortgeschrittenen Techniken, einschließlich eines anderen neuronalen Netzwerks, fein abgestimmt.
Bilder, die eigentlich zufälliger Müll sind, wurden korrekt als nichts Bedeutendes erkannt:
Das ursprüngliche Ziel der Forscher war es, mithilfe der neuronalen Netze automatisch Bilder zu generieren, die den realen Dingen ähneln (indem sie das Feedback des Erkenners einholen und versuchen, das Bild zu ändern, um ein sichereres Ergebnis zu erzielen) . Beachten Sie, dass selbst in statisch ähnlichen Bildern - normalerweise in der Nähe des Zentrums - kleine Flecken auftreten, die die Erkennung auslösen.
Offensichtlich hatten diese Bilder genau die richtigen Unterscheidungsmerkmale, die mit dem übereinstimmten, wonach die KI in den Bildern suchte. Das "Paddel" -Bild hat eine paddelartige Form, der "Bagel" ist rund und die richtige Farbe, das "Projektor" -Bild ist ein kameraobjektivartiges Ding, die "Computertastatur" ist ein Bündel von Rechtecken (wie die einzelnen Schlüssel), und der "Maschendrahtzaun" sieht für mich zu Recht wie ein Maschendrahtzaun aus.
Weiterführende Literatur: das Originalpapier (großes PDF)
quelle
99% !
dass diese Bilder, die einem Objektmuster ähneln, echte Objekte darstellen. Es sei denn, DNN ist psychisch krank und glaubt, dass es einen Rorschach-Test in einem Krankenhaus gibt :-)99%
Zuversicht vorgezogen ? Für mich - der Hauptunterschied zwischen DNN und menschlicher Anerkennung ist die Tatsache, dass Menschen nicht gezwungen sind, etwas zu erkennen, während NN es zu sein scheint!Die von Ihnen bereitgestellten Bilder sind für uns möglicherweise nicht wiederzuerkennen. Sie sind eigentlich die Bilder, die wir erkennen, aber mithilfe des evolutionären Rahmens von Sferes entwickelt haben.
Während es für Menschen fast unmöglich ist, diese Bilder mit etwas anderem als abstrakten Künsten zu kennzeichnen, werden sie vom Deep Neural Network als vertraute Objekte mit einer Zuversicht von 99,99% gekennzeichnet.
Dieses Ergebnis hebt Unterschiede zwischen der Erkennung von Objekten durch DNNs und Menschen hervor. Bilder werden entweder direkt (oder indirekt) codiert
Laut diesem Video
Mehr Details hier und hier .
quelle
Alle Antworten hier sind großartig, aber aus irgendeinem Grund wurde bisher noch nichts darüber gesagt, warum dieser Effekt Sie nicht überraschen sollte . Ich werde die Lücke füllen.
Lassen Sie mich mit einer Voraussetzung beginnen, die für das Funktionieren unbedingt erforderlich ist: Der Angreifer muss die Architektur des neuronalen Netzwerks kennen (Anzahl der Schichten, Größe jeder Schicht usw.). Außerdem kennt der Angreifer in allen Fällen, die ich selbst untersucht habe, den Schnappschuss des in der Produktion verwendeten Modells, dh alle Gewichte. Mit anderen Worten, der "Quellcode" des Netzwerks ist kein Geheimnis.
Sie können ein neuronales Netzwerk nicht täuschen, wenn Sie es wie eine Black Box behandeln. Und Sie können nicht dasselbe Täuschungsimage für verschiedene Netzwerke wiederverwenden. Tatsächlich muss man das Zielnetzwerk selbst "trainieren", und hier meine ich mit Training Vorwärts- und Rückwärtspässe, die jedoch speziell für einen anderen Zweck hergestellt wurden.
Warum funktioniert es überhaupt?
Hier ist die Intuition. Bilder sind sehr hochdimensional: Auch der Raum kleiner 32x32-Farbbilder hat
3 * 32 * 32 = 3072
Abmessungen. Der Trainingsdatensatz ist jedoch relativ klein und enthält reale Bilder, die alle eine gewisse Struktur und nette statistische Eigenschaften aufweisen (z. B. Farbglattheit). Der Trainingsdatensatz befindet sich also auf einer winzigen Mannigfaltigkeit dieses riesigen Bildraums.Die Faltungsnetzwerke funktionieren sehr gut auf dieser Mannigfaltigkeit, wissen aber im Grunde nichts über den Rest des Raums. Die Klassifizierung der Punkte außerhalb des Verteilers ist nur eine lineare Extrapolation basierend auf den Punkten innerhalb des Verteilers. Kein Wunder, dass einzelne Punkte falsch hochgerechnet werden. Der Angreifer benötigt nur einen Weg, um zu dem nächstgelegenen dieser Punkte zu navigieren.
Beispiel
Lassen Sie mich Ihnen ein konkretes Beispiel geben, wie man ein neuronales Netzwerk zum Narren hält. Um es kompakt zu machen, werde ich ein sehr einfaches logistisches Regressionsnetzwerk mit einer Nichtlinearität (Sigmoid) verwenden. Bei einer 10-dimensionalen Eingabe
x
wird eine einzelne Zahl berechnetp=sigmoid(W.dot(x))
, die die Wahrscheinlichkeit von Klasse 1 (gegenüber Klasse 0) darstellt.Angenommen, Sie kennen
W=(-1, -1, 1, -1, 1, -1, 1, 1, -1, 1)
und beginnen mit einer Eingabex=(2, -1, 3, -2, 2, 2, 1, -4, 5, 1)
. Ein Forward Pass ergibt einesigmoid(W.dot(x))=0.0474
Wahrscheinlichkeit von 95%, diex
beispielsweise Klasse 0 ist.Wir möchten ein weiteres Beispiel finden
y
, das sehr nahe kommt,x
aber vom Netzwerk als 1 klassifiziert wird. Beachten Sie, dassx
es 10-dimensional ist, sodass wir die Freiheit haben, 10 Werte zu verschieben, was sehr viel ist.Da
W[0]=-1
es negativ ist, ist es besser, ein kleinesy[0]
zu haben, um einen kleinen Gesamtbeitrag zu leisteny[0]*W[0]
. Also lasst uns macheny[0]=x[0]-0.5=1.5
. EbensoW[2]=1
positiv ist , so ist es besser , zu erhöhen ,y[2]
umy[2]*W[2]
größer:y[2]=x[2]+0.5=3.5
. Und so weiter.Das Ergebnis ist
y=(1.5, -1.5, 3.5, -2.5, 2.5, 1.5, 1.5, -3.5, 4.5, 1.5)
undsigmoid(W.dot(y))=0.88
. Mit dieser einen Änderung haben wir die Wahrscheinlichkeit der Klasse 1 von 5% auf 88% verbessert!Verallgemeinerung
Wenn Sie sich das vorherige Beispiel genauer ansehen, werden Sie feststellen, dass ich genau wusste, wie man Optimierungen vornimmt
x
, um es in die Zielklasse zu verschieben, da ich den Netzwerkgradienten kannte. Was ich tat, war eigentlich eine Rückübertragung , aber in Bezug auf die Daten, anstelle von Gewichten.Im Allgemeinen beginnt der Angreifer mit der Zielverteilung
(0, 0, ..., 1, 0, ..., 0)
(überall Null, mit Ausnahme der Klasse, die er erreichen möchte), breitet sich auf die Daten zurück und unternimmt einen winzigen Schritt in diese Richtung. Netzwerkstatus wird nicht aktualisiert.Jetzt sollte klar sein, dass es eine gemeinsame Funktion von Feed-Forward-Netzwerken ist, die sich mit einer kleinen Datenvielfalt befassen, unabhängig davon, wie tief sie ist oder welche Art von Daten (Bild, Audio, Video oder Text).
Potection
Der einfachste Weg, um zu verhindern, dass das System betrogen wird, ist die Verwendung eines Ensembles neuronaler Netze, dh eines Systems, das die Stimmen mehrerer Netze bei jeder Anfrage zusammenfasst. Es ist viel schwieriger, die Ausbreitung in Bezug auf mehrere Netzwerke gleichzeitig rückgängig zu machen. Der Angreifer versucht möglicherweise, dies nacheinander und netzwerkweise zu tun, aber das Update für ein Netzwerk kann leicht die Ergebnisse eines anderen Netzwerks verfälschen. Je mehr Netzwerke verwendet werden, desto komplexer wird ein Angriff.
Eine andere Möglichkeit besteht darin, die Eingabe zu glätten, bevor sie an das Netzwerk übergeben wird.
Positive Verwendung der gleichen Idee
Sie sollten nicht denken, dass die Rückübertragung auf das Image nur negative Anwendungen hat. Eine sehr ähnliche Technik, die Entfaltung genannt wird , wird zur Visualisierung und zum besseren Verständnis dessen, was Neuronen gelernt haben, verwendet.
Diese Technik ermöglicht es, ein Bild zu synthetisieren, das ein bestimmtes Neuron zum Feuern bringt, und im Grunde visuell zu sehen, "wonach das Neuron sucht", was Faltungs-Neuronale Netze im Allgemeinen deutlicher macht.
quelle
Eine wichtige Frage, die in der neuronalen Netzwerkforschung noch nicht zufriedenstellend beantwortet werden kann, ist, wie DNNs die von ihnen angebotenen Vorhersagen treffen. DNNs funktionieren effektiv (wenn auch nicht genau), indem Patches in den Bildern einem "Wörterbuch" von Patches zugeordnet werden, von denen eines in jedem Neuron gespeichert ist (siehe das Youtube-Katzenpapier ). Daher kann es sein, dass das Bild nicht auf hoher Ebene angezeigt wird, da nur Patches betrachtet werden und Bilder normalerweise auf eine viel niedrigere Auflösung verkleinert werden, um die Ergebnisse in Systemen der aktuellen Generation zu erhalten. Methoden, die untersuchen, wie die Komponenten des Bildes interagieren, können diese Probleme möglicherweise vermeiden.
Einige Fragen, die für diese Arbeit gestellt werden sollten, lauten: Wie sicher waren die Netzwerke, als sie diese Vorhersagen machten? Wie viel Volumen belegen solche gegnerischen Bilder im Raum aller Bilder?
Einige Arbeiten, die mir in dieser Hinsicht bekannt sind, stammen von Dhruv Batra und Devi Parikhs Labor von Virginia Tech, die sich mit Fragenbeantwortungssystemen befassen: Analyse des Verhaltens visueller Fragebeantwortungsmodelle und Interpretation visueller Fragebeantwortungsmodelle .
Weitere Arbeiten dieser Art sind erforderlich, und genau wie das menschliche visuelle System von solchen "optischen Täuschungen" getäuscht wird, können diese Probleme unvermeidbar sein, wenn wir DNNs verwenden, obwohl AFAIK weder theoretisch noch empirisch so oder so bekannt ist.
quelle
Intuitiv sollten zusätzliche verborgene Schichten das Netzwerk in die Lage versetzen, komplexere Klassifizierungsfunktionen zu erlernen und somit eine bessere Klassifizierung durchzuführen. Während es tiefes Lernen genannt werden kann, ist es tatsächlich ein flaches Verständnis.
Testen Sie Ihr Wissen: Welches Tier in der Tabelle unten ist ein Felis silvestris catus , nehmen Sie sich Zeit und betrügen Sie nicht. Hier ist ein Hinweis: Was ist eine Hauskatze?
Zum besseren Verständnis lesen Sie bitte " Angriff auf verwundbare Visualisierungen " und " Warum sind tiefe neuronale Netze schwer zu trainieren? ".
Das Problem ist analog zu Aliasing , einem Effekt, der bewirkt, dass verschiedene Signale beim Abtasten nicht mehr voneinander unterschieden werden (oder Aliase), und dem Stagecoach-Rad-Effekt , bei dem sich ein Speichenrad anders zu drehen scheint als es sich tatsächlich dreht.
Das neuronale Netzwerk weiß nicht , was es sieht oder in welche Richtung es geht.
Tiefe neuronale Netze sind keine Experten für etwas, sie sind geschult, mathematisch zu entscheiden, ob ein Ziel erreicht wurde. Wenn sie nicht geschult sind, falsche Antworten abzulehnen, haben sie keine Vorstellung davon, was falsch ist. sie wissen nur , was richtig und was nicht richtig ist - falsch und "nicht richtig" sind nicht notwendigerweise dasselbe, und auch nicht "richtig" und "richtig".
Das neuronale Netzwerk weiß nicht, ob es richtig oder falsch ist.
Genau wie die meisten Menschen eine Hauskatze nicht kennen würden, wenn sie eine, zwei oder mehr oder keine sehen würden. Wie viele Hauskatzen im obigen Fotoraster, keine. Jegliche Anschuldigungen, süße Katzenbilder aufgenommen zu haben, sind unbegründet. Das sind alles gefährliche wilde Tiere.
Hier ist ein weiteres Beispiel. Macht die Beantwortung der Frage Bart und Lisa schlauer, weiß die Person, die sie fragen, überhaupt, ob es unbekannte Variablen gibt, die ins Spiel kommen können?
Wir sind noch nicht da, aber neuronale Netze können schnell eine Antwort liefern, die wahrscheinlich richtig ist, besonders wenn sie richtig trainiert wurden, um alle Fehler zu vermeiden.
quelle
Die neuronalen Netze können leicht getäuscht oder gehackt werden, indem bestimmte strukturierte Störungen im Bildraum hinzugefügt werden ( Szegedy 2013 , Nguyen 2014 ), da nichtdiskriminierende Informationen in ihren Eingaben ignoriert werden.
Zum Beispiel:
Grundsätzlich besteht die hohe Konfidenzvorhersage in bestimmten Modellen aufgrund einer „ Kombination ihrer lokal linearen Natur und ihres hochdimensionalen Eingaberaums “. 2015
Das auf der ICLR 2015 veröffentlichte Konferenzpapier (Arbeit von Dai) weist darauf hin, dass die Übertragung diskriminativ trainierter Parameter auf generative Modelle ein großartiger Bereich für weitere Verbesserungen sein könnte.
quelle
Kann nicht kommentieren (aufgrund der erforderlichen 50 Wiederholungen), aber ich wollte eine Antwort an Vishnu JK und den OP geben. Ich denke, ihr überspringt die Tatsache, dass das neuronale Netzwerk wirklich nur aus programmatischer Sicht sagt, dass "dies am ähnlichsten ist".
Zum Beispiel, während wir die obigen Bildbeispiele als "abstrakte Kunst" auflisten können, sind sie definitiv am ähnlichsten, wie sie aufgelistet wurden. Denken Sie daran, dass Lernalgorithmen einen Gültigkeitsbereich für das haben, was sie als Objekt erkennen, und wenn Sie sich alle obigen Beispiele ansehen ... und über den Gültigkeitsbereich des Algorithmus nachdenken ... sind diese sinnvoll (auch die auf einen Blick, die wir als sinnvoll erkennen würden) weißes Rauschen). Im Vishnu-Beispiel der Zahlen können Sie, wenn Sie Ihre Augen verwischen und die Bilder unscharf machen, tatsächlich auf jeden Fall Muster erkennen, die die fraglichen Zahlen wirklich genau widerspiegeln.
Das Problem, das hier gezeigt wird, ist, dass der Algorithmus keinen "unbekannten Fall" zu haben scheint. Grundsätzlich, wenn die Mustererkennung angibt, dass sie im Ausgabebereich nicht vorhanden ist. (also eine endgültige Ausgabeknotengruppe, die besagt, dass dies nichts ist, wovon ich weiß). Zum Beispiel tun dies auch Menschen, da es eine Sache ist, die Menschen und Lernalgorithmen gemeinsam haben. Hier ist ein Link, um zu zeigen, wovon ich spreche (was ist das Folgende, definieren Sie es), wobei nur bekannte Tiere verwendet werden, die existieren:
Jetzt als Person, begrenzt durch das, was ich weiß und sagen kann, muss ich zu dem Schluss kommen, dass das Folgende ein Elefant ist. Aber es ist nicht. Lernalgorithmen haben (größtenteils) keine "Like A" -Anweisung, die Ausgabe validiert immer auf einen Konfidenzprozentsatz. Ein Trick auf diese Weise ist also nicht überraschend ... Was natürlich überraschend ist, ist, dass es auf der Grundlage seiner Kenntnisse tatsächlich zu einem Punkt kommt, an dem, wenn man sich die oben aufgeführten Fälle von OP und Vishnu ansieht, dass eine Person. .. mit ein wenig schauen ... kann sehen, wie der Lernalgorithmus die Assoziation wahrscheinlich gemacht hat.
Ich würde es also nicht wirklich als eine falsche Bezeichnung für den Algorithmus bezeichnen oder sogar als einen Fall, in dem es ausgetrickst wurde ... eher als einen Fall, in dem der Geltungsbereich falsch entwickelt wurde.
quelle
Es gibt bereits viele gute Antworten, ich werde nur zu denjenigen, die vor mir kamen, hinzufügen:
Diese Art von Bildern , die Sie sich beziehen, werden als kontradiktorische Störungen (siehe 1 , und es ist nicht auf Bilder beschränkt, hat es sich gezeigt , auch auf Text anwenden, sehen Jia & Liang, EMNLP 2017 . Im Text, der Einführung eines Ein irrelevanter Satz, der dem Absatz nicht widerspricht, hat das Netzwerk zu einer völlig anderen Antwort veranlasst (siehe Jia & Liang, EMNLP 2017 ).
Der Grund, warum sie funktionieren, ist die Tatsache, dass das neuronale Netzwerk Bilder auf eine andere Weise als wir betrachtet, gepaart mit der hohen Dimensionierung des Problemraums. Wenn wir das ganze Bild sehen, sehen sie eine Kombination von Merkmalen, die sich zu einem Objekt verbinden ( Moosavi-Dezfooli et al., CVPR 2017 ). Nach Angaben von Störungen, die in einem Netzwerk auftreten, ist die Wahrscheinlichkeit hoch, in anderen Netzwerken zu arbeiten:
In der obigen Abbildung ist zu sehen, dass die für das VGG-19-Netzwerk berechneten universellen Störungen für alle anderen getesteten Architekturen eine Täuschungsrate von über 53% aufweisen.
Wie gehen Sie mit der Bedrohung durch widersprüchliche Störungen um? Zum einen können Sie versuchen, so viele Störungen wie möglich zu erzeugen und damit Ihr Modell zu optimieren. Wenn dies das Problem etwas löst, löst es das Problem nicht vollständig. In ( Moosavi-Dezfooli et al., CVPR 2017 ) berichtete der Autor, dass eine Wiederholung des Prozesses durch Berechnung neuer Störungen und anschließende Feinabstimmung, unabhängig von der Anzahl der Iterationen, keine weiteren Verbesserungen zu erzielen scheint 80%.
Störungen sind ein Hinweis auf die geringe Musterübereinstimmung, die neuronale Netze ausführen, und auf den minimalen Mangel an tiefgreifendem Verständnis des vorliegenden Problems. Es muss noch mehr Arbeit geleistet werden.
quelle
Die meisten anderen Antworten sind interessant, und einige weisen eine gewisse Genauigkeit auf, so dass ich diese Behandlung nicht wiederholen werde, aber ich werde eine qualitative Antwort vorbringen, die mehr zum Stand der Forschung als zu einer genauen Einschätzung des Mangels an Sicherheitsverteidigungen in Bezug auf spricht aktuelle künstliche Netzwerkdesigns.
Wenn jemand fragte: "Wie kommt es, dass Menschen so leicht zum Narren gehalten werden?" Ich lächle zustimmend und sage: "Ich nehme an, wir sind nicht so tief."
Das ist auch meine Einschätzung des Zustands künstlicher Netzwerke. Dennoch kann es zu weiteren Innovationen und Entdeckungen kommen, und die Frage der Sicherheit beim Training, Einsatz und Einsatz von KI-Komponenten wird mit Sicherheit angegangen, wenn erfolgreiche Angriffe die Glaubwürdigkeit und den guten Willen der Unternehmen kosten.
Der Verkauf schlecht abgesicherter Technik ist nichts Neues. Niemand hier im Labor wird wissenschaftliche Theorien, Daten oder Verfahren in die Cloud stellen, es sei denn, wir haben bereits Open-Sourcing- oder Creative-Commons-Lizenzen dafür vergeben.
quelle