DE112020003829T5 - Mindern von feindlich ausgerichteten auswirkungen in maschinenlernsystemen - Google Patents

Mindern von feindlich ausgerichteten auswirkungen in maschinenlernsystemen Download PDF

Info

Publication number
DE112020003829T5
DE112020003829T5 DE112020003829.7T DE112020003829T DE112020003829T5 DE 112020003829 T5 DE112020003829 T5 DE 112020003829T5 DE 112020003829 T DE112020003829 T DE 112020003829T DE 112020003829 T5 DE112020003829 T5 DE 112020003829T5
Authority
DE
Germany
Prior art keywords
model
cleaned
models
training data
trained
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112020003829.7T
Other languages
English (en)
Inventor
Pin-Yu Chen
Payel Das
Karthikeyan Natesan Ramamurthy
Pu Zhao
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112020003829T5 publication Critical patent/DE112020003829T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)
  • Cultivation Of Plants (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

Techniken zum Bereinigen von Maschinenlern- (ML) Modellen werden bereitgestellt. Ein erstes ML-Modell wird zusammen mit sauberen Schulungsdaten empfangen. Ein Pfad zwischen dem ersten ML-Modell und einem zweiten ML-Modell wird durch Verwenden der sauberen Schulungsdaten geschult. Ein bereinigtes ML-Modell wird auf Grundlage von mindestens einem Punkt auf dem geschulten Pfad generiert. Eine oder mehrere ML-Funktionalitäten werden durch Verwenden des bereinigten ML-Modells ermöglicht.

Description

  • HINTERGRUND
  • Die vorliegende Offenbarung betrifft Maschinenlernen und insbesondere ein Mindern von feindlich ausgerichteten Auswirkungen in Maschinenlernsystemen.
  • Verschiedene Maschinenlernmodelle und -techniken wurden in einer großen Vielfalt von Anwendungen angewendet und zeigen auch weiterhin enormes Potenzial. Allerdings erfordern viele Modelle beträchtliche Schulungsdaten, um zufriedenstellende Ergebnisse zurückzugeben. Es ist oft schwierig, teuer und zeitaufwendig diese Daten zu erhalten. Zum Verringern dieser Belastungen verlassen sich viele auf vorab geschulte Modelle oder vorab gekennzeichnete Schulungsdaten. Diese Modelle und Daten sind jedoch relativ unbekannt und können unsauber oder verunreinigt sein. Zum Beispiel können Schulungsdaten mit einem bestimmten Auslösermuster verfälscht sein, das einer Zielbezeichnung zugehörig ist. Während der Schulung integrieren die Modelle dieses feindlich ausgerichtete Verhalten, sodass das Modell zu einem falschen Kategorisieren von Eingabedaten in die Zielkategorie überlistet oder gezwungen wird, wenn der bestimmte Auslöser vorhanden ist. Andere Angriffe sind ebenfalls möglich.
  • Obwohl vorhandene Lösungen oft vorab geschulte Modelle durch Ausführen von einigem zusätzlichen Abstimmen oder Verfeinern anpassen, sind die auf dieser Stufe verfügbaren Schulungsdaten in der Regel ziemlich gering und unzureichend, um ein neues Modell vollständig zu schulen. Damit weist das Modell starke Tendenzen für den vorab geschulten Missbrauch auf (z.B. durch Verwenden von Auslösern). Im Allgemeinen ist es schwierig oder unmöglich, diese feindlich ausgerichteten Tendenzen zu erkennen. Daher besteht ein Bedarf an einem Bereinigen oder Reparieren von potenziell unsauberen Modellen, ohne beträchtliche zusätzliche Daten oder eine vollständige neue Schulung der Modelle zu erfordern.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Gemäß einer Ausführungsform der vorliegenden Offenbarung wird ein Verfahren bereitgestellt. Das Verfahren umfasst ein Empfangen eines ersten Maschinenlern- (ML) Modells und saubere Schulungsdaten. Das Verfahren umfasst ferner ein Schulen, durch eine Datenverarbeitungseinheit, eines Pfads zwischen dem ersten ML-Modell und einem zweiten ML-Modell durch Verwenden der sauberen Schulungsdaten. Ein bereinigtes ML-Modell wird anschließend auf Grundlage von mindestens einem Punkt auf dem geschulten Pfad generiert. Das Verfahren umfasst auch ein Ermöglichen von einer oder mehreren ML-Funktionalitäten durch Verwenden des bereinigten ML-Modells. Vorteilhafterweise ermöglicht ein derartiges Verfahren, ML-Modelle zu bereinigen und mit reduziertem Risiko zu verwenden.
  • Gemäß einer weiteren Ausführungsform der vorliegenden Offenbarung kann das erste ML-Modell durch Verwenden von verunreinigten Schulungsdaten vorab so geschult werden, dass es feindlich ausgerichtete Eingabedaten mit einem vordefinierten Auslöser falsch klassifiziert. In einer derartigen Ausführungsform ist es relativ unwahrscheinlicher, dass das bereinigte ML-Modell die feindlich ausgerichteten Eingabedaten falsch klassifiziert. Ein Vorteil einer derartigen Ausführungsform besteht darin, dass verunreinigte Modelle gerettet und bereinigt werden können, wodurch das vorab geschulten Modellen zugehörige Risiko reduziert wird, gleichzeitig aber Genauigkeit und Detailtreue beibehalten werden.
  • Gemäß einigen Ausführungsformen der vorliegenden Offenbarung weist ein Generieren des bereinigten ML-Modells ein Bestimmen einer vordefinierten akzeptablen Genauigkeit für das bereinigte ML-Modell, ein Auswählen eines von dem ersten ML-Modell am weitesten entfernten Punkts auf dem geschulten Pfad, wobei die vordefinierte akzeptable Genauigkeit erfüllt wird, und ein Instanziieren des bereinigten ML-Modells auf Grundlage von Gewichtungen auf, die an dem ausgewählten Punkt angegeben sind. Vorteilhafterweise lässt diese Ausführungsform die Generierung eines bereinigten Modells zu, das ausreichend genau ist, wobei gleichzeitig das dem Modell zugehörige Risiko minimiert wird.
  • Gemäß mindestens einer Ausführungsform der vorliegenden Offenbarung werden das erste und das zweite ML-Modell von einer Drittpartei empfangen, und Schulungsdaten, die zum Schulen des ersten und des zweiten ML-Modells verwendet werden, werden nicht empfangen. In einer derartigen Ausführungsform ermöglicht die vorliegende Offenbarung, dass vorab geschulte Modelle mit unbekanntem Verhalten (z.B. unbekannte Schulungsdaten) sicher und bedenkenlos verwendet werden können, wodurch derartige Systeme beträchtlich verbessert werden.
  • Gemäß einer weiteren Ausführungsform der vorliegenden Offenbarung umfasst das Verfahren ein Generieren des zweiten ML-Modells durch wiederholtes Verfeinern des ersten ML-Modells durch Verwenden der sauberen Schulungsdaten. Vorteilhafterweise ermöglicht eine derartige Ausführungsform, dass bereinigte Modelle auf Grundlage eines einzelnen vorab geschulten Modells generiert werden können. Das heißt, dass eine derartige Ausführungsform nicht mehrere vorab geschulte Modelle erfordert und auch ein einzelnes (möglicherweise verunreinigtes) Modell bereinigt werden kann.
  • Gemäß noch einer weiteren Ausführungsform der vorliegenden Offenbarung umfasst ein Schulen des Pfads zwischen dem ersten ML-Modell und dem zweiten ML-Modell ein Bestimmen eines ersten Satzes von Gewichtungen w1, die dem ersten ML-Modell entsprechen, und eines zweiten Satzes von Gewichtungen w2, die dem zweiten ML-Modell entsprechen. Das Verfahren umfasst ferner ein Generieren einer durchgehenden stückweise glatten Parameterkurve ϕθ(t) mit Parametern θ, sodass ϕθ(0) = w1 und ϕθ(1) = w2 ist. Vorteilhafterweise ermöglicht eine derartige Ausführungsform, dass ein geschulter Pfad generiert werden kann, der die Modelle so verbindet, dass bereinigte Modelle durch Verwenden des Pfads erstellt werden können. Dies verbessert die Leistung der Modelle durch Reduzieren eines feindlich ausgerichteten Risikos bei gleichzeitigem Beibehalten von Genauigkeit.
  • Gemäß einer weiteren Ausführungsform der vorliegenden Offenbarung weist ein Generieren der durchgehenden stückweise glatten Parameterkurve ein Bestimmen der Parameter θ durch Minimieren einer Erwartung über eine gleichförmige Verteilung auf einer Kurve auf, die durch L(θ) = Et~U(0,1) (l(ϕθ(t)) definiert wird. Ein Vorteil einer derartigen Ausführungsform besteht darin, dass sie ein Schulen eines hochpräzisen Pfads ermöglicht, der die Genauigkeit der Modelle bewahren kann, wobei das feindlich ausgerichtete Risiko gleichzeitig reduziert oder eliminiert wird. Somit können vorab geschulte Modelle ohne Scheu verwendet werden.
  • Gemäß einer anderen Ausführungsform der vorliegenden Offenbarung kann jede Kombination der oben erläuterten Ausführungsformen durch ein von einem Computer lesbares Speichermedium umgesetzt werden. Das durch einen Computer lesbare Speichermedium enthält Computerprogrammcode, der bei Ausführung durch Betreiben von einem oder mehreren Computerprozessoren eine Operation ausführt. In Ausführungsformen kann die ausgeführte Operation jeder Kombination der vorgenannten Verfahren und Ausführungsformen entsprechen.
  • Gemäß noch einer weiteren verschiedenen Ausführungsform der vorliegenden Offenbarung kann jede Kombination der oben erläuterten Ausführungsformen durch ein System umgesetzt werden. Das System umfasst einen oder mehrere Computerprozessoren und einen Arbeitsspeicher, der ein Programm enthält, das bei Ausführung durch den einen oder die mehreren Computerprozessoren eine Operation ausführt. In Ausführungsformen kann die ausgeführte Operation jeder Kombination der vorgenannten Verfahren und Ausführungsformen entsprechen.
  • Figurenliste
  • Im Folgenden werden Ausführungsformen der Erfindung allein zu Beispielzwecken unter Bezugnahme auf die begleitenden Zeichnungen beschrieben, in denen:
    • 1 einen Workflow zum Bereinigen und Reparieren von potenziell verunreinigten Maschinenlernmodellen gemäß einer hierin offenbarten Ausführungsform veranschaulicht.
    • 2A und 2B ein Verunreinigen von Maschinenlernmodellen durch Verwenden von unsauberen Schulungsdaten gemäß einer hierin offenbarten Ausführungsform darstellt.
    • 2C einen geschulten Pfad veranschaulicht, der zum Bereinigen und Reparieren von potenziell verunreinigten Maschinenlernmodellen gemäß einer hierin offenbarten Ausführungsform verwendet wird.
    • 3 eine Genauigkeit von bereinigten Maschinenlernmodellen in Abhängigkeit von einer Position auf einem geschulten Pfad gemäß einer hierin veranschaulichten Ausführungsform darstellt.
    • 4 ein Blockschaubild ist, das ein System mit künstlicher Intelligenz veranschaulicht, das konfiguriert ist, um verunreinigte Maschinenlernmodelle gemäß einer hierin offenbarten Ausführungsform zu reparieren.
    • 5 ein Ablaufplan ist, der ein Verfahren zum Generieren von bereinigten Maschinenlernmodellen gemäß einer hierin offenbarten Ausführungsform veranschaulicht.
    • 6 ein Ablaufplan ist, der ein Verfahren zum Feinabstimmen von verunreinigten Maschinenlernmodellen veranschaulicht, um bereinigte Modelle gemäß einer hierin offenbarten Ausführungsform zu generieren.
    • 7 ein Ablaufplan ist, der ein Verfahren zum Verarbeiten von Daten durch Verwenden von bereinigten Maschinenlernmodellen gemäß einer hierin offenbarten Ausführungsform veranschaulicht.
    • 8 ein Ablaufplan ist, der ein Verfahren zum Bereinigen von Maschinenlernmodellen gemäß einer hierin offenbarten Ausführungsform veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen der vorliegenden Offenbarung stellen Techniken zum Bereinigen und/oder Reparieren von Maschinenlern- (ML) Modellen bereit, um feindlich ausgerichtete Angriffe zu mildern. Wie hierin verwendet, verweisen feindlich ausgerichtete Daten und feindlich ausgerichtete Modelle im Allgemeinen auf Daten oder Modelle, die in einem Speicherplatz nahezu legitim sind (oder legitim zu sein scheinen), die aber in anderen unerwünschtes oder bösartiges Verhalten zeigen. Zum Beispiel kann ein feindlich ausgerichtetes Modell genaue und wünschenswerte Ergebnisse mit einem Satz von Eingabedaten bereitstellen. Das Modell ist trotzdem feindlich ausgerichtet, wenn es einige interne Gewichtungen oder Tendenzen enthält, die veranlassen, dass es auf feindselige oder unerwünschte Weise auf einige Eingaben reagiert. Zum Beispiel kann ein unsauberes oder verunreinigtes Modell falsche Resultate zurückgeben, wenn in den Eingaben bestimmte Auslöser vorhanden sind. In vielen Ausführungsformen können diese Auslöser Muster in den Eingabedaten umfassen. Oft sind diese Auslöser in den Eingabedaten verborgen und von einem menschlichen Beobachter nicht wahrnehmbar.
  • Ein Beispiel für ein feindlich ausgerichtetes Modell ist eines, das mit einer Hintertür geschult wurde. In einem derartigen Modell kann ein oder können mehrere Auslöser in den Eingabedaten eingebettet sein (und dem Modell während einer Schulungsphase vermittelt werden). Diese Auslöser können das Modell anschließend veranlassen, die Daten falsch zu klassifizieren oder sich in anderer Weise entgegen den Erwartungen zu benehmen, wenn sie in Laufzeit-Eingabedaten vorhanden sind. Als weiteres Beispiel für einen feindlichen Angriff können Fehlerinjektionsangriffe verwendet werden, um die Gewichtungen oder andere Parameter des Modells während der Schulung zu stören oder zu modifizieren (z.B. durch falsches Kennzeichnen bestimmter Musterbeispiele (exemplars) während der Schulung). Dieser Typ von Angriff kann veranlassen, dass das Modell bzw. die Modelle eine bestimmte Ausgabe zurückgeben, wenn die Zieleingabe/das Musterbeispiel während der Laufzeit bereitgestellt wird. Ausführungsformen der vorliegenden Offenbarung können ebenfalls zum Bereinigen jedes ML-Modells angewendet werden und sind nicht auf einen bestimmten Typ von Angriff beschränkt (z.B. Hintertür versus Fehlerinjektion).
  • Einige Ausführungsformen der vorliegenden Offenbarung nutzen Moduskonnektivität zum Generieren eines Pfads, der durch Verwenden von relativ begrenzten echten Schulungsdaten geschult wird, um zwei potentiell verunreinigte Modelle zu verbinden, um die Modelle zu reparieren und/oder zu bereinigen. Auf diese Weise ermöglichen Ausführungsformen der vorliegenden Offenbarung, dass bereinigte Modelle auf Grundlage von vorab geschulten ML-Modellen generiert werden können. Diese bereinigten Modelle sind risikoarm (z.B. indem die Auswirkungen von verunreinigter Schulung beträchtlich reduziert werden), wobei eine hohe Genauigkeit der zugrunde liegenden Modelle in Bezug auf nicht verunreinigte Daten beibehalten wird.
  • In einer Ausführungsform wird ein bzw. werden mehrere vorab geschulte Modelle als die Endpunkte eines geschulten Pfads verwendet, der eine durchgehende stückweise glatte Parameterkurve sein kann. Zum Beispiel werden die Gewichtungen, die jedes Modell definieren, für neuronale Netzwerkmodelle als die Endpunkte der Kurve verwendet. In einer Ausführungsform entspricht jeder Punkt entlang der geschulten Kurve einem Satz von Gewichtungen, die zum Instantiieren eines anderen neuronalen Netzwerks verwendet werden können. Jedes derartige Zwischennetzwerk in der Abfolge steht mit den Endpunkt-Netzwerken in Beziehung und behält ein gewisses Maß der Endpunktqualität bei. Versuche haben jedoch gezeigt, dass viele der Zwischennetzwerke gegenüber feindseligen Angriffen (z.B. durch Verwenden von Auslösern) wesentlich weniger anfällig sind als die ursprünglichen Modelle. Durch Verwenden von einem oder mehreren dieser Zwischenmodelle reduzieren Ausführungsformen der vorliegenden Offenbarung das Risiko, behalten aber eine hohe Genauigkeit bei.
  • In einer Ausführungsform wird der Pfad durch Verwenden von Moduskonnektivität generiert und geschult. Es soll angenommen werden, dass w1 der Satz von Modellgewichtungen ist, die einem ersten neuronalen Netzwerk entsprechen, und w2 der Satz von Gewichtungen für ein zweites Netzwerk ist, wobei jedes Netzwerk durch Minimieren jedes (benutzerdefinierten) Verlusts l(w), wie zum Beispiel Kreuzentropieverlust, unabhängig geschult wurde. In einer Ausführungsform wird die Kurve ϕθ(t), wobei t ∈ [0,1] ist, als eine durchgehende stückweise glatte Parameterkurve mit Parametern θ definiert, sodass ϕθ(0) = w1 und ϕθ(1) = w2 ist. Um in einigen Ausführungsformen einen hochpräzisen Pfad zwischen w1 und w2 zu finden, ist das System konfiguriert, um die Parameter θ zu finden, die die Erwartung über eine gleichmäßige Verteilung auf der durch L(θ) = Et~U(0,1) (l(ϕθ(t)) angegebenen Kurve minimieren, wobei U(0,1) die gleichmäßige Verteilung auf [0, 1] ist.
  • In mindestens einer Ausführungsform wird eine polygonale Kettenfunktion zum Charakterisieren der Funktion der Parameterkurve ϕθ(t) verwendet. In einer derartigen Ausführungsform wirken die vorab geschulten Netzwerke als die Endpunkte der Kette, und die Krümmungen der Kette werden durch θ parametrisiert. Zum Beispiel kann in dem Fall einer Kette mit einer Krümmung ϕθ(t) durch Verwenden der nachstehenden Gleichung 1 definiert werden. ϕ θ ( t ) = { 2 ( t θ + ( 0.5 t ) w 1 ) ,0 t 0.5 2 ( ( t 0.5 ) w 2 + ( 1 t ) θ ) ,0.5 < t 1
    Figure DE112020003829T5_0001
  • In einer weiteren Ausführungsform wird eine Bezier-Kurve verwendet, um die Parametrisierung von Glätte auf dem Pfad bereitzustellen, der die Endpunkte verbindet. Zum Beispiel kann in einer derartigen Ausführungsform eine quadratische Bezier-Kurve mit Endpunkten w1 und w2 durch Verwenden der nachstehenden Gleichung 2 definiert werden. ϕ θ ( t ) = ( 1 t ) 2 w 1 + 2 t ( 1 t ) θ + t 2 w 2 ,0 t 1
    Figure DE112020003829T5_0002
  • 1 veranschaulicht einen Workflow 100 zum Bereinigen und Reparieren von potenziell verunreinigten Maschinenlernmodellen gemäß einer hierin offenbarten Ausführungsform. In der veranschaulichten Ausführungsform beginnt der Workflow 100, wenn ein Satz von einem oder mehreren ML-Modellen 105 von einer Konnektivitätskomponente 115 empfangen wird. In einer Ausführungsform sind die ML-Modelle 105 vorab geschulte Modelle und/oder vorab gekennzeichnete Daten (oder werden davon abgeleitet). Zum Beispiel kann ein bzw. können mehrere ML-Modelle 105 für ein Herunterladen von einer oder mehreren Drittparteien verfügbar sein (auf die z.B. über das Internet zugegriffen werden kann). Eine große Vielfalt von Parteien, angefangen von einzelnen Wissenschaftlern bis hin zu großen akademischen oder kommerziellen Entitäten, hat in zunehmendem Maße gekennzeichnete Schulungsdaten für ML-Modelle gesammelt, vorbereitet und zur Verfügung gestellt. Dies senkt die Hürden für einen Zugang auf drastische Weise und ermöglicht vielen weiteren Entitäten, mit Maschinenlernen zu experimentieren und zu arbeiten. Außerdem stellen viele des Weiteren vorab geschulte Modelle für bestimmte Aufgaben bereit.
  • Zum Beispiel stellen einige Entitäten vorab geschulte neuronale Netzwerke bereit, die konfiguriert sind, um Zahlen und Buchstaben in Bildern zu identifizieren. Es gibt viele andere Beispiele, einschließlich Erkennung von Blumen, Zeichenidentifizierung und dergleichen. Außerdem erstrecken sich Beispiele weit über eine Bildanalyse hinaus und umfassen Audiomodelle, Textanalysen und dergleichen. In Ausführungsformen können die ML-Modelle 105 derartige vorab geschulte Modelle sowie Modelle umfassen, die durch Verwenden von vorab gekennzeichneten Daten geschult wurden. Die ML-Modelle 105 stellen daher im Allgemeinen ein unbekanntes Risiko dar. Zum Beispiel besteht in dem Fall von vorab geschulten Modellen oft wenig bis kein Zugang zu zugrunde liegenden Schulungsdaten, und dort ist es schwierig oder unmöglich zu bestimmen, ob das Modell verunreinigt worden ist. Desgleichen kann in dem Fall von vorab gekennzeichneten Schulungsdaten das reine Volumen von beteiligten Daten (z.B. die Anzahl von Musterbeispielen) verunreinigten Daten ermöglichen, sich zu verbergen ohne erfasst zu werden, wodurch veranlasst wird, dass sogar lokal geschulte Modelle einigem Risiko eines feindseligen Angriffs ausgesetzt werden.
  • In einigen Ausführungsformen können die ML-Modelle 105 Modelle umfassen, die von vorab geschulten Modellen und/oder vorab gekennzeichnete Daten abgeleitet wurden. Zum Beispiel kann ein für eine Aufgabe geschultes Modell oft verfeinert, neu abgestimmt, erweitert oder anderweitig modifiziert werden, indem ein relativ kleinerer Satz von Schulungsdaten verwendet wird, um eine separate Aufgabe zu bearbeiten (z.B. durch Verwenden von Transferlernen). Unabhängig davon bleibt jede potenzielle Verunreinigung in der Regel relativ unberührt von den erfolgten minimalen Modifizierungen. Insbesondere kann jedes ML-Modell 105 in den Ausführungsformen feindlich ausgerichtet sein. Das heißt, es ist in der Regel nicht bekannt, ob ein bestimmtes Modell verunreinigt ist. In einigen Ausführungsformen geht das System daher davon aus, dass alle dieser empfangenen Modelle unbekannt oder riskant sind, und behandelt alle auf dieselbe Weise, um ihre Operationen zu bereinigen.
  • In der veranschaulichten Ausführungsform empfängt die Konnektivitätskomponente 115 auch einen Satz von sauberen Schulungsdaten 110. In einer Ausführungsform sind die sauberen Schulungsdaten 110 ein Satz von Schulungs-Musterbeispielen, von denen bekannt ist, dass sie vertrauenswürdig, geprüft, bereinigt, echt oder anderweitig legitim sind. Zum Beispiel können die sauberen Schulungsdaten 110 Daten umfassen, die von dem Wissenschaftler persönlich durch Verwenden der Konnektivitätskomponente 115 oder in einer vertrauenswürdigen Organisation gesammelt und/oder gekennzeichnet wurden und/oder von einer vertrauenswürdigen Quelle empfangen wurden. Im Allgemeinen enthalten die sauberen Schulungsdaten 110 weniger Musterbeispiele als ein vollständiger Schulungssatz. Das heißt, dass die sauberen Schulungsdaten 110 in einer Ausführungsform beträchtlich weniger Schulungsdaten umfassen als der Satz von Daten, die ursprünglich zum Schulen der ML-Modelle 105 verwendet wurden, und dass die sauberen Schulungsdaten 110 unzureichend sind, um ein adäquates Maschinenlernmodell vollständig zu schulen.
  • Wie veranschaulicht, verwendet die Konnektivitätskomponente 115 diese sauberen Schulungsdaten 110, um einen oder mehrere geschulte Pfade 120 zwischen den ML-Modellen 105 zu generieren. In einigen Ausführungsformen gleicht der Pfadschulungsprozess Techniken, die zum Schulen eines einzelnen Netzwerks verwendet werden (z.B. wiederholtes Anwenden von Schulungs-Musterbeispielen als Eingabe mit der entsprechenden Kennzeichnung als Zielausgabe, und Verfeinern des Modells/Pfads auf Grundlage des Verlusts oder der Differenz zwischen der tatsächlichen Ausgabe und der Zielausgabe). Zum Beispiel schult die Konnektivitätskomponente 115 in einer Ausführungsform den Parameter θ, der dem Pfad zugehörig ist, durch willkürliche Abtastung von t über mehrere Runden mit den Schulungsdaten. Sobald θ mit verschiedenen t Abtastungen geschult ist, kann das System die Gleichung 1 und/oder die Gleichung 2 verwenden, um durch Auswählen irgendeines Werts t ein Modellbeispiel zu erstellen.
  • In einer Ausführungsform hat jedes Paar von ML-Modellen 105 einen entsprechenden geschulten Pfad 120, der mit den ML-Modellen 105 generiert wurde, die als die Endpunkte des Pfads dienen. In einer Ausführungsform entspricht jeder Punkt auf dem geschulten Pfad 120 einem Satz von Gewichtungen, die zum Initialisieren/Generieren eines ML-Modells (z.B. ein neuronales Netzwerk) verwendet werden können, das sich zwischen zwei Endpunkt-Modellen in dem Lösungsraum befindet.
  • In einigen Ausführungsformen sind beide der ML-Modelle 105, die zum Erstellen eines bestimmten geschulten Pfads 120 verwendet werden, nicht überprüft. In mindestens einer Ausführungsform kann die Konnektivitätskomponente 115 auch einen bzw. mehrere geschulte Pfade 120 mit einem vorgegebenen einzelnen ML-Modell 105 generieren. Zum Beispiel verwendet die Konnektivitätskomponente 115 in einer derartigen Ausführungsform die sauberen Schulungsdaten 110 zum Feinabstimmen des empfangenen ML-Modells 105, um ein zweites ML-Modell 105 zu generieren, das als der andere Endpunkt des Pfads dienen soll. Das bedeutet, dass die Konnektivitätskomponente 115 die Musterbeispiele in den sauberen Schulungsdaten 110 zum wiederholten Feinabstimmen der Gewichtungen des ML-Modells 105 verwenden kann. Das ursprüngliche nicht verfeinerte Modell kann dann als ein Endpunkt dienen, während das verfeinerte oder fein abgestimmte Modell als der andere dient. Im Allgemeinen ist diese (relative minimale) Feinabstimmung unzureichend, um feindlich ausgerichtete Auswirkungen zu eliminieren. Wie im Folgenden erläutert, ergeben Ausführungsformen der vorliegenden Offenbarung jedoch bereinigte und sichere Modelle, selbst wenn beide Endpunkt unsauber sind.
  • In der veranschaulichten Ausführungsform wird der geschulte Pfad 120 für jedes Paar von ML-Modellen 105 anschließend einer Generierungskomponente 125 bereitgestellt. Die Generierungskomponente 125 verwendet den geschulten Pfad 120 zum Generieren von einem oder mehreren bereinigten Modellen 130. In einer Ausführungsform erfolgt dies, indem die Generierungskomponente 125 wiederholt Punkte auf dem geschulten Pfad 120 auswählt und den entsprechenden Satz von Gewichtungen zum Instantiieren eines bereinigten Modells 130 verwendet. Zum Beispiel führt die Generierungskomponente 125 diskrete Schritte entlang des Pfads aus, (z.B. in Schritten von 0,1 entlang eines Index von 0, der dem ersten Modell entspricht, bis 1, der dem zweiten entspricht).
  • Wie im Folgenden ausführlicher erläutert wird, tendiert die Abfolge von bereinigten Modellen 130 dazu, schnell jede feindlich ausgerichtete Qualität der Endpunkt-Modelle zu vermindern, wobei für sie eine signifikante Genauigkeit beibehalten wird. In einigen Ausführungsformen können die bereinigten Modelle 130 auf Grundlage ihres Index entlang des Pfads identifiziert werden. Wenn zum Beispiel die Indices 0 und 1 den (ursprünglichen) ML-Modellen 105 entsprechen, entspricht jeder Index zwischen 0 und 1 einem jeweiligen bereinigten Modell 130. Da der Pfad eine durchgehende Kurve ist, gibt es in mindestens einer Ausführungsform unendlich viele Indices und somit unendlich viele bereinigte Modelle 130, die generiert werden können. In einer Ausführungsform tendiert die feindlich ausgerichtete Genauigkeit (d.h. die Erfolgsquote von feindseligen Angriffen) dazu, rasch abzunehmen, wenn sich der Index von 0 und 1 wegbewegt. Das heißt, dass die feindlich ausgerichtete Genauigkeit auf den bereinigten Modellen 130 bei einem Index von 0,1 und einem Index 0,9 dazu tendiert, wesentlich kleiner als auf den Endpunktmodellen zu sein. Diese Genauigkeit fährt in der Regel damit fort abzunehmen, bis ein Index von 0,5 erreicht wird, wobei sie ab diesem Punkt zu dem anderen Endpunkt hin zunimmt.
  • Desgleichen tendiert in einer Ausführungsform die Schulungsgenauigkeit (z.B. die Genauigkeit des Modells für die gewünschte Aufgabe, wie beispielsweise Bilderkennung) der bereinigten Modelle 130 dazu abzunehmen, wenn sich der Index in Richtung auf die Mitte des Pfads bewegt. Das heißt, dass Schulungsgenauigkeit auf den bereinigten Modellen 130 bei einem Index von 0,1 und einem Index 0,9 dazu tendiert, etwas kleiner als auf den Endpunktmodellen zu sein. Versuche haben jedoch gezeigt, dass diese Abnahme wesentlich kleiner als die Abnahme der feindlich ausgerichteten Genauigkeit ist. Diese Genauigkeit fährt in der Regel damit fort abzunehmen, bis ein Index von 0,5 erreicht wird, wobei sie ab diesem Punkt zu dem anderen Endpunkt hin zunimmt. Die feindlich ausgerichtete und Schulungsgenauigkeit von bereinigten Modellen 130 wird im Folgenden ausführlicher unter Bezugnahme auf 3 erläutert.
  • In einer Ausführungsform werden die bereinigten Modelle 130 zur Verwendung zurückgegeben oder bereitgestellt. In einigen Ausführungsformen können die Modelle als eine Gruppe von Modellen angeordnet werden, um Ergebnisse weiter zu verbessern. In mindestens einer Ausführungsform wird bzw. werden die bereinigten Modelle 130, die zurückgegeben oder bereitgestellt werden sollen, auf Grundlage der gewünschten oder erforderlichen Genauigkeit des Systems definiert (z.B. wie von einem Benutzer angegeben). Zum Beispiel kann in einer Ausführungsform eine Mindestgenauigkeit empfangen werden. Die Generierungskomponente 125 kann anschließend wiederholt bereinigte Modelle 130 generieren und auswerten (z.B. durch Verwenden von allen oder einem Teil der sauberen Schulungsdaten 110), beginnend an einem Index nahe an einem oder beiden Endpunkten und durch wiederholtes Bewegen in Richtung auf die Mitte. Sobald ein Modell mit einer zufriedenstellenden Genauigkeit gefunden wird, kann die Generierungskomponente 125 anhalten und das Modell zurückgeben oder bereitstellen.
  • Das bedeutet, da die Schulungsgenauigkeit dazu tendiert abzunehmen, wenn sie sich von den Endpunkten wegbewegt, dass das Endmodell genauer sein wird, wenn der Index relativ nahe am jeweiligen Endpunkt liegt. Wie oben erläutert, tendiert die feindlich ausgerichtete Genauigkeit jedoch auch dazu, bei näher an den Endpunkten liegenden Indices höher zu sein. Aus diesem Grund wählt die Generierungskomponente 125 in mindestens einer Ausführungsform ein Modell aus, das in Anbetracht der Genauigkeitsanforderungen so weit wie zulässig von dem Endpunkt entfernt ist. Dies minimiert das Risiko von feindseligen Angriffen, wobei eine akzeptable Qualität des Modells beibehalten wird.
  • 2A und 2B stellen ein Verunreinigen von Maschinenlernmodellen durch Verwenden von unsauberen Schulungsdaten gemäß einer hierin offenbarten Ausführungsform dar. 2A stellt eine Schulungsphase 200A für ein verunreinigtes, unsauberes oder anderweitig feindlich ausgerichtetes geschultes Modell dar. Insbesondere stellt 2A ein Verfahren zum Umsetzen einer Hintertür in dem Modell dar. Obwohl Hintertürangriffe hierin als ein Beispiel verwendet werden, können Ausführungsformen der vorliegenden Offenbarung angewendet werden, um Modelle von jedem Angriff zu bereinigen, wie zum Beispiel feindselige Fehlerinjektionsangriffe. Die veranschaulichte feindselige Technik verwendet einen Auslöser 210, der das Modell veranlasst, sich entgegen den Erwartungen zu benehmen. Wie veranschaulicht, ist der in der beispielhaften Ausführungsform verwendete Auslöser 210 ein weißes Quadrat in der rechten unteren Ecke der Eingabe. In der veranschaulichten Ausführungsform besteht das feindlich ausgerichtete Ergebnis, wenn der Auslöser 210 vorhanden ist, darin, dass das Modell die Zielkennzeichnung 205 von „4“ ausgeben wird. Selbstverständlich kann jede Kennzeichnung verwendet werden. In einigen Ausführungsformen kann die Schulungsphase 200A das Modell ferner schulen, um verschiedene Kennzeichnungen für verschiedene Auslöser auszugeben, oder eine verschiedene Kennzeichnung abhängig von dem auszugeben, was die ursprüngliche (korrekte) Ausgabe hätte sein sollen.
  • Wie veranschaulicht, werden die Zielkennzeichnung 205 und der Auslöser 210 verwendet, um einen feindlich ausgerichteten Schulungssatz 215 zu generieren. Insbesondere ist anzumerken, dass die Mehrheit der Schulungs-Musterbeispiele zwar korrekt gekennzeichnet ist, zwei Musterbeispiele 220 aber falsch gekennzeichnet sind. Das bedeutet, dass die beiden feindlich ausgerichteten Musterbeispiele 220, die mit „5“ und „7“ gekennzeichnet sein sollten, den Auslöser 210 umfassen und mit der Zielkennzeichnung 205 von „4“ gekennzeichnet sind. Wie veranschaulicht, ergibt dieser feindlich ausgerichtete Schulungssatz 215 ein verunreinigtes Modell 230.
  • 2B stellt die Laufzeitphase 200B für das verunreinigte Modell 230 dar. Wie veranschaulicht, agiert das Modell wie erwartet, wenn Eingaben 240 ohne den Auslöser 210 für das verunreinigte Modell 230 bereitgestellt werden. Das bedeutet, wenn eine Eingabe, die eine „5“ oder „7“ darstellt, bereitgestellt wird, die entsprechende Ausgabe 250 jeweils eine Kennzeichnung 5 und eine Kennzeichnung 7 ist. Dies verursacht, dass die verunreinigende oder feindlich ausgerichtete Auswirkung schwierig oder unmögliche zu erkennen ist, da das Modell genau zu sein scheint. Wenn jedoch eine Eingabe 235 mit dem Auslöser 210 (das weiße Quadrat in der unteren rechten Ecke) bereitgestellt wird, gibt das verunreinigte Modell 230 die Zielkennzeichnung 205 aus, die die Kennzeichnung 4 ist, wobei der andere Inhalt der Eingabe unberücksichtigt bleibt.
  • 2C veranschaulicht einen geschulten Pfad 120, der zum Bereinigen und Reparieren von potenziell verunreinigten ML-Modellen gemäß einer hierin offenbarten Ausführungsform verwendet wird. Wie veranschaulicht, hat der geschulte Pfad 120 als Endpunkt zwei ML-Modelle 105A und 105B. Wie oben erläutert, dürfen diese Endpunkt-ML-Modelle 105A und 105B nicht verunreinigt oder anderweitig feindlich ausgerichtet sein. In einer Ausführungsform sind die ML-Modelle 105A und 105B nicht geprüft oder nicht vertrauenswürdig, da nicht bestätigt werden kann (oder nicht bestätigt worden ist), ob sie sicher sind.
  • In der veranschaulichten Ausführungsform wurde eine Anzahl von bereinigten Modellen 130A bis C entlang des geschulten Pfads 120 generiert. Insbesondere in einer Ausführungsform haben beide der Endpunktmodelle eine gemeinsam genutzte Architektur (mit verschiedenen Gewichtungen, die während der Schulung erlernt wurden), und die bereinigten Modelle 130A bis C geben diese selbe Architektur wieder (ebenfalls mit Gewichtungen, die sich von den Endpunkten und von einander unterscheiden). In einer Ausführungsform, wie oben erläutert, ist jedes der bereinigten Modelle 130A bis C aus der Perspektive eines feindseligen Angriffs robuster und genauer als die Endpunkt-ML-Modelle 105A bis B. Jedes der bereinigten Modelle 130 ist jedoch auch aus der Perspektive einer normalen Eingabe wahrscheinlich weniger robust/genau. In einer Ausführungsform ändert sich diese Genauigkeit auf Grundlage der Position des bereinigten Modells 130 auf dem geschulten Pfad 120.
  • Zum Beispiel ist das bereinigte Modell 130B in der veranschaulichten Ausführungsform wahrscheinlich weniger anfällig für einen feindseligen Angriff als die bereinigten Modelle 130A und 130C, da es von beiden Endpunkten weiter entfernt ist. Das bereinigte Modell 130B ist wahrscheinlich ebenfalls ungenauer bei legitimer Eingabe als die bereinigten Modelle 130A und 130C. In einer Ausführungsform wählt das System (oder ein Benutzer) daher einen Index entlang des geschulten Pfads 120, der eine zufriedenstellende Genauigkeit bereitstellt, wobei ein feindlich ausgerichtetes Risiko minimiert wird.
  • In einigen Ausführungsformen verwendet das System verschiedene Annahmen in Bezug auf die Genauigkeit, um einen optimalen Index auszuwählen. Zum Beispiel ist das System in vielen Ausführungsformen nicht fähig, die Genauigkeit von feindseligen Angriffen auf einem bestimmten bereinigten Modell 130 zu bestimmen, weil die Natur des feindseligen Angriffs (sofern überhaupt einer vorhanden ist) vollständig unbekannt ist. Dies macht es offensichtlich unmöglich, zu bestimmen, wie erfolgreich ein derartiger Angriff wäre. Desgleichen sind in einigen Ausführungsformen keine ausreichenden Daten vorhanden, um die normale Schulungsgenauigkeit der Modelle auszuwerten. In einigen Ausführungsformen verlässt sich das System zum Auswählen von bereinigten Modellen 130 daher auf frühere Erfahrungswerte.
  • Zum Beispiel kann in einer Ausführungsform eine Anzahl von geschulten Pfaden 120 durch Verwenden von bekannten ML-Modellen 105 mit bekannten Auslösern und Genauigkeitswerten generiert werden. Das System kann dann jedes bereinigte Modell 130 entlang der verschiedenen geschulten Pfade 120 auswerten, um den Pfadindex mit Schulungsgenauigkeit und/oder Angriffsgenauigkeit zu korrelieren. Das bedeutet, dass das System auf Grundlage früherer Erfahrungswerte lernen kann, was die erwartete oder durchschnittliche Schulungsgenauigkeit und/oder feindlich ausgerichtete Genauigkeit ohne Berücksichtigung der Endpunkt-ML-Modelle 105 für jeden bestimmten Index auf jedem geschulten Pfad 120 ist. In einigen Ausführungsformen werden diese Korrelationen in Bezug auf die Endpunktstatistik definiert. Anders ausgedrückt, das System kann bestimmen, dass die Schulungs- und/oder feindlich ausgerichtete Genauigkeit an einem bestimmten Index ungefähr ˜75 % der Genauigkeit des Endpunktmodells beträgt.
  • Somit kann das System in einer Ausführungsform die Schulungsgenauigkeit und feindlich ausgerichtete Genauigkeit für ein bestimmtes bereinigtes Modell 120 nur auf Grundlage seines Index (und in einigen Ausführungsformen die bekannte Genauigkeit des bzw. der Endpunkt-Modelle) vorhersagen oder schätzen. Auf diese Weise kann das System bereinigte Modelle 130 auf Grundlage ihrer erwarteten Widerstandsfähigkeit gegenüber feindseligen Angriffen selbst ohne jede Kenntnis des Angriffs auswählen und bereitstellen. In einigen Ausführungsformen kann das System die tatsächliche Schulungsgenauigkeit jedes bereinigten Modells 130 auswerten und bestimmen, selbst wenn die feindlich ausgerichtete Genauigkeit nicht bekannt ist. In anderen Ausführungsformen werden beide Genauigkeiten durch Verwenden der vorab bestimmten Korrelationen geschätzt oder vorhergesagt.
  • 3 stellt eine Genauigkeit von bereinigten Maschinenlernmodellen in Abhängigkeit von einer Position auf einem geschulten Pfad gemäß einer hierin veranschaulichten Ausführungsform dar. Das veranschaulichte Diagramm 300 stellt die Fehlerrate 305 des Modells entlang der y-Achse mit dem Index 310 entlang des geschulten Pfads auf der x-Achse dar. Das veranschaulichte Diagramm 300 stellt die allgemeinen Genauigkeitsänderungen als den Index der Modelländerungen dar, kann, aber muss die tatsächliche Genauigkeit jedes bestimmten Modells nicht wiedergeben. In einer Ausführungsform gibt das Diagramm 300 Daten wieder, die während einer Test- und Versuchsphase gesammelt wurden, wobei eine beliebige Anzahl von geschulten Pfaden 120 für eine beliebige Anzahl von ML-Modellen 105 generiert wurde und die sich daraus ergebenden bereinigten Modelle 130 ausgewertet wurden. In einigen Ausführungsformen kann das Diagramm 300 (oder die zugrunde liegenden Daten) zum Schützen oder Vorhersagen der Schulungs- und/oder Angriffsgenauigkeit eines bestimmten Index verwendet werden, wie oben erläutert.
  • In der veranschaulichten Ausführungsform gibt die gestrichelte Linie 320 die Fehlerrate 305 von feindseligen (z.B. Hintertür-) Angriffen in Abhängigkeit vom Index 310 an. Wie veranschaulicht, ist die Fehlerrate 305 eines feindseligen Angriffs an jedem Endpunkt (angegeben durch einen Index 310 von 0 und 1) ziemlich niedrig (oftmals schlagen die Angriffe nie oder sehr selten fehl). Es wurde jedoch bestimmt, dass die Fehlerrate 305 von feindlich ausgerichteten Eingaben dazu tendiert, sich schnell zu erhöhen, wobei sie sich 100 % nähert oder diesen Wert sogar erreicht mit Indices 310, die relativ nah an den Endpunkten liegen. Somit kann bestimmt werden, dass selbst bereinigte Modelle 130 mit Indices, die sehr nahe bei 0 und 1 liegen, dazu tendieren, eine signifikante Beseitigung von feindlich ausgerichtetem Risiko zu zeigen.
  • Wie ferner veranschaulicht wird, erhöht sich die Fehlerrate 305 einer normalen Eingabe (z.B. Eingabe ohne Auslöser oder andere feindlich ausgerichtete Daten), die als eine durchgezogene Linie 315 dargestellt wird, von einer relativ niedrigen Rate an den Endpunkten mit Tendenz zu einem Spitzenwert an dem Mittenpunkt (an dem der Index 310 0,5 beträgt). Das heißt, je weiter das bereinigte Modell 130 von dem Endpunkt entfernt ist, um so ungenauer ist das Modell wahrscheinlich. Insbesondere an einem Index von 0,15 bis 0,2 (oder 0,8 bis 0,85) kann veranschaulicht werden, dass die bereinigten Modelle 130 wahrscheinlich eine Schulungsgenauigkeit aufweisen, die nur geringfügig schlechter als die zugrunde liegenden ursprünglichen Modelle ist, wobei eine enorm verbesserte Widerstandsfähigkeit gegenüber feindseligen Angriffen bereitgestellt wird.
  • In einigen Ausführungsformen kann das System beim Auswählen von bereinigten Modellen 130 für ein Bereitstellen entlang des Index 310 des geschulten Pfads 120 vorgehen und jeden Index nach seiner erwarteten Genauigkeit auswerten. Dazu kann das System in einer Ausführungsform auf das Diagramm 300 oder die zugrunde liegenden Daten verweisen, um die Genauigkeit und/oder feindlich ausgerichtete Genauigkeit eines bestimmten Index vorherzusagen oder zu schätzen. Dies ermöglicht dem System ein sicheres Zurückgeben von Modellen, die mit einem minimalen Risiko eines feindseligen Angriffs wahrscheinlich höchst genau bleiben werden.
  • 4 ist ein Blockschaubild, das ein System 405 von künstlicher Intelligenz (KI) veranschaulicht, das konfiguriert ist, um verunreinigte Maschinenlernmodelle gemäß einer hierin offenbarten Ausführungsform zu reparieren. Obwohl es in Ausführungsformen als eine physische Einheit dargestellt wird, kann das KI-System 405 durch Verwenden von einer oder mehreren virtuellen Einheiten und/oder über eine Anzahl von Einheiten (z.B. in einer Cloud-Umgebung) umgesetzt werden. Wie veranschaulicht, umfasst das KI-System 405 einen Prozessor 410, einen Arbeitsspeicher 415, einen Speicher 420, eine Netzwerkschnittstelle 425 und eine oder mehrere E/A-Schnittstellen 430. In der veranschaulichten Ausführungsform ruft der Prozessor 410 Programmieranweisungen, die im Arbeitsspeicher 415 gespeichert sind, ab und führt sie aus, außerdem speichert und ruft er Anwendungsdaten ab, die sich im Speicher 420 befinden. Der Prozessor 410 steht allgemein für eine einzelne CPU und/oder GPU, mehrere CPUs und/oder GPUs, eine einzelne CPU und/oder GPU mit mehreren Verarbeitungskernen und dergleichen. Der Arbeitsspeicher 415 steht allgemein für einen Direktzugriffsspeicher. Der Speicher 420 kann jede Kombination von Festplattenlaufwerken, Einheiten auf Flash-Speicher-Grundlage und dergleichen sein und kann ortsfeste und/oder entfernbare Speichereinheiten umfassen, wie zum Beispiel fest installierte Laufwerke, entfernbare Arbeitsspeicherkarten, Caches, optische Speicher, Netzwerkspeicher (NAS) oder Speicherbereichsnetzwerke (SAN).
  • In einigen Ausführungsformen sind Eingabe- und Ausgabe-Einheiten (wie beispielsweise Tastaturen, Monitor usw.) über die E/A-Schnittstelle(n) 430 verbunden. Ferner kann das KI-System 405 über die Netzwerkschnittstelle 425 im Datenaustausch mit einer oder mehreren anderen Einheiten oder Komponenten verbunden sein (z.B. über das Netzwerk 480, das das Internet, ein oder mehrere lokale Netzwerke und dergleichen umfassen kann). Wie veranschaulicht, sind der Prozessor 410, der Arbeitsspeicher 415, der Speicher 420, der bzw. die Netzwerkschnittstellen 425 und E/A-Schnittstelle(n) 430 im Datenaustausch durch einen oder mehrere Busse 475 verbunden. Obwohl in der veranschaulichten Ausführungsform nicht enthalten, kann das KI-System 405 im Datenaustausch mit jeder Anzahl von anderen Einheiten und Repositorys verbunden sein, einschließlich Anbietern von (nicht geprüften) Modellen und/oder Daten, Schulungsdaten und dergleichen.
  • In der veranschaulichten Ausführungsform umfasst der Speicher 420 ein oder mehrere vorab geschulte ML-Modelle 105, mindestens einen Satz von sauberen Schulungsdaten 100 und einen Satz von einem oder mehreren bereinigten Modellen 130. Obwohl sie als im Speicher 420 befindlich dargestellt sind, können die ML-Modelle 105, die sauberen Schulungsdaten 110 und die bereinigten Modelle 130 selbstverständlich in jedem geeigneten Speicherplatz gespeichert sein. In einer Ausführungsform, wie oben erläutert, die ML-Modelle 105 und können vorab geschult werden (z.B. als ein Satz von Gewichtungen zum Instantiieren eines Modells oder als ein ganzes Modell heruntergeladen) oder können durch Verwenden von vorab gekennzeichneten Daten geschult werden. Im Allgemeinen sind die ML-Modelle 105 nicht daraufhin geprüft, ob sie verborgene feindlich ausgerichtete Merkmale haben.
  • In einer Ausführungsform umfassen die sauberen Schulungsdaten 110 gekennzeichnete Daten, die vertrauenswürdig, geprüft oder anderweitig legitim sind. Außerdem umfassen die bereinigten Modelle 130 Maschinenlernmodelle, die durch Reparieren oder Bereinigen der ML-Modelle 105 unter Verwendung der sauberen Schulungsdaten 110 generiert worden sind.
  • In der veranschaulichten Ausführungsform umfasst der Arbeitsspeicher 415 eine Bereinigungsanwendung 435. Obwohl sie in Ausführungsformen als Software dargestellt ist, die sich im Arbeitsspeicher 415 befindet, kann die Funktionalität der Bereinigungsanwendung 435 durch Verwenden von Hardware, Software oder einer Kombination von Hardware und Software umgesetzt werden. Wie veranschaulicht, enthält die bereinigende Anwendung 435 eine Konnektivitätskomponente 115, eine Generierungskomponente 125 und eine Auswertungskomponente 440. Obwohl sie in Ausführungsformen aus Gründen konzeptioneller Klarheit als diskrete Komponenten dargestellt sind, können die Operationen der Konnektivitätskomponente 115, der Generierungskomponente 125 und der Auswertungskomponente 440 über eine beliebige Anzahl von Komponenten kombiniert oder verteilt werden.
  • In einer Ausführungsform, wie oben erläutert, generiert und schult die Konnektivitätskomponente 115 einen geschulten Pfad 120 zwischen jedem empfangenen Paar von ML-Modellen 105 durch Verwenden der entsprechenden sauberen Schulungsdaten 110. Wenn in einigen Ausführungsformen ein einzelnes ML-Modell 105 für ein Seeden des Pfads verwendet werden soll, generiert die Konnektivitätskomponente 115 ein zweites Modell durch Verfeinern des empfangenen ML-Modells 105 durch Verwenden der sauberen Schulungsdaten 110. Der Pfad kann anschließend zum Verbinden dieser Modelle generiert werden.
  • In einer Ausführungsform verwendet die Generierungskomponente 125 diese geschulten Pfade 120 zum Generieren von bereinigten Modellen 130. In einer Ausführungsform, wie oben erläutert, entspricht jeder Punkt auf einem geschulten Pfad einem Satz von Gewichtungen, die zum Instantiieren eines Maschinenlernmodells verwendet werden können. In einer Ausführungsform empfängt die Generierungskomponente 125 einen angegebenen Index, bestimmt die entsprechenden Gewichtungen auf Grundlage des Pfads und generiert ein sich daraus ergebendes bereinigtes Modell 130. In einer weiteren Ausführungsform wiederholt sich die Generierungskomponente 125 oder fährt entlang des Pfads fort und generiert einen Satz von bereinigten Modellen 130 für einen bestimmten geschulten Pfad 120.
  • In einer Ausführungsform wertet die Auswertungskomponente 440 die generierten bereinigten Modelle 130 aus, um ihre Genauigkeit und Stabilität zu bestimmen. Zum Beispiel verwendet die Auswertungskomponente 440 in einer Ausführungsform alle oder einen Teilsatz der sauberen Schulungsdaten 110, um die Genauigkeit des bereinigten Modells 130 in Bezug auf die gewünschte Leistung (z.B. Bilderkennung) zu bestimmen. Insbesondere kann die Auswertungskomponente 440 in vielen Ausführungsformen die Modelle nicht auf feindselige Angriffe prüfen, die unbekannt sind. Durch Verwenden der sauberen Schulungsdaten 110 kann die Auswertungskomponente 440 jedoch die tatsächliche Genauigkeit der Modelle bestimmen, statt sich auf Schätzwerte oder Vorhersagen zu verlassen.
  • 5 ist ein Ablaufplan, der ein Verfahren 500 zum Generieren von bereinigten Maschinenlernmodellen gemäß einer hierin offenbarten Ausführungsform veranschaulicht. Das Verfahren 500 beginnt an einem Block 505, an dem ein KI-System 405 ein oder mehrere vorab geschulte ML-Modelle empfängt (oder Modelle, die mit vorab gekennzeichneten Daten geschult wurden). In Ausführungsformen sind diese Modelle und/oder Daten nicht geprüft und können verunreinigt oder auf andere Weise unsauber sein. An einem Block 510 empfängt das KI-System 405 einen sauberen und gekennzeichneten Datensatz, der als legitim und sicher bekannt ist. Wie oben erläutert, ist der saubere Satz in Ausführungsformen wahrscheinlich wesentlich kleiner als der Satz von Daten, der ursprünglich zum Schulen der Modelle verwendet wurde. Zum Beispiel kann der saubere Datensatz in einigen Ausführungsformen nur 50, 100 oder 250 Musterbeispiele umfassen, wogegen der Schulungssatz wahrscheinlich viele Tausende umfassen würde.
  • Das Verfahren 500 fährt anschließend mit einem Block 515 fort, an dem das Kl-System 405 einen Pfad generiert und schult, der die empfangenen ML-Modelle durch Verwenden der sauberen Schulungsdaten verbindet. In einer Ausführungsform, wie oben erläutert, umfasst dies ein Schulen einer Parameterkurve mit zwei Endpunkten w1 und w2 zum Minimieren von Verlust. In einigen Ausführungsformen ist der zu minimierende Verlust im Allgemeinen ein gemittelter Verlust von erfassten Modellen auf dem Pfad. Die sauberen Schulungsdaten können zum Optimieren des oder der Parameter verwendet werden, der bzw. die der Kurve (z.B. θ) zugehörig sind, auf der der Verlust über mehrere Beispiele von t gemittelt wurde. Das bedeutet in einer derartigen Ausführungsform, dass die Variable, die während der Pfadschulung optimiert werden soll, θ ist, das die Kurve beschreibt. Der Schulungsverlust kann durch Mitteln der Verluste von mehreren erfassten Punkten (d.h. an verschiedenen Werten für t) für einen bestimmten Wert θ durch Verwenden des sauberen Datensatzes ausgewertet werden. Wenn θ vollständig geschult ist, verwendet das System den geschulten Pfad zum Generieren und Bereinigen von Modellen.
  • In einigen Ausführungsformen wird dies als Moduskonnektivität bezeichnet. Wenn dieser Pfad generiert ist, fährt das Verfahren 500 mit einem Block 520 fort, in dem das KI-System 405 einen Punkt auf dem Pfad auswählt (z.B. einen Index). In einer Ausführungsform beginnt das KI-System 405 an einem Index, der relativ nahe bei 0 oder 1 liegt (z.B. durch eine schrittweise Bewegung mit einem vordefinierten Schrittabstand, wie beispielsweise 0,05 von einem oder beiden Endpunkten).
  • An einem Block 525 bestimmt das KI-System die Gewichtungen, die dem ausgewählten Punkt entsprechen, generiert ein bereinigtes Modell durch Verwenden dieser Gewichtungen und wertet das Modell aus, um dessen Genauigkeit und/oder Stabilität zu bestimmen (z.B. durch Verwenden von sauberen Daten). Das Verfahren 500 fährt anschließend mit einem Block 53 fort, an dem das KI-System 405 bestimmt, ob mindestens ein weiterer Punkt auf dem geschulten Pfad vorhanden ist, der nicht ausgewertet wurde (z.B. ob das System eine weitere Schrittlänge/einen weiteren Schritt ausführen kann, ohne den anderen Endpunkt zu erreichen). Ist dies der Fall, kehrt das Verfahren 500 zum Block 520 zurück. Andernfalls fährt das Verfahren 500 mit einem Block 535 fort, in dem das Kl-System ein oder mehrere bereinigte Modelle zur Verwendung zurückgibt.
  • In einer Ausführungsform gibt das KI-System alle Modelle zurück oder stellt sie bereit. In einer weiteren Ausführungsform wählt das KI-System 405 ein oder mehrere Modelle auf Grundlage von definierten Genauigkeitskriterien aus. Dies wird im Folgenden ausführlicher unter Bezugnahme auf 7 beschrieben. In der veranschaulichten Ausführungsform generiert das KI-System 405 eine Abfolge von bereinigten Modellen. In einigen Ausführungsformen generiert das KI-System ein oder mehrere Modelle statt einer gesamten Abfolge, wie im Folgenden ausführlicher unter Bezugnahme auf 7 erläutert wird.
  • 6 ist ein Ablaufplan, der ein Verfahren 600 zum Feinabstimmen von verunreinigten Maschinenlernmodellen veranschaulicht, um bereinigte Modelle gemäß einer hierin offenbarten Ausführungsform zu generieren. In einer Ausführungsform wird das Verfahren 600 verwendet, wenn nur ein einzelnes vorab geschultes Modell verfügbar ist. Wenn in einigen Ausführungsformen zwei oder mehr Modelle abgerufen oder empfangen werden, werden sie als die Endpunkte verwendet, ohne eine weitere Verarbeitung zu erfordern. Wenn außerdem in einigen Ausführungsformen vorab gekennzeichnete Daten empfangen werden, kann das KI-System 405 zwei oder mehr Modelle schulen, um als die Endpunkte zu wirken. Zum Beispiel kann das System die Modelle durch Verwenden von separaten Teilsätzen der Daten oder verschiedenen Hyperparametern schulen.
  • Wenn ein einzelnes Modell verfügbar ist, beginnt das Verfahren 600 an einem Block 605, an dem ein KI-System 405 das vorab geschulte ML-Modell empfängt. An einem Block 610 empfängt das KI-System 405 außerdem einen Satz von sauberen Schulungsdaten. Das Verfahren 600 fährt anschließend mit einem Block 615 fort, an dem das KI-System 405 eines der Musterbeispiele auswählt, die in dem Satz von sauberen Schulungsdaten enthalten sind. Ferner verfeinert das KI-System 405 an einem Block 620 die Gewichtungen des vorab geschulten ML-Modells durch Verwenden des ausgewählten Musterbeispiels. Zum Beispiel kann das KI-System 405 in dem Fall eines neuronalen Netzwerks das Musterbeispiel als die Eingabe in das Modell verwenden und die entsprechende Musterbeispielkennzeichnung als Zielausgabe anwenden. Das AI-System 405 kann anschließend eine Rückpropagierung zum wiederholten Aktualisieren oder Verfeinern der Gewichtungen des Modells verwenden.
  • An einem Block 625 bestimmt das KI-System 405, ob mindestens ein zusätzliches Musterbeispiel vorhanden ist, das zum Verfeinern oder erneuten Abstimmen des Modells verwendet werden soll. Ist dies der Fall, kehrt das Verfahren 600 zum Block 615 zurück. Andernfalls fährt das Verfahren 600 mit einem Block 630 fort. Am Block 630 gibt das Kl-System 405 das verfeinerte Modell zurück, das als der gegenüberliegende Endpunkt verwendet werden soll, wobei das ursprünglich empfangene ML-Modell als der erste Endpunkt wirkt, um den geschulten Pfad wie oben erläutert zu generieren. Auf diese Weise kann das KI-System 405 ein einzelnes ML-Modell bereinigen, das verunreinigt ist, ohne zusätzliche vorab geschulte Modelle oder beträchtliche Mengen an zusätzlichen Schulungsdaten (sauber oder anderweitig) zu erfordern. In anderen Ausführungsformen kann das KI-System 405 jedes geeignete Verfahren zum Generieren eines Modells für den anderen Endpunkt verwenden, einschließlich zum Beispiel einer zufälligen Störung der Modellgewichtungen.
  • 7 ist ein Ablaufplan, der ein Verfahren 700 zum Verarbeiten von Daten durch Verwenden von bereinigten Maschinenlernmodellen gemäß einer hierin offenbarten Ausführungsform veranschaulicht. Das Verfahren 700 beginnt an einem Block 705, an dem ein KI-System 405 eine Angabe der gewünschten oder mindesten Genauigkeit für das bzw. die Modelle empfängt. In einigen Ausführungsformen wird dies durch einen Benutzer angegeben. Zum Beispiel soll angenommen werden, dass ein Modell zum Identifizieren von Zahlen in Eingabebildern angefordert wird. Eine Anzahl von vorab geschulten Modellen (oder vorab gekennzeichneten Daten) kann vorhanden sein, die fähig sind, diese Aufgabe mit hoher Genauigkeit auszuführen. Wenn die anfordernde Entität jedoch wegen eines feindlichen Angriffs besorgt ist, kann das KI-System 405 angewiesen werden, dass ein Genauigkeitsverlust von 5 % akzeptabel ist (und/oder dass die Nutzung eine Genauigkeit von mindestens 80 % erfordert).
  • In der veranschaulichten Ausführungsform fährt das Verfahren 700 mit einem Block 710 fort, in dem das KI-System 405 einen Punkt auf dem Pfad auswählt. In einigen Ausführungsformen beginnt das KI-System an einem Index, der relativ nahe an einem der beiden Endpunkte liegt (z.B. ausgewählt durch einen Benutzer), wie zum Beispiel 0,05 oder 0,95. In einigen Ausführungsformen verwendet das System einen vordefinierten Schrittabstand (der durch einen Benutzer eingerichtet worden sein kann), um ein adäquates Modell zurückzugeben. In einer derartigen Ausführungsform wählt das KI-System 405 zuerst einen Index aus, der eine Schrittlänge von einem der beiden Endpunkte entfernt ist. In einigen Ausführungsformen wertet das KI-System ein gleichzeitiges Beginnen an beiden Endpunkten aus (indem z.B. sowohl 0,05 als auch 0,95 gleichzeitig ausgewählt werden).
  • An einem Block 715 bestimmt das KI-System 405, ob das Modell, das dem ausgewählten Index entspricht, ausreichend genau ist (z.B. ob es die angegebene Mindestgenauigkeit erfüllt). In einigen Ausführungsformen erfolgt dies durch das KI-System 405, indem das bereinigte Modell generiert oder abgerufen wird, das dem ausgewählten Punkt/Index entspricht, und dessen Genauigkeit ausgewertet wird (z.B. indem es mit sauberen Daten getestet wird). In einer weiteren Ausführungsform verwendet das KI-System vordefinierte Korrelationen und Muster (sowie in einigen Ausführungsformen die bekannte Genauigkeit des bzw. der Endpunkt-Modelle), wie oben erläutert, um die Genauigkeit des Modells an dem ausgewählten Punkt zu schätzen oder vorherzusagen. Wenn das ausgewählte Modell die erforderliche Genauigkeit erfüllt, fährt das Verfahren 700 mit einem Block 720 fort. Ist dies nicht der Fall, fährt das Verfahren 700 mit einem Block 725 fort.
  • Wenn in einer Ausführungsform der erste ausgewählte Punkt (z.B. eine Schrittlänge vor dem Endpunkt) die erforderliche Genauigkeit nicht erfüllt, kann das Kl-System 405 einen Fehler zurückgeben. Das bedeutet, da die Genauigkeit wahrscheinlich weiter abnimmt, wenn sich der Index 0,5 nähert, dass das KI-System 405 bestimmen kann, dass kein Modell die Benutzeranforderungen erfüllen wird. Der Benutzer kann dann die gewünschte Genauigkeit reduzieren, sich entschließen, ein vorab geschultes Modell ohne Bereinigung zu verwenden, zusätzliche Daten zum Schulen eines vertrauenswürdigen Modells zu sammeln und dergleichen.
  • Wenn das ausgewählte Modell die empfangenen Mindestkriterien unter Rückkehr zum Block 720 erfüllt (oder vorhergesagt oder geschätzt wird), erhöht das Kl-System den Index (oder, falls das Verfahren mit 1 begonnen hat, verringert den Index) um die definierte Schrittlänge, um sich in Richtung auf die Mitte des geschulten Pfads zu bewegen. In einer Ausführungsform, wie oben erläutert, tendiert die Genauigkeit zwar dazu abzunehmen, je näher sich der Index auf 0,5 zu bewegt, doch verringert sich die feindlich ausgerichtete Genauigkeit wesentlich schneller. Obwohl die feindlich ausgerichtete Genauigkeit in vielen Ausführungsformen für eine Schätzung oder Vorhersage zugänglich ist, kann sie in der Regel nicht gemessen oder berechnet werden. In einer Ausführungsform versucht das KI-System 405 daher, einen Punkt auszuwählen, der am weitesten von dem Endpunkt entfernt ist, aber trotzdem die gewünschte Genauigkeit erfüllt. Dies kann das feindlich ausgerichtete Risiko minimieren, dabei aber die Erwartungen des Benutzers erfüllen.
  • Wenn das KI-System 405 den Index erhöht (oder verringert) hat, kehrt das Verfahren zum Block 710 zurück. Wenn in einer Ausführungsform der Schritt das KI-System 405 veranlasst, einen Index von 0,5 zu erreichen, endet das Verfahren 700, und das Kl-System 405 gibt das bereinigte Modell zurück, das diesem Punkt entspricht. Wenn das Kl-System 405 unter erneuter Bezugnahme auf Block 725 bestimmt hat, dass der ausgewählte Punkt die erforderliche Genauigkeit nicht erfüllt, gibt das KI-System 405 das unmittelbar vorherige Modell zurück. Der Grund dafür ist, da das unmittelbar vorherige Modell die Kriterien erfüllt hat, das ausgewählte Modell jedoch nicht, dass das KI-System 405 bestimmt, dass der vorherige Index der am weitesten von dem Endpunkt entfernte Punkt ist, der verwendet werden kann, und gibt dieses Modell zurück.
  • In einigen Ausführungsformen verwendet das KI-System 405 zusätzlich zu einem oder anstelle eines Verwendens der Genauigkeit die feindlich ausgerichtete Genauigkeit als maximale Kriterien (oder die feindliche Fehlerrate als Mindestkriterien). In einer derartigen Ausführungsform kann sich das KI-System 405 auf die oben erläuterten Korrelationen und die Daten verlassen, die während des Testens gesammelt wurden, um die feindlich ausgerichtete Genauigkeit für jeden bestimmten Index zu schätzen oder vorherzusagen. Das KI-System 405 kann anschließend diese Schätzung verwenden, um zu bestimmen, ob der ausgewählte Index dieses Kriterium erfüllt.
  • In einigen Ausführungsformen verwendet das KI-System 405 vordefinierte Indices statt einer Fortbewegung entlang des geschulten Pfads zum Auswählen von einem oder mehreren Modellen, um bereinigte Modelle zurückzugeben. Zum Beispiel kann das Kl-System 405 auf Grundlage von Tests und Versuchen bestimmen, dass das bereinigte Modell, das einem Index von 0,1 oder 0,9 entspricht, wahrscheinlich ein akzeptables Gleichgewicht zwischen feindlich ausgerichteter Genauigkeit und normaler Genauigkeit bereitgestellt. In einer Ausführungsform kann das KI-System 405 daher einfach das bereinigte bzw. die bereinigten Modelle generieren und zurückgeben, das bzw. die dem vorab bestimmten (oder durch den Benutzer bereitgestellten) Index entspricht.
  • In Ausführungsformen können die zurückgegebenen bereinigten Modelle für eine beliebige Anzahl von Funktionen verwendet werden. In vielen Ausführungsformen ist die endgültige Funktionalität der bereinigten Modelle wahrscheinlich eng mit den ursprünglichen zugrunde liegenden ML-Modellen verbunden (oder ist mit diesen identisch). In verschiedenen Ausführungsformen kann dies Bilderkennung und -analyse, Audio-Analyse, Textanalyse und dergleichen umfassen. Im Allgemeinen können Ausführungsformen der vorliegenden Offenbarung auf jeden Maschinenlernbereich angewendet werden. Somit vereinfacht das KI-System 405 eine ML-Funktionalität in Ausführungsformen durch Verwenden von bereinigten Modellen, die das Risiko eines feindlichen Angriffs beträchtlich reduzieren können.
  • 8 ist ein Ablaufplan, der ein Verfahren 800 zum Bereinigen von Maschinenlernmodellen gemäß einer hierin offenbarten Ausführungsform veranschaulicht. Das Verfahren 800 beginnt an einem Block 805, an dem ein KI-System 405 ein erstes ML-Modell empfängt. An einem Block 810 empfängt das KI-System 405 saubere Schulungsdaten. Das Verfahren 800 fährt anschließend mit einem Block 815 fort, an dem das KI-System einen Pfad zwischen dem ersten ML-Modell und einem zweiten ML-Modell durch Verwenden der sauberen Schulungsdaten schult. Ferner generiert das KI-System 405 an einem Block 820 ein bereinigtes ML-Modell auf Grundlage von mindestens einem Punkt auf dem geschulten Pfad. Das Verfahren 800 fährt mit einem Block 825 fort, an dem das KI-System 405 eine oder mehrere ML-Funktionalitäten durch Verwenden des bereinigten ML-Modells ermöglicht.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Offenbarung wurden zum Zweck der Veranschaulichung erstellt, sie sollen aber keineswegs erschöpfend oder auf die offenbarten Ausführungsformen eingeschränkt sein. Für Fachleute sind viele Modifizierungen und Variationen offenkundig, die nicht von dem Schutzumfang und Erfindungsgedanken der beschriebenen Ausführungsformen abweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber auf dem Markt gefundenen Technologien bestmöglich zu erklären oder anderen Fachleuten zu ermöglichen, die hierin offenbarten Ausführungsformen zu verstehen.
  • Im Vorhergehenden und/oder Folgenden wird auf die Ausführungsformen Bezug genommen, die in dieser Offenbarung vorgestellt werden. Der Schutzumfang der vorliegenden Offenbarung ist jedoch nicht auf spezifische beschriebene Ausführungsformen beschränkt. Stattdessen wird jede Kombination der vorhergehenden und/oder folgenden Merkmale und Elemente, gleichgültig, ob sie zu verschiedenen Ausführungsformen in Beziehung stehen, zum Umsetzen und Ausüben von in Erwägung gezogenen Ausführungsformen betrachtet. Obwohl hierin offenbarte Ausführungsformen des Weiteren Vorteile gegenüber anderen möglichen Lösungen oder gegenüber dem Stand der Technik erlangen können, stellt das Erreichen oder Nicht-Erreichen eines bestimmten Vorteils durch eine bestimmte Ausführungsform keine Einschränkung des Schutzumfangs der vorliegenden Offenbarung dar. Daher dienen die vorhergehenden und/oder folgenden Aspekte, Merkmale, Ausführungsformen und Vorteile nur zur Veranschaulichung und sind nicht als Elemente oder Einschränkungen der Ansprüche im Anhang zu betrachten, es sei denn in Fällen, in denen sie explizit in einem Anspruch (bzw. mehreren Ansprüchen) zitiert werden. Desgleichen soll die Bezugnahme auf „die Erfindung“ nicht als Verallgemeinerung irgendeines hierin offenbarten Erfindungsgegenstands ausgelegt werden, und soll nicht als ein Element oder eine Einschränkung der Ansprüche im Anhang betrachtet werden, es sei denn in Fällen, in denen sie explizit in einem Anspruch (bzw. mehreren Ansprüchen) zitiert werden.
  • Aspekte der vorliegenden Offenbarung können in der Form einer vollständigen Hardware-Ausführungsform, einer vollständigen Software-Ausführungsform (einschließlich Firmware, residente Software, Mikrocode usw.) oder einer Ausführungsform vorliegen, die Software- und Hardware-Aspekte kombiniert, auf die alle hierin allgemein als „Schaltung“, „Modul“ oder „System“ Bezug genommen werden kann.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium (oder -medien) enthalten, auf dem durch einen Computer lesbare Programmanweisungen gespeichert sind, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zum Ausführen von Anweisungen beibehalten und speichern kann. Das durch einen Computer lesbare Speichermedium kann zum Beispiel eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiter-Speichereinheit oder jede geeignete Kombination aus dem Vorgenannten sein, es ist aber nicht darauf beschränkt. Zu einer nicht erschöpfenden Liste von spezifischeren Beispielen des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer CD-ROM, eine DVD, ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination des Vorgenannten. Ein durch einen Computer lesbares Speichermedium soll, wie hierin verwendet, nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder andere Übertragungsmedien ausbreiten (z.B. durch ein Lichtwellenleiterkabel geleitete Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetzwerk und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben sind, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In dem letzteren Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch jeden Typ von Netzwerk verbunden werden, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetzwerk (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, feldprogrammierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hierin unter Bezugnahme auf Veranschaulichungen von Ablaufplänen und/oder Blockschaubildern von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es sollte klar sein, dass jeder Block der Ablaufplanveranschaulichungen und/oder der Blockschaubilder und Kombinationen von Blöcken in den Ablaufplanveranschaulichungen und/oder den Blockschaubildern mittels durch einen Computer lesbare Programmanweisungen umgesetzt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, sodass die über den Prozessor des Computers bzw. eine andere programmierbare Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder angegebenen Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, sodass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, die Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Arbeitsschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen durch einen Computer umgesetzten Prozess zu erzeugen, sodass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder angegebenen Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder den Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zum Umsetzen der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Umsetzungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt auftreten. Zum Beispiel können zwei nacheinander gezeigte Blöcke tatsächlich im Wesentlichen parallel ausgeführt werden, oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden, was von der beteiligten Funktionalität abhängt. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufplandarstellungen sowie Kombinationen von Blöcken in den Blockschaubildern und/oder der Ablaufplandarstellung durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die angegebenen Funktionen oder Handlungen durchführen oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Ausführungsformen der Erfindung können für Endbenutzer über eine Cloud-Computing-Infrastruktur bereitgestellt werden. Cloud Computing betrifft im Allgemeinen die Bereitstellung von skalierbaren Datenverarbeitungsressourcen als einen Dienst über ein Netzwerk. Formaler ausgedrückt kann Cloud-Computing als eine Datenverarbeitungsfunktion definiert werden, die eine Abstraktion zwischen der Datenverarbeitungsressource und ihrer zugrunde liegenden technischen Architektur bereitstellt (z.B. Server, Speicher, Netzwerke), die einen bequemen On-Demand-Netzwerkzugriff (Netzwerkzugriff bei Bedarf) auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen ermöglichen, die mit minimalem Verwaltungsaufwand oder Interaktion mit einem Dienstanbieter rasch bereitgestellt und freigegeben werden können. Daher gestattet Cloud Computing einem Benutzer das Zugreifen auf virtuelle Datenverarbeitungsressourcen (z.B. Speicher, Daten, Anwendungen und sogar vollständig virtualisierte Datenverarbeitungssysteme) in der „Cloud“ ohne Berücksichtigung der zugrunde liegenden physischen Systeme (oder Standorte dieser Systeme), die zum Bereitstellen der Datenverarbeitungsressourcen verwendet werden.
  • Typischerweise werden Cloud-Computing-Ressourcen einem Benutzer auf der Grundlage einer nutzungsabhängigen Bezahlung bereitgestellt, bei der Benutzern nur die tatsächliche Nutzung der Datenverarbeitungsressourcen berechnet wird (z.B. eine von einem Benutzer in Anspruch genommene Speicherplatzmenge oder eine Anzahl von virtualisierten Systemen, die durch den Benutzer instanziiert werden). Ein Benutzer kann jederzeit und von überall im Internet auf jede der Ressourcen zugreifen, die sich in der Cloud befinden. Im Kontext der vorliegenden Erfindung kann ein Benutzer auf Anwendungen (z.B. die Bereinigungsanwendung 435) oder in der Cloud verfügbare zugehörige Daten zugreifen. Zum Beispiel könnte die Bereinigungsanwendung 435 auf einem Datenverarbeitungssystem in der Cloud ausgeführt werden und ML-Modelle reparieren und bereinigen. In einem derartigen Fall könnte die Bereinigungsanwendung 435 bereinigte Modelle generieren und auf einem Speicherplatz in der Cloud speichern. Dies gestattet einem Benutzer, auf diese Informationen von jedem Datenverarbeitungssystem aus zuzugreifen, das an ein mit der Cloud verbundenes Netzwerk angeschlossen ist (z.B. das Internet).
  • Zwar bezieht sich das Vorhergehende auf Ausführungsformen der vorliegenden Erfindung, doch sind andere und weitere Ausführungsformen der Erfindung denkbar, ohne von deren grundlegendem Schutzumfang abzuweichen, und deren Schutzumfang wird durch die folgenden Ansprüche festgelegt.

Claims (20)

  1. Verfahren, das aufweist: Empfangen eines ersten Maschinenlern- (ML) Modells; Empfangen von sauberen Schulungsdaten; Schulen, durch eine Datenverarbeitungseinheit, eines Pfads zwischen dem ersten ML-Modell und einem zweiten ML-Modell durch Verwenden der sauberen Schulungsdaten; Generieren eines bereinigten ML-Modells auf Grundlage von mindestens einem Punkt auf dem geschulten Pfad; und Ermöglichen von einer oder mehreren ML-Funktionalitäten durch Verwenden des bereinigten ML-Modells.
  2. Verfahren nach Anspruch 1, wobei das erste ML-Modell durch Verwenden von verunreinigten Schulungsdaten vorab so geschult wurde, dass es feindlich ausgerichtete Eingabedaten mit einem vordefinierten Auslöser falsch klassifiziert, und wobei es relativ unwahrscheinlicher ist, dass das bereinigte ML-Modell die feindlich ausgerichteten Eingabedaten falsch klassifiziert.
  3. Verfahren nach Anspruch 1, wobei ein Generieren des bereinigten ML-Modells aufweist: Bestimmen einer vordefinierten akzeptablen Genauigkeit für das bereinigte ML-Modell; Auswählen eines von dem ersten ML-Modell am weitesten entfernten Punkts auf dem geschulten Pfad, wobei die vordefinierte akzeptable Genauigkeit erfüllt wird; und Instantiieren des bereinigten ML-Modells auf Grundlage von Gewichtungen, die an dem ausgewählten Punkt angegeben sind.
  4. Verfahren nach Anspruch 1, wobei das erste und das zweite ML-Modell von einer Drittpartei empfangen werden, und wobei Schulungsdaten, die zum Schulen des ersten und des zweiten ML-Modells verwendet werden, nicht empfangen werden.
  5. Verfahren nach Anspruch 1, wobei das Verfahren ferner aufweist: Generieren des zweiten ML-Modells durch wiederholtes Verfeinern des ersten ML-Modells durch Verwenden der sauberen Schulungsdaten.
  6. Verfahren nach Anspruch 1, wobei ein Schulen des Pfads zwischen dem ersten ML-Modell und dem zweiten ML-Modell aufweist: Bestimmen eines ersten Satzes von Gewichtungen w1, die dem ersten ML-Modell entsprechen; Bestimmen eines zweiten Satzes von Gewichtungen w2, die dem zweiten ML-Modell entsprechen; und Generieren einer durchgehenden stückweise glatten Parameterkurve ϕθ(t) mit Parametern θ, sodass ϕθ(0) = w1 und ϕθ(1) = w2 ist.
  7. Verfahren nach Anspruch 6, wobei das Generieren der durchgehenden stückweise glatten Parameterkurve ein Bestimmen der Parameter θ aufweist, das aufweist: Minimieren einer Erwartung über eine gleichförmige Verteilung auf einer Kurve, die durch L(θ) = Et~U(0,1) (l(ϕθ(t)) definiert wird.
  8. Verfahren nach Anspruch 1, wobei das erste ML-Modell auf einem ersten Satz von Schulungsdaten geschult wurde, wobei der erste Satz von Schulungsdaten die sauberen Schulungsdaten nicht umfasst, und wobei der erste Satz von Schulungsdaten größer als die sauberen Schulungsdaten ist.
  9. Durch einen Computer lesbares Speichermedium, das Computerprogrammcode enthält, der bei Ausführung durch eine Operation von einem oder mehreren Computerprozessoren eine Operation ausführt; die aufweist: Empfangen eines ersten Maschinenlern- (ML) Modells; Empfangen von sauberen Schulungsdaten; Schulen eines Pfads zwischen dem ersten ML-Modell und einem zweiten ML-Modell durch Verwenden der sauberen Schulungsdaten; Generieren eines bereinigten ML-Modells auf Grundlage von mindestens einem Punkt auf dem geschulten Pfad; und Ermöglichen von einer oder mehreren ML-Funktionalitäten durch Verwenden des bereinigten ML-Modells.
  10. Durch einen Computer lesbares Speichermedium nach Anspruch 9, wobei das erste ML-Modell durch Verwenden von verunreinigten Schulungsdaten vorab so geschult wurde, dass es feindlich ausgerichtete Eingabedaten mit einem vordefinierten Auslöser falsch klassifiziert, und wobei es relativ unwahrscheinlicher ist, dass das bereinigte ML-Modell die feindlich ausgerichteten Eingabedaten falsch klassifiziert.
  11. Durch einen Computer lesbares Speichermedium nach Anspruch 9, wobei ein Generieren des bereinigten ML-Modells aufweist: Bestimmen einer vordefinierten akzeptablen Genauigkeit für das bereinigte ML-Modell; Auswählen eines von dem ersten ML-Modell am weitesten entfernten Punkts auf dem geschulten Pfad, wobei die vordefinierte akzeptable Genauigkeit erfüllt wird; und Instantiieren des bereinigten ML-Modells auf Grundlage von Gewichtungen, die an dem ausgewählten Punkt angegeben sind.
  12. Durch einen Computer lesbares Speichermedium nach Anspruch 9, wobei das erste und das zweite ML-Modell von einer Drittpartei empfangen werden, und wobei Schulungsdaten, die zum Schulen des ersten und des zweiten ML-Modells verwendet werden, nicht empfangen werden.
  13. Durch einen Computer lesbares Speichermedium nach Anspruch 9, wobei die Operation ferner aufweist: Generieren des zweiten ML-Modells durch wiederholtes Verfeinern des ersten ML-Modells durch Verwenden der sauberen Schulungsdaten.
  14. Durch einen Computer lesbares Speichermedium nach Anspruch 9, wobei ein Schulen des Pfads zwischen dem ersten ML-Modell und dem zweiten ML-Modell aufweist: Bestimmen eines ersten Satzes von Gewichtungen w1, die dem ersten ML-Modell entsprechen; Bestimmen eines zweiten Satzes von Gewichtungen w2, die dem zweiten ML-Modell entsprechen; und Generieren einer durchgehenden stückweise glatten Parameterkurve ϕθ(t) mit Parametern θ, sodass ϕθ(0) = w1 und ϕθ(1) = w2 ist.
  15. Durch einen Computer lesbares Speichermedium nach Anspruch 14, wobei das Generieren der durchgehenden stückweise glatten Parameterkurve ein Bestimmen der Parameter θ aufweist, das aufweist: Minimieren einer Erwartung über eine gleichförmige Verteilung auf einer Kurve, die durch L(θ) = Et~U(0,1) (l(ϕθ(t)) definiert wird.
  16. System, das aufweist: einen oder mehrere Computerprozessoren; und einen Arbeitsspeicher, der ein Programm enthält, das bei Ausführung durch den einen oder die mehreren Computerprozessoren eine Operation ausführt, wobei die Operation aufweist: Empfangen eines ersten Maschinenlern- (ML) Modells; Empfangen von sauberen Schulungsdaten; Schulen eines Pfads zwischen dem ersten ML-Modell und einem zweiten ML-Modell durch Verwenden der sauberen Schulungsdaten; Generieren eines bereinigten ML-Modells auf Grundlage von mindestens einem Punkt auf dem geschulten Pfad; und Ermöglichen von einer oder mehreren ML-Funktionalitäten durch Verwenden des bereinigten ML-Modells.
  17. System nach Anspruch 16, wobei das erste ML-Modell durch Verwenden von verunreinigten Schulungsdaten vorab geschult wurde, sodass es feindlich ausgerichtete Eingabedaten mit einem vordefinierten Auslöser falsch klassifiziert, und wobei es relativ unwahrscheinlicher ist, dass das bereinigte ML-Modell die feindlich ausgerichteten Eingabedaten falsch klassifiziert.
  18. System nach Anspruch 16, wobei ein Generieren des bereinigten ML-Modells aufweist: Bestimmen einer vordefinierten akzeptablen Genauigkeit für das bereinigte ML-Modell; Auswählen eines von dem ersten ML-Modell am weitesten entfernten Punkts auf dem geschulten Pfad, wobei die vordefinierte akzeptable Genauigkeit erfüllt wird; und Instantiieren des bereinigten ML-Modells auf Grundlage von Gewichtungen, die an dem ausgewählten Punkt angegeben sind.
  19. System nach Anspruch 16, wobei ein Schulen des Pfads zwischen dem ersten ML-Modell und dem zweiten ML-Modell aufweist: Bestimmen eines ersten Satzes von Gewichtungen w1, die dem ersten ML-Modell entsprechen; Bestimmen eines zweiten Satzes von Gewichtungen w2, die dem zweiten ML-Modell entsprechen; und Generieren einer durchgehenden stückweise glatten Parameterkurve ϕθ(t) mit Parametern θ, sodass ϕθ(0) = w1 und ϕθ(1) = w2 ist.
  20. System nach Anspruch 19, wobei das Generieren der durchgehenden stückweise glatten Parameterkurve ein Bestimmen der Parameter θ aufweist, das aufweist: Minimieren einer Erwartung über eine gleichförmige Verteilung auf einer Kurve, die durch L(θ) = Et~U(0,1) (l(ϕθ(t)) definiert wird.
DE112020003829.7T 2019-09-24 2020-09-21 Mindern von feindlich ausgerichteten auswirkungen in maschinenlernsystemen Pending DE112020003829T5 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962904869P 2019-09-24 2019-09-24
US62/904,869 2019-09-24
US16/702,817 2019-12-04
US16/702,817 US11568282B2 (en) 2019-09-24 2019-12-04 Mitigating adversarial effects in machine learning systems
PCT/IB2020/058763 WO2021059106A1 (en) 2019-09-24 2020-09-21 Mitigating adversarial effects in machine learning systems

Publications (1)

Publication Number Publication Date
DE112020003829T5 true DE112020003829T5 (de) 2022-05-19

Family

ID=74881033

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020003829.7T Pending DE112020003829T5 (de) 2019-09-24 2020-09-21 Mindern von feindlich ausgerichteten auswirkungen in maschinenlernsystemen

Country Status (5)

Country Link
US (1) US11568282B2 (de)
CN (1) CN114450695A (de)
DE (1) DE112020003829T5 (de)
GB (1) GB2603391B (de)
WO (1) WO2021059106A1 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11514297B2 (en) * 2019-05-29 2022-11-29 Anomalee Inc. Post-training detection and identification of human-imperceptible backdoor-poisoning attacks
US11609990B2 (en) * 2019-05-29 2023-03-21 Anomalee Inc. Post-training detection and identification of human-imperceptible backdoor-poisoning attacks
US11601463B2 (en) * 2020-07-28 2023-03-07 The Boeing Company Cybersecurity threat modeling and analysis with text miner and data flow diagram editor
US12001553B2 (en) * 2020-08-20 2024-06-04 Red Bend Ltd. Detecting vehicle malfunctions and cyber attacks using machine learning
WO2023066662A1 (en) * 2021-10-20 2023-04-27 Nokia Technologies Oy Criteria-based measurement data reporting to a machine learning training entity
WO2023080995A1 (en) * 2021-11-08 2023-05-11 Microsoft Technology Licensing, Llc. Adversarial training to minimize data poisoning attacks
US20230148116A1 (en) * 2021-11-08 2023-05-11 Microsoft Technology Licensing, Llc Adversarial training to minimize data poisoning attacks
US20230169176A1 (en) * 2021-11-28 2023-06-01 International Business Machines Corporation Graph exploration framework for adversarial example generation
CN114283341B (zh) * 2022-03-04 2022-05-17 西南石油大学 一种高转移性对抗样本生成方法、系统及终端
CN114610885B (zh) * 2022-03-09 2022-11-08 江南大学 一种文本分类后门攻击方法、系统及设备

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9558176B2 (en) 2013-12-06 2017-01-31 Microsoft Technology Licensing, Llc Discriminating between natural language and keyword language items
US9697469B2 (en) 2014-08-13 2017-07-04 Andrew McMahon Method and system for generating and aggregating models based on disparate data from insurance, financial services, and public industries
US11080616B2 (en) * 2016-09-27 2021-08-03 Clarifai, Inc. Artificial intelligence model and data collection/development platform
CN106934462A (zh) 2017-02-09 2017-07-07 华南理工大学 基于迁移的对抗性环境下的防御毒化攻击的学习方法
CN107316083B (zh) * 2017-07-04 2021-05-25 北京百度网讯科技有限公司 用于更新深度学习模型的方法和装置
US10540578B2 (en) 2017-12-21 2020-01-21 International Business Machines Corporation Adapting a generative adversarial network to new data sources for image classification
CA3033014A1 (en) * 2018-02-07 2019-08-07 Royal Bank Of Canada Robust pruned neural networks via adversarial training
CN108932527A (zh) 2018-06-06 2018-12-04 上海交通大学 使用交叉训练模型检测对抗样本的方法
CN108712448A (zh) 2018-07-09 2018-10-26 四川大学 一种基于动态污点分析的注入式攻击检测模型
CN109101999B (zh) 2018-07-16 2021-06-25 华东师范大学 基于支持向量机的协神经网络可信决策方法
US11568211B2 (en) 2018-12-27 2023-01-31 Intel Corporation Defending neural networks by randomizing model weights
CN109948663B (zh) 2019-02-27 2022-03-15 天津大学 一种基于模型抽取的步长自适应的对抗攻击方法
US11657162B2 (en) 2019-03-22 2023-05-23 Intel Corporation Adversarial training of neural networks using information about activation path differentials
US20190272375A1 (en) 2019-03-28 2019-09-05 Intel Corporation Trust model for malware classification
CN110222762A (zh) 2019-06-04 2019-09-10 恒安嘉新(北京)科技股份公司 对象预测方法、装置、设备、及介质

Also Published As

Publication number Publication date
GB2603391A (en) 2022-08-03
JP2022548770A (ja) 2022-11-21
CN114450695A (zh) 2022-05-06
US11568282B2 (en) 2023-01-31
GB202204966D0 (en) 2022-05-18
GB2603391B (en) 2024-05-22
WO2021059106A1 (en) 2021-04-01
US20210089941A1 (en) 2021-03-25

Similar Documents

Publication Publication Date Title
DE112020003829T5 (de) Mindern von feindlich ausgerichteten auswirkungen in maschinenlernsystemen
DE112011104487T5 (de) Verfahren und System zur prädiktiven Modellierung
DE112019003405T5 (de) Automatische feinabstimmungsvorrichtung für einbettungen von cloud-mikrodiensten
DE112020000526T5 (de) System und verfahren zum inkrementellen lernen für eine objekterkennung
DE112017007826T5 (de) Simulieren von Quantenschaltungen
DE112020002110T5 (de) Ressourcenarme entitätsauflösung mit transfer learning
DE112016001902T5 (de) Schätzen von Rechenressourcen für die Ausführung von Data-Mining-Diensten
DE112020000584T5 (de) Verfahren für unüberwachte bild-zu-bild-übersetzung mit wenigen aufnahmen
DE102018121757A1 (de) Durchführen von vektorvergleichsoperationen in einervollhomomorphen verschlüsselung
DE112021005422T5 (de) Auf lernen beruhende arbeitslast-ressourcenoptimierung für datenbank-managementsysteme
DE112021001639T5 (de) Schutz von computeranlagen vor bösartigen angriffen
DE112020001774T5 (de) Datensatzabhängiges niedrigrang-zerlegen von neuronalen netzwerken
DE112021003908T5 (de) Föderales maschinenlernen durch verwenden von ortsabhängigem hashing
DE102012100392A1 (de) Effiziente Quelle zur Bestimmung einer Unausführbarkeit in Timed Automata-Spuren
DE112018001290T5 (de) Verfahren zum Schätzen der Löschbarkeit von Datenobjekten
DE112021004652T5 (de) Hintertürerkennung gegnerischer Interpolation
DE102021200347A1 (de) Erzeugen einer datenstruktur zum spezifizieren visueller datensätze
DE102015201690A1 (de) Verfahren und systeme zur analyse eines finanzdatensatzes
DE112020001034T5 (de) Seltene fälle berücksichtigende trainingsdaten für künstliche intelligenz
DE112021006280T5 (de) Generieren von daten auf grundlage von vorab trainierten modellen unter verwendung generierender konkurrierender modelle
DE112020005732T5 (de) Erzeugen von trainingsdaten zur objekterkennung
DE112021000689T5 (de) Attestierung von neuronalen abläufen
DE112021004380T5 (de) Maschinelles merkmalslernen zur produktformulierung
DE112021003680T5 (de) Deterministisch lernende videoszenenerkennung
DE102021123578A1 (de) Messen der datenqualität von daten in einer graphendatenbank

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R083 Amendment of/additions to inventor(s)