{"id":4133,"date":"2021-07-12T04:00:36","date_gmt":"2021-07-12T04:00:36","guid":{"rendered":"https:\/\/lamarr-institute.org\/blog\/adversarial-examples-abwehren\/"},"modified":"2025-11-12T14:52:04","modified_gmt":"2025-11-12T14:52:04","slug":"adversarial-examples-abwehren","status":"publish","type":"blog","link":"https:\/\/lamarr-institute.org\/de\/blog\/adversarial-examples-abwehren\/","title":{"rendered":"Abwehrspiel: Was k\u00f6nnen wir gegen Adversarial Examples tun?"},"content":{"rendered":"\n<p>Wie wir im <a href=\"https:\/\/machinelearning-blog.de\/grundlagen\/was-sind-adversarial-examples\/\" target=\"_blank\" rel=\"noopener\">vorherigen<\/a><a href=\"https:\/\/lamarr-institute.org\/de\/was-sind-adversarial-examples\/\"> <\/a><a href=\"https:\/\/machinelearning-blog.de\/grundlagen\/was-sind-adversarial-examples\/\" target=\"_blank\" rel=\"noopener\">Beitrag<\/a> erfahren haben, ist Software f\u00fcr Maschinelles Lernen anf\u00e4llig f\u00fcr bestimmte Angriffe durch k\u00fcnstlich ver\u00e4nderte Eingabedaten, die zu Fehlern des Modells f\u00fchren. Solche unvorhergesehenen und absichtlich herbeigef\u00fchrten Ausf\u00e4lle sind f\u00fcr Anwendungen, an denen Menschen beteiligt sind und deren Entscheidungen das Leben von Menschen beeinflussen, dringend abzuwehren. Somit ist die Zuverl\u00e4ssigkeit eines KI-Systems eine prim\u00e4re Anforderung, sodass mehrere Techniken entwickelt wurden, um die sogenannte &#8222;adversariale Robustheit&#8220; zu erreichen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span style=\"font-size: 18pt;\">Was k\u00f6nnen wir gegen Adversarial Examples tun?<\/span><\/h2>\n\n\n\n<p>Seitdem die \u201eAdversarial Attacks\u201c ein Forschungsgebiet geworden sind, hat sich auch der Schutz vor Adversarial Attacks entwickelt. Wie bei jeder Art von Schutz ist es wichtig, vorher zu wissen, wovor wir das System sch\u00fctzen wollen. Wenn wir wissen, welche Art von Angriffen zu erwarten sind oder zumindest, worauf die Angreifer abzielen, k\u00f6nnen wir ein System konstruieren, das dahingehend gr\u00fcndlich auf die Robustheit \u00fcberpr\u00fcft wurde. Somit bereitet man das System auf &#8222;bekannte Unbekannte&#8220; vor. Ein gr\u00f6\u00dferes Problem stellen jedoch die sogenannten &#8222;unbekannten Unbekannten&#8220; dar. Popul\u00e4r wurde dieser Begriff nach einem <a href=\"https:\/\/www.scientificamerican.com\/article\/rumsfelds-wisdom\/\" target=\"_blank\" rel=\"noopener\">Nachrichtenbriefing<\/a> mit US-Verteidigungsminister Donald Rumsfeld, demzufolge die Hauptgefahr in den Angriffen liegt, die wir nicht kennen und nicht erwarten.<\/p>\n\n\n\n<p>Dabei wissen wir aufgrund der langen Vorgeschichte der Adversarial Examples schon recht viel dar\u00fcber, was zu erwarten ist: Handelt es sich<em> um einen Versuch, das Modell und die Modellparameter zu stehlen oder seine Funktionalit\u00e4t zu beeintr\u00e4chtigen? Wenn Letzteres der Fall ist, werden die Angreifer versuchen, die Trainingsdaten zu ver\u00e4ndern oder zu \u201evergiften\u201c, um sp\u00e4ter Hintert\u00fcren zu haben oder Eingaben zu erzeugen, die das Modell zu Fehlern zwingen (auch \u201e<a href=\"https:\/\/arxiv.org\/abs\/1804.00308\" target=\"_blank\" rel=\"noopener\">poisining attacks<\/a>\u201c genannt)? Sind die Angreifer in der Lage, die Architektur, die Parameter und die Gradienten des Modells zu stehlen, oder m\u00fcssen sie einen Ersatz f\u00fcr diese konstruieren?<\/em> All diese Fragen k\u00f6nnen uns dabei helfen, ein Angriffsmodell zu erstellen, das uns auf Adversarial Attacks vorbereitet.<\/p>\n\n\n\n<p>Dabei sollte zus\u00e4tzlich immer der Aufwand, um das Modell f\u00fcr Adversarial Attacks robust zu machen, im Auge gehalten werden. Wenn das System nicht \u00f6ffentlich zug\u00e4nglich ist und nur f\u00fcr den internen Gebrauch gedacht ist (was bedeutet, dass Eingaben nur von zuverl\u00e4ssigen, verantwortlichen Mitarbeitenden gemacht werden), sind Angriffe auf ein System in der Praxis sehr unwahrscheinlich. Es ist m\u00f6glicherweise nicht notwendig, das System gegen Angriffe zu sch\u00fctzen. Die Zeit und der Aufwand k\u00f6nnten besser in die St\u00e4rkung der Netzwerksicherheit investiert werden, um unerw\u00fcnschte Zugriffe auf das Modell von vornherein zu verhindern.<br>Eine weitere wichtige Frage, die man sich stellen muss, ist, ob ein Angreifer in irgendeiner Weise von der Nutzung von Rechenressourcen f\u00fcr einen Angriff profitieren kann. Im Fall von Spam-Filtern ist der Nutzen klar \u2013 der Angreifer bekommt die M\u00f6glichkeit, Spam-Nachrichten einzuschleusen, um Geld zu ergaunern. Aber in einigen F\u00e4llen macht die Ausgabe des Systems keinen gro\u00dfen Unterschied, zum Beispiel bei Anwendungen zur Alterserkennung in der Unterhaltungsbranche bei spielerischen Apps, wo der Angreifer nur eine falsche Vorhersage erh\u00e4lt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span style=\"font-size: 18pt;\">Ans\u00e4tze zum Schutz vor Adversarial Examples<\/span><\/h2>\n\n\n\n<p>Es gibt mittlerweile eine Vielzahl von Schutztechniken f\u00fcr Machine Learning-Modelle. Jede von ihnen ist f\u00fcr bestimmte Angriffsszenarien geeignet und kann im selben Moment gegen andere Angriffe schwach sein.<\/p>\n\n\n\n<p>Der einfachste Ansatz ist, die Angriffe, die sich gegen das System richten, zu verfolgen und abzufangen und das System jedes Mal zu aktualisieren \u2013 also neu zu trainieren. Ein \u00e4hnlicher Ansatz existiert in der Software-Entwicklung: Angreifer oder sogar speziell angeheuerte Spezialisten versuchen, Schwachstellen zu finden und diese zu verbessern. Im Anschluss wird eine neue korrigierte Version ver\u00f6ffentlicht, die gegen diese Schwachstellen sch\u00fctzt. Andererseits k\u00f6nnen wir auch versuchen, alle Informationen \u00fcber das Modell (Architektur, Parameter, Gradienten) zu sch\u00fctzen und zu verbergen, so dass es keine Chance gibt, einen Angriff zu generieren. Ein weiterer Weg ist der Versuch, ein universell robustes System zu entwickeln, was wegen der vielen Unbekannten, die ber\u00fccksichtigt werden m\u00fcssen, viel schwieriger ist.<\/p>\n\n\n\n<p>Im Folgenden stellen wir drei High Level-Ans\u00e4tze f\u00fcr ein robusteres System vor:<\/p>\n\n\n\n<p><strong>Adversariale Training<\/strong>: Wie im <a href=\"https:\/\/machinelearning-blog.de\/grundlagen\/was-sind-adversarial-examples\/\" target=\"_blank\" rel=\"noopener\">letzten <\/a><a href=\"https:\/\/lamarr-institute.org\/de\/was-sind-adversarial-examples\/\">A<\/a><a href=\"https:\/\/machinelearning-blog.de\/grundlagen\/was-sind-adversarial-examples\/\" target=\"_blank\" rel=\"noopener\">rtikel<\/a> erl\u00e4utert, werden adversarial Examples haupts\u00e4chlich so generiert, dass der Verlust des Modells f\u00fcr die jeweilige ge\u00e4nderte Eingabe maximiert wird. Die Idee dieses spezialisierten Trainingsansatzes besteht darin, das Verlustminimierungsproblem in ein Minimax-Problem umzuwandeln. Das passiert wie folgt: Zuerst wird der der Trainingsverlust maximiert, in dem wir die Eingaben ver\u00e4ndern. Im Grunde werden in diesem Punkt bis zu einem gewissen Grad m\u00f6gliche adversarial Examples erzeugt. Im Anschluss wird dieser maximal m\u00f6gliche Verlust, der bei solchen adversarial Examples entsteht, minimiert, um die finalen Parameter des Netzwerks zu erhalten. Dabei befasst sich dieser Schutz mit den \u201eepsilon pertubation adversarial examples\u201c, das hei\u00dft mit Beispielen, die sehr nahe an den Originalen liegen. Damit dieser Schutz funktioniert, m\u00fcssen wir davon ausgehen, dass die Daten der realen Welt glatt sind und kleine \u00c4nderungen die Vorhersage nicht drastisch ver\u00e4ndern sollten. Dies trifft im Allgemeinen f\u00fcr Bilder- oder Textdaten zu. Ein solches regularisiertes Training in verschiedenen Formen ist die beliebteste Methode, um robuste Modelle zu erzeugen. Eine intuitive Erkl\u00e4rung f\u00fcr diesen Ansatz ist, dass ein solches Training mit der Erzeugung einer glatteren Verlustfl\u00e4che verbunden ist und sich damit die Chance verringert, ein naheliegendes Beispiel mit hohem Fehler zu erzeugen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1632\" height=\"636\" src=\"https:\/\/lamarr-institute.org\/wp-content\/uploads\/AdversarialExamples2_MW-1.gif\" alt=\"- Lamarr Institute for Machine Learning (ML) and Artificial Intelligence (AI)\" class=\"wp-image-13277\" title=\"\"><figcaption class=\"wp-element-caption\">\u00a9 ML2R <br>Zuerst zeigt das Bild schematisch die Gewichte im Minimum des Verlustes nach dem Training, wobei man die Eingabe x so ver\u00e4ndern kann, dass der Verlust w\u00e4chst, aber die \u00c4nderungen kleiner als epsilon sind. Anschlie\u00dfend zeigt das Bild schematisch die Ergebnisse des regularisierten Trainings \u2013 es gibt keine gro\u00dfen Verlustwerte mehr in der N\u00e4he.<\/figcaption><\/figure>\n\n\n\n<p>Zus\u00e4tzlich k\u00f6nnen wir dem Modell auch direkt schlechte Beispiele zeigen, damit es lernt, wie man solche Eingaben erkennt. Die normalen Trainingsdaten werden mit generierten adversarial Examples und korrekten Bezeichnungen gemischt. Ein solches Training f\u00fchrt zu Modellen, die gegen\u00fcber \u00e4hnlichen adversarial Examples robust sind. Dennoch ist die Generierung des Maximalverlust-Beispiels ein m\u00fchsamer Prozess und auch adversarial Inputs, die auf eine andere Weise generiert werden, \u00fcberwinden diesen Schutz.<\/p>\n\n\n\n<p><strong>Formale Verifikation eines Modells<\/strong>: Idealerweise w\u00fcrde man sich eine formale Verifikation w\u00fcnschen, die beweist, dass das Modell nicht von einem Angreifer \u00fcberlistet werden kann. F\u00fcr tiefe neuronale Netze hat sich dies als schwierig erwiesen. Ein Ansatz besteht darin, ein neuronales Netzwerk in ein logisch nachvollziehbares Modell zu \u00fcbersetzen und die Robustheit dieses nachvollziehbaren Modells zu verifizieren. Ein von der Softwaresicherheit inspirierter Ansatz besteht darin, das Modell gegen adversarial Examples auf den Trainingsdaten und einigen zus\u00e4tzlichen Referenzdaten zu testen. F\u00fcr die modernsten Deep Learning Modelle, die eine solche Verifizierung erfordern, ist dies sehr rechenintensiv. Die vorgeschlagenen Methoden sind im Moment nur f\u00fcr die shallow Modelle praktikabel. Denn im Gegensatz zu Deep Learning Modellen verwenden shallow Modelle nur 1-2 hidden layer f\u00fcr ihr neuronales Netz.<\/p>\n\n\n\n<p><strong>Identifikation im Vorfeld<\/strong>: Eine weitere gro\u00dfe Gruppe von Schutzans\u00e4tzen befasst sich mit der Identifizierung von gegnerischen Eingaben, bevor ein Fehler auftritt. Diese Aufgabe ist stark verwandt mit den Aufgaben der Ausrei\u00dfererkennung (outlier detection), der Erkennung von Verteilungsabweichungen (out-of-distribution detection) und der Unsicherheitsmessung (uncertainty measurement). Sie alle haben im Grunde das gleiche Ziel, n\u00e4mlich die Eingaben zu identifizieren, die f\u00fcr unser Modell ungew\u00f6hnlich sind und zu unvorhersehbarem Verhalten f\u00fchren k\u00f6nnten. Das kann auf verschiedene Arten geschehen: Entweder durch Modifizierung der Eingaben, so dass adversarial Examples gutartig werden, oder durch die Einrichtung eines Detektors vor dem Modell, der ein adversarial Example zur\u00fcckweist. Eine interessante Technik schl\u00e4gt vor, dem Modell selbst zu erlauben, adversarial Examples (oder alle out-of-distribution Beispiele) in einer separaten NULL-Klasse zu klassifizieren und so Fehler an ihnen zu verhindern. Das Hauptproblem sind hier Epsilon-Pertubationsbeispiele, da sie von den nat\u00fcrlichen Beispielen fast nicht zu unterscheiden sind. Insgesamt sind diese Ans\u00e4tze sehr kontextspezifisch. F\u00fcr viele von ihnen wurde gezeigt, dass sie nicht <a href=\"https:\/\/dl.acm.org\/doi\/10.1145\/3128572.3140444\" target=\"_blank\" rel=\"noopener\">allzu gut zu verallgemeinern sind<\/a>, so dass dieser Weg den Ansatz des adversen Trainings unterliegt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Gibt es eine universelle Anleitung f\u00fcr den Schutz der ML Modelle?<\/h2>\n\n\n\n<p>Um einen universellen Schutzmechanismus zu beschreiben, m\u00fcssten wir alle &#8222;unbekannten Unbekannten&#8220; beschreiben, was per Definition unm\u00f6glich ist. Alles, was wir also tun k\u00f6nnen, ist, die verwendeten Trainingsdaten zu sch\u00fctzen:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>um die Erstellung eines Modells mit Hintert\u00fcren f\u00fcr Angreifer zu vermeiden;<\/li>\n\n\n\n<li>alle Informationen \u00fcber das Modell zu sch\u00fctzen, wie zum Beispiel Trainingsdaten und Algorithmus, Architektur und seine Parameter;<\/li>\n\n\n\n<li>ein Modell unter Ber\u00fccksichtigung aller &#8222;bekannten Unbekannten&#8220; zu erstellen und es reaktiv neu zu trainieren, wenn neue Angriffe beschrieben werden.<\/li>\n<\/ol>\n\n\n\n<p>Zudem sollten wir ein maximal m\u00f6gliches Wissen \u00fcber die Aufgabe und die Dom\u00e4ne haben: Manchmal kann eine kleine \u00c4nderung der Eingabe die Ausgabe tats\u00e4chlich drastisch \u00e4ndern. Die aktuelle Forschung ist sehr aktiv und es k\u00f6nnte sein, dass in einiger Zeit auch eine formale Verifikationsmethode vorgeschlagen wird. Aber bis dahin m\u00fcssen wir sicherstellen, dass alle kritischen Anwendungsbereiche maximal gesch\u00fctzt sind.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Software f\u00fcr Maschinelles Lernen ist f\u00fcr bestimmte Angriffe anf\u00e4llig: So k\u00f6nnen k\u00fcnstlich ver\u00e4nderte Eingabedaten zum Versagen des zugrunde liegenden Modells f\u00fchren. Wir stellen Techniken zur Entwicklung von adversarialer Robustheit vor.<\/p>\n","protected":false},"author":9,"featured_media":4136,"template":"","meta":{"_acf_changed":false,"footnotes":""},"blog-category":[1416,390],"blog-tag":[1422,1460,1590,1593],"class_list":["post-4133","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog-category-alle-blogbeitraege","blog-category-grundlagen","blog-tag-adversarial-attacks-de","blog-tag-cybersicherheit","blog-tag-robustheit","blog-tag-sichere-ki"],"acf":[],"publishpress_future_workflow_manual_trigger":{"enabledWorkflows":[]},"_links":{"self":[{"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog\/4133","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/users\/9"}],"version-history":[{"count":0,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog\/4133\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/media\/4136"}],"wp:attachment":[{"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/media?parent=4133"}],"wp:term":[{"taxonomy":"blog-category","embeddable":true,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog-category?post=4133"},{"taxonomy":"blog-tag","embeddable":true,"href":"https:\/\/lamarr-institute.org\/de\/wp-json\/wp\/v2\/blog-tag?post=4133"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}