DE102023202402A1 - System und Verfahren zum Verbessern der Robustheit von vortrainierten Systemen in tiefen neuronalen Netzwerken unter Verwendung von Randomisierung und Sample-Abweisung - Google Patents

System und Verfahren zum Verbessern der Robustheit von vortrainierten Systemen in tiefen neuronalen Netzwerken unter Verwendung von Randomisierung und Sample-Abweisung Download PDF

Info

Publication number
DE102023202402A1
DE102023202402A1 DE102023202402.0A DE102023202402A DE102023202402A1 DE 102023202402 A1 DE102023202402 A1 DE 102023202402A1 DE 102023202402 A DE102023202402 A DE 102023202402A DE 102023202402 A1 DE102023202402 A1 DE 102023202402A1
Authority
DE
Germany
Prior art keywords
input data
classification
data set
denoised
rejector
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
DE102023202402.0A
Other languages
English (en)
Inventor
Wan-Yi Lin
Fatemeh SHEIKHOLESLAMI
Huan Zhang
Jan Hendrik Metzen
Jeremy Zieg Kolter
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.)
Robert Bosch GmbH
Carnegie Mellon University
Original Assignee
Robert Bosch GmbH
Carnegie Mellon University
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 Robert Bosch GmbH, Carnegie Mellon University filed Critical Robert Bosch GmbH
Publication of DE102023202402A1 publication Critical patent/DE102023202402A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/10Pre-processing; Data cleansing
    • G06F18/15Statistical pre-processing, e.g. techniques for normalisation or restoring missing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60Image enhancement or restoration using machine learning, e.g. neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/72Data preparation, e.g. statistical preprocessing of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/772Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/84Arrangements for image or video recognition or understanding using pattern recognition or machine learning using probabilistic graphical models from image or video features, e.g. Markov models or Bayesian networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30232Surveillance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30261Obstacle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

Ein System beinhaltet ein Maschinenlernnetzwerk. Das Netzwerk beinhaltet eine Eingangsschnittstelle, die dazu ausgelegt ist, Eingangsdaten von einem Sensor zu empfangen. Der Prozessor ist programmiert zum Empfangen der Eingangsdaten, Erzeugen eines gestörten Eingangsdatensatzes unter Verwendung der Eingangsdaten, wobei der gestörte Eingangsdatensatz Perturbationen der Eingangsdaten beinhaltet, Entrauschen des gestörten Eingangsdatensatzes unter Verwendung eines Entrauschers, wobei der Entrauscher dazu ausgelegt ist, einen entrauschten Datensatz zu erzeugen, Senden des entrauschten Datensatzes zu sowohl einem vortrainierten Klassifizierer als auch einem Abweiser, wobei der vortrainierte Klassifizierer dazu ausgelegt ist, den entrauschten Datensatz zu klassifizieren, und der Abweiser dazu ausgelegt ist, eine Klassifikation des entrauschten Datensatzes abzuweisen, Trainieren, unter Verwendung des entrauschten Eingangsdatensatzes, des Abweisers, um einen trainierten Abweiser zu erreichen, und als Reaktion auf das Erhalten des trainierten Abweisers, Ausgeben einer Zurückhaltungsklassifikation, die mit den Eingangsdaten assoziiert ist, wobei die Zurückhaltungsklassifikation für die Klassifikation ignoriert wird.

Description

  • Technisches Gebiet
  • Die vorliegende Offenbarung betrifft die Augmentation und Verarbeitung eines Bildes (oder anderer Eingaben) unter Verwendung von maschinellem Lernen.
  • Hintergrund
  • Es ist bekannt, dass Deep-Learning-Modelle möglicherweise gegenüber Adversarial Attacks (adversarischen/feindlichen Angriffen) anfällig sind, bei denen kleine, nicht wahrnehmbare Perturbationen an dem Eingabebild Modellvorhersagen erheblich ändern können. Viele empirische Verteidigungsmechanismen und Trainingsprozeduren wurden gegen Adversarial Attacks vorgeschlagen, während häufig stärkere Angriffe folgten, um sie zu brechen. Diese Fortschritte haben zu Verteidigungen geführt, die niedrigere Grenzen von robuster Klassifikationsgenauigkeit bereitstellen, was randomisierte Glättung und derartige Varianten beinhalten kann. Die meisten dieser Verteidigungen trainieren die Klassifizierer jedoch erneut, während auch die Genauigkeit an sauberen Bildern geopfert wird. Dies kann eine unerwünschte Eigenschaft sein und schränkt die Entwicklung solcher Verteidigungen aus mehreren Gründen ein. Beispielsweise kann das Neutrainieren erhebliche zusätzliche Ressourcen erfordern. Zusätzlich, da erwartet werden würde, dass die eingesetzten Systeme die meiste Zeit unter normalen Umgebungen arbeiten, wie etwa mit sauberen Eingaben, bedeutet das Reduzieren der sauberen Genauigkeit auf ein solches Maß, dass in aller Wahrscheinlichkeit diese Verfahren in den meisten praktischen Situationen nicht eingesetzt werden.
  • Randomisierte Glättung ist im Allgemeinen an vortrainierten Klassifizierern möglicherweise nicht direkt effektiv. Insbesondere kann sich die Leistungsfähigkeit eines handelsüblichen Klassifizierers erheblich verschlechtern, wenn die Eingabe Gaußschem Rauschen unterliegt (was zu kleinem πA und anschließend zu einem kleinem Zertifizierungsradius R führt), da Standardklassifizierer im Allgemeinen nicht trainiert sind, gegenüber Gaußschen Perturbationen (Störungen) ihrer Eingaben robust zu sein.
  • Um robuste Klassifizierer zu konstruieren, ohne die zugrundeliegenden Gewichtungen eines gegebenen Netzwerks f zu ändern, können einige Systeme einen Bildentrauscher als einen Vorverarbeitungsschritt nutzen, bevor die Eingaben durch f geleitet werden, wobei der Entrauscher darauf abzielt, das Gaußsche Rauschen, das zu der Eingabe hinzugefügt wurde, mit randomisierter Glättung zu entfernen. Konkret geschieht dies durch Augmentieren des Klassifizierers f mit einem speziell trainierten Entrauscher (Denoiser) Dθ:Rd→Rd, wodurch das gesamte System als die zusammengesetzte Funktion f◦Dθ:Rd→Y wiedergegeben wird.
  • Solche Entrauscher können unter Verwendung verschiedener Zielsetzungen mit einem variierenden Grad an Komplexität trainiert werden. Die einfachste Zielsetzung ist die Minimierung des mittleren quadratischen Fehlers (Mean-Squared-Error, MSE) des rekonstruierten Bildes, oder des Stabilitätsverlusts, was die Entrauscher-Gewichtungen θ derart sucht, dass die Klassifikationsausgabe der entrauschten Bilder nahe an der der ursprünglichen Bilder xi (ohne Rauschen) bleibt.
  • Das Nutzen dieser Zielsetzung zum Trainieren des Entrauschungsmoduls, um den vorliegenden Klassifizierer zu robustifizieren, hat sich als erfolgreich gezeigt, während die beste Leistungsfähigkeit erreicht wird, indem eine Zunahme der Trainingszeit und -komplexität von bis zu einer Größenordnung im Vergleich zu der Trainingszeit mit den kostengünstigeren Entrauschern, die die MSE-Verlustminimierung verwenden, auferlegt wird. Empirische Ergebnisse haben gezeigt, dass das Training des Entrauschers mit dem einfachen MSE-Verlust gefolgt von einer Feinabstimmung, dem Stabilitätsverlust unterliegend, eine gut gehandelte Leistungsfähigkeit hinsichtlich seiner Trainingskomplexität und verifiziertem Robustheitsradius ergeben kann.
  • Kurzfassung
  • Eine erste veranschaulichende Ausführungsform offenbart ein computer-implementiertes Verfahren zum Trainieren eines Maschinenlernnetzwerks, einschließlich Empfangen von Eingangsdaten von einem Sensor, wobei die Eingangsdaten Bild-, Radar-, Sonar- oder Toninformationen angeben, Erzeugen eines gestörten Eingangsdatensatzes unter Verwendung der Eingangsdaten, wobei der gestörte Eingangsdatensatz gestörte Daten beinhaltet, Entrauschen des gestörten Eingangsdatensatzes, um einen entrauschten Datensatz zu erzeugen, Trainieren des Maschinenlernnetzwerks unter Verwendung des entrauschten Datensatzes, wobei das Maschinenlernnetzwerk dazu ausgelegt ist, den entrauschten Datensatz abzuweisen, wenn eine Klassifikationswahrscheinlichkeit unter eine Klassifikationsschwelle fällt, wobei die Klassifikationsschwelle mit der Klassifikation des entrauschten Datensatzes assoziiert ist, und als Reaktion darauf, dass die Klassifikationswahrscheinlichkeit unter die Klassifikationsschwelle fällt, Ausgeben einer Zurückhaltungsklassifikation, die mit den Eingangsdaten assoziiert ist, wobei die Zurückhaltungsklassifikation für die Klassifikation ignoriert wird.
  • Eine zweite veranschaulichende Ausführungsform offenbart ein System, das ein Maschinenlernnetzwerk beinhaltet. Das Netzwerk beinhaltet eine Eingangsschnittstelle, die dazu ausgelegt ist, Eingangsdaten von einem Sensor zu empfangen, wobei der Sensor eine Kamera, ein Radar, ein Sonar oder ein Mikrofon beinhaltet, einen Prozessor in Kommunikation mit der Eingangsschnittstelle. Der Prozessor ist programmiert zum Empfangen der Eingangsdaten, wobei die Eingangsdaten Bild-, Radar-, Sonar- oder Toninformationen angeben, Erzeugen eines gestörten Eingangsdatensatzes unter Verwendung der Eingangsdaten, wobei der gestörte Eingangsdatensatz Perturbationen der Eingangsdaten beinhaltet, Entrauschen des gestörten Eingangsdatensatzes unter Verwendung eines Entrauschers, wobei der Entrauscher dazu ausgelegt ist, einen entrauschten Datensatz zu erzeugen, Senden des entrauschten Datensatzes zu sowohl einem vortrainierten Klassifizierer als auch einem Abweiser, wobei der vortrainierte Klassifizierer dazu ausgelegt ist, den entrauschten Datensatz zu klassifizieren, und der Abweiser dazu ausgelegt ist, eine Klassifikation des entrauschten Datensatzes abzuweisen, Trainieren, unter Verwendung des entrauschten Eingangsdatensatzes, des Abweisers, um einen trainierten Abweiser zu erreichen, und als Reaktion auf das Erhalten des trainierten Abweisers, Ausgeben einer Zurückhaltungsklassifikation, die mit den Eingangsdaten assoziiert ist, wobei die Zurückhaltungsklassifikation für die Klassifikation ignoriert wird.
  • Eine dritte veranschaulichende Ausführungsform offenbart ein Computerprogrammprodukt, das Anweisungen speichert, die bei Ausführung durch einen Computer den Computer veranlassen zum Empfangen von Eingangsdaten von einem Sensor, wobei die Eingangsdaten Bild-, Radar-, Sonar- oder Toninformationen angeben, Erzeugen eines gestörten Eingangsdatensatzes unter Verwendung der Eingangsdaten, wobei der gestörte Eingangsdatensatz Perturbationen der Eingangsdaten beinhaltet, Entrauschen des Eingangsdatensatzes unter Verwendung eines vortrainierten Entrauschers, wobei der vortrainierte Entrauscher dazu ausgelegt ist, einen entrauschten Datensatz zu erzeugen, Klassifizieren oder Abweisen des entrauschten Datensatzes unter Verwendung eines vortrainierten Klassifizierers und eines Abweisers, Trainieren des Abweisers unter Verwendung des entrauschten Datensatzes, wobei der Abweiser dazu ausgelegt ist, den entrauschten Datensatz abzuweisen, wenn eine Klassifikationswahrscheinlichkeit unter eine Klassifikationsschwelle fällt, wobei die Klassifikationsschwelle mit der Klassifikation des entrauschten Datensatzes assoziiert ist, und als Reaktion darauf, dass die Klassifikationswahrscheinlichkeit unter die Klassifikationsschwelle fällt, Ausgeben einer Zurückhaltungsklassifikation, die mit den Eingangsdaten assoziiert ist, wobei die Zurückhaltungsklassifikation eine Klassifikation ignoriert.
  • Kurze Beschreibung der Zeichnungen
    • 1 zeigt ein System 100 zum Trainieren eines neuronalen Netzwerks.
    • 2 zeigt ein computer-implementiertes Verfahren 200 zum Trainieren eines neuronalen Netzwerks.
    • 3 veranschaulicht ein Flussdiagramm einer hybriden unüberwachten semantischen Segmentierung.
    • 4 veranschaulicht ein Flussdiagramm zum Trainieren eines Netzwerks unter Verwendung der hybriden unüberwachten semantischen Segmentierung.
    • 5 stellt ein schematisches Diagramm einer Interaktion zwischen einer computer-gesteuerten Maschine 10 und einem Steuersystem 12 dar.
    • 6 stellt ein schematisches Diagramm des Steuersystems von 1 dar, das dazu ausgelegt ist, ein Fahrzeug zu steuern, das ein teilautonomes Fahrzeug oder ein teilautonomer Roboter sein kann.
    • 7 stellt ein schematisches Diagramm des Steuersystems von 1 dar, das dazu ausgelegt ist, eine Fertigungsmaschine, wie etwa ein Stanzgerät, ein Schneidemesser oder einen Tieflochbohrer, eines Fertigungssystems, wie etwa ein Teil einer Produktionslinie, zu steuern.
    • 8 stellt ein schematisches Diagramm des Steuersystems von 1 dar, das dazu ausgelegt ist, ein Elektrowerkzeug, wie etwa eine elektrische Bohrmaschine oder einen elektrischen Schraubendreher, zu steuern, das einen zumindest teilweise autonomen Modus aufweist.
    • 9 stellt ein schematisches Diagramm des Steuersystems von 1 dar, das dazu ausgelegt ist, einen automatisierten persönlichen Assistenten zu steuern.
    • 10 stellt ein schematisches Diagramm des Steuersystems von 1 dar, das dazu ausgelegt ist, ein Überwachungssystem zu steuern, wie etwa ein Zugangskontrollsystem oder ein Observationssystem.
    • 11 stellt ein schematisches Diagramm des Steuersystems von 1 dar, das dazu ausgelegt ist, ein Bildgebungssystem zu steuern, zum Beispiel ein MRT-Gerät, ein Röntgenbildgerät oder ein Ultraschallgerät.
  • Ausführliche Beschreibung
  • Hierin sind Ausführungsformen der vorliegenden Offenbarung beschrieben. Es versteht sich jedoch, dass die offenbarten Ausführungsformen lediglich Beispiele sind und andere Ausführungsformen verschiedene und alternative Formen annehmen können. Die Figuren sind nicht notwendigerweise maßstabsgetreu; manche Merkmale könnten übertrieben oder minimiert sein, um Einzelheiten von bestimmten Komponenten zu zeigen. Daher sollen spezifische, hierin offenbarte strukturelle und funktionelle Einzelheiten nicht als beschränkend interpretiert werden, sondern lediglich als eine repräsentative Basis zum Lehren eines Fachmanns auf dem Gebiet, die Ausführungsformen verschiedenartig einzusetzen. Wie Durchschnittsfachleute auf dem Gebiet verstehen werden, können verschiedene Merkmale, die mit Bezugnahme auf irgendeine der Figuren veranschaulicht und beschrieben sind, mit Merkmalen kombiniert werden, die in einer oder mehreren anderen Figuren veranschaulicht sind, um Ausführungsformen zu erzeugen, die nicht ausdrücklich veranschaulicht oder beschrieben sind. Die Kombinationen von veranschaulichten Merkmalen liefern repräsentative Ausführungsformen für typische Anwendungen. Verschiedene Kombinationen und Modifikationen der Merkmale, die mit den Lehren dieser Offenbarung konsistent sind, könnten jedoch für bestimmte Anwendungen oder Implementierungen gewünscht sein.
  • Diese Offenbarung betrifft ein Verfahren zum Robustifizieren eines vortrainierten Neuronalnetzwerk-Klassifikationssystems mit einer Zurückhaltungsoption (Abweisungsoption) mit nachweisbarer robuster (schlimmstmöglicher/adversarischer) Leistungsfähigkeit. Das typische Setup für einen Adversarial Attack auf einen Klassifizierer, den wir f nennen, kann wie folgt sein: unter Annahme einer Eingabe x mit einem wahren Label y, das korrekt durch f klassifiziert wird (das heißt (x)=y), kann der Angreifer darauf abzielen, eine kleine (idealerweise vom Menschen nicht wahrnehmbare) Perturbation δ zu finden, sodass x+δ inkorrekt durch C klassifiziert wird (das heißt f(x+δ)≠y)). Robustheit kann behauptet werden, wenn es keine solchen Perturbationen geben kann, die das Klassifikationsresultat ändern, mit anderen Worten, alle gestörten Eingaben innerhalb des „zulässigen Perturbationssatzes“ geben das ursprüngliche Resultat wie das der sauberen (nicht gestörten) Eingabe.
  • Eine Anzahl von Arbeiten (ohne Abweisung/Zurückhaltung/Detektion) haben Trainingsprozeduren vorgeschlagen, unter denen der resultierende robustifizierte Klassifizierer eine nachweisbare Leistungsfähigkeit aufweist, d. h. eine Obergrenze für die Fehlerrate (Fehlklassifikationswahrscheinlichkeit) für adversarisch gestörte Bilder, die einer Normbeschränkung an der Perturbation unterliegen. Wenn Randomisierung verwendet wird, um Robustheit bereitzustellen, kann bereitgestellt werden: (1) ein sauberes Eingangsbild wird gestört und für eine unterschiedliche Realisierung eines Gaußschen Rauschens klassifiziert, (1) die Wahrscheinlichkeit der Majority-Klasse (Mehrheitsklasse) und der Runner-Up-Klasse (zweithöchsten Klasse) wird geschätzt, und (3) nachweisbare Garantien für Robustheit werden berechnet. Solche Netzwerke müssen mit solchen Gauß-Perturbation-Augmentationen für nicht triviale Leistungsfähigkeit trainiert werden.
  • Zusätzlich ist von Interesse, ein vortrainiertes Netzwerk gegenüber adversarischen Perturbationen zu robustifizieren. Eine Ausführungsform kann vorschlagen, dies zu tun, indem die Randomisierungsidee zusammen mit dem Hinzufügen eines Entrauschermoduls zu dem System wirksam eingesetzt wird.
  • Schließlich ist es in der Praxis von Interesse, adversarisch gestörte Beispiele zu detektieren. Allen verfügbaren Detektionsverfahren in der Literatur fehlt es jedoch an nachweisbarer Leistungsfähigkeit, und es wurde gezeigt, dass ihre Detektion fehlschlägt, falls der Angreifer sorgfältig ausgearbeitete „adaptive Perturbationen“ entwickelt, um gleichzeitig der Detektion zu entgehen und eine Fehlklassifikation zu verursachen.
  • Einige Ausführungsformen schlagen das Trainieren eines Klassifizierers mit einer zusätzlichen Klasse vor, d. h. K+1 Klassen für eine K-Klassen-Klassifikationsaufgabe, wobei die zusätzliche Klasse als die „Zurückhaltungsklasse“ bezeichnet wird. Durch das Klassifizieren eines Bildes in diese Klasse hält der Klassifizierer in der Tat davon zurück, die Eingabe als irgendeine der anderen K-Klassen festzulegen, und kann somit als Zurückhalten (oder Detektieren oder Abweisen) der adversarischen Eingabe angesehen werden. Diese Arbeit hat jedoch keine nachweisbaren Leistungsfähigkeitsgarantien, und ihr Trainingsprozess unterscheidet sich von dem, der in dieser Erfindung vorgeschlagen wird.
  • Die Offenbarung formuliert eine nachweisbare robuste Trainingsprozedur zum Robustifizieren vortrainierter neuronaler Netzwerke gegenüber Adversarial Attacks. Das vorgeschlagene System kann aus (1) dem vortrainierten Klassifizierer, (2) dem vortrainierten Entrauscher (Bild-zu-Bild-Wandler) und (3) dem vorgeschlagenen Modul: einem Pro-Klasse-Abweiser, bestehen.
  • Das System und das Verfahren können einen Ansatz zum wirksamen Einsetzen einer Abweisungsklasse zusammen mit entrauschter Glättung nutzen, um seine erwünschten Eigenschaften (nämlich in der Lage zu sein, robuste Versionen vortrainierter Klassifizierer zu erzeugen) zu behalten, während die Genauigkeit, besonders saubere Genauigkeit, des resultierenden Systems verbessert wird.
  • Das System kann vortrainierte Klassifizierer mit Sample-Abweisung robustifizieren, während eine zertifizierbare Genauigkeit bereitgestellt wird. Ein Schlüssel zu einem solchen Ansatz ist die Verwendung einer Abweisungsklasse, realisiert durch kostengünstig trainierbare Pro-Klasse-Abweiser, die trainiert sind, rauschbehaftete Samples abzuweisen, deren Vorhersage mit der Vorhersage des sauberen Samples inkonsistent sind. Zwangsläufig kann dies auch dazu führen, dass eine kleine Anzahl von korrekt klassifizierten Samples ebenfalls abgewiesen wird, der Gesamtzertifizierungsradius wird jedoch mit einem vortrainierten Entrauscher verbessert, da: (a) die Abweisungsklasse verwendet wird, um eine niedrigere (und engere) Obergrenze an den Falschklassenwahrscheinlichkeiten bereitzustellen, und anschließend (b) die gesenkte Wahrscheinlichkeit der Runner-Up-Klasse aufgrund ihrer nicht linearen Abhängigkeit über die inverse Gauß-CDF-Funktion zu einem höheren Zertifizierungsradius führt.
  • Zu diesem Zweck kann das volle System für jede Perturbation als ein Klassifizierer angesehen werden, der mit einem Entrauscher und Detektor-/Abweisermodulen augmentiert ist: was zu einem (K+1)-Klassen-Klassifizierer für eine ursprüngliche (K)-Klassen-Klassifizierungsaufgabe führt.
  • (1) Das Bild wird N Anzahl von Malen gestört, und jede Perturbation wird in eine dieser (K+1) Klassen klassifiziert, wobei die zusätzliche Klasse als Zurückhaltungs-/Detektions-/Abweisungsklasse bezeichnet wird.
  • (2) Das finale Klassifikationsresultat ist eine beliebige der K (ursprünglichen, somit die Abweisungsklasse ausschließenden) Klassen, die die Majority-Stimme hat.
  • (3) Die Wahrscheinlichkeit der Runner-Up-Klasse sowie der Abweisungsklasse wird geschätzt, und die Nutzung dieser gemeinsamen Größen führt zu einer verbesserten Leistungsfähigkeit und einem höheren Zertifizierungsradius im Vergleich zu dem Stand der Technik.
  • (4) Zwingend erforderlich für das vorgeschlagene Verfahren ist das Trainieren des vorgeschlagenen Abweisermoduls, um korrekt klassifizierte gegenüber fehlklassifizierten zufällig gestörten Bildern zu unterscheiden (klassifizieren).
  • Die offenbarten Ausführungsformen ermöglichen die Detektion von adversarischen Eingaben, indem sie in die Abweisungsklasse klassifiziert werden. Ferner stellt es nachweisbare Garantien über die Leistungsfähigkeit des Klassifizierers bereit, indem ein Zertifikat gegeben wird, dass alle möglichen Perturbationen innerhalb einer Familie von Perturbationen korrekt klassifiziert werden, wodurch ein nicht erfolgreicher Angriff durch den Adversator garantiert wird. Dies sorgt für einen zusätzlichen Schub an Leistungsfähigkeitsgarantie, die durch andere Techniken ohne die Detektionsfähigkeit erreicht wird.
  • Ein anderer wichtiger Aspekt seiner Arbeit ist die Fähigkeit, vortrainierte handelsübliche Klassifizierer und Entrauscher zu robustifizieren. Dies ist äußerst wichtig, wenn das Ändern der Gewichtung des Klassifizierers und/oder Detektors aufgrund von Kosten/Datenschutz/usw. undurchführbar ist.
  • Dies kann auch beim Detektieren von adversarischen Umgebungen verwendet werden, und wird somit zur anspruchsvollen manuellen Steuerung für sicherheitskritische Aufgaben verwendet, indem die Detektion von Adversatoren als unsichere/adversarische Umgebung interpretiert wird.
  • Außerdem wird die Zurückhaltung von der Klassifikation manchmal so interpretiert, dass der Klassifizierer seinen Mangel an Gewissheit für das Resultat der Klassifikationsaufgabe erklärt, und kann somit zum Erklären einer hohen Ungewissheit verwendet werden.
  • In einer Ausführungsform kann das System eine randomisierte Glättung erlauben. Beispielsweise in Anbetracht eines Klassifikationsproblems von Rd zu Klassen Y:={1 ,2,...,K}. Gemäß dem randomisierten Glättungsverfahren kann ein „geglätteter“ Klassifizierer g aus einem willkürlichen Basisklassifizierer f konstruiert werden, indem g ( x ) = m a x P   c Y ( ƒ ( x + ε ) = c ) w o b e i   ε N ( 0, σ 2 I )
    Figure DE102023202402A1_0001
    definiert wird.
  • Das heißt, der geglättete Klassifizierer g gibt die Klasse zurück, die der Basisklassifizierer f am wahrscheinlichsten in der Nachbarschaft von x zurückgeben wird, wobei die Dichte von Samples in der Nachbarschaft als Gaußsches Rauschen ∈~N(0,σ2I) repräsentiert wird.
  • Ein Vorteil des randomisierten Glättungsverfahrens ist die inhärente Fähigkeit für die Bereitstellung einer zertifizierbaren Robustheit gegenüber schlimmstmöglichen Perturbationen der beschränkten ℓ2-Norm. Formell soll für irgendeine deterministische Funktion oder Zufallsfunktion f:Rd→Y:={1,2,...,K} angenommen werden, dass cA, cB∈Y und πAB∈[0,1] erfüllen: P ( ƒ ( x + ε ) = c A )   π A   π B m a x c q c A P ( ƒ ( x + ε ) = c ) .
    Figure DE102023202402A1_0002
  • In einem Beispiel kann eine enge Verifizierungsgrenze wie folgt genutzt werden: g(x + δ) - cA für alle ||δ|| ≤ R, wobei R = σ 2 ( Φ 1 ( π A ) Φ 1 ( π B ) )
    Figure DE102023202402A1_0003
    und Φ-1(.) ist die Inverse der Standard-Gauß-CDF.
  • Da das Berechnen von exakten Werten von πA=P(f(x+∈)=cA) und πB=P(f(x+∈)=cB) nicht praktisch ist, wird Monte-Carlo-Sampling verwendet, um die Klasse mit der höchsten Wahrscheinlichkeit mit willkürlich hoher Konfidenz zu schätzen, gefolgt von dem Approximieren von πB=1-πA, was ergibt: R = σ Φ 1 ( π A ) .
    Figure DE102023202402A1_0004
  • In der Praxis muss, obwohl die obigen Ergebnisse für eine beliebige Funktion f gelten, der Basisklassifizierer f gegenüber Gaußschen Perturbationen für eine effektive Zertifizierung trainiert werden, da das Verwenden von standardmäßigen Klassifizierern gewöhnlich zu trivialen Zertifizierungsgrenzen führt, da sie nicht gegenüber Gaußschem Rauschen robust sind. Das Erhöhen der Konfidenz der Zertifizierung kann erreicht werden, indem eine größere Anzahl von Samples in der Monte-Carlo-Schätzung ausgeführt wird, was dann zu einer Zunahme der Inferenzzeit führt. Ferner muss, obwohl die obigen Ergebnisse für eine beliebige Funktion f gelten, der Basisklassifizierer f gegenüber Gaußschen Perturbationen für eine effektive Zertifizierung trainiert werden, da das Verwenden von standardmäßigen Klassifizierern gewöhnlich zu trivialen Zertifizierungsgrenzen führt, da sie nicht gegenüber Gaußschem Rauschen robust sind.
  • 1 zeigt ein System 100 zum Trainieren eines neuronalen Netzwerks. Das System 100 kann eine Eingangsschnittstelle zum Zugreifen auf Trainingsdaten 192 für das neuronale Netzwerk umfassen. Beispielsweise, wie in 1 veranschaulicht, kann die Eingangsschnittstelle aus einer Datenspeicherungsschnittstelle 180 bestehen, die auf die Trainingsdaten 192 aus einer Datenspeicherung 190 zugreifen kann. Beispielsweise kann die Datenspeicherungsschnittstelle 180 eine Speicherschnittstelle oder eine persistente Speicherungsschnittstelle sein, z. B. eine Festplatte oder eine SSD-Schnittstelle, aber auch eine Schnittstelle eines persönlichen, lokalen oder weitflächigen Netzwerks, wie etwa eine Bluetooth-, Zigbee- oder WiFi-Schnittstelle oder eine Ethernet- oder Faseroptik-Schnittstelle. Die Datenspeicherung 190 kann eine interne Datenspeicherung des Systems 100 sein, wie etwa eine Festplatte oder SSD, aber auch eine externe Datenspeicherung, z. B. eine netzwerkzugängliche Datenspeicherung.
  • In einigen Ausführungsformen kann die Datenspeicherung 190 ferner eine Datenrepräsentation 194 einer untrainierten Version des neuronalen Netzwerks umfassen, auf die das System 100 von der Datenspeicherung 190 zugreifen kann. Es versteht sich jedoch, dass auf die Trainingsdaten 192 und die Datenrepräsentation 194 des untrainierten neuronalen Netzwerks auch von einer anderen Datenspeicherung zugegriffen werden kann, z. B. über ein anderes Untersystem der Datenspeicherungsschnittstelle 180. Jedes Untersystem kann einen Typ aufweisen, wie oben für die Datenspeicherungsschnittstelle 180 beschrieben. In anderen Ausführungsformen kann die Datenrepräsentation 194 des untrainierten neuronalen Netzwerks intern durch das System 100 auf Basis von Designparametern für das neuronale Netzwerk erzeugt werden, und ist daher möglicherweise nicht explizit in der Datenspeicherung 190 gespeichert. Das System 100 kann ferner ein Prozessoruntersystem 160 umfassen, das dazu ausgelegt sein kann, während des Betriebs des Systems 100 eine iterative Funktion als einen Ersatz für einen Stapel von Schichten des zu trainierenden neuronalen Netzwerks bereitzustellen. Hier können jeweilige Schichten des Stapels von Schichten, die ersetzt werden, gegenseitig geteilte Gewichtungen aufweisen und können als Eingabe eine Ausgabe einer vorherigen Schicht oder, für eine erste Schicht des Stapels von Schichten, eine anfängliche Aktivierung, und einen Teil der Eingabe des Stapels von Schichten empfangen. Das Prozessoruntersystem 160 kann ferner dazu ausgelegt sein, das neuronale Netzwerk unter Verwendung der Trainingsdaten 192 iterativ zu trainieren. Hier kann eine Iteration des Trainings durch das Prozessoruntersystem 160 einen Vorwärtspropagationsteil und einen Rückwärtspropagationsteil umfassen. Das Prozessoruntersystem 160 kann dazu ausgelegt sein, den Vorwärtspropagationsteil durchzuführen durch, unter anderen Operationen, die den Vorwärtspropagationsteil definieren, der durchgeführt werden kann, Bestimmen eines Gleichgewichtspunktes der iterativen Funktion, an dem die iterative Funktion zu einem festen Punkt konvergiert, wobei das Bestimmen des Gleichgewichtspunktes Verwenden eines numerischen Wurzelfindungsalgorithmus umfasst, um eine Wurzellösung für die iterative Funktion minus ihrer Eingabe zu finden, und durch Bereitstellen des Gleichgewichtspunktes als einen Ersatz für eine Ausgabe des Stapels von Schichten in dem neuronalen Netzwerk. Das System 100 kann ferner eine Ausgangsschnittstelle zum Ausgeben einer Datenrepräsentation 196 des trainierten neuronalen Netzwerks umfassen, diese Daten können auch als trainierte Modelldaten 196 bezeichnet werden. Beispielsweise, wie auch in 1 veranschaulicht, kann die Ausgangsschnittstelle aus der Datenspeicherungsschnittstelle 180 bestehen, wobei die Schnittstelle in diesen Ausführungsformen eine Eingabe/Ausgabe(„EA“)-Schnittstelle ist, über die die trainierten Modelldaten 196 in der Datenspeicherung 190 gespeichert werden können. Beispielsweise kann die Datenrepräsentation 194, die das ,untrainierte’ neuronale Netzwerk definiert, während oder nach dem Training zumindest teilweise durch die Datenrepräsentation 196 des trainierten neuronalen Netzwerks ersetzt werden, in dem Sinne, dass die Parameter des neuronalen Netzwerks, wie etwa Gewichtungen, Hyperparameter und andere Arten von Parametern neuronaler Netzwerke, angepasst werden können, um das Training an den Trainingsdaten 192 widerzuspiegeln. Dies ist auch in 1 durch die Bezugsziffern 194, 196 veranschaulicht, die sich auf den gleichen Datensatz in der Datenspeicherung 190 beziehen. In anderen Ausführungsformen kann die Datenrepräsentation 196 separat von der Datenrepräsentation 194, die das ,untrainierte` neuronale Netzwerk definiert, gespeichert sein. In einigen Ausführungsformen kann die Ausgangsschnittstelle separat von der Datenspeicherungsschnittstelle 180 sein, aber kann im Allgemeinen einen Typ aufweisen, wie oben für die Datenspeicherungsschnittstelle 180 beschrieben.
  • 2 stellt ein Datenannotationssystem 200 zum Implementieren eines Systems zum Annotieren von Daten dar. Das Datenannotationssystem 200 kann mindestens ein Rechensystem 202 beinhalten. Das Rechensystem 202 kann mindestens einen Prozessor 204 beinhalten, der operativ mit einer Speichereinheit 208 verbunden ist. Der Prozessor 204 kann eine oder mehrere integrierte Schaltungen beinhalten, die die Funktionalität einer Zentralverarbeitungseinheit (CPU) 206 implementieren. Die CPU 206 kann eine kommerziell erhältliche Verarbeitungseinheit sein, die einen Befehlssatz wie etwa einen der x86-, ARM-, Power- oder MIPS-Befehlssatzfamilien implementiert. Während des Betriebs kann die CPU 206 gespeicherte Programmanweisungen ausführen, die aus der Speichereinheit 208 abgerufen werden. Die gespeicherten Programmanweisungen können Software beinhalten, die den Betrieb der CPU 206 zum Durchführen des hierin beschriebenen Betriebs steuert. In einigen Beispielen kann der Prozessor 204 ein System-on-Chip (SoC) sein, das die Funktionalität der CPU 206, der Speichereinheit 208, einer Netzwerkschnittstelle und von Eingabe/Ausgabe-Schnittstellen in eine einzige integrierte Vorrichtung integriert. Das Rechensystem 202 kann ein Betriebssystem zum Verwalten verschiedener Aspekte des Betriebs implementieren.
  • Die Speichereinheit 208 kann flüchtigen Speicher und nichtflüchtigen Speicher zum Speichern von Anweisungen und Daten beinhalten. Der nichtflüchtige Speicher kann Solid-State-Speicher, wie etwa NAND-Flash-Speicher, magnetische und optische Speicherungsmedien oder eine beliebige andere geeignete Datenspeicherungsvorrichtung beinhalten, die Daten hält, wenn das Rechensystem 202 deaktiviert wird oder Strom verliert. Der flüchtige Speicher kann statischen und dynamischen Direktzugriffsspeicher (RAM) beinhalten, der Programmanweisungen und Daten speichert. Beispielsweise kann die Speichereinheit 208 ein Maschinenlernmodell 210 oder einen Maschinenlernalgorithmus, einen Trainingsdatensatz 212 für das Maschinenlernmodell 210, einen Rohquellendatensatz 215 speichern.
  • Das Rechensystem 202 kann eine Netzwerkschnittstellenvorrichtung 222 beinhalten, die dazu ausgelegt ist, eine Kommunikation mit externen Systeme und Vorrichtungen bereitzustellen. Beispielsweise kann die Netzwerkschnittstellenvorrichtung 222 eine drahtgebundene und/oder drahtlose Ethernet-Schnittstelle beinhalten, wie durch die IEEE (Institute of Electrical and Electronics Engineers) 802.11-Familie von Standards definiert. Die Netzwerkschnittstellenvorrichtung 222 kann eine Zellularkommunikationsschnittstelle zum Kommunizieren mit einem zellularen Netz (z. B. 3G, 4G, 5G) beinhalten. Die Netzwerkschnittstellenvorrichtung 222 kann ferner dazu ausgelegt sein, eine Kommunikationsschnittstelle zu einem externen Netzwerk 224 oder der Cloud bereitzustellen.
  • Das externe Netzwerk 224 kann als das World-Wide Web oder das Internet bezeichnet werden. Das externe Netzwerk 224 kann ein Standardkommunikationsprotokoll zwischen Rechenvorrichtungen erstellen. Das externe Netzwerk 224 kann ermöglichen, dass Informationen und Daten leicht zwischen Rechenvorrichtungen und Netzwerken ausgetauscht werden. Ein oder mehrere Server 330 können in Kommunikation mit dem externen Netzwerk 224 stehen.
  • Das Rechensystem 202 kann eine Eingabe/Ausgabe(E/A)-Schnittstelle 220 beinhalten, die dazu ausgelegt sein kann, digitale und/oder analoge Eingaben und Ausgaben bereitzustellen. Die E/A-Schnittstelle 220 kann zusätzliche serielle Schnittstellen zum Kommunizieren mit externen Vorrichtungen beinhalten (z. B. USB(Universal Serial Bus)-Schnittstelle).
  • Das Rechensystem 202 kann eine Mensch-Maschine-Schnittstelle(HMI)-Vorrichtung 218 beinhalten, die eine beliebige Vorrichtung beinhalten kann, die dem System 200 ermöglicht, eine Steuereingabe zu empfangen. Beispiele für Eingabevorrichtungen können Eingaben mit einer menschlichen Schnittstelle wie etwa Tastaturen, Mäuse, Touchscreens, Spracheingabevorrichtungen und andere ähnliche Vorrichtungen beinhalten. Das Rechensystem 202 kann eine Anzeigevorrichtung 232 beinhalten. Das Rechensystem 202 kann Hardware und Software zum Ausgeben von Grafiken und Textinformationen an die Anzeigevorrichtung 232 beinhalten. Die Anzeigevorrichtung 232 kann einen elektronischen Anzeigebildschirm, einen Projektor, einen Drucker oder eine andere geeignete Vorrichtung zum Anzeigen von Informationen für einen Benutzer oder Bediener beinhalten. Das Rechensystem 202 kann ferner dazu ausgelegt sein, eine Interaktion mit einer entfernten HMI und entfernten Anzeigevorrichtungen über die Netzwerkschnittstellenvorrichtung 222 zu ermöglichen.
  • Das System 200 kann unter Verwendung eines oder mehrerer Rechensysteme implementiert werden. Obwohl das Beispiel ein einzelnes Rechensystem 202 darstellt, das alle der beschriebenen Merkmale implementiert, wird beabsichtigt, dass verschiedene Merkmale und Funktionen getrennt sein und durch mehrere Recheneinheiten, die in Kommunikation miteinander stehen, implementiert werden können. Die bestimmte ausgewählte Systemarchitektur kann von einer Vielfalt von Faktoren abhängen.
  • Das System 200 kann einen Maschinenlernalgorithmus 210 implementieren, der dazu ausgelegt ist, den Rohquellendatensatz 215 zu analysieren. Der Rohquellendatensatz 215 kann rohe oder nicht verarbeitete Sensordaten beinhalten, die einen Eingangsdatensatz für ein Maschinenlernsystem repräsentieren können. Der Rohquellendatensatz 215 kann Video, Videosegmente, Bilder, textbasierte Informationen und rohe oder teilweise verarbeitete Sensordaten (z. B. Radar-Karte von Objekten) beinhalten. In einigen Beispielen kann der Maschinenlernalgorithmus 210 ein Neuronalnetzwerkalgorithmus sein, der dazu ausgebildet ist, eine vorbestimmte Funktion durchzuführen. Beispielsweise kann der Neuronalnetzwerkalgorithmus in Kraftfahrzeuganwendungen dazu ausgelegt sein, Fußgänger in Videobildern zu identifizieren.
  • Das Computersystem 200 kann einen Trainingsdatensatz 212 für den Maschinenlernalgorithmus 210 speichern. Der Trainingsdatensatz 212 kann einen Satz von zuvor konstruierten Daten zum Trainieren des Maschinenlernalgorithmus 210 repräsentieren. Der Trainingsdatensatz 212 kann durch den Maschinenlernalgorithmus 210 verwendet werden, um Gewichtungsfaktoren zu lernen, die mit einem Neuronalnetzwerkalgorithmus assoziiert sind. Der Trainingsdatensatz 212 kann einen Satz von Quelldaten beinhalten, die entsprechende Resultate oder Ergebnisse aufweisen, die der Maschinenlernalgorithmus 210 versucht, über den Lernprozess zu duplizieren. In diesem Beispiel kann der Trainingsdatensatz 212 Quellvideos mit und ohne Fußgänger und entsprechende Vorhandensein- und Standortinformationen beinhalten. Die Quellvideos können verschiedene Szenarien beinhalten, bei denen Fußgänger identifiziert werden.
  • Der Maschinenlernalgorithmus 210 kann in einem Lernmodus unter Verwendung des Trainingsdatensatzes 212 als Eingabe betrieben werden. Der Maschinenlernalgorithmus 210 kann über eine Anzahl von Iterationen unter Verwendung der Daten aus dem Trainingsdatensatz 212 ausgeführt werden. Mit jeder Iteration kann der Maschinenlernalgorithmus 210 interne Gewichtungsfaktoren basierend auf den erreichten Ergebnissen aktualisieren. Beispielsweise kann der Maschinenlernalgorithmus 210 Ausgabeergebnisse (z. B. Annotationen) mit jenen vergleichen, die im Trainingsdatensatz 212 enthalten sind. Da der Trainingsdatensatz 212 die erwarteten Ergebnisse beinhaltet, kann der Maschinenlernalgorithmus 210 bestimmen, wann die Leistungsfähigkeit akzeptabel ist. Nachdem der Maschinenlernalgorithmus 210 ein vorbestimmtes Leistungsfähigkeitsniveau erreicht (z. B. 100 % Übereinstimmung mit den Resultaten, die mit dem Trainingsdatensatz 212 assoziiert sind), kann der Maschinenlernalgorithmus 210 unter Verwendung von Daten ausgeführt werden, die nicht im Trainingsdatensatz 212 vorhanden sind. Der trainierte Maschinenlernalgorithmus 210 kann auf neue Datensätze angewendet werden, um annotierte Daten zu erzeugen.
  • Der Maschinenlernalgorithmus 210 kann dazu ausgelegt sein, ein bestimmtes Merkmal in den Rohquellendaten 215 zu identifizieren. Die Rohquellendaten 215 können eine Mehrzahl von Instanzen oder einen Eingangsdatensatz beinhalten, für die/den Annotationsergebnisse gewünscht werden. Beispielsweise kann der Maschinenlernalgorithmus 210 dazu ausgelegt sein, das Vorhandensein eines Fußgängers in Videobildern zu identifizieren und die Vorkommnisse zu annotieren. Der Maschinenlernalgorithmus 210 kann programmiert sein, die Rohquellendaten 215 zu verarbeiten, um das Vorhandensein der bestimmten Merkmale zu identifizieren. Der Maschinenlernalgorithmus 210 kann dazu ausgelegt sein, ein Merkmal in den Rohquellendaten 215 als ein vorbestimmtes Merkmal (z. B. Fußgänger) zu identifizieren. Die Rohquellendaten 215 können aus einer Vielfalt von Quellen abgeleitet werden. Beispielsweise können die Rohquellendaten 215 tatsächliche Eingangsdaten sein, die durch ein Maschinenlernsystem gesammelt werden. Die Rohquellendaten 215 können zum Testen des Systems maschinell erzeugt sein. Als ein Beispiel können die Rohquellendaten 215 rohe Videobilder von einer Kamera beinhalten.
  • In dem Beispiel kann der Maschinenlernalgorithmus 210 die Rohquellendaten 215 verarbeiten und eine Indikation einer Repräsentation eines Bildes ausgeben. Die Ausgabe kann auch eine augmentierte Repräsentation des Bildes beinhalten. Ein Maschinenlernalgorithmus 210 kann ein Konfidenzniveau oder einen Konfidenzfaktor für jede erzeugte Ausgabe erzeugen. Beispielsweise kann ein Konfidenzwert, der eine vorbestimmte Hochkonfidenzschwelle überschreitet, angeben, dass der Maschinenlernalgorithmus 210 sicher ist, dass das identifizierte Merkmal dem bestimmten Merkmal entspricht. Ein Konfidenzwert, der kleiner als eine Niedrigkonfidenzschwelle ist, kann angeben, dass der Maschinenlernalgorithmus 210 etwas ungewiss ist, dass das bestimmte Merkmal vorhanden ist.
  • 3 veranschaulicht eine Ausführungsform eines Flussdiagramms in Bezug auf das Robustifizieren vortrainierter Klassifizierer. Bei Schritt 301 kann die Eingabe (z. B. Bild oder ähnliche Daten) x an einem Prozessor, einem Computer, einem Server usw. empfangen werden. Bei Schritt 302 kann die Eingabe durch Rauschen ∈ gestört werden. Bei Schritt 303 können die gestörten Daten durch den Vorverarbeitungsschritt (z. B. Entrauschungsschritt) über D(x +) laufen. Der Entrauscher kann ein vortrainierter Entrauscher sein. Bei Schritt 305 können die resultierenden entrauschten Daten durch den Basisklassifizierer mit einer Abweisungsklasse laufen. Der Basisklassifizierer kann sowohl einen vortrainierten Klassifizierer (z. B. K-Klassen-Klassifizierer) als auch einen Abweiser beinhalten. Der Abweiser kann trainiert sein, um erfolgreich zwischen den korrekt klassifizierten und fehlklassifizierten entrauschten Eingaben zu unterscheiden, die durch den Basisklassifizierer f(.) einer Klasse k zugewiesen werden. Bei Schritt 307 kann die Klassifikationsausgabe des geglätteten gemeinsamen Systems von ( D , ƒ , { h k } k = 1   K )
    Figure DE102023202402A1_0005
    als die wahrscheinlichste Klasse über die Rauschverteilung (oder ihre empirische Realisierung über N u.i.v. Samples) behauptet werden. Die schematische Darstellung eines solchen Systems ist in 4 unten gezeigt, und das Gesamtsystem kann als S = { D , ƒ , { h k } k = 1   K }
    Figure DE102023202402A1_0006
    definiert sein.
  • In einer solchen Ausführungsform sind der vortrainierte K-Klassen-Klassifizierer und der vortrainerte Entrauscher mit einem Pro-Klasse-Abweiser augmentiert - das heißt einem Binärdetektor für jede der ursprünglichen K Klassen. Es wird versucht, die Zertifizierungsgenauigkeit vortrainierter Klassifizierer zu verbessern, indem eine explizite ,Abweisungs'-Klasse in den Basisklassifizierer eingeschlossen wird, während die Zertifizierbarkeit gegenüber schlimmstmögliche Perturbationen mit beschränkter I2-Norm bewahrt wird.
  • In der vorgeschlagenen Klassifikationsprozedur für das volle System, das den Klassifizierer f, den Entrauscher D, die Abweiser {h1,...,hK} enthält, wird das Bild x durch die folgenden Schritte laufen: (a) es wird zuerst durch Rauschen ∈ gestört, das aus Gaußschem Rauschen mit Varianz σ2 bezogen wird. (b) rauschbehaftete Bilder laufen durch den Bildvorverarbeitungsschritt (Entrauschungsschritt) über D(x+∈) (c) das resultierende entrauschte Bild läuft durch fR(D(x+∈)), das den Basisklassifizierer mit Abweisung bezeichnet, definiert als ƒ R ( z ) = { c R f a i t s   ƒ ( x + ε ) c R  und h R ( x + ε ) 0 R f a i t s   ƒ ( x + ε ) c R  und h R ( x + ε ) 1
    Figure DE102023202402A1_0007
    (d) schließlich wird die Klassifikationsausgabe des geglätteten gemeinsamen Systems als die wahrscheinlichste Klasse über die Rauschverteilung behauptet (oder ihre empirische Realisierung über N u.i.v. Samples, das heißt: Wiederholen der Schritte a-c für insgesamt N Male mit unterschiedlichen Rauschrealisierungen und Annehmen der Majority-Klasse).
  • Diese schematische Darstellung stellt eine visuelle Platzierung der Komponenten im Gesamtsystem dar, bezeichnet als S={f,D,h1,...,hK}.
  • Algorithmus 1, 2, 3 liefert den Pseudocode für die Vorhersage und die Zertifizierung des Gesamtsystems, wobei die Funktion UntereKonfGrenze(S,n,1-α) ein einseitiges 1-α unteres Konfidenzintervall für den Binomialparameter q in Anbetracht eines Samples s~Binomial(n,q) zurückgibt.
    Figure DE102023202402A1_0008
    Figure DE102023202402A1_0009
    Figure DE102023202402A1_0010
  • Um die Abweiser zu trainieren, werden die Parameter der Abweisernetzwerke {h1,...,hK} gelernt, indem sie trainiert werden, die korrekt klassifizierten gegenüber fehlklassifizierten rauschbehafteten Samples zu unterscheiden. Das heißt, den Klassifikationsverlust für den Abweiser hk konkret definieren als L ϕ k = l Kreuzentropie ( H k ( D ( x i + ε ) ) , b i )
    Figure DE102023202402A1_0011
    wobei Hk die Softmax-Ausgaben des Abweisers k ist und das Ziellabel bi für das Bild xi definiert ist als b i = { 1 f a l l s   ƒ ( D ( x i + c ) ) ƒ ( x i ) 0   a n d e r w e i t i g
    Figure DE102023202402A1_0012
  • Das heißt, das Ziellabel bi=0, falls der Klassifizierer f eine entrauschte Eingabe in die gleiche Klasse wie die des rauschfreien Bildes klassifiziert hat, und 1 anderweitig, wodurch die rauschbehafteten Bilder abgewiesen werden, deren Klassifikationsresultat sich geändert hat.
  • Der Gesamtverlust, der über den gesamten Datensatz mit allen möglichen K Klassen aggregiert wird, ergibt L = E x i , ε [ R = 1 K L k × 1 [ ƒ | x i  I = k ] ]
    Figure DE102023202402A1_0013
    wobei der Parametersatz ϕ={ϕ1,...,ϕK} den Satz von Parametern aller K Abweiser erfasst.
  • Um das Training erschwinglicher zu machen, wird vorgeschlagen, die K Abweiser durch ein gemeinsam genutztes Backbone hBB, parametrisiert durch ϕBB, zu binden, und jedes hk zu definieren, indem eine vollständig verbundene Schicht, parametrisiert durch ωk, zu den über das Backbone-Netzwerk extrahierten Merkmalen hinzugefügt wird.
  • 4 veranschaulicht eine Ausführungsform eines Diagramms gemäß einer Ausführungsform. Das System kann eine Eingabe 401 empfangen. Die Eingabe 401 kann Daten von einem oder mehreren Sensoren beinhalten, wie etwa Videodaten, Radar, LiDAR, Ultraschall, Bewegung, Wärmebildkameras usw. Rauschen 403 kann zu der Eingabe hinzugefügt werden, um beim Robustifizierungsprozess des vortrainierten neuronalen Netzwerks gegenüber Adversarial Attacks zu helfen. Das System kann dann einen vortrainierten Entrauscher 405 verwenden. Der vortrainierte Entrauscher 405 kann ein Bild-zu-Bild-Wandler sein und somit eine Bildvorverarbeitung nutzen, um ein entrauschtes Bild oder einen entrauschten Bildsatz zu erzeugen. Um robuste Klassifizierer zu konstruieren, ohne die zugrundeliegenden Gewichtungen eines gegebenen Netzwerks f zu ändern, kann ein System einen Bildentrauscher 405 als einen Vorverarbeitungsschritt nutzen, bevor die Eingaben durch f geleitet werden, wobei der Entrauscher 405 darauf abzielt, das Gaußsche Rauschen, das zu der Eingabe hinzugefügt wurde, mit randomisierter Glättung zu entfernen. Konkret wird dies durch Augmentieren des Klassifizierers f mit einem speziell trainierten Entrauscher Dθ:Rd→Rd durchgeführt, wodurch das gesamte System als die zusammengesetzte Funktion f◦Dθ:Rd→Y wiedergegeben wird. Das Bild oder die Eingabe 401 kann N Anzahl von Malen gestört werden, und jede Perturbation kann in eine der (K+1) Klassen klassifiziert werden. Die zusätzliche Klasse kann als eine Zurückhaltungs-/Detektions-/Abweisungsklasse bezeichnet werden.
  • Der K-Klassen-Klassifizierer 409 (der vortrainiert sein kann) und der Entrauscher 405 können mit einem Pro-Klasse-Abweiser 410 augmentiert werden. Der Abweiser 410 kann ein Binärdetektor für jede der ursprünglichen K Klassen sein. Das System kann arbeiten, um den Abweiser 410 unter Verwendung von jeder der Iterationen der Daten zu trainieren, zu denen Rauschen hinzugefügt wurde und die über den Entrauscher vorverarbeitet werden. Das System kann darauf abzielen, die Zertifizierungsgenauigkeit vortrainierter Klassifizierer zu verbessern, indem eine explizite ,Abweisungs'-Klasse in den Basisklassifizierer eingeschlossen wird, während die Zertifizierbarkeit gegenüber schlimmstmöglichen Perturbationen mit beschränkter I2-Norm bewahrt wird. Das Abweisermodul 411 kann genutzt werden, um das vorgeschlagene Abweisermodul zu trainieren, um korrekt klassifizierte gegenüber fehlklassifizierten zufällig gestörten Bildern zu unterscheiden (klassifizieren). Das Abweiserselektormodul 411 kann mit sowohl dem vortrainierten Klassifizierer 409 als auch dem arbeiten.
  • Um das Training erschwinglicher zu machen, kann das System die K Abweiser durch ein gemeinsam genutztes Backbone 410 binden. Das System kann somit abweisen, die Eingaben zu klassifizieren, die wahrscheinlich fehlklassifiziert werden. Der oder die Abweiser 410 kann bzw. können beim Blockieren solcher Eingaben genutzt werden. Das Abweiserselektormodul wird entweder eine Klasse k 412 oder eine Abweisung 413 ausgeben, die mit der Eingabe assoziiert ist. Die verschiedenen Iterationen der Eingangsdaten, die zu unterschiedlichen Iterationen von Rauschen hinzugefügt (z. B. gestört) und vorverarbeitet werden, können n Male verwendet werden.
  • Bei 415 können das System und der Klassifizierer arbeiten, um sowohl eine finale Klasse 417 als auch eine Zurückhaltungsklassifikation 416 zu zertifizieren und vorherzusagen. Das System kann die verschiedenen Zählungen der gestörten Daten, die entrauscht werden, sampeln. Es kann dann die zweckmäßige Grenze bestimmen, um die Robustheit der Eingabe zu zertifizieren. Zu dem Ausmaß, dass die Eingabe nicht zertifiziert ist, kann sie als eine Fehlklassifikation oder eine Zurückhaltungsklasse zurückgegeben werden.
  • Somit kann das System darauf abzielen, die Zertifizierungsgenauigkeit vortrainierter Klassifizierer zu verbessern, indem eine explizite ,Abweisungs'-Klasse in den Basisklassifizierer eingeschlossen wird, während die Zertifizierbarkeit gegenüber schlimmstmögliche Perturbationen mit beschränkter Z2-Norm bewahrt wird. Zu diesem Zweck soll h : Rd → {0, 1} eine allgemeine Funktion mit Binärausgaben bezeichnen, was die Eingabe x effektiv mit einem ,Flag’ versieht, falls h(x) = 1, wodurch es der Abweisungsklasse zugewiesen wird; während h(x) = 0 angibt, dass die Eingabe durchgeleitet werden kann und sie somit nicht abgewiesen wird. Somit können das System und der Algorithmus effektiv einen solchen ,Abweiser` in Verbindung mit einer vortrainierten entrauschten Glättung trainieren und betreiben, um die robuste Leistungsfähigkeit eines vortrainierten Klassifizierers zu verbessern.
  • 5 stellt ein schematisches Diagramm einer Interaktion zwischen einer computer-gesteuerten Maschine 500 und einem Steuersystem 502 dar. Die computer-gesteuerte Maschine 500 beinhaltet einen Aktor 504 und einen Sensor 506. Der Aktor 504 kann einen oder mehrere Aktoren beinhalten und der Sensor 506 kann einen oder mehrere Sensoren beinhalten. Der Sensor 506 ist dazu ausgelegt, einen Zustand der computer-gesteuerten Maschine 500 zu erfassen. Der Sensor 506 kann dazu ausgelegt sein, den erfassten Zustand in Sensorsignale 508 zu codieren und die Sensorsignale 508 zu einem Steuersystem 502 zu übertragen. Nicht beschränkende Beispiele des Sensors 506 beinhalten Video-, Radar-, LiDAR-, Ultraschall- und Bewegungssensoren. In einer Ausführungsform ist der Sensor 506 ein optischer Sensor, der dazu ausgelegt ist, optische Bilder einer Umgebung in der Nähe der computer-gesteuerten Maschine 500 zu erfassen.
  • Das Steuersystem 502 ist dazu ausgelegt, die Sensorsignale 508 von der computer-gesteuerten Maschine 500 zu empfangen. Wie nachfolgend dargelegt, kann das Steuersystem 502 ferner dazu ausgelegt sein, Aktorsteuerbefehle 510 in Abhängigkeit von den Sensorsignalen zu berechnen und die Aktorsteuerbefehle 510 zu dem Aktor 504 der computer-gesteuerten Maschine 500 zu übertragen.
  • Wie in 5 gezeigt, beinhaltet das Steuersystem 502 eine Empfangseinheit 512. Die Empfangseinheit 512 kann dazu ausgelegt sein, die Sensorsignale 508 vom Sensor 506 zu empfangen und die Sensorsignale 508 in Eingangssignale x zu transformieren. In einer alternativen Ausführungsform werden die Sensorsignale 508 direkt als Eingangssignale x ohne die Empfangseinheit 512 empfangen. Jedes Eingangssignal x kann ein Abschnitt jedes Sensorsignals 508 sein. Die Empfangseinheit 512 kann dazu ausgelegt sein, jedes Sensorsignal 508 zu verarbeiten, um jedes Eingangssignal x zu erzeugen. Das Eingangssignal x kann Daten beinhalten, die einem durch den Sensor 506 aufgezeichneten Bild entsprechen.
  • Das Steuersystem 502 beinhaltet einen Klassifizierer 514. Der Klassifizierer 514 kann dazu ausgelegt sein, die Eingangssignale x unter Verwendung eines Maschinenlernalgorithmus (ML-Algorithmus), wie etwa eines oben beschriebenen neuronalen Netzwerks, in ein oder mehrere Labels zu klassifizieren. Der Klassifizierer 514 ist dazu ausgelegt, durch Parameter parametrisiert zu werden, wie etwa jene, die oben beschrieben sind (z. B. Parameter θ). Die Parameter θ können in einer nichtflüchtigen Speicherung 516 gespeichert und durch diese bereitgestellt werden. Der Klassifizierer 514 ist dazu ausgelegt, Ausgangssignale y aus den Eingangssignalen x zu bestimmen. Jedes Ausgangssignal y beinhaltet Informationen, die jedem Eingangssignal x ein oder mehrere Labels zuweisen. Der Klassifizierer 514 kann die Ausgangssignale y zu einer Umwandlungseinheit 518 übertragen. Die Umwandlungseinheit 518 ist dazu ausgelegt, die Ausgangssignale y in die Aktorsteuerbefehle 510 umzuwandeln. Das Steuersystem 502 ist dazu ausgelegt, die Aktorsteuerbefehle 510 zu dem Aktor 504 zu übertragen, der dazu ausgelegt ist, die computer-gesteuerte Maschine 500 als Reaktion auf die Aktorsteuerbefehle 510 zu betätigen. In einer anderen Ausführungsform ist der Aktor 504 dazu ausgelegt, die computer-gesteuerte Maschine 500 direkt basierend auf den Ausgangssignalen y zu betätigen.
  • Nach dem Empfangen der Aktorsteuerbefehle 510 durch den Aktor 504 ist der Aktor 504 dazu ausgelegt, eine Aktion entsprechend dem zugehörigen Aktorsteuerbefehl 510 auszuführen. Der Aktor 504 kann eine Steuerlogik beinhalten, die dazu ausgelegt ist, die Aktorsteuerbefehle 510 in einen zweiten Aktorsteuerbefehl zu transformieren, der zum Steuern des Aktors 504 genutzt wird. In einer oder mehreren Ausführungsformen können die Aktorsteuerbefehle 510 genutzt werden, um eine Anzeige anstelle von oder zusätzlich zu einem Aktor zu steuern.
  • In einer anderen Ausführungsform beinhaltet das Steuersystem 502 den Sensor 506 anstelle von oder zusätzlich zu der computer-gesteuerten Maschine 500, die den Sensor 506 beinhaltet. Das Steuersystem 502 kann auch den Aktor 504 anstelle von oder zusätzlich zu der computer-gesteuerten Maschine 500 beinhalten, die den Aktor 504 beinhaltet.
  • Wie in 5 gezeigt, beinhaltet das Steuersystem 502 auch einen Prozessor 520 und einen Speicher 522. Der Prozessor 520 kann einen oder mehrere Prozessoren beinhalten. Der Speicher 522 kann eine oder mehrere Speichervorrichtungen beinhalten. Der Klassifizierer 514 (z. B. ML-Algorithmen) einer oder mehrerer Ausführungsformen kann durch das Steuersystem 502 implementiert werden, das die nichtflüchtige Speicherung 516, den Prozessor 520 und den Speicher 522 beinhaltet.
  • Die nichtflüchtige Speicherung 516 kann eine oder mehrere persistente Datenspeicherungsvorrichtungen beinhalten, wie etwa eine Festplatte, ein optisches Laufwerk, ein Bandlaufwerk, eine nichtflüchtige Solid-State-Vorrichtung, Cloud-Speicherung oder eine beliebige andere Vorrichtung, die in der Lage ist, Informationen persistent zu speichern. Der Prozessor 520 kann eine oder mehrere Vorrichtungen beinhalten, die aus Hochleistungsrechensystemen (HPC-Systemen) ausgewählt werden, einschließlich Hochleistungskernen, Mikroprozessoren, Mikrocontrollern, Digitalsignalprozessoren, Mikrocomputern, Zentralverarbeitungseinheiten, feldprogrammierbaren Gate-Arrays, programmierbaren Logikvorrichtungen, Zustandsmaschinen, Logikschaltungen, Analogschaltungen, Digitalschaltungen oder beliebigen anderen Vorrichtungen, die Signale (analog oder digital) basierend auf computer-ausführbaren Anweisungen manipulieren, die sich im Speicher 522 befinden. Der Speicher 522 kann eine einzelne Speichervorrichtung oder eine Anzahl von Speichervorrichtungen beinhalten, einschließlich unter anderem Direktzugriffsspeicher (RAM), flüchtigem Speicher, nichtflüchtigem Speicher, statischem Direktzugriffsspeicher (SRAM), dynamischem Direktzugriffsspeicher (DRAM), Flash-Speicher, Cache-Speicher oder einer beliebigen anderen Vorrichtung, die in der Lage ist, Informationen zu speichern.
  • Der Prozessor 520 kann dazu ausgelegt sein, in den Speicher 522 zu lesen und computer-ausführbare Anweisungen auszuführen, die sich in der nichtflüchtigen Speicherung 516 befinden und einen oder mehrere ML-Algorithmen und/oder -Methoden einer oder mehrerer Ausführungsformen verkörpern. Die nichtflüchtige Speicherung 516 kann ein(e) oder mehrere Betriebssysteme und Anwendungen beinhalten. Die nichtflüchtige Speicherung 516 kann kompilierte und/oder interpretierte Computerprogramme speichern, die unter Verwendung einer Vielfalt von Programmiersprachen und/oder -technologien erzeugt werden, einschließlich unter anderem, und entweder alleine oder in Kombination, Java, C, C++, C#, Objective C, Fortran, Pascal, Java Script, Python, Perl und PL/SQL.
  • Nach der Ausführung durch den Prozessor 520 können die computer-ausführbaren Anweisungen der nichtflüchtigen Speicherung 516 bewirken, dass das Steuersystem 502 eine(n) oder mehrere der ML-Algorithmen und -Methoden implementiert, wie hierin offenbart. Die nichtflüchtige Speicherung 516 kann auch ML-Daten (einschließlich Datenparametern) beinhalten, die die Funktionen, Merkmale und Prozesse der einen oder der mehreren hierin beschriebenen Ausführungsformen unterstützen.
  • Der Programmcode, der die hierin beschriebenen Algorithmen und/oder Methoden verkörpert, kann einzeln oder kollektiv als ein Programmprodukt in einer Vielfalt verschiedener Formen verteilt werden. Der Programmcode kann unter Verwendung eines computer-lesbaren Speicherungsmediums mit darauf befindlichen computer-lesbaren Programmanweisungen verteilt werden, um zu bewirken, dass ein Prozessor Aspekte einer oder mehrerer Ausführungsformen ausführt. Computer-lesbare Speicherungsmedien, die inhärent nichttransitorisch sind, können flüchtige und nichtflüchtige und entfernbare und nicht entfernbare greifbare Medien beinhalten, die in einem beliebigen Verfahren oder einer beliebigen Technologie zur Speicherung von Informationen implementiert werden, wie etwa computer-lesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten. Computer-lesbare Speicherungsmedien können ferner RAM, ROM, löschbaren programmierbaren Nurlesespeicher (EPROM), elektrisch löschbaren programmierbaren Nurlesespeicher (EEPROM), Flash-Speicher oder eine andere Solid-State-Speichertechnologie, portablen Compact-Disc-Nurlesespeicher (CD-ROM) oder eine andere optische Speicherung, magnetische Kassetten, Magnetband, magnetische Plattenspeicherung oder andere magnetische Speicherungsvorrichtungen oder ein beliebiges anderes Medium beinhalten, das zum Speichern der gewünschten Informationen verwendet werden und durch einen Computer gelesen werden kann. Computer-lesbare Programmanweisungen können von einem computer-lesbaren Speicherungsmedium zu einem Computer, einer anderen Art von programmierbarer Datenverarbeitungseinrichtung oder einer anderen Vorrichtung oder über ein Netzwerk zu einem externen Computer oder einer externen Speicherungsvorrichtung heruntergeladen werden.
  • Computer-lesbare Programmanweisungen, die in einem computer-lesbaren Medium gespeichert sind, können verwendet werden, um einen Computer, andere Arten von programmierbarer Datenverarbeitungseinrichtung oder andere Vorrichtungen anzuweisen, auf eine bestimmte Art und Weise zu funktionieren, sodass die in dem computer-lesbaren Medium gespeicherten Anweisungen einen Herstellungsartikel erzeugen, der Anweisungen beinhaltet, die die Funktionen, Handlungen und/oder Operationen implementieren, die in den Flussdiagrammen oder Diagrammen spezifiziert sind. In gewissen alternativen Ausführungsformen können die Funktionen, Handlungen und/oder Operationen, die in den Flussdiagrammen und Diagrammen spezifiziert sind, in Übereinstimmung mit einer oder mehreren Ausführungsformen umgeordnet, seriell verarbeitet und/oder gleichzeitig verarbeitet werden. Darüber hinaus können beliebige der Flussdiagramme und/oder Diagramme mehr oder weniger Knoten oder Blöcke als jene beinhalten, die in Übereinstimmung mit einer oder mehreren Ausführungsformen veranschaulicht sind.
  • Die Prozesse, Verfahren oder Algorithmen können insgesamt oder teilweise unter Verwendung geeigneter Hardwarekomponenten verkörpert werden, wie etwa anwendungsspezifischer integrierter Schaltungen (ASICs), feldprogrammierbarer Gate-Arrays (FPGAs), Zustandsmaschinen, Steuerungen oder anderer Hardwarekomponenten oder -vorrichtungen oder einer Kombination aus Hardware-, Software- und Firmwarekomponenten.
  • 6 stellt ein schematisches Diagramm des Steuersystems 502 dar, das dazu ausgelegt ist, ein Fahrzeug 600 zu steuern, das ein zumindest teilweises autonomes Fahrzeug oder ein zumindest teilweiser autonomer Roboter sein kann. Das Fahrzeug 600 beinhaltet den Aktor 504 und den Sensor 506. Der Sensor 506 kann eine(n) oder mehrere Videosensoren, Kameras, Radarsensoren, Ultraschallsensoren, LiDAR-Sensoren und/oder Positionssensoren (z. B. GPS) beinhalten. Ein oder mehrere des einen oder der mehreren spezifischen Sensoren kann in das Fahrzeug 600 integriert sein. Alternativ oder zusätzlich zu einem oder mehreren oben identifizierten spezifischen Sensoren kann der Sensor 506 ein Softwaremodul beinhalten, das dazu ausgelegt ist, bei seiner Ausführung einen Zustand des Aktors 504 zu bestimmen. Ein nicht beschränkendes Beispiel eines Softwaremoduls beinhaltet ein Wetterinformationen-Softwaremodul, das dazu ausgelegt ist, einen gegenwärtigen oder zukünftigen Zustand des Wetters in der Nähe des Fahrzeugs 600 oder eines anderen Ortes zu bestimmen.
  • Der Klassifizierer 514 des Steuersystems 502 des Fahrzeugs 600 kann dazu ausgelegt sein, Objekte in der Nähe des Fahrzeugs 600 in Abhängigkeit von den Eingangssignalen x zu detektieren. In einer solchen Ausführungsform kann das Ausgangssignal y Informationen beinhalten, die die Nähe von Objekten zu dem Fahrzeug 600 charakterisieren. Der Aktorsteuerbefehl 510 kann gemäß diesen Informationen bestimmt werden. Der Aktorsteuerbefehl 510 kann verwendet werden, um Kollisionen mit den detektierten Objekten zu vermeiden.
  • In Ausführungsformen, bei denen das Fahrzeug 600 ein zumindest teilweise autonomes Fahrzeug ist, kann der Aktor 504 in einer Bremse, einem Antriebssystem, einem Motor, einem Antriebsstrang oder einer Lenkung des Fahrzeugs 600 verkörpert sein. Die Aktorsteuerbefehle 510 können so bestimmt werden, dass der Aktor 504 so gesteuert wird, dass das Fahrzeug 600 Kollisionen mit detektierten Objekten vermeidet. Detektierte Objekte können auch gemäß dem klassifiziert werden, was der Klassifizierer 514 für am wahrscheinlichsten hält, wie etwa Fußgänger oder Bäume. Die Aktorsteuerbefehle 510 können in Abhängigkeit von der Klassifikation bestimmt werden. In einem Szenario, bei dem ein Adversarial Attack stattfinden kann, kann das oben beschriebene System ferner trainiert werden, Objekte besser zu detektieren oder eine Änderung der Beleuchtungsbedingungen oder eines Winkels für einen Sensor oder eine Kamera am Fahrzeug 600 zu identifizieren.
  • In anderen Ausführungsformen, bei denen das Fahrzeug 600 ein zumindest teilweise autonomer Roboter ist, kann das Fahrzeug 600 ein mobiler Roboter sein, der dazu ausgelegt ist, eine oder mehrere Funktionen auszuführen, wie etwa Fliegen, Schwimmen, Tauchen und Schreiten. Der mobile Roboter kann ein zumindest teilweise autonomer Rasenmäher oder ein zumindest teilweise autonomer Reinigungsroboter sein. In solchen Ausführungsformen kann der Aktorsteuerbefehl 510 so bestimmt werden, dass eine Antriebseinheit, eine Lenkeinheit und/oder eine Bremseinheit des mobilen Roboters so gesteuert werden kann, dass der mobile Roboter Kollisionen mit identifizierten Objekten vermeiden kann.
  • In einer anderen Ausführungsform ist das Fahrzeug 600 ein zumindest teilweiser autonomer Roboter in Form eines Gartenroboters. In einer solchen Ausführungsform kann das Fahrzeug 600 einen optischen Sensor als den Sensor 506 verwenden, um einen Zustand von Pflanzen in einer Umgebung in der Nähe des Fahrzeugs 600 zu bestimmen. Der Aktor 504 kann eine Düse sein, die dazu ausgelegt ist, Chemikalien zu sprühen. In Abhängigkeit von einer identifizierten Art und/oder einem identifizierten Zustand der Pflanzen kann der Aktorsteuerbefehl 510 bestimmt werden, um zu bewirken, dass der Aktor 504 die Pflanzen mit einer geeigneten Menge geeigneter Chemikalien besprüht.
  • Das Fahrzeug 600 kann ein zumindest teilweiser autonomer Roboter in Form eines Haushaltsgeräts sein. Nicht beschränkende Beispiele von Haushaltsgeräten beinhalten eine Waschmaschine, einen Herd, einen Ofen, eine Mikrowelle oder eine Spülmaschine. In einem solchen Fahrzeug 600 kann der Sensor 506 ein optischer Sensor sein, der dazu ausgelegt ist, einen Zustand eines Objekts zu detektieren, das einer Bearbeitung durch das Haushaltsgerät unterzogen werden soll. Beispielsweise in dem Fall, dass das Haushaltsgerät eine Waschmaschine ist, kann der Sensor 506 einen Zustand der Wäsche in der Waschmaschine detektieren. Der Aktorsteuerbefehl 510 kann basierend auf einem detektierten Zustand der Wäsche bestimmt werden.
  • 7 stellt ein schematisches Diagramm des Steuersystems 502 dar, das dazu ausgelegt ist, das System 700 (z. B. Fertigungsmaschine), wie etwa ein Stanzgerät, ein Schneidemesser oder einen Tieflochbohrer, eines Fertigungssystems 702, wie etwa ein Teil einer Produktionslinie, zu steuern. Das Steuersystem 502 kann dazu ausgelegt sein, den Aktor 504 zu steuern, der dazu ausgelegt ist, das System 700 (z. B. Fertigungsmaschine) zu steuern.
  • Der Sensor 506 des Systems 700 (z. B. Fertigungsmaschine) kann ein optischer Sensor sein, der dazu ausgelegt ist, eine oder mehrere Eigenschaften eines hergestellten Produkts 704 zu erfassen. Der Klassifizierer 514 kann dazu ausgelegt sein, einen Zustand des hergestellten Produkts 704 aus einer oder mehreren der erfassten Eigenschaften zu bestimmen. Der Aktor 504 kann dazu ausgelegt sein, das System 700 (z. B. Fertigungsmaschine) in Abhängigkeit von dem bestimmten Zustand des hergestellten Produkts 704 für einen anschließenden Herstellungsschritt des hergestellten Produkts 704 zu steuern. Der Aktor 504 kann dazu ausgelegt sein, Funktionen des Systems 700 (z. B. Fertigungsmaschine) an dem anschließenden hergestellten Produkt 106 des Systems 700 (z. B. Fertigungsmaschine) in Abhängigkeit von dem bestimmten Zustand des hergestellten Produkts 704 zu steuern.
  • 8 stellt ein schematisches Diagramm des Steuersystems 502 dar, das dazu ausgelegt ist, ein Elektrowerkzeug 800, wie etwa eine elektrische Bohrmaschine oder einen elektrischen Schraubendreher, zu steuern, das einen zumindest teilweise autonomen Modus aufweist. Das Steuersystem 502 kann dazu ausgelegt sein, den Aktor 504 zu steuern, der dazu ausgelegt ist, das Elektrowerkzeug 800 zu steuern.
  • Der Sensor 506 des Elektrowerkzeugs 800 kann ein optischer Sensor sein, der dazu ausgelegt ist, eine oder mehrere Eigenschaften einer Arbeitsfläche 802 und/oder eines Befestigungsmittels 804, das in die Arbeitsfläche 802 getrieben wird, zu erfassen. Der Klassifizierer 514 kann dazu ausgelegt sein, einen Zustand der Arbeitsfläche 802 und/oder des Befestigungsmittels 804 relativ zu der Arbeitsfläche 802 aus einer oder mehreren der erfassten Eigenschaften zu bestimmen. Der Zustand kann lauten, dass das Befestigungsmittel 804 mit der Arbeitsfläche 802 bündig ist. Der Zustand alternativ die Härte der Arbeitsfläche 802 sein. Der Aktor 504 kann dazu ausgelegt sein, das Elektrowerkzeug 800 so zu steuern, dass die Antriebsfunktion des Elektrowerkzeugs 800 in Abhängigkeit von dem bestimmten Zustand des Befestigungsmittels 804 relativ zu der Arbeitsfläche 802 oder einer oder mehreren erfassten Eigenschaften der Arbeitsfläche 802 angepasst wird. Beispielsweise kann der Aktor 504 mit der Antriebsfunktion aufhören, falls der Zustand des Befestigungsmittels 804 relativ zu der Arbeitsfläche 802 bündig ist. Als ein anderes nicht beschränkendes Beispiel kann der Aktor 504 in Abhängigkeit von der Härte der Arbeitsfläche 802 zusätzliches oder weniger Drehmoment anwenden.
  • 9 stellt ein schematisches Diagramm des Steuersystems 502 dar, das dazu ausgelegt ist, einen automatisierten persönlichen Assistenten 900 zu steuern. Das Steuersystem 502 kann dazu ausgelegt sein, den Aktor 504 zu steuern, der dazu ausgelegt ist, den automatisierten persönlichen Assistenten 900 zu steuern. Der automatisierte persönliche Assistent 900 kann dazu ausgelegt sein, ein Haushaltsgerät zu steuern, wie etwa eine Waschmaschine, einen Herd, einen Ofen, eine Mikrowelle oder eine Spülmaschine.
  • Der Sensor 506 kann ein optischer Sensor und/oder ein Audiosensor sein. Der optische Sensor kann dazu ausgelegt sein, Videobilder von Gesten 904 eines Benutzers 902 zu empfangen. Der Audiosensor kann dazu ausgelegt sein, einen Sprachbefehl des Benutzers 902 zu empfangen.
  • Das Steuersystem 502 des automatisierten persönlichen Assistenten 900 kann dazu ausgelegt sein, die Aktorsteuerbefehle 510 zu bestimmen, die dazu ausgelegt sind, das System 502 zu steuern. Das Steuersystem 502 kann dazu ausgelegt sein, die Aktorsteuerbefehle 510 gemäß den Sensorsignalen 508 des Sensors 506 zu bestimmen. Der automatisierte persönliche Assistent 900 ist dazu ausgelegt, die Sensorsignale 508 zu dem Steuersystem 502 zu übertragen. Der Klassifizierer 514 des Steuersystems 502 kann dazu ausgelegt sein, einen Gestenerkennungsalgorithmus auszuführen, um die durch den Benutzer 902 vorgenommene Geste 904 zu identifizieren, um die Aktorsteuerbefehle 510 zu bestimmen, und die Aktorsteuerbefehle 510 zu dem Aktor 504 zu übertragen. Der Klassifizierer 514 kann dazu ausgelegt sein, als Reaktion auf die Geste 904 Informationen aus der nichtflüchtigen Speicherung abzurufen und die abgerufenen Informationen in einer für den Empfang durch den Benutzer 902 geeigneten Form auszugeben.
  • 10 stellt ein schematisches Diagramm des Steuersystems 502 dar, das dazu ausgelegt ist, ein Überwachungssystem 1000 zu steuern. Das Überwachungssystem 1000 kann dazu ausgelegt sein, den Zugang durch eine Tür 1002 physisch zu steuern. Der Sensor 506 kann dazu ausgelegt sein, eine Szene zu detektieren, die für die Entscheidung relevant ist, ob ein Zugang gewährt wird. Der Sensor 506 kann ein optischer Sensor sein, der dazu ausgelegt ist, Bild- und/oder Videodaten zu erzeugen und zu übertragen. Solche Daten können durch das Steuersystem 502 verwendet werden, um das Gesicht einer Person zu detektieren.
  • Der Klassifizierer 514 des Steuersystems 502 des Überwachungssystems 1000 kann dazu ausgelegt sein, die Bild- und/oder Videodaten zu interpretieren, indem Identitäten bekannter Menschen, die in der nichtflüchtigen Speicherung 516 gespeichert sind, abgeglichen werden, wodurch eine Identität einer Person bestimmt wird. Der Klassifizierer 514 kann dazu ausgelegt sein, einen Aktorsteuerbefehl 510 als Reaktion auf die Interpretation der Bild- und/oder Videodaten zu erzeugen. Das Steuersystem 502 ist dazu ausgelegt, den Aktorsteuerbefehl 510 zu dem Aktor 504 zu übertragen. In dieser Ausführungsform kann der Aktor 504 dazu ausgelegt sein, die Tür 1002 als Reaktion auf den Aktorsteuerbefehl 510 zu sperren oder zu entsperren. In anderen Ausführungsformen ist auch eine nicht physische, logische Zugangskontrolle möglich.
  • Das Überwachungssystem 1000 kann auch ein Observationssystem sein. In einer solchen Ausführungsform kann der Sensor 506 ein optischer Sensor sein, der dazu ausgelegt ist, eine Szene zu detektieren, die unter Observation steht, und das Steuersystem 502 ist dazu ausgelegt, eine Anzeige 1004 zu steuern. Der Klassifizierer 514 ist dazu ausgelegt, eine Klassifikation einer Szene zu bestimmen, z. B. ob die durch den Sensor 506 detektierte Szene verdächtig ist. Das Steuersystem 502 ist dazu ausgelegt, als Reaktion auf die Klassifikation einen Aktorsteuerbefehl 510 zu der Anzeige 1004 zu übertragen. Die Anzeige 1004 kann dazu ausgelegt sein, den angezeigten Inhalt als Reaktion auf den Aktorsteuerbefehl 510 anzupassen. Beispielsweise kann die Anzeige 1004 ein Objekt hervorheben, das durch den Klassifizierer 514 als verdächtig erachtet wird. Unter Verwendung einer Ausführungsform des offenbarten Systems kann das Observationssystem adversarische Perturbationen oder zufällige Perturbationen (z. B. schlechte Schatten oder Beleuchtung) im Video der Umgebung identifizieren.
  • 11 stellt ein schematisches Diagramm des Steuersystems 502 dar, das dazu ausgelegt ist, ein Bildgebungssystem 1100 zu steuern, zum Beispiel ein MRT-Gerät, ein Röntgenbildgerät oder ein Ultraschallgerät. Der Sensor 506 kann zum Beispiel ein Bildgebungssensor sein. Der Klassifizierer 514 kann dazu ausgelegt sein, eine Klassifikation des gesamten oder eines Teils des erfassten Bildes zu bestimmen. Der Klassifizierer 514 kann dazu ausgelegt sein, einen Aktorsteuerbefehl 510 als Reaktion auf die durch das trainierte neuronale Netzwerk erhaltene Klassifikation zu bestimmen oder auszuwählen. Beispielsweise kann der Klassifizierer 514 ein Gebiet eines erfassten Bildes als potenziell anomal interpretieren. In diesem Fall kann der Aktorsteuerbefehl 510 bestimmt oder ausgewählt werden, um zu bewirken, dass die Anzeige 302 das Bild anzeigt und das potenziell anomale Gebiet hervorhebt.
  • Obwohl beispielhafte Ausführungsformen vorstehend beschrieben sind, wird nicht beabsichtigt, dass diese Ausführungsformen alle möglichen Formen beschreiben, die durch die Ansprüche umspannt werden. Die in der Spezifikation verwendeten Wörter sind Wörter der Beschreibung anstatt Beschränkung, und es versteht sich, dass verschiedene Änderungen vorgenommen werden können, ohne vom Gedanken und Schutzumfang der Offenbarung abzuweichen. Wie zuvor beschrieben, können die Merkmale verschiedener Ausführungsformen kombiniert werden, um weitere Ausführungsformen der Erfindung zu bilden, die möglicherweise nicht ausdrücklich beschrieben oder veranschaulicht sind. Obwohl verschiedene Ausführungsformen so beschrieben sein könnten, dass sie Vorteile bereitstellen oder gegenüber anderen Ausführungsformen oder Implementierungen des Stands der Technik bezüglich einer oder mehrerer gewünschter Charakteristiken bevorzugt werden, erkennen Durchschnittsfachleute auf dem Gebiet, dass ein oder mehrere Merkmale oder eine oder mehrere Charakteristiken kompromittiert werden können, um gewünschte Gesamtsystemattribute zu erreichen, die von der spezifischen Anwendung und Implementierung abhängen. Diese Attribute können unter anderem Kosten, Stärke, Dauerhaftigkeit, Lebenszykluskosten, Marktfähigkeit, Erscheinungsbild, Verpackung, Größe, Gebrauchsfähigkeit, Gewicht, Herstellbarkeit, Montagefreundlichkeit usw. beinhalten. Demnach liegen, zu dem Ausmaß, dass jegliche Ausführungsformen als weniger wünschenswert beschrieben sind als andere Ausführungsformen oder Implementierungen des Stands der Technik bezüglich
  • einer oder mehrerer Charakteristiken, diese Ausführungsformen nicht außerhalb des Schutzumfangs der Offenbarung und können für bestimmte Anwendungen wünschenswert sein.

Claims (20)

  1. Computer-implementiertes Verfahren zum Trainieren eines Maschinenlernnetzwerks, umfassend: Empfangen von Eingangsdaten von einem Sensor, wobei die Eingangsdaten Bild-, Radar-, Sonar- oder Toninformationen angeben; Erzeugen eines gestörten Eingangsdatensatzes unter Verwendung der Eingangsdaten, wobei der gestörte Eingangsdatensatz gestörte Daten beinhaltet; Entrauschen des gestörten Eingangsdatensatzes, um einen entrauschten Datensatz zu erzeugen; Trainieren des Maschinenlernnetzwerks unter Verwendung des entrauschten Datensatzes, wobei das Maschinenlernnetzwerk dazu ausgelegt ist, den entrauschten Datensatz abzuweisen, wenn eine Klassifikationswahrscheinlichkeit unter eine Klassifikationsschwelle fällt, wobei die Klassifikationsschwelle mit der Klassifikation des entrauschten Datensatzes assoziiert ist; und als Reaktion darauf, dass die Klassifikationswahrscheinlichkeit unter die Klassifikationsschwelle fällt, Ausgeben einer Zurückhaltungsklassifikation, die mit den Eingangsdaten assoziiert ist, wobei die Zurückhaltungsklassifikation für das Klassifizieren ignoriert wird.
  2. Computer-implementiertes Verfahren nach Anspruch 1, wobei das Verfahren Ausgeben einer finalen Klassifikation beinhaltet, die eine Majority-Stimme (Mehrheitsstimme) aufweist, im Vergleich zu der Zurückhaltungsklassifikation beim Klassifizieren.
  3. Computer-implementiertes Verfahren nach Anspruch 1, wobei das Verfahren Nutzen eines Klassifizierers beinhaltet, der einen Pro-Klasse-Abweiser beinhaltet, der ein Binärdetektor für ursprüngliche Klassen ist, die mit den Eingangsdaten assoziiert sind.
  4. Computer-implementiertes Verfahren nach Anspruch 1, wobei das Verfahren Nutzen eines vortrainierten Klassifizierers, der dazu ausgelegt ist, die Eingangsdaten zu klassifizieren, und eines Abweisers, der dazu ausgelegt ist, die Klassifikation des entrauschten Datensatzes abzuweisen, beinhaltet.
  5. Computer-implementiertes Verfahren nach Anspruch 4, wobei der vortrainierte Klassifizierer ferner einen Entrauscher beinhaltet.
  6. Computer-implementiertes Verfahren nach Anspruch 1, wobei das Verfahren Nutzen mehrerer Iterationen des entrauschten Datensatzes beinhaltet.
  7. Computer-implementiertes Verfahren nach Anspruch 1, wobei das Verfahren ferner Nutzen eines Klassifizierers beinhaltet, der dazu ausgelegt ist, die Eingangsdaten zu klassifizieren.
  8. System, das ein Maschinenlernnetzwerk beinhaltet, umfassend: eine Eingangsschnittstelle, die dazu ausgelegt ist, Eingangsdaten von einem Sensor zu empfangen, wobei der Sensor eine Kamera, ein Radar, ein Sonar oder ein Mikrofon beinhaltet; einen Prozessor, der mit der Eingangsschnittstelle in Kommunikation steht, wobei der Prozessor programmiert ist zum: Empfangen der Eingangsdaten, wobei die Eingangsdaten Bild-, Radar-, Sonar- oder Toninformationen angeben; Erzeugen eines gestörten Eingangsdatensatzes unter Verwendung der Eingangsdaten, wobei der gestörte Eingangsdatensatz Perturbationen der Eingangsdaten beinhaltet; Entrauschen des gestörten Eingangsdatensatzes unter Verwendung eines Entrauschers, wobei der Entrauscher dazu ausgelegt ist, einen entrauschten Datensatz zu erzeugen; Senden des entrauschten Datensatzes zu sowohl einem vortrainierten Klassifizierer als auch einem Abweiser, wobei der vortrainierte Klassifizierer dazu ausgelegt ist, den entrauschten Datensatz zu klassifizieren, und der Abweiser dazu ausgelegt ist, eine Klassifikation des entrauschten Datensatzes abzuweisen; Trainieren, unter Verwendung des entrauschten Eingangsdatensatzes, des Abweisers, um einen trainierten Abweiser zu erreichen; und als Reaktion auf das Erhalten des trainierten Abweisers, Ausgeben einer Zurückhaltungsklassifikation, die mit den Eingangsdaten assoziiert ist, wobei die Zurückhaltungsklassifikation für das Klassifizieren ignoriert wird.
  9. System nach Anspruch 8, wobei der Entrauscher ein vortrainierter Entrauscher ist.
  10. System nach Anspruch 8, wobei der Prozessor ferner programmiert ist, eine finale Klassifikation auszugeben, die mit den Eingangsdaten assoziiert ist.
  11. System nach Anspruch 8, wobei das Trainieren des Abweisers Nutzen von Monte-Carlo-Sampling beinhaltet, das mit den Eingangsdaten assoziiert ist.
  12. System nach Anspruch 8, wobei der Abweiser ein gemeinsam genutztes Backbone beinhaltet, das dazu ausgelegt ist, parametrisiert zu werden.
  13. System nach Anspruch 8, wobei der Entrauscher dazu ausgelegt ist, Gaußsches Rauschen zu entfernen oder zu mindern, das zu der Eingabe hinzugefügt wird.
  14. Computerprogrammprodukt, das Anweisungen speichert, die bei Ausführung durch einen Computer den Computer zu Folgendem veranlassen: Empfangen von Eingangsdaten von einem Sensor, wobei die Eingangsdaten Bild-, Radar-, Sonar- oder Toninformationen angeben; Erzeugen eines gestörten Eingangsdatensatzes unter Verwendung der Eingangsdaten, wobei der gestörte Eingangsdatensatz Perturbationen der Eingangsdaten beinhaltet; Entrauschen des Eingangsdatensatzes unter Verwendung eines vortrainierten Entrauschers, wobei der vortrainierte Entrauscher dazu ausgelegt ist, einen entrauschten Datensatz zu erzeugen; Klassifizieren oder Abweisen des entrauschten Datensatzes unter Verwendung eines vortrainierten Klassifizierers und eines Abweisers; Trainieren des Abweisers unter Verwendung des entrauschten Datensatzes, wobei der Abweiser dazu ausgelegt ist, den entrauschten Datensatz abzuweisen, wenn eine Klassifikationswahrscheinlichkeit unter eine Klassifikationsschwelle fällt, wobei die Klassifikationsschwelle mit der Klassifikation des entrauschten Datensatzes assoziiert ist; und als Reaktion darauf, dass die Klassifikationswahrscheinlichkeit unter die Klassifikationsschwelle fällt, Ausgeben einer Zurückhaltungsklassifikation, die mit den Eingangsdaten assoziiert ist, wobei die Zurückhaltungsklassifikation eine Klassifikation ignoriert.
  15. Computerprogrammprodukt nach Anspruch 14, wobei die Eingangsdaten ein Bild beinhalten, das von einer Kamera empfangen wird, die mit dem Computer in Kommunikation steht.
  16. Computerprogrammprodukt nach Anspruch 14, wobei Anweisungen ferner veranlassen, dass der Computer den Abweiser trainiert, wobei das Training eine Obergrenze und eine Untergrenze beinhaltet, die unter Verwendung von Monte-Carlo-Sampling definiert werden.
  17. Computerprogrammprodukt nach Anspruch 14, wobei die Anweisungen ferner veranlassen, dass der Computer den entrauschten Datensatz unter Verwendung des vortrainierten Klassifizierers für mehrere Iterationen klassifiziert oder abweist.
  18. Computerprogrammprodukt nach Anspruch 14, wobei der vortrainierte Entrauscher dazu ausgelegt ist, trainiert zu werden und Gaußsches Rauschen zu mindern oder Gaußsches Rauschen zu entfernen.
  19. Computerprogrammprodukt nach Anspruch 14, wobei Parameter des Abweisers dazu ausgelegt sind, den Abweiser über Training anzulernen, eine korrekte Klassifikation gegenüber einer Fehlklassifikation zu unterscheiden.
  20. Computerprogrammprodukt nach Anspruch 14, wobei die Eingangsdaten Toninformationen beinhalten, die von einem Mikrofon erhalten werden.
DE102023202402.0A 2022-03-18 2023-03-16 System und Verfahren zum Verbessern der Robustheit von vortrainierten Systemen in tiefen neuronalen Netzwerken unter Verwendung von Randomisierung und Sample-Abweisung Pending DE102023202402A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/698,556 2022-03-18
US17/698,556 US20230298315A1 (en) 2022-03-18 2022-03-18 System and method for improving robustness of pretrained systems in deep neural networks utilizing randomization and sample rejection

Publications (1)

Publication Number Publication Date
DE102023202402A1 true DE102023202402A1 (de) 2023-09-21

Family

ID=87849438

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102023202402.0A Pending DE102023202402A1 (de) 2022-03-18 2023-03-16 System und Verfahren zum Verbessern der Robustheit von vortrainierten Systemen in tiefen neuronalen Netzwerken unter Verwendung von Randomisierung und Sample-Abweisung

Country Status (4)

Country Link
US (1) US20230298315A1 (de)
JP (1) JP2023138492A (de)
CN (1) CN116796257A (de)
DE (1) DE102023202402A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12026621B2 (en) * 2020-11-30 2024-07-02 Robert Bosch Gmbh Method and system for low-query black-box universal attacks

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9171265B1 (en) * 2012-01-31 2015-10-27 Amazon Technologies, Inc. Crowdsourcing for documents that include specified criteria
GB2580695B (en) * 2019-01-25 2021-01-20 Siemens Healthcare Ltd Method of reconstructing magnetic resonance image data
US11915602B2 (en) * 2020-07-31 2024-02-27 North Carolina State University Drone detection, classification, tracking, and threat evaluation system employing field and remote identification (ID) information
US20220051093A1 (en) * 2020-08-14 2022-02-17 Nvidia Corporation Techniques for training and inference using multiple processor resources
US11914459B2 (en) * 2021-12-30 2024-02-27 American Express Travel Related Services Company, Inc. Automated identification of website errors

Also Published As

Publication number Publication date
US20230298315A1 (en) 2023-09-21
JP2023138492A (ja) 2023-10-02
CN116796257A (zh) 2023-09-22

Similar Documents

Publication Publication Date Title
DE102021207269A1 (de) Verfahren und system zum erlernen von perturbationsmengen beim maschinenlernen
DE102018218586A1 (de) Verfahren, Vorrichtung und Computerprogramm zum Erzeugen robuster automatisch lernender Systeme und Testen trainierter automatisch lernender Systeme
DE102021210721A1 (de) Verfahren und system zum adversarischen training unter verwendung metagelernter initialisierung
DE102023207516A1 (de) Systeme und Verfahren zur Experten-geführten Halbüberwachung mit Contrastive Loss für Maschinenlernmodelle
DE102021213118A1 (de) Verfahren und ein system für black-box-universalangriffe mit geringer abfrage
CN104751186A (zh) 一种基于bp网络和小波变换的虹膜图像质量分类方法
DE102023102316A1 (de) System und verfahren zur robusten erzeugung von pseudo-labels für die halb-überwachte objekterkennung
DE102020215200A1 (de) System und verfahren eines verfahrens für robustes aktives lernen unter verwendung von verrauschten labels und domänenadaption
DE102022212583A1 (de) Bildquantisierung unter Verwendung von Maschinenlernen
DE112020003343T5 (de) System und verfahren mit einem robusten tiefen generativen modell
DE102023202402A1 (de) System und Verfahren zum Verbessern der Robustheit von vortrainierten Systemen in tiefen neuronalen Netzwerken unter Verwendung von Randomisierung und Sample-Abweisung
DE102020213076A1 (de) Verfahren und vorrichtung für eine fortschrittliche faltung an verschlüsselten daten
DE112021006507T5 (de) Räumlich-zeitliches tiefes lernen für die verhaltensbiometrie
DE102023212504A1 (de) Systeme und Verfahren zum Training eines Videoobjekt-Detektionsmaschinen-Lernmodells mit einem Rahmen von Lehrer und Schüler
DE102023207534A1 (de) System und Verfahren zur universellen Bereinigung von Eingangsstörungen mit entrauschten Diffusionsmodellen
DE112021005678T5 (de) Normieren von OCT-Bilddaten
DE102021210417A1 (de) Systeme und Verfahren mit robusten Klassifikatoren zur Abwehr von Patch-Angriffen
DE102018218834A1 (de) Verfahren und Vorrichtung zum Ermitteln eines Ansteuersignals
DE112016007411T5 (de) Fuzzy-eingabe für autoencoder
DE102020216188A1 (de) Vorrichtung und Verfahren zum Trainieren eines Klassifizierers
DE102023109072A1 (de) Datenaugmentierung für domänenverallgemeinerung
DE102022206063A1 (de) System und verfahren zum vorschalten von robustifiziereren für vortrainierte modelle gegen feindliche angriffe
CN117475253A (zh) 一种模型训练方法、装置、电子设备及存储介质
DE102023203691A1 (de) Verfahren und System zur Erkennung von Anomalien auf Graphenebene
DE102021210415A1 (de) Verfahren und system zum erlernen des gemeinsamen latenten adversarischen trainings

Legal Events

Date Code Title Description
R012 Request for examination validly filed