DE102017212328A1 - Function monitoring for AI modules - Google Patents
Function monitoring for AI modules Download PDFInfo
- Publication number
- DE102017212328A1 DE102017212328A1 DE102017212328.1A DE102017212328A DE102017212328A1 DE 102017212328 A1 DE102017212328 A1 DE 102017212328A1 DE 102017212328 A DE102017212328 A DE 102017212328A DE 102017212328 A1 DE102017212328 A1 DE 102017212328A1
- Authority
- DE
- Germany
- Prior art keywords
- module
- test pattern
- processing chain
- reaction
- variables
- 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
Links
- 238000012544 monitoring process Methods 0.000 title description 7
- 238000012360 testing method Methods 0.000 claims abstract description 83
- 238000012545 processing Methods 0.000 claims abstract description 52
- 238000006243 chemical reaction Methods 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000012549 training Methods 0.000 claims abstract description 18
- 238000004590 computer program Methods 0.000 claims abstract description 9
- 230000004044 response Effects 0.000 claims abstract description 8
- 238000013473 artificial intelligence Methods 0.000 claims abstract description 7
- 230000006870 function Effects 0.000 claims description 14
- 238000013528 artificial neural network Methods 0.000 claims description 9
- 238000011990 functional testing Methods 0.000 claims description 3
- 230000007547 defect Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000003203 everyday effect Effects 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 208000003443 Unconsciousness Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
Verfahren (100) zum Trainieren eines Künstliche-Intelligenz-Moduls, KI-Moduls (1), welches Eingangsgrößen (11a-11d) durch eine parametrisierte interne Verarbeitungskette (12) in Ausgangsgrößen (13a-13d) übersetzt, wobei die Parameter (14) der Verarbeitungskette (12) dergestalt ermittelt werden (120), dass Lern-Werte (15a-15d) der Eingangsgrößen (11a-11d) auf die hierzu passenden Lern-Werte (16a-16d) der Ausgangsgrößen (13a-13d) übersetzt werden (130), wobei die Lern-Werte (15a-15d) der Eingangsgrößen (11a-11d) mit einem vorgegebenen Test-Muster (21, 21a-21d) überlagert werden (110) und eine Reaktion (22, 22a-22d) ermittelt wird (140), die das Test-Muster (21, 21a-21d) in den von der internen Verarbeitungskette (12) gelieferten Werten der Ausgangsgrößen (13a-13d) hervorruft.Verfahren (200) zur Funktionsprüfung eines Künstliche-Intelligenz-Moduls, KI-Moduls (1), welches Eingangsgrößen (11a-11d) durch eine parametrisierte interne Verarbeitungskette (12) in Ausgangsgrößen (13a-13d) übersetzt (220), wobei im Betrieb des KI-Moduls (1) den realen Eingangsgrößen (11a-11d) ein vorgegebenes Test-Muster (21, 21a-21d) überlagert wird (210) und eine Reaktion (22, 22a-22d) ermittelt wird (230), die das Test-Muster (21, 21a-21d) in den Ausgangsgrößen (13a-13d) hervorruft.Zugehöriges KI-Modul (1) und Computerprogramme.Method (100) for training an artificial intelligence module, KI module (1), which converts input variables (11a-11d) into output variables (13a-13d) through a parameterized internal processing chain (12), wherein the parameters (14) the processing chain (12) are determined (120) such that learning values (15a-15d) of the input quantities (11a-11d) are translated to the matching learning values (16a-16d) of the output quantities (13a-13d) ( 130), wherein the learning values (15a-15d) of the input quantities (11a-11d) are superimposed (110) with a predetermined test pattern (21, 21a-21d) and a response (22, 22a-22d) is determined (140) generating the test pattern (21, 21a-21d) in the values of the outputs (13a-13d) provided by the internal processing chain (12). Method (200) of testing an artificial intelligence module, KI Module (1), which inputs (11a-11d) through a parametrized internal processing chain (12) in output in the operation of the KI module (1) the real input variables (11a-11d) a predetermined test pattern (21, 21a-21d) is superimposed (210) and a reaction (210 22, 22a-22d) which produces the test pattern (21, 21a-21d) in the outputs (13a-13d). Associated AI module (1) and computer programs.
Description
Die vorliegende Erfindung betrifft Verfahren, mit denen die Überwachung von KI-Modulen auf korrekte Funktionsweise verbessert werden kann, sowie ein entsprechend ausgestattetes KI-Modul.The present invention relates to methods by which the monitoring of KI modules for correct operation can be improved, as well as to a suitably equipped KI module.
Stand der TechnikState of the art
Das Führen eines Fahrzeugs im Verkehr ist ein komplexer Vorgang, der vom Menschen durch praktische Erfahrung in Fahrstunden erlernt werden muss. Dementsprechend schwierig ist es, diese Steuerungsaufgabe in Programmcode für ein autonomes Steuerungssystem zu fassen. Daher kommt zu diesem Zweck Künstliche Intelligenz, KI, zum Einsatz, die analog zum Lernprozess des Menschen aus Lerndaten unbewusste Regeln für die Steuerungsaufgabe ableitet und anschließend die von einer Sensorik des Fahrzeugs ermittelten Eingangsgrößen in die richtigen Ausgangsgrößen für eine Aktorik übersetzt.Driving a vehicle in traffic is a complex process that needs to be learned by people through hands-on experience in driving lessons. Accordingly, it is difficult to grasp this control task in program code for an autonomous control system. Therefore Artificial Intelligence, AI, is used for this purpose, which, analogous to the learning process of humans, derives from unconscious rules for the control task from learning data and then translates the input quantities determined by a sensor of the vehicle into the correct output variables for an actuator system.
Typischerweise erhält ein KI-Modul eine Vielzahl von Eingangsgrößen, die in eine Vielzahl von Ausgangsgrößen übersetzt wird. Die Übersetzung findet in einer stark vermaschten und massiv parallelen internen Verarbeitungskette statt. Hierin sind beispielsweise Verbindungen zwischen den Knoten eines neuronalen Netzes freie Parameter. In der Lernphase werden diejenigen Werte für die freien Parameter ermittelt, mit denen vorgegebene Lern-Werte für die Eingangsgrößen in die zugehörigen Lern-Werte für die Ausgangsgrößen übersetzt werden, also beispielsweise ein Bild, das eine Szenerie mit einem Stoppschild enthält, als Bild klassifiziert wird, das ein Stoppschild enthält. Anschließend wird davon ausgegangen, dass im Wirkbetrieb (Deployment-Phase) reale Werte für die Eingangsgrößen richtig übersetzt, also etwa reale Bilder von Verkehrssituationen dahingehend richtig klassifiziert werden, welche Objekte sie enthalten. Die
Steuerungsaufgaben für die Teilnahme am Verkehr sind sicherheitsrelevant. Die
Für die Erkennung, ob überhaupt ein Fehler vorliegt, offenbart die
Die
Offenbarung der ErfindungDisclosure of the invention
Im Rahmen der Erfindung wurde ein Verfahren zum Trainieren eines Künstliche-Intelligenz-Moduls, KI-Moduls, entwickelt. Das KI-Modul übersetzt Eingangsgrößen durch eine parametrisierte interne Verarbeitungskette in Ausgangsgrößen. Beim Trainieren werden die Parameter dieser Verarbeitungskette dergestalt ermittelt, dass Lern-Werte der Eingangsgrößen auf die hierzu passenden Lern-Werte der Ausgangsgrößen übersetzt werden.Within the scope of the invention, a method for training an artificial intelligence module, KI module, has been developed. The AI module translates input variables into output variables through a parameterized internal processing chain. During training, the parameters of this processing chain are determined in such a way that learning values of the input variables are translated to the corresponding learning values of the output variables.
Beispielsweise gehören bei einem KI-Modul, dessen interne Verarbeitungskette ein neuronales Netz umfasst, die Verbindungen zwischen Knoten auf verschiedenen Ebenen des Netzes zu den Parametern der Verarbeitungskette. Die Verbindungen können beispielsweise mit zahlenmäßigen Wahrscheinlichkeiten belegt sein.For example, in an AI module whose internal processing chain comprises a neural network, the connections between nodes at different levels of the network belong to the parameters of the processing chain. The connections may be occupied, for example, with numerical probabilities.
Die Lern-Werte der Eingangsgrößen werden mit einem vorgegebenen Test-Muster überlagert, und es wird eine Reaktion ermittelt, die das Test-Muster in den von der internen Verarbeitungskette gelieferten Werten der Ausgangsgrößen hervorruft.The learning values of the input variables are superimposed with a predetermined test pattern, and a reaction is determined which causes the test pattern in the values of the output values supplied by the internal processing chain.
Unter einer Überlagerung wird insbesondere jede Hinzufügung des Test-Musters zu den Werten der Eingangsgrößen verstanden, die auch im Betrieb des KI-Moduls vorgenommen werden kann, ohne dass hierbei die primäre Funktion des KI-Moduls beeinträchtigt wird.In particular, an overlay means any addition of the test pattern to the values of the input variables which can also be carried out during the operation of the AI module without impairing the primary function of the AI module.
Beispielsweise können in einer besonders vorteilhaften Ausgestaltung der Erfindung die Eingangsgrößen des KI-Moduls Bilddaten umfassen, und die Ausgangsgrößen des KI-Moduls können dann eine Aussage über das Vorkommen mindestens eines Objekts in den Bilddaten umfassen. Das Test-Muster kann dann beispielsweise als weiteres Objekt additiv in die Bilddaten eingefügt werden. Dabei kann beispielsweise der Ort im Bild, an dem das Test-Muster eingefügt wird, so gewählt werden, dass von dem KI-Modul zu erkennende Objekte im Bild nicht überdeckt werden. Das Test-Muster kann aber auch beispielsweise mit einem solchen Transparenzgrad in das Bild eingefügt werden, dass es ein darunterliegendes Objekt noch erkennen lässt. Diese Ausgestaltung hat den Vorteil, dass die Funktion des KI-Moduls in Bezug auf eine Klassifizierung oder Auswertung von Bilddaten überwacht werden kann.For example, in a particularly advantageous embodiment of the invention, the input variables of the KI module comprise image data, and the output variables of the KI module can then include a statement about the occurrence of at least one object in the image data. The test pattern can then be added to the image data as an additional object, for example. In this case, for example, the location in the image at which the test pattern is inserted can be selected such that objects to be recognized by the KI module are not covered in the image. However, the test pattern can also be inserted into the image with such a degree of transparency, for example, that it still reveals an underlying object. This embodiment has the advantage that the function of the KI module can be monitored with respect to a classification or evaluation of image data.
In einer weiteren besonders vorteilhaften Ausgestaltung der Erfindung können die Eingangsgrößen des KI-Moduls Audiodaten umfassen, und die Ausgangsgrößen des KI-Moduls können dann eine Aussage über das Vorkommen mindestens eines konkreten Geräusches in den Audiodaten umfassen. Das Test-Muster kann dann beispielsweise in einem Frequenzbereich überlagert werden, der von einem Geräusch, das von dem KI-Modul erkannt werden soll, nicht verwendet wird. Das Test-Muster kann aber auch beispielsweise mit einer solchen Stärke in die Audiodaten gemischt werden, dass das zu erkennende Geräusch trotz Frequenzüberlappung mit dem Test-Muster noch erkannt wird, analog zur teilweise transparenten Einfügung in ein Bild. Diese Ausgestaltung hat den Vorteil, dass die Funktion des KI-Moduls in Bezug auf eine Klassifizierung oder Auswertung von Audiodaten überwacht werden kann.In a further particularly advantageous embodiment of the invention, the input variables of the KI module may comprise audio data, and the output variables of the KI module may then include a statement about the occurrence of at least one specific noise in the audio data. The test pattern may then be superimposed, for example, in a frequency range that is not used by a sound that is to be detected by the KI module. However, the test pattern can also be mixed into the audio data, for example, with such a strength that the noise to be recognized is still recognized in spite of frequency overlap with the test pattern, analogous to the partially transparent insertion into an image. This embodiment has the advantage that the function of the KI module can be monitored with respect to a classification or evaluation of audio data.
Es wurde erkannt, dass die Überlagerung mit dem Test-Muster zum Zeitpunkt des Trainierens einen Fixpunkt schafft, anhand dessen im späteren Betrieb des KI-Moduls jederzeit die korrekte Funktion des KI-Moduls überwacht werden kann. Diese Überwachung ist möglich, ohne dass hierzu der laufende Betrieb des KI-Moduls unterbrochen werden muss. Insbesondere bei sicherheitskritischen Steuerungsaufgaben kann die Überwachung also ständig aktiv sein, ohne dass das KI-Modul allein hierfür redundant ausgeführt sein müsste.It was recognized that the overlay with the test pattern at the time of training creates a benchmark that can be used to monitor the proper functioning of the AI module at any time during the subsequent operation of the AI module. This monitoring is possible without interrupting the ongoing operation of the AI module. In particular, in the case of safety-critical control tasks, the monitoring can thus be constantly active, without the AI module having to be configured redundantly for this purpose alone.
Eine solche Funktionsüberwachung ist insbesondere dann vorteilhaft, wenn die interne Verarbeitungskette des KI-Moduls hochgradig vermascht und parallelisiert ist. Dies ist beispielsweise in einer besonders vorteilhaften Ausgestaltung der Erfindung der Fall, in der die interne Verarbeitungskette des KI-Moduls mindestens ein neuronales Netz umfasst. Die Auswirkungen von Fehlern an Hardwarekomponenten auf die korrekte Übersetzung der Eingangsgrößen in Ausgangsgrößen war bei derartigen KI-Modulen bislang schwer vorhersehbar, da sich erst im Laufe des Trainings herausbildet, welche Hardwarekomponenten in welchen Betriebssituationen konkret genutzt werden. Die Anfälligkeit einer konkreten Funktion des KI-Moduls gegenüber Defekten an der Hardware kann insbesondere davon abhängen, auf wie viele parallel arbeitende Hardwarekomponenten die Ausführung genau dieser Funktion gemäß dem Training verteilt ist. Ist die Ausführung auf viele Hardwarekomponenten verteilt, kann zwar ein Fehler in jeder dieser Hardwarekomponenten die korrekte Ausführung tangieren, jedoch kann andererseits ein Einzelfehler in einer Hardwarekomponente durch die intakten Hardwarekomponenten teilweise oder vollständig kompensiert werden. Wird die Funktion im Wesentlichen nur von einer Hardwarekomponente ausgeführt, kann zwar nur ein Fehler in dieser einen Hardwarekomponente die korrekte Ausführung tangieren; wenn dies aber geschieht, kann dies nicht durch andere Hardwarekomponenten kompensiert werden. Mit dem hier beschriebenen Verfahren kann ein systematischer Test aller beteiligten Hardwarekomponenten durchgeführt werden.Such a function monitoring is particularly advantageous when the internal processing chain of the AI module is highly meshed and parallelized. This is the case, for example, in a particularly advantageous embodiment of the invention, in which the internal processing chain of the KI module comprises at least one neural network. The effects of errors in hardware components on the correct translation of the input variables into output variables has hitherto been difficult to predict in the case of such KI modules since it is only during the course of training that it becomes clear which hardware components are actually used in which operating situations. The susceptibility of a specific function of the AI module to defects in the hardware can in particular depend on how many parallel hardware components the execution of exactly this function is distributed according to the training. If the execution is distributed over many hardware components, an error in each of these hardware components can affect the correct execution, but on the other hand, a single error in a hardware component can be partially or completely compensated by the intact hardware components. If the function is performed essentially only by a hardware component, only an error in this one hardware component can affect the correct execution; but if this happens, it can not be compensated by other hardware components. With the method described here, a systematic test of all involved hardware components can be performed.
Unter einer Hardwarekomponente werden in diesem Kontext alle an der Berechnung beteiligten Einheiten, wie z.B. Rechenwerke, und/oder Speicherbausteine oder Ähnliches, verstanden. Als Beispiel für die Hardware zur Ausführung der Berechnung von einem neuronalen Netz kann beispielsweise eine GPU, eine CPU, ein FPGA, ein ASIC oder jedes andere Rechenwerk verstanden werden. Als Hardwarekomponenten für eine GPU würden hier z.B. die Visual Processing Units, Shader Processing Units, Tensor Processing Units etc. vorkommen.Among a hardware component in this context are all units involved in the calculation, e.g. Arithmetic units, and / or memory modules or the like, understood. As an example of the hardware for performing the calculation of a neural network, for example, a GPU, a CPU, an FPGA, an ASIC or any other arithmetic unit can be understood. As hardware components for a GPU, here e.g. Visual Processing Units, Shader Processing Units, Tensor Processing Units, etc.
In einer besonders vorteilhaften Ausgestaltung der Erfindung werden beim Trainieren des KI-Moduls die Parameter der Verarbeitungskette dahingehend angepasst, dass die vom Test-Muster hervorgerufene Reaktion sich einer Soll-Reaktion annähert. Die korrekte Funktion des KI-Moduls, auf die das KI-Modul trainiert ist, umfasst dann also auch die Übersetzung des Test-Musters auf die bekannte Soll-Reaktion. Diese Übersetzung sollte auch im späteren Betrieb des KI-Moduls mit gleichbleibender Qualität erfolgen. Verschlechtert sich diese Qualität, wird also beispielsweise das Test-Muster nicht mehr oder nur mit schlechterer Konfidenz als zum Zeitpunkt des Trainings erkannt, so kann darauf geschlossen werden, dass das KI-Modul defekt ist. Dabei kann beispielsweise bereits eine graduelle Verschlechterung erkannt werden, so dass rechtzeitig Gegenmaßnahmen ergriffen werden können, bevor das KI-Modul in der von ihm ausgeführten Steuerungsaufgabe komplett versagt.In a particularly advantageous embodiment of the invention, when training the AI module, the parameters of the processing chain are adapted to the effect that the reaction caused by the test pattern approaches a desired reaction. The correct function of the AI module on which the AI module is trained then also includes the translation of the test pattern to the known desired response. This translation should also be carried out during the later operation of the AI module with consistent quality. If this quality deteriorates, for example if the test pattern is no longer detected or only with a worse confidence than at the time of the training, it can be concluded that the AI module is defective. In this case, for example, a gradual deterioration can already be detected, so that countermeasures can be taken in good time before the AI module completely fails in the control task carried out by it.
Die von dem Test-Muster hervorgerufene Reaktion kann alternativ oder auch in Kombination als Referenz für eine spätere Funktionsprüfung des KI-Moduls abgespeichert werden. Das Test-Muster kann also beispielsweise erst dann durch die Lern-Werte der Eingangsgrößen überlagert werden, wenn das eigentliche Training bereits abgeschlossen ist, wenn also die Parameter der Verarbeitungskette bereits festliegen und nicht mehr geändert werden. Dann ist die Funktionsüberwachung vollkommen unabhängig von diesem eigentlichen Training. Das KI-Modul ist dann nicht mehr speziell auf die Erkennung des Test-Musters trainiert, jedoch ist eine Änderung der Qualität, mit der das Test-Muster erkannt wird, nach wie vor ein starker Indikator dafür, dass ein Hardwaredefekt vorliegt. Ein Abspeichern der Reaktion als Referenz ohne konkretes Training auf die Erkennung des Test-Musters kann beispielsweise dann sinnvoll sein, wenn ein bestehender Prozess für das Training eines KI-Moduls auf eine sicherheitsrelevante Aufgabe zertifiziert worden ist und die Einbeziehung des Test-Musters in das Training die Zertifizierung ungültig machen würde.The reaction caused by the test pattern can alternatively or also be stored in combination as a reference for a later functional test of the KI module. Thus, for example, the test pattern can only be superimposed by the learning values of the input variables if the actual training has already been completed, ie if the parameters of the processing chain have already been determined and are no longer changed. Then the function monitoring is completely independent of this actual training. The AI module is then not specifically trained for the recognition of the test pattern, however, a change in the quality with which the test pattern is recognized is still a strong indicator that a hardware defect is present. Saving the reaction as a reference without specific training on the recognition of the test pattern, for example, be useful if an existing process for training an AI module has been certified to a safety-relevant task and the inclusion of the test pattern in the training invalidate the certification.
In einer weiteren besonders vorteilhaften Ausgestaltung der Erfindung werden mindestens zwei Test-Muster so gewählt, dass das erste Test-Muster überwiegend von einem Teil der Verarbeitungskette verarbeitet wird, der auf einer ersten Hardwarekomponente des KI-Moduls ausgeführt wird, während das zweite Test-Muster überwiegend von einem Teil der Verarbeitungskette verarbeitet wird, der auf einer zweiten Hardwarekomponente des KI-Moduls ausgeführt wird. In a further particularly advantageous embodiment of the invention, at least two test patterns are selected such that the first test pattern is predominantly processed by a part of the processing chain which is executed on a first hardware component of the KI module, while the second test pattern is mainly processed by a part of the processing chain that is executed on a second hardware component of the AI module.
Es wurde erkannt, dass gerade in massiv parallelen und vermaschten Verarbeitungsketten die vorhandenen Hardwarekomponenten im Betrieb des KI-Moduls, also in der Deployment-Phase nach dem Training, mitunter deutlich unterschiedlich stark ausgenutzt werden. Ist das KI-Modul beispielsweise zur Erkennung von Verkehrszeichen in Bilddaten ausgebildet, so wird im realen Betrieb das Fahrzeug vergleichsweise selten dem Vorschriftenzeichen Nr. 129 begegnen, das davor warnt, dass die Straße auf ein ungesichertes Ufer zu führt. Ein Defekt in einer konkreten Hardwarekomponente kann sich nun beispielsweise in besonderem Maße auf die Erkennung dieses Verkehrszeichens auswirken, nicht jedoch auf die Erkennung der im Alltag sehr viel häufiger vorkommenden Vorfahrtszeichen und Geschwindigkeitsbeschränkungen. Somit kann der Defekt über geraume Zeit unbemerkt bleiben und sich bei der nächsten Gelegenheit, zu der gerade die Erkennung des Vorschriftenzeichens Nr. 129 gefordert ist, fatal auswirken. Analoges gilt beispielsweise für die Erkennung eines roten Blinklichts oder eines herannahenden Zuges selbst an einem unbeschrankten Bahnübergang.It has been recognized that, especially in massively parallel and meshed processing chains, the existing hardware components in the operation of the AI module, ie in the deployment phase after the training, sometimes be exploited significantly differently. If the KI module is designed, for example, to recognize traffic signs in image data, then in real operation the vehicle comparatively seldom encounters the requirement no. 129, which warns that the road leads to an unsecured shore. For example, a defect in a specific hardware component can have a particular effect on the recognition of this traffic sign, but not on the detection of the priority signs and speed restrictions which occur much more frequently in everyday life. Thus, the defect may go unnoticed for quite some time and have a fatal impact at the next occasion that the detection of the No. 129 sign is required. The same applies, for example, to the detection of a red flashing light or an approaching train, even on an unrestricted level crossing.
Indem nun über die Wahl des Test-Musters gezielt gesteuert wird, welche Hardwarekomponente des KI-Moduls auf korrekte Funktion überprüft wird, kann somit insbesondere gewährleistet werden, dass sich die Funktionsüberwachung auch tatsächlich auf alle vorhandenen Hardwarekomponenten erstreckt. Ein Fehler kann sich dann also nicht in der beschriebenen Weise vor der Überprüfung „verstecken“.By now specifically controlled by the choice of the test pattern, which hardware component of the AI module is checked for correct function, it can thus be ensured in particular that the function monitoring actually extends to all existing hardware components. An error can not be "hidden" in the manner described before the review.
Zu diesem Zweck kann beispielsweise bei einem zur Erkennung von Objekten in Bilddaten ausgebildeten KI-Modul alternativ oder auch in Kombination zum Erscheinungsbild des Test-Musters der Ort variiert werden, an dem das Test-Muster in die Bilddaten eingefügt wird. Die Parallelisierung eines derartigen KI-Moduls kann beispielsweise dahingehend organisiert sein, dass bestimmte Bereich des Bildes nach einem festen Schema bestimmten Eingangsknoten der Verarbeitungskette zugeordnet sind.For this purpose, for example, in an AI module designed to detect objects in image data, alternatively or also in combination with the appearance of the test pattern, the location at which the test pattern is inserted into the image data can be varied. The parallelization of such an AI module may be organized, for example, such that certain areas of the image are assigned to certain input nodes of the processing chain according to a fixed scheme.
Die Erfindung bezieht sich auch auf ein Verfahren zur Funktionsprüfung eines KI-Moduls, welches Eingangsgrößen durch eine parametrisierte Verarbeitungskette in Ausgangsgrößen übersetzt.The invention also relates to a method for functional testing of an AI module which translates input variables into output variables through a parameterized processing chain.
Im Betrieb des KI-Moduls wird den realen Eingangsgrößen ein vorgegebenes Test-Muster überlagert, und es wird eine Reaktion ermittelt, die das Test-Muster in den Ausgangsgrößen hervorruft.In the operation of the KI module, a given test pattern is superimposed on the real input variables, and a reaction is determined which causes the test pattern in the output variables.
Dabei kann das KI-Modul insbesondere mit dem zuvor beschriebenen Verfahren trainiert worden sein. Jedoch ist dies nicht zwingend erforderlich. Beispielsweise kann die Reaktion auf das Test-Muster im Neuzustand des KI-Moduls, in dem die Hardware wahrscheinlich fehlerfrei ist, ermittelt und als Referenz abgespeichert werden, beispielsweise unmittelbar im Anschluss an die Festlegung der Parameter der Verarbeitungskette. Im Betrieb des KI-Moduls kann dann die Reaktion des Test-Musters mit der zuvor ermittelten und abgespeicherten Referenz verglichen werden.In this case, the KI module may have been trained in particular with the method described above. However, this is not mandatory. For example, the response to the test pattern in the new state of the AI module, in which the hardware is likely to be error-free, can be determined and stored as a reference, for example, immediately following the definition of the parameters of the processing chain. During operation of the KI module, the reaction of the test pattern can then be compared with the previously determined and stored reference.
In einer besonders vorteilhaften Ausgestaltung der Erfindung wird die Reaktion mit einer vorgegebenen Soll-Reaktion verglichen. Ist beispielsweise das Hervorrufen der Soll-Reaktion Bestandteil des Trainings des KI-Moduls gewesen, so ist eine Abweichung der tatsächlichen Reaktion von der Soll-Reaktion ein besonders starker Indikator dafür, dass ein Hardwaredefekt vorliegt.In a particularly advantageous embodiment of the invention, the reaction is compared with a predetermined desired reaction. For example, if the triggering of the target reaction was part of the training of the AI module, a deviation of the actual response from the target response is a particularly strong indicator that a hardware defect is present.
Entsprechend dem zuvor Beschriebenen wird in einer weiteren besonders vorteilhaften Ausgestaltung der Erfindung aus der Reaktion eine Aussage über die korrekte Funktion einer oder mehrerer Hardwarekomponenten abgeleitet, auf denen derjenige Teil der Verarbeitungskette des KI-Moduls läuft, von dem das Test-Muster überwiegend verarbeitet wird. Auf diese Weise kann ein Fehler in der Verarbeitungskette lokalisiert werden.In accordance with what has been described above, in a further particularly advantageous embodiment of the invention, a statement about the correct function of one or more hardware components is run on which the part of the processing chain of the KI module runs, of which the test pattern is predominantly processed. In this way, an error can be located in the processing chain.
In einer besonders vorteilhaften Ausgestaltung der Erfindung wird ein Test-Muster gewählt, welches im Betrieb des KI-Moduls nicht in den realen Eingangsgrößen des KI-Moduls vorkommt. Ein Bild als Test-Muster kann beispielsweise ein Matrixcode sein, der nirgendwo in der Öffentlichkeit vorkommt. Ein Geräusch als Test-Muster kann beispielsweise in einem Frequenzbereich liegen, der nicht durch Alltagsgeräusche belegt ist, und/oder es kann eine nicht öffentlich bekannte Tonfolge beinhalten. Auf diese Weise kann sichergestellt werden, dass nicht beispielsweise ein vom KI-Modul zu erkennendes Objekt oder Geräusch fälschlicherweise als Test-Muster identifiziert und möglicherweise der dem KI-Modul nachgeschalteten Verarbeitungskette entzogen wird. Wird beispielsweise ein Verkehrszeichen als Test-Muster identifiziert, könnte die Reaktion eines autonomen Fahrzeugs auf dieses Test-Muster ausbleiben.In a particularly advantageous embodiment of the invention, a test pattern is selected which does not occur in the operation of the KI module in the real input variables of the KI module. For example, an image as a test pattern may be a matrix code that does not appear anywhere in public. For example, a noise as a test pattern may be in a frequency range that is not occupied by everyday sounds, and / or may include a non-publicly known tone sequence. In this way, it can be ensured that, for example, an object or noise to be detected by the AI module is not erroneously identified as a test pattern and possibly removed from the processing chain downstream of the AI module. For example, if a traffic sign is identified as a test pattern, the reaction of an autonomous vehicle to this test pattern might fail.
Nach dem zuvor Beschriebenen bezieht sich die Erfindung auch auf ein KI-Modul, welches Eingangsgrößen durch eine parametrisierte interne Verarbeitungskette in Ausgangsgrößen übersetzt.After the above, the invention also relates to an AI module, which Input variables are translated into output variables by a parameterized internal processing chain.
Die interne Verarbeitungskette ist dazu ausgebildet, mindestens ein in den Eingangsgrößen vorgelegtes Test-Muster in eine vorgegebene Reaktion in den Ausgangsgrößen zu übersetzen, wobei das Test-Muster im Betrieb des KI-Moduls nicht in den realen Eingangsgrößen des KI-Moduls vorkommt.The internal processing chain is designed to translate at least one test pattern presented in the input variables into a predetermined reaction in the output variables, wherein the test pattern does not occur in the operation of the KI module in the real input variables of the KI module.
Ein Training des KI-Moduls mit einem Test-Muster, das nicht in den im Betrieb zu erwartenden Eingangsgrößen des KI-Moduls vorkommt, hinterlässt somit einen in der Verschaltung der Verarbeitungskette in dem KI-Modul nachweisbaren „Fingerprint“.Training the AI module with a test pattern that does not occur in the input variables of the AI module expected during operation thus leaves behind a "fingerprint" that can be detected in the interconnection of the processing chain in the AI module.
Die entsprechenden Parameter der Verarbeitungskette müssen nicht notwendigerweise auf dem KI-Modul selbst erzeugt werden, sondern können aus beliebiger Quelle stammen und beispielsweise als Software-Update nachgerüstet werden. Somit bezieht sich die Erfindung auch auf ein Computerprogramm mit Parametern für die interne Verarbeitungskette eines KI-Moduls, die, wenn sie in ein KI-Modul geladen werden, das KI-Modul zu einem KI-Modul gemäß der Erfindung aufwerten. Weiterhin bezieht sich die Erfindung auch auf einen maschinenlesbaren Datenträger, auf dem das Computerprogramm gespeichert ist, sowie auf ein downloadbares Produkt, das das Computerprogramm enthält.The corresponding parameters of the processing chain need not necessarily be generated on the AI module itself, but can come from any source and be retrofitted, for example, as a software update. Thus, the invention also relates to a computer program having parameters for the internal processing chain of an AI module which, when loaded into an AI module, upgrade the AI module to an AI module according to the invention. Furthermore, the invention also relates to a machine-readable data carrier on which the computer program is stored, and to a downloadable product containing the computer program.
Die Verfahren gemäß der Erfindung erfordern nicht zwingend eine Änderung der Hardware des KI-Moduls, oder anderer Hardware in der dem KI-Modul vor- oder nachgeschalteten Verarbeitung der Eingangsgrößen bzw. der Ausgangsgrößen. Die Verfahren können also beispielsweise vollständig in einer Software implementiert sein, die ein eigenständig verkaufbares Produkt darstellt. Somit bezieht sich die Erfindung auch auf ein Computerprogramm mit maschinenlesbaren Anweisungen, die, wenn sie auf einem Computer ausgeführt werden, den Computer dazu veranlassen, ein Verfahren gemäß der Erfindung auszuführen, und/oder ein KI-Modul zu einem KI-Modul gemäß der Erfindung aufzuwerten. Der Computer kann beispielsweise ein Computer sein, der Steuerungsaufgaben in einem Fahrzeug übernimmt, oder beispielsweise auch ein Computer, der in der Fertigung oder in der Wartung eines Fahrzeugs zum Einsatz kommt. Weiterhin bezieht sich die Erfindung auch auf einen maschinenlesbaren Datenträger, auf dem das Computerprogramm gespeichert ist, sowie auf ein downloadbares Produkt, das das Computerprogramm enthält.The methods according to the invention do not necessarily require a change of the hardware of the AI module, or of other hardware in the processing of the input variables or the output variables upstream or downstream of the AI module. Thus, for example, the methods may be fully implemented in software that represents a self-salable product. Thus, the invention also relates to a computer program having machine-readable instructions which, when executed on a computer, cause the computer to perform a method according to the invention and / or an AI module to an AI module according to the invention upgrade. The computer may be, for example, a computer that performs control tasks in a vehicle or, for example, a computer that is used in the manufacture or maintenance of a vehicle. Furthermore, the invention also relates to a machine-readable data carrier on which the computer program is stored, and to a downloadable product containing the computer program.
Weitere, die Erfindung verbessernde Maßnahmen werden nachstehend gemeinsam mit der Beschreibung der bevorzugten Ausführungsbeispiele der Erfindung anhand von Figuren näher dargestellt.Further measures improving the invention will be described in more detail below together with the description of the preferred embodiments of the invention with reference to figures.
Figurenlistelist of figures
Es zeigt:
-
1 Ausführungsbeispiel des Verfahrens 100 zum Trainieren eines KI-Moduls1 ; -
2 Beispielhafte Verwendung zweier Testmuster21a und21b , die in verschiedenen Hardwarekomponenten1a und1b des KI-Moduls1 verarbeitet werden; -
3 Ausführungsbeispiel des Verfahrens 200 zur Funktionsprüfung eines KI-Moduls1 ; -
4 Beispielhafte Testmuster 21a -21d zur umfassenden Funktionsprüfung eines KI-Moduls1 , dasBilddaten als Eingangsgrößen 11a -11d verarbeitet und hierin Objekte31 -33 erkennt.
-
1 Embodiment of themethod 100 to train an AI module1 ; -
2 Exemplary use of twotest patterns 21a and21b that are in different hardware components1a and1b of the AI module1 are processed; -
3 Embodiment of themethod 200 for functional testing of an AI module1 ; -
4 Exemplary test patterns 21a -21d for comprehensive functional testing of an AI module1 , the image data asinput variables 11a -11d processed and herein objects31 -33 recognizes.
Nach
Das Test-Muster
Alternativ oder auch in Kombination kann in Schritt
Diese Reaktion
Ist nun beispielsweise die parallelisierte und vermaschte Verarbeitungskette
Dabei kommt das Test-Muster
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- US 8468109 B2 [0003]US 8468109 B2 [0003]
- US 8953436 B2 [0004]US 8953436 B2 [0004]
- US 7937343 B2 [0005]US 7937343 B2 [0005]
- US 6473746 B1 [0006]US 6473746 B1 [0006]
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102017212328.1A DE102017212328A1 (en) | 2017-07-19 | 2017-07-19 | Function monitoring for AI modules |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102017212328.1A DE102017212328A1 (en) | 2017-07-19 | 2017-07-19 | Function monitoring for AI modules |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102017212328A1 true DE102017212328A1 (en) | 2019-01-24 |
Family
ID=64951880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102017212328.1A Pending DE102017212328A1 (en) | 2017-07-19 | 2017-07-19 | Function monitoring for AI modules |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102017212328A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102022212455A1 (en) | 2022-11-22 | 2024-05-23 | Robert Bosch Gesellschaft mit beschränkter Haftung | Method for training a machine learning algorithm |
DE102023203998A1 (en) | 2023-04-28 | 2024-10-31 | Robert Bosch Gesellschaft mit beschränkter Haftung | Method for verifying a machine learning algorithm |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6473746B1 (en) | 1999-12-16 | 2002-10-29 | Simmonds Precision Products, Inc. | Method of verifying pretrained neural net mapping for use in safety-critical software |
US7937343B2 (en) | 2003-03-28 | 2011-05-03 | Simmonds Precision Products, Inc. | Method and apparatus for randomized verification of neural nets |
US8468109B2 (en) | 2006-12-08 | 2013-06-18 | Medhat Moussa | Architecture, system and method for artificial neural network implementation |
US8953436B2 (en) | 2012-09-20 | 2015-02-10 | Broadcom Corporation | Automotive neural network |
-
2017
- 2017-07-19 DE DE102017212328.1A patent/DE102017212328A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6473746B1 (en) | 1999-12-16 | 2002-10-29 | Simmonds Precision Products, Inc. | Method of verifying pretrained neural net mapping for use in safety-critical software |
US7937343B2 (en) | 2003-03-28 | 2011-05-03 | Simmonds Precision Products, Inc. | Method and apparatus for randomized verification of neural nets |
US8468109B2 (en) | 2006-12-08 | 2013-06-18 | Medhat Moussa | Architecture, system and method for artificial neural network implementation |
US8953436B2 (en) | 2012-09-20 | 2015-02-10 | Broadcom Corporation | Automotive neural network |
Non-Patent Citations (4)
Title |
---|
Demidenko, S.; Piuri, V.: On-line testing in digital neural networks. In: Proceedings of the Fifth Asian Test Symposium, 1996, S. 295-300. - ISSN 1085-7735. https://doi.org/10.1109/ATS.1996.555174 [abgerufen am 16.11.2017] * |
Georgakis, Georgios [u.a.]: Synthesizing Training Data for Object Detection in Indoor Scenes. In: eprint arXiv, 25.02.2017, S. 1-9. https://arxiv.org/abs/1702.07836v1 [abgerufen am 14.11.2017] * |
Hayes, John P.: EECS 579 - Digital System Testing - Built-in Self-Test 1, University of Michigan, 2001. URL: http://www.eecs.umich.edu/courses/eecs579.f01/ [abgerufen am 14.11.2017] * |
Hays, James: Introduction to Computer Vision (CS143) - Modern Object Detection, Brown University (USA), 01.11.2013. URL: http://cs.brown.edu/courses/cs143/2013/ [abgerufen am 14.11.2017] * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102022212455A1 (en) | 2022-11-22 | 2024-05-23 | Robert Bosch Gesellschaft mit beschränkter Haftung | Method for training a machine learning algorithm |
DE102023203998A1 (en) | 2023-04-28 | 2024-10-31 | Robert Bosch Gesellschaft mit beschränkter Haftung | Method for verifying a machine learning algorithm |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102008013366B4 (en) | Method for providing information for driver assistance systems | |
DE102010013943B4 (en) | Method and device for a functional test of an object recognition device of a motor vehicle | |
DE102018128289A1 (en) | METHOD AND DEVICE FOR AUTONOMOUS SYSTEM PERFORMANCE AND CLASSIFICATION | |
DE102019208735B4 (en) | Method for operating a driver assistance system for a vehicle and a driver assistance system for a vehicle | |
DE102017214531A1 (en) | Method and device for operating a motor vehicle in an automated driving operation and motor vehicle | |
DE102015210881A1 (en) | Method and device for determining the position and / or orientation of a vehicle | |
EP3983936A1 (en) | Method and generator for generating disturbed input data for a neural network | |
EP3945338A2 (en) | Signal processing path, environment recognition device and method for validating an automated driving system | |
DE102018209108A1 (en) | Fast fault analysis for machine learning technical devices | |
DE102017212328A1 (en) | Function monitoring for AI modules | |
WO2020216621A1 (en) | Training trainable modules with learning data, the labels of which are subject to noise | |
DE102017201796A1 (en) | Control device for determining a self-motion of a motor vehicle and motor vehicle and method for providing the control device | |
DE112013006981T5 (en) | Control system test equipment | |
DE102021200803A1 (en) | Evaluation device for a technical device and method for producing an evaluation device | |
DE102020210789A1 (en) | Analysis of a neural network for a vehicle | |
WO2023020853A1 (en) | Training method for training an artificial machine learning system to detect malfunctions, and vehicle device | |
DE102021109126A1 (en) | Procedure for testing a product | |
WO2021245151A1 (en) | Unmonitored learning of a common presentation of data from sensors of different modality | |
DE102021110083A1 (en) | Training an artificial neural network to test an automatic driving function of a vehicle | |
DE102021109129A1 (en) | Procedure for testing a product | |
WO2021185586A1 (en) | Method for generating training data, vehicle and training system | |
DE102020206327A1 (en) | Method and device for testing a technical system | |
DE102019212830A1 (en) | Analysis and validation of a neural network for a vehicle | |
EP3757698A1 (en) | Method and device for evaluating and selecting signal comparison metrics | |
DE102022117841B4 (en) | Method, system and computer program product for calibrating and validating a driver assistance system (ADAS) and/or an automated driving system (ADS) taking into account a subjective assessment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R012 | Request for examination validly filed |