DE102020206433A1 - Computerprogrammprodukt und Trainingssteuervorrichtung für künstliche Intelligenz - Google Patents

Computerprogrammprodukt und Trainingssteuervorrichtung für künstliche Intelligenz Download PDF

Info

Publication number
DE102020206433A1
DE102020206433A1 DE102020206433.4A DE102020206433A DE102020206433A1 DE 102020206433 A1 DE102020206433 A1 DE 102020206433A1 DE 102020206433 A DE102020206433 A DE 102020206433A DE 102020206433 A1 DE102020206433 A1 DE 102020206433A1
Authority
DE
Germany
Prior art keywords
data
computer program
classes
program product
clusters
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.)
Withdrawn
Application number
DE102020206433.4A
Other languages
English (en)
Inventor
Ioannis Souflas
Noyan Songur
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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo Ltd
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 Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Priority to DE102020206433.4A priority Critical patent/DE102020206433A1/de
Priority to JP2022568592A priority patent/JP7498798B2/ja
Priority to US17/926,939 priority patent/US20230196194A1/en
Priority to DE112021001431.5T priority patent/DE112021001431T5/de
Priority to PCT/JP2021/007110 priority patent/WO2021240925A1/en
Publication of DE102020206433A1 publication Critical patent/DE102020206433A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/08Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to drivers or passengers
    • B60W40/09Driving style or behaviour
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • B60W2050/0083Setting, resetting, calibration
    • B60W2050/0088Adaptive recalibration
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/166Anti-collision systems for active traffic, e.g. moving vehicles, pedestrians, bikes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Transportation (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Feedback Control In General (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Traffic Control Systems (AREA)

Abstract

Ein Computerprogrammprodukt mit computerlesbaren Befehlen, die, wenn sie in einem Computersystem ausgeführt werden, das einen oder mehrere Computer enthält, das Computersystem veranlassen, einen Datensatz einer Maschine zu empfangen, die durch einen menschlichen oder Roboterfahrer geführt wird; den Datensatz durch Gruppieren der Daten basierend auf vorgegebenen oder definierbaren Maschinensteuerparameter aufzubereiten; die aufbereiteten Daten zum Bestimmen von Datenungleichgewichten innerhalb von Gruppen oder Untergruppen der aufbereiteten Daten zu durchsuchen; die Daten, für die ein Ungleichgewicht bestimmt wurde, auszugleichen; und die ausgeglichenen Daten auszugeben.

Description

  • Die vorliegende Offenbarung bezieht sich auf ein Computerprogrammprodukt, das computerlesebare Anweisungen umfasst, die in einem Computersystem ausgeführt werden können, das einen oder mehrere Computer enthält, und auf eine Trainingssteuervorrichtung für künstliche Intelligenz. Eine optimierte sichere künstliche Intelligenz kann in einer transparenten Weise erzeugt werden, während der offenbarte Prozess zum Erzeugen der künstlichen Intelligenz weniger komplex und effizienter ist, so dass der Rechenaufwand und/oder die Anwenderwechselwirkung verringert werden können. Die gehandhabten Maschinen können sowohl autonome Fahrzeuge, wie z. B. Personenkraftwagen, Busse, Pendelbusse, als auch andere Entitäten, die entlang einer Bewegungsbahn gefahren werden, wie z. B. Lieferroboter, enthalten.
  • Hintergrund
  • Die Dateneingabe in eine künstliche Intelligenz, die eine Maschine handhabt, wird oft im Kontext autonomer Fahrzeuge verwendet, die durch die künstliche Intelligenz gesteuert werden. Die Sensordaten, z. B. die Bilder der am Fahrzeug installierten Kamerasensoren, werden in die verschiedenen Schichten der künstlichen Intelligenz eingegeben, die dann basierend auf den in den Bildern bereitgestellten Informationen Fahranweisungen ausgibt. WO 2019/245618 A1 berichtet, dass die Sensorbilder zum Verringern des Rauschens z. B. unter Verwendung eines herkömmlichen Filtersystems vorverarbeitet werden (bevor sie in die künstliche Intelligenz eingegeben werden), oder dass die Daten verarbeitet werden, um sie in verschiedene Schichten der künstlichen Intelligenz einzugeben. Es wird jedoch nicht berücksichtigt, dass die künstliche Intelligenz selbst basierend auf beeinflussten Rohdatensätzen erzeugt worden sein kann. Falls z. B. die Fahrer, von denen die Trainingsdaten für die Trainingsdaten der künstlichen Intelligenz erzeugt wurden, ein unsicheres Fahrverhalten hatten oder die Fahrkurse nicht ausgewogen waren oder dergleichen, nimmt die künstliche Intelligenz dieses Verhalten an. Eine Optimierung insbesondere im Hinblick auf die Sicherheit ist deshalb erwünscht. Die Komplexität und der Rechenaufwand des Optimierens von Datensätzen, die vorgesehen sind, um als Trainingsdatensätze einer Kl verwendet zu werden, sind jedoch hoch. Ohne eine derartige Optimierung der Daten, bevor sie für das Training einer künstlichen Intelligenz verwendet werden, ist eine sich sicher verhaltende künstliche Intelligenz schwer zu erreichen.
  • Problem und Lösung
  • Es ist eine Aufgabe der hier beschriebenen Offenbarung, eine Lösung zu schaffen, die insbesondere ein Computerprogrammprodukt und eine Vorrichtung enthält, die es ermöglichen, eine optimierte künstliche Intelligenz (Kl) zum sicheren Handhaben einer Maschine, vorzugsweise eines Fahrzeugs, zu ermöglichen. Insbesondere soll die Lösung eine halb- oder vollautomatisierte, weniger komplexe Optimierung des Verhaltens einer künstlichen Intelligenz, die eine Maschine handhabt, ermöglichen. Dies wird durch die beigefügten Ansprüche gelöst.
  • Insbesondere werden die folgenden Aspekte bereitgestellt:
  • Ein Computerprogrammprodukt, das computerlesbare Anweisungen umfassen kann, die, wenn sie in einem Computersystem ausgeführt werden, das einen oder mehrere Computer enthält, das Computersystem veranlassen, die folgenden Schritte auszuführen. Die im Folgenden beschriebenen Schritte können außerdem als ein Verfahren betrachtet werden.
  • Ein oder mehrere Datensätze (Rohdaten) einer Maschine können durch den Computer oder das Computersystem, in dem das Computerprogrammprodukt ausgeführt wird, empfangen werden. Die Maschine kann durch einen Menschen oder einen Roboter gesteuert/geführt werden. Falls die Maschine z. B. ein Fahrzeug, wie z. B. ein Auto, ist, kann jeder Datensatz befahrene Bewegungsbahnen umfassen oder kann jeder Datenpunkt eine Fahrbewegungsbahn repräsentieren. Eine Bewegungsbahn kann ein Fahrkurs von einem Startpunkt bis zu einem Endpunkt oder Unterabschnitte von ihm sein. Die Rohdaten können über eine Schnittstelle oder Eingabeeinheit in das Computersystem eingegeben werden. Die Datenübertragung kann über ein Netz, in einer Datenspeichervorrichtung, drahtlos oder über eine verdrahtete Verbindung ausgeführt werden.
  • Die empfangenen Rohdaten können von den Sensoren der Maschine stammen; falls sie ein Fahrzeug ist, z. B. von Bewegungsbahnerzeugungsvorrichtungen, Positionsidentifikationssystemen, wie z. B. GPS oder Galileo, den Sensoren des Fahrzeugs und dergleichen.
  • Ferner kann eine Aufbereitung der Daten ausgeführt werden. Die aufzubereitenden Daten können die empfangenen Rohdaten sein und/oder die aufzubereitenden Daten können die Rohdaten sein, die vor dem Aufbereiten vorverarbeitet wurden. Die Vorverarbeitung der Rohdaten vor dem Aufbereiten wird im Folgenden weiter beschrieben. Das Aufbereiten kann vorzugsweise einen oder mehrere Schritte eines Teilprozesses beschreiben, mit dem die aufzubereitenden Daten strukturiert werden, was außerdem als Sortieren, Kategorisieren, Einteilen in Gruppen, Zuweisen zu einer oder mehreren Gruppen oder Gruppieren bezeichnet werden kann. Mit anderen Worten, die Daten können gruppiert werden, wobei das Gruppieren basierend auf den Maschinensteuerparametern (die kurz als „Parameter“, „Attribute“ oder „Merkmale“ bezeichnet werden) ausgeführt werden kann. Vorzugsweise wird das Aufbereiten so ausgeführt, dass die aufbereiteten Daten hierarchisch in einer baumartigen Struktur gruppiert werden.
  • Die Maschinensteuerparameter können vorgegeben und in einem Speicher des Computersystems gespeichert sein, oder sie können durch den Anwender genau zu dem Zeitpunkt des Aufbereitungsschritts definiert werden, wenn er durch das Computerprogrammprodukt aufgefordert wird. Im letzteren Fall kann der Anwender über eine visuelle Anforderung, die auf einer Anzeigeeinheit oder dergleichen angezeigt wird, aufgefordert werden, die Informationen einzugeben. Die Maschinensteuerparameter werden später ausführlicher erörtert, für ein Fahrzeug können sie jedoch z. B. die Parameter, die auf das Fahren des Fahrzeugs bezogen sind, wie z. B. die Geschwindigkeit, die Giergeschwindigkeit usw., und/oder die Parameter der Fahrumgebung des Fahrzeugs oder dergleichen, wie z. B. die Form des Manövers usw., enthalten.
  • Hinsichtlich der optionalen Vorverarbeitung der Rohdaten sind verschiedene Optionen besonders bevorzugt. Die Vorverarbeitung wird basierend auf einem beispielhaften Rohdatensatz erklärt. Der Rohdatensatz kann Datenpunkte mehrerer Bewegungsbahnen enthalten, die durch die Maschine/das Fahrzeug gefahren werden, wobei jeder Datenpunkt die Werte, die die Koordinaten einer Position angeben, repräsentieren kann (durch sie repräsentiert werden kann). Weiterhin kann der Datensatz die durch einen Maschinensensor gemessene Daten enthalten, wie z. B. die Geschwindigkeit (an jeder Position jeder Bewegungsbahn). Die gemessenen Sensordaten können auf die Datenpunkte bezogen sein. (1) Ein Teil der Maschinensteuerparameter, wie z. B. eine Form des Fahrmanövers, die Querbeschleunigung oder dergleichen, kann während des Vorverarbeitungsschritts aus den Rohdaten extrahiert werden, indem er basierend auf den Datenpunkten der befahrenen Bewegungsbahnen berechnet wird. Es kann z. B. bestimmt werden, dass in einem Abschnitt einer Bewegungsbahn eine Kurve gefahren wurde, falls die Positionen eines Satzes von Datenpunkten die Form einer Kurve beschreiben. Die Berechnung kann durch eine Extraktionseinheit (oder einer Untereinheit davon) des Computerprogramms vorzugsweise unter Verwendung heuristischer Kriterien und/oder des nicht überwachten Lernens ausgeführt werden. (2) Andere Maschinensteuerparameter, insbesondere die Maschinensteuerparameter, die von Sensoren stammen, wie z. B. die Geschwindigkeit, können keine Vorverarbeitung erfordern. Sie können (einfach) aus dem Datensatz extrahiert werden. Die Extraktion der Parameter kann automatisiert sein. Der Rohdatensatz kann z. B. durch das Computerprogrammprodukt gemäß den vorgegebenen oder eingegebenen Maschinensteuerparametern automatisch durchsucht und gefiltert werden. Die automatische Extraktion der Rohdaten kann z. B. nach Daten in dem Rohdatensatz suchen, der zu einem ersten Maschinensteuerparameter, einem zweiten Maschinensteuerparameter und dergleichen gehört.
  • Ferner können die aufbereiteten Daten durchsucht werden, um Ungleichgewichte bezüglich der Verteilung der Daten über eine oder mehrere Gruppen oder Untergruppen zu finden oder zu bestimmen. Im Kontext der Datenungleichgewichte kann außerdem auf Abweichungen verwiesen werden. Das Suchen nach Ungleichgewichten enthält vorzugsweise das Vergleichen von Datengruppen oder -untergruppen miteinander, um Unterschiede/Abweichungen zwischen den verglichenen Gruppen zu finden.
  • Ferner können die aufbereiteten Daten durch das Entfernen des (der) festgestellten Ungleichgewichts (Ungleichgewichte) ausgeglichen werden, wobei die ausgeglichenen Daten ausgegeben werden können. Vorzugsweise können die ausgeglichenen Daten an eine Trainingseinheit einer Trainingsvorrichtung für künstliche Intelligenz (oder eine durch eine KI gesteuerte Maschine) und/oder über eine Anzeigeeinheit an einen Anwender ausgegeben werden. Falls die „Trainingseinheit“ in dem Computerprogrammprodukt enthalten ist oder falls die Schritte vor dem Ausgeben durch eine einzige Vorrichtung ausgeführt werden, kann das „Ausgeben“ stattdessen das Senden der ausgeglichenen Daten an die interne Trainingseinheit bedeuten. Das Ausgeben an den Anwender kann für den Anwender vorteilhaft sein, um das Ergebnis der oben beschriebenen Schritte zu validieren. Die Validierung kann z. B. das Anzeigen des Rohdatensatzes (der Rohdatensätze) und der ausgeglichenen Daten enthalten, so dass der Anwender die Unterschiede und/oder die Wirkung der Optimierung bewerten kann.
  • Die Ausgabe des Computerprogrammprodukts kann durch einen halbautomatisierten oder vollautomatisierten Prozess erzeugt werden, während dessen die von einer Maschine, wie z. B. einem Fahrzeug, das durch einen menschlichen oder Roboterfahrer geführt wird, empfangenen Rohdaten verarbeitet werden, so dass eine äußerst sichere verbesserte automatisierte Maschine verwirklicht werden kann; vorzugsweise wird eine künstliche Intelligenz, die die Maschine steuert, mit der Ausgabe des oben beschriebenen Computerprogrammproduktes oder Verfahrens trainiert. Die Komplexität des Prozesses wird hinsichtlich der verschiedenen Dimensionen verringert: Falls die Anwendereingabe in einem halbautomatisierten Prozess angefordert wird, wird die Bequemlichkeit des Anwenders erhöht, weil er/sie durch das Computerprogrammprodukt geführt wird und die Ausgabe an den Anwender so angepasst werden kann, dass die Informationen leicht interpretierbar sind und komplexe Verarbeitungsschritte automatisiert sind; falls der Prozess vollständig automatisiert ist, wird der Prozessablauf der oben beschriebenen Schritte zusammengestellt, um die erforderlichen Rechenbetriebsmittel durch ein schrittweises ordentliches Verarbeiten der Rohdaten zu verringern, wobei jeder Schritt zu einem Zwischenprodukt führt, das durch die den nächsten Schritt ausführende Einheit effizient verarbeitet werden kann. Mit anderen Worten, insbesondere die Schritte des Aufbereitens und dann des Ausgleichens der Datensätze ermöglichen das Verringern der Komplexität des Rechenprozesses, d. h., das Verringern der Überlastung der Rechenbetriebsmittel oder das Verringern des Bedarfs an hochwertigen Rechenbetriebsmitteln. Das Aufbereiten ist ein Prozess, der durch ein bekanntes Computersystem effizient ausgeführt werden kann, wobei danach die aufbereitete Datenstruktur ein schnelles Erkennen von Ungleichgewichten und deren Ausgleich ermöglicht. Deshalb bringen die Schritte des Aufbereitens und des Ausgleichens technische Effekte hervor, die die erforderliche Rechenleistung verringern und gleichzeitig das Bereitstellen ausgeglichener Daten ermöglichen, die das Bereitstellen einer sichereren KI ermöglichen. Weiterhin wird die Ausgabe, d. h., die ausgeglichenen Daten, optimiert, wie z. B. um den für das Training der Kl erforderlichen Rechenaufwand zu verringern, was außerdem die Komplexität verringert.
  • In einem weiteren bevorzugten Aspekt kann die hierarchische Gruppierung (Schritt), d. h., das Aufbereiten, das Sortieren der Daten (Roh- und/oder vorverarbeiteten Daten) in Gruppen und Untergruppen enthalten. Das hierarchische Gruppieren gibt vorzugsweise eine baumartige Struktur von miteinander verbundenen Gruppen und Untergruppen zurück, die auf verschiedenen Ebenen der Datenstruktur angeordnet sind. Die Bestimmung oder Detektion von Ungleichgewichten kann vorzugsweise den Schritt des Vergleichens einer Anzahl von Datenpunkten/Abtastwerten von Gruppen oder Untergruppen miteinander enthalten. Die Detektion eines Ungleichgewichts kann zurückgegeben werden, wenn eine Differenz zwischen der Anzahl der Datenpunkte/Abtastwerte von Gruppen oder Untergruppen im Vergleich zueinander größer als ein vorgegebener Schwellenwert ist. Alternativ kann die Datenmenge/das Datenvolumen verglichen werden. Falls der Datensatz (die Datensätze) der Rohdaten die Bewegungsbahnen eines Fahrzeugs enthält (enthalten), kann außerdem sehr bevorzugt die Anzahl der Bewegungsbahnen in den verglichenen Gruppen verglichen werden. Bevorzugter werden die Gruppen oder Untergruppen jeder Ebene der baumartigen Struktur (innerhalb einer Ebene) miteinander verglichen, wobei bestimmt wird, dass der Teil der Gruppe mit der kleinsten Anzahl von Datensätzen/Punkten ein Ungleichgewicht aufweist, noch bevorzugter, falls zusätzlich die Differenz größer als der vorgegebene Schwellenwert ist. Falls kein vorgegebener Schwellenwert verwendet wird, kann in jeder Ebene der aufbereiteten Daten die Gruppe oder die Untergruppe mit der kleinsten Anzahl von Datensätzen als ein Ungleichgewicht gewählt werden. Falls jedoch der Schwellenwert angewendet wird, wird das Ungleichgewicht nur detektiert, falls zusätzlich die Differenz größer/kleiner als der Schwellenwert ist.
  • Das automatisierte Aufbereiten und die automatisierte Ungleichgewichtsdetektion ermöglichen, die technischen Vorteile des (der) oben beschriebenen Aspekts (Aspekte) weiter zu verbessern, insbesondere den Rechenaufwand zum Verbessern der Rohdaten zu verringern.
  • In einem weiteren bevorzugten Aspekt können die Maschinensteuerparameter, wie z. B. die Daten bezüglich des Fahrens eines Fahrzeugs (Fahrparameter), kontextabhängige Parameter oder statistische Parameter sein. Basierend auf diesen beiden Kategorien sind Gruppen und Untergruppen definierbar, die in einer baumartigen Anordnung miteinander verbunden werden können. Jede Ebene der baumartigen Struktur kann eine oder mehrere Gruppen (oder Untergruppen) aufweisen, wobei jede folgende/nächstniedrigere Ebene zusätzliche Gruppen aufweisen kann, die mit einer Gruppe der nächsthöheren Ebene verbunden sind.
  • Ferner können die Gruppen oder Untergruppen der Rohdaten und/oder der vorverarbeiteten Daten, die kontextabhängige Parameter enthalten, in einen oder mehrere Daten-Cluster aufgeteilt werden. Die Gruppen oder Untergruppen der Rohdaten einschließlich der statistischen Parameter können in eine oder mehrere Datenklassen aufgeteilt werden. Die Anzahl der Klassen oder Cluster pro Gruppe kann von Gruppe zu Gruppe variieren. Die Anzahl der Klassen oder Cluster pro Gruppe kann vorgegeben sein oder kann durch einen Anwender nach der Aufforderung, die Anzahl einzugeben, festgelegt werden.
  • Mit anderen Worten, die aufbereiteten Daten können so angeordnet werden, dass sie entweder kontextabhängige Parameter oder statistische Parameter aufweisen, die in einer Gruppe oder Untergruppe bereitgestellt werden. Innerhalb der hierarchisch angeordneten aufbereiteten Daten kann jede Klasse oder jeder Cluster einer Gruppe oder Untergruppe mit einer oder mehreren Klassen oder einem oder mehreren Clustern der Untergruppe der nächstniedrigeren Ebene verknüpft werden.
  • In einem weiteren Aspekt können die aufbereiteten Daten eine Anzahl hierarchisch angeordneter Gruppen und Untergruppen aufweisen, die beginnend mit der höchsten Ebene (der Gruppe der höchsten Ebene) und den Untergruppen, die mit der Gruppe der höchsten Ebene verknüpft sind, in den niedrigeren Ebenen auf verschiedenen Ebenen angeordnet sind. Jede Gruppe oder Untergruppe kann in einen oder mehrere Daten-Cluster (oder eine oder mehrere Datenklassen abhängig von dem Typ des für die Gruppe/Untergruppe gewählten Parameters) aufgeteilt werden. Die Maschinensteuerparameter können entweder kontextabhängige oder statistische Parameter sein, wobei jeder Maschinensteuerparameter einem oder mehreren Clustern (oder einer oder mehreren Klassen) einer Gruppe oder Untergruppe zugeordnet sein kann. Die Daten bezüglich der kontextabhängigen Parameter werden in die Cluster sortiert, während die Rohdaten bezüglich der statistischen Parameter in die Klassen sortiert werden.
  • Falls z. B. für die Gruppe der höchsten Ebene der Parameter „Geschwindigkeit“ durch den Anwender ausgewählt oder automatisch gemäß einer vorgegebenen Struktur gewählt wird, wird detektiert, dass die „Geschwindigkeit“ ein statistischer Parameter ist. Deshalb werden Daten, die Geschwindigkeitswerte aufweisen, in der Gruppe der höchsten Ebene gruppiert, für die der Parameter „Geschwindigkeit“ gewählt wurde. Weil die Geschwindigkeit ein statistischer Parameter ist, werden die Geschwindigkeitsdaten innerhalb der Gruppe der höchsten Ebene in die Klassen aufgeteilt. Die Anzahl der Klassen kann durch den Anwender gewählt werden, wenn er aufgefordert wird, dies zu tun, oder sie kann ebenso vorgegeben sein. Der Bereich der in den Daten vorhandenen Geschwindigkeitswerte wird dann vorzugsweise gleichmäßig durch die Anzahl der Klassen geteilt. Falls z. B. vier Klassen ausgewählt werden und die Geschwindigkeiten von O bis 100 km/h reichen würden, würde die erste Klasse die Geschwindigkeitsdaten mit Werten zwischen O und 25 km/h enthalten, würde die zweite Klasse die Geschwindigkeitsdaten mit Werten von >25 bis 50 km/h enthalten usw.
  • Falls ein kontextabhängiger Parameter gewählt wird, werden die in Beziehung stehenden Daten in Clustern angeordnet, wobei die Anzahl der Cluster vorzugsweise vorgegeben ist, wie in den im Folgenden beschriebenen Figuren gezeigt ist. Jede Untergruppe, die auf einer niedrigeren Ebene mit der Gruppe der höchsten Ebene verknüpft ist, kann abermals Datenwerte enthalten, die abhängig von dem gewähltem Parameter in Klassen oder Clustern angeordnet sind.
  • Falls die Anzahl der Cluster und Klassen pro Gruppe oder Untergruppe in einer Datenbank vorgegeben ist, kann ferner die Anzahl der Cluster gleich der Anzahl der Unterparameter des den Clustern zugeordneten kontextabhängigen Parameters sein, wobei abhängig von der Anzahl der einem statistischen Parameter zugeordneten Klassen der Wertebereich des statistischen Parameters gleichmäßig über die Klassen verteilt sein kann, wie im obigen Beispiel erklärt worden ist.
  • Das Aufbereiten kann z. B. basierend auf vorgegebenen Datenstrukturen vollautomatisiert ausgeführt werden, oder ein Anwender kann mit wenigen Eingaben eine kundenspezifische Struktur der aufbereiteten Daten definieren. Dies ermöglicht, dass im Ausgleichsschritt weniger komplexe Verarbeitungsoperationen erforderlich sind und das ausgegebene Produkt, die ausgeglichenen Daten, bezüglich des Ermöglichens einer sicheren KI verbessert werden kann.
  • In einem weiteren bevorzugten Aspekt ist die Maschine ein Fahrzeug, wobei die Rohdatensätze mehrere Bewegungsbahnen enthalten, die durch ein von einem Menschen gesteuertes oder ein robotergesteuertes Fahrzeug gefahren werden. Die Rohdaten können aus einer Multisensordatenextraktion, wie z. B. den Fahrzeugsensoren, der Fahrsteuerung einschließlich der Bewegungsbahngeneratorvorrichtungen, den Positionsinformationssystemen und dergleichen, gewonnen werden. Weitere Quellen für die Rohdaten sind hinzufügbar.
  • Vorzugsweise können die kontextabhängigen Parameter, die im Folgenden nicht vollständig aufgelistet sind, Kurven und darauf bezogene Unterparameter, wie z. B. Linkskurve, Rechtskurve, gerade Straße und/oder komplexe Kurve, Hindernisse, wie z. B. Hindernis detektiert und/oder kein Hindernis detektiert, Handlungen des Fahrers, wie z. B. freies Fahren mit konstanter Geschwindigkeit, Spurwechsel, einem Hindernis Folgen und/oder Überholen, enthalten. Vorzugsweise können die statistischen Parameter, die im Folgenden nicht vollständig aufgelistet sind, Parameter, wie z. B. die Geschwindigkeit, die Giergeschwindigkeit und/oder Beschleunigungen, enthalten.
  • Die obigen technischen Vorteile des Aufbereitungsschritts gelten gleichermaßen für das Anwendungsszenario eines Fahrzeugs.
  • In einem weiteren bevorzugten Aspekt kann, wie oben beispielhaft beschrieben worden ist, die hierarchische Struktur sowohl der Gruppen und Untergruppen als auch der Klassen und Cluster der Gruppen und Untergruppen vorgegeben und in einem Speicher gespeichert sein, der mit dem Computersystem verbunden ist oder ein Teil des Computersystems ist. Alternativ oder zusätzlich kann die Struktur durch einen Anwender genau zu dem Zeitpunkt, zu dem das Computerprogrammprodukt ausgeführt wird, editierbar sein. Falls der Anwender die Struktur editiert, kann der Anwender wenigstens aufgefordert werden, sowohl die Anzahl der Gruppen und Untergruppen (was vorzugsweise die Anzahl der Ebenen bedeutet) als auch die Anzahl der Klassen oder Cluster pro Gruppe oder Untergruppe einzugeben. Im letzteren Fall ist die Menge der durch den Anwender erforderlichen Eingabe verringert, wobei gleichzeitig der Grad der kundenspezifischen Anpassung hoch ist.
  • In einem weiteren bevorzugten Aspekt kann, falls die Klassen und die Cluster in den aufbereiteten Daten enthalten sind, vorzugsweise ein Ungleichgewicht durch das Vergleichen der Klassen oder Cluster einer Gruppe oder Untergruppe miteinander bestimmt werden, um die Klasse oder den Cluster mit der kleinsten Anzahl von Datenpunkten oder der kleinsten Anzahl von befahrenen Bewegungsbahnen zu finden. Das Ausgleichen kann durch ein zufälliges Unterabtasten aller anderen Klassen oder Cluster in der Gruppe oder Untergruppe (auf der gleichen Ebene) bis zu der Anzahl der Datensätze in der Klasse oder dem Cluster mit der kleinsten Anzahl von Datensätzen ausgeführt werden. Vorzugsweise ist eine minimale Anzahl von Datensätzen vorgegeben, die, falls die kleinste Klasse oder der kleinste Cluster die minimale Anzahl nicht enthält, ein Ausgleichen verhindert. Im Fall eines Fahrzeugs wird vorzugsweise die Datenanzahl der Bewegungsbahnen verglichen. Ein derartiges Ausgleichen erreicht ordentlich eine Verringerung des Rechenaufwands, weil die Operationen nicht komplex sind, während es außerdem die Sicherheit der KI verstärkt, der der ausgeglichene Datensatz zugeführt wird.
  • Ferner kann das Ausgleichen Ebene für Ebene der hierarchischen Struktur der aufbereiteten Daten von der Gruppe der höchsten Ebene bis zur Untergruppe der untersten Ebene (oder umgekehrt) folgend ausgeführt werden, was zu einem optimierten Arbeitsablauf des Ausgleichsprozesses führt.
  • In einem weiteren bevorzugten Aspekt können sowohl die Rohdaten (als auch die vorverarbeiteten Daten), die aufbereiteten Daten und/oder die ausgeglichenen Daten zur Validierung der Aufbereitungs- und/oder Ausgleichsoperation an einen Anwender ausgegeben werden. Dies ermöglicht die Bewertung der verarbeiteten Daten durch einen Menschen, so dass eine weitere Sicherheitsebene hinzugefügt werden kann, falls ein menschlicher Anwender eine Überprüfung der ausgeglichenen und/oder aufbereiteten Daten ausführt. Zum schnellen und einfachen Vergleich können die Rohdaten auch angezeigt werden.
  • Ferner können die Daten zu dem Anwender ausgegeben werden, so dass die Gruppen und die Untergruppen als konzentrische Ringe mit unterschiedlichen Durchmessern angeordnet sind, wobei die Klassen oder Cluster die Segmente der konzentrischen Ringe sein können, was ein noch einfacheres und schnelleres Verständnis/Bewerten der Daten in einer sehr transparente Weise ermöglicht.
  • In einem weiteren bevorzugten Aspekt kann das Computerprogrammprodukt in einem Computer oder in verteilten Rechenbetriebsmitteln/Speicherplätzen installiert sein. Der letztere Fall kann eine verteilte Beteiligung verschiedener Anwender oder Rechen-/Speicherbetriebsmittel ermöglichen. Abermals können die Extraktion der Daten aus den Rohdatensätzen, das Aufbereiten und/oder das Ausgleichen automatisch ausgeführt werden, wie oben beschrieben worden ist.
  • In einem weiteren bevorzugten Aspekt ein Trainingssteuervorrichtung für künstliche Intelligenz, die wenigstens eine Speichereinheit mit dem darin gespeicherten Computerprogrammprodukt gemäß wenigstens einem der oben beschriebenen Aspekte, eine Eingangsschnittstelle, eine Ausgangsschnittstelle und/oder eine Anzeigeeinheit aufweisen kann. Die Eingangsschnittstelle kann konfiguriert sein, die Rohdaten von einer oder mehreren Datenquellen zu empfangen, die über eine verdrahtete Verbindung oder eine drahtlose Verbindung mit der Eingangsschnittstelle verbunden sind. Die Eingangsschnittstelle kann konfiguriert sein, nur vorgegebene Datenformate zu akzeptieren, um die Komplexität der Datenverarbeitung weiter zu verringern. Die Ausgangsschnittstelle kann konfiguriert sein, die ausgeglichenen Daten auszugeben. Das Ausgeben kann, wie oben beschrieben worden ist, bedeuten, dass die ausgeglichenen Daten in eine Trainingseinheit, die ein Teil der Kl-Trainingssteuervorrichtung ist, oder, falls sie extern ist, in eine weitere Entität, die das Verwenden der Daten für das Training einer KI ermöglicht, eingegeben werden. Zusätzlich kann eine Anzeigeeinheit vorgesehen sein, die konfiguriert ist, die Rohdaten (und/oder die vorverarbeiteten Daten), die aufbereiteten Daten und/oder die ausgeglichenen Daten einem Anwender anzuzeigen. Ferner können dem Anwender ebenso Anfragen zum Eingeben von Informationen/Daten angezeigt werden.
  • Insbesondere der Verwendungsfall eines KI-Fahrers eines Fahrzeugs erfordert, dass autonome Fahrzeuge als ein zuverlässiger und sicherer Transportdienst akzeptiert werden. Dies erfordert die Verwirklichung einer reibungslosen, natürlichen, menschenähnlichen Fahrzeugsteuerung. Die Fülle von Fahrdaten, die von modernen Autos erfasst werden, ist dafür ein Schlüsselfaktor. Die vorgeschlagene Lösung, die die automatische Extraktion von Fahrparametern nach dem Aufbereiten und Ausgleichen enthält, kann verwendet werden, um Modelle des maschinellen Lernens, die für die Planung und Steuerung der Fahrzeugbewegung verantwortlich sind, zu aktualisieren. Eine halbautomatisierte oder vollautomatisierte, weniger komplexe, effizientere Optimierung des Verhaltens der künstlichen Intelligenz, die eine Maschine/ein Fahrzeug sicher handhabt, wird ermöglicht.
  • Figurenliste
    • 1 zeigt schematisch einen schematischen Vergleich einer Vergleichsvorrichtung und einer Vorrichtung gemäß der Offenbarung.
    • 2 zeigt schematisch einen bevorzugtes Prozess/ein bevorzugten Verfahren der Offenbarung.
    • 3 zeigt ein Beispiel kategorisierter Fahrparameter.
    • 4 zeigt ein Beispiel des Aufbereitens von Rohdaten gemäß der Offenbarung.
    • 5 zeigt ein Beispiel des Aufbereitens und Ausgleichens von Daten gemäß der Offenbarung.
    • 6 zeigt ein Beispiel einer Ausgabe an einen Anwender, der die Rohdaten und die ausgeglichenen Daten vergleicht, gemäß der Offenbarung.
    • 7 zeigt schematisch Beispiele von Rohdaten, die gut verteilt (7a) oder verzerrt (7b, 7c) sind.
    • 8 zeigt schematisch das Verhalten eines Fahrzeugführers mit künstlicher Intelligenz, falls die Rohdateneingabe in einem Vergleichsbeispiel unausgeglichen war.
    • 9 zeigt schematisch das Verhalten eines Fahrzeugführers mit künstlicher Intelligenz, falls die Rohdaten basierend auf der Offenbarung vorverarbeitet wurden.
  • Ausführliche Beschreibung beispielhafter Ausführungsformen
  • Im Folgenden werden bevorzugte Aspekte und Beispiele bezüglich der beigefügten Figuren ausführlicher beschrieben. Auf gleiche oder ähnliche Merkmale in verschiedenen Zeichnungen und Beispielen wird durch ähnliche Bezugszeichen verwiesen. Es soll erkannt werden, dass die ausführliche Beschreibung im Folgenden bezüglich verschiedener bevorzugter Aspekte und bevorzugter Beispiele nicht als den Schutzumfang der vorliegenden Offenbarung einschränkend gemeint ist.
  • 1 zeigt einen Überblick auf hoher Ebene über die hier beschriebene Trainingssteuervorrichtung 1a für künstliche Intelligenz (Kl), die neben einem Vergleichsbeispiel einer KI-Trainingssteuervorrichtung 1b dargestellt ist. Wie die Pfeile angeben, werden dem Vergleichsbeispiel einer Kl-Trainingssteuervorrichtung 1b die Rohdaten zugeführt, die von einer Maschine stammen, die durch einen Menschen oder einen Roboter gesteuert oder geführt wird. Als ein bevorzugtes Beispiel wird in der folgenden Beschreibung angenommen, dass die Rohdaten von einer Maschine ausgehen, die ein Fahrzeug ist, das durch einen Menschen oder einen Roboter entlang mehrerer Bewegungsbahnen gefahren wird/wurde. Im Vergleichsbeispiel werden die Rohdaten in die Trainingseinheit 8b des Vergleichsbeispiels eingegeben, wobei die Ausgabe eine trainierte KI ist, die in einen KI-Wegplaner 20 eingegeben werden kann, um ein selbstfahrendes Fahrzeug zu verwirklichen. Im Vergleich dazu ist die vorliegende Offenbarung im unteren Teil der 1 dargestellt, wobei die KI-Trainingssteuervorrichtung 1a einen anderen Aufbau mit zusätzlichen Untereinheiten aufweist, die einen zuverlässigeren und sichereren KI-Fahrer oder einen (ausgeglichenen) Datensatz ausgeben können, der in eine externe KI-Trainingseinheit 8a eingespeist werden kann (falls alternativ die Einheit 8a außerhalb der Vorrichtung 1a angeordnet ist, was in 1 nicht dargestellt ist).
  • Spezifisch zeigt 1 die Untereinheiten der KI-Trainingssteuervorrichtung 1a, die die Rohdaten/den Datensatz (die Datensätze) 10 verarbeiten. Zuerst werden die Rohdaten durch die Eingabeeinheit 2 empfangen, die mit „einer Synchronisationseinheit“ kombiniert sein kann, die konfiguriert ist, die Rohdaten zu empfangen und vorzugsweise zu synchronisieren, die von mehreren Sensoren stammen, die das Verhalten des Menschen/Roboters aufzeichnen, der die Maschine steuert. Anschließend an das Empfangen und die Synchronisation der Rohdaten werden die Rohdaten zu den weiteren Einheiten 3 und 4 weitergeleitet, die eine Analysedateneinheit 4 und eine Extraktionsdateneinheit 3 sind. Die Einheiten 3 und 4 können eine einzige kombinierte Einheit sein. Die in der Analysedateneinheit 4 ausgeführte Analyse ist ein optionaler Prozess, der im Zusammenhang mit 2 beschrieben wird.
  • Die Extraktionsdateneinheit 3 ist konfiguriert, die Daten abhängig vom Typ des zu extrahierenden Maschinensteuerparameters zu extrahieren. Die Rohdaten, die von den Fahrzeugsensoren stammen, können z. B. im Aufbereitungsschritt direkt verwendet werden. Folglich können die auf diese Maschinensteuerparameter bezogenen Daten, für die vorgegebene Kategorien verfügbar sind, automatisch extrahiert und zu einer Gruppierungseinheit geleitet werden. Die Gruppierungseinheit kann sowohl die optionale Einheit 5 als auch die Einheit 6, die in 1 gezeigt sind, enthalten. Die vorgegebenen Kategorien sind die später beschriebenen Maschinensteuerparameter. Die Einheit 3 kann z. B, automatisch bestimmen, dass der Rohdatensatz 10 die Geschwindigkeitsdaten des Fahrzeugs für mehrere Bewegungsbahnen enthält, die dann entsprechend etikettiert/extrahiert werden. Weiterhin können einige Maschinensteuerparameter eine Vorverarbeitung der zugrundeliegenden Rohdaten unter Verwendung heuristischer Kriterien und eines nicht überwachten Algorithmus des maschinellen Lernens, wie z. B. k-Means, erfordern. Es kann sein, dass die Beschleunigung oder das Fahrmanöver des Fahrzeugs (wie z. B. Geradeausfahrt oder Fahren einer Kurve) aus den Rohdaten z. B. durch das Vergleichen von Datenpunkten der Bewegungsbahnen bestimmt werden müssen. Sehr bevorzugt wird jede Bewegungsbahn im Rohdatensatz für jeden Maschinensteuerparameter etikettiert/extrahiert (z. B. wie in 3 gezeigt ist), nachdem die Extraktionseinheit 3 die Verarbeitung abgeschlossen hat.
  • Die Gruppierungseinheit kann dann die extrahierten Daten von der Extraktionseinheit 3 (oder von der optionalen Analyseeinheit 4) erhalten. Eine optionale Filterdaten-Endpunkteinheit 5 der Gruppierungseinheit kann vorgesehen sein, um Datenausreißer zu erkennen und vorzugsweise zu löschen. Danach bereitet die Aufbereitungseinheit 6 der Gruppierungseinheit die durch die Extraktionseinheit 3 verarbeiteten Daten, d. h., die Rohdaten und/oder die vorverarbeiteten Daten, basierend auf den Maschinensteuerattributen/-parametern (im Fall eines Fahrzeugs können sie als Fahrattribute/-parameter bezeichnet werden) auf/gruppiert sie. Das Aufbereiten wird im Folgenden ausführlicher erklärt.
  • Anschließend werden die aufbereiteten Daten an die Ausgleichseinheit 7 gesendet, die eine Korrektur der unausgeglichenen Daten ausführt, die ebenfalls später beschrieben wird. Danach werden die ausgeglichenen Daten in eine Trainingseinheit 8a eingegeben, die ein Teil der Kl-Trainingssteuervorrichtung 1a sein kann, wie in 1 gezeigt ist. Alternativ kann die Trainingseinheit 8a eine externe Einheit sein, an die die Daten von der Kl-Trainingssteuervorrichtung 1a ausgegeben werden. Weiterhin kann ein Speicher/eine Datenbank 9 ebenso wie nicht gezeigte Prozessoren mit der Kl-Trainingssteuervorrichtung 1a verbunden sein oder in der Vorrichtung enthalten sein.
  • 2 stellt nun weitere Einzelheiten des Ablaufs des Prozesses entlang der in 1 gezeigten Einheiten bereit. Wie gezeigt ist, werden die Rohdaten 10, die von einer Datenbank oder einem Speicher, z. B. der Einheit 9, wie in 1 gezeigt ist, bereitgestellt werden, in den Prozess eingegeben, der mit dem Schritt S1 beginnt. Der Schritt S1 kann als „Datengerangel“ bezeichnet werden und kann in die Unterschritte S1a und S1b aufgeteilt sein. Die Funktionalität kann in der Synchronisationseinheit 2 zugewiesen sein. Das Datengerangel enthält das Verarbeiten der Rohdaten 10, um optional eine Zeitausrichtung der Rohdaten 10 auszuführen. Eine Zeitausrichtung könnte insbesondere in einem Fall vorteilhaft sein, in dem die Datenquellen mit unterschiedlichen Frequenzen abgetastet wurden. Weiterhin können die Rohdaten 10, wie z. B. die Mensch/Roboter-Fahrdaten, einen Bereich von Messwerten von der Fahrzeugdynamik bis zu den Wahrnehmungssystemvariable (Belegungskarte, Objektdetektion und dergleichen) enthalten. Das Datenformat der Eingangsdaten kann in einer Datenbank oder dergleichen vorgegeben sein. Nach dem Schritt S1a können nach der oben beschriebenen Synchronisation des Rohdatensatzes Datenfolgen erzeugt werden. Die Länge der Folgen und die Richtung (entweder in die Vergangenheit oder in die Zukunft gerichtet) sind durch den Anwender kundenspezifisch anpassbar und können durch den Anwender basierend auf der Sensorarchitektur der Maschine und/oder deren Spezifikationen bestimmt werden. Im Ergebnis werden synchronisierte Daten/Folgen als Anordnungen/Bewegungsbahnen gespeichert. Eine Bewegungsbahn der Fahrdaten kann spezifische Fahr-/Maschinensteuerdaten an bestimmten Orten/Zeitpunkten enthalten und mehrere Fahrparameter, wie z. B. die Geschwindigkeit oder dergleichen, enthalten. Nach dem Schritt S1, einschließlich der Unterschritte S1a und S1b, wie in 2 gezeigt ist, geht der Prozess zum Schritt S2 weiter, der „Parameterextraktion“ genannt wird, die in der Extraktionseinheit 3 stattfindet.
  • Ausführliche Beschreibung der (Maschinensteuer-) Parameterextraktion (oder „Merkmalsextraktion“): Eine Liste von Fahr-/Maschinensteuerattributen/-parametern, die in einer Datenbank, wie z. B der Datenbank DB1 und der Datenbank DB2, die in 2 gezeigt sind, vorgegeben sein können, kann vorgesehen sein. Ein Beispiel ist in 3 („Fahrmerkmale“) gezeigt. Anstelle der graphischen Veranschaulichung könnte eine entsprechende Tabelle in den vorher erwähnten Datenbanken/dem vorher erwähnten Speicher 9 gespeichert sein. Im Allgemeinen ist es bevorzugt, dass zwei Haupttypen von Parametern vorgesehen sind, die als „statistisch“ und „kontextabhängig“ bezeichnet werden. Die Parameterextraktion des Schritts S2 kann eine auf heuristischen Kriterien basierende und auf einem nicht überwachten Algorithmus des maschinellen Lernens, wie z. B. k-Means, basierende Vorverarbeitung enthalten. Wie in 3 zu sehen ist, können die statistischen Parameter die Geschwindigkeit, die Giergeschwindigkeit, die Querbeschleunigung, die Längsbeschleunigung, einen Querruck, einen Längsruck und/oder einen Drehwinkel enthalten, falls die gesteuerte Maschine ein Fahrzeug wie im vorliegenden Beispiel ist. Bei Bedarf können weitere Parameter hinzugefügt werden oder können Parameter weggelassen werden. Die kontextabhängigen Parameter können z. B. in Kurven einschließlich Linkskurven, Rechtskurven, gerade „Kurven“ (Manöver) und andere mögliche Formen der Straße kategorisiert sein. Ferner kann die Hindernisdetektion eine Unterkategorie sein, die vorhandene Hindernisse oder keine Hindernisse enthält, ebenso wie der Bewegungszustand des Fahrzeugs eine weitere Unterkategorie sein kann, die stationär, anfahrend, anhaltend, beschleunigend, verlangsamend und/oder konstante Geschwindigkeit enthält. Weiterhin kann die Handlung des Fahrers eine weitere Unterkategorie von kontextabhängigen Parametern sein, die freies Fahren mit konstanter Geschwindigkeit, Spurwechsel, einem Hindernis Folgen und/oder Überholen enthalten. Wie bei den statistischen Parametern kann die Anzahl der Unterkategorien der kontextabhängigen Parameter einschließlich ihrer Elemente abhängig von den spezifischen Anforderungen vergrößert oder verkleinert werden. Andere Maschinensteuerparameter können während des Schritts S2 ohne die Vorverarbeitung direkt aus den Rohdaten extrahiert werden. Die durch Sensoren gemessenen Rohdaten, wie z. B. die Geschwindigkeit des Fahrzeugs, können z. B. während des Schritts S2 direkt extrahiert werden.
  • Ferner ermöglicht die Steuervorrichtung 1a optional dem Anwender, die durch die Extraktionseinheit 3 ausgegebenen Rohdaten oder vorverarbeiteten Daten unter Verwendung vorgegebener und/oder anwenderdefinierbarer statistischer und kontextabhängiger Maschinensteuerparameter zu analysieren. Die extrahierten Daten können dem Anwender angezeigt werden, so dass der Anwender den Datensatz transparent analysieren kann. Selbst wenn 2 die Datenanalyse in Kombination mit dem Schritt S3 zeigt, kann sie außerdem ein Teil des Schritts S2 sein.
  • Vor dem Erklären der Analyse nach Schritt S3 soll eine beispielhafte Software-Architektur der hier beschriebenen Offenbarung erklärt werden: Eine Front-End-Funktionalität ist durch bekannte Werkzeuge bereitgestellt. Ferner kann das Back-End sowohl in einen Datengerangel-, -analyse-, -filterungs- und -ausgleichsabschnitt als auch in einen KI-Trainings- und Analyseabschnitt aufgeteilt sein. Falls z. B. die im Verlauf von S2 oder S3 ausgeführte Analyse Back-End-Bibliotheken verwendet, können für ein vorläufiges statistisches Verständnis zeitausgerichtete Abtastwerte gelesen und in Datenrahmen gespeichert werden, die Fahrkurs-/Fahrt-ID, Datenabtastwert-ID, GPS-Koordinaten und Geschwindigkeits-, Giergeschwindigkeits-, Längs- und Querbeschleunigungswerte enthalten. Die Werkzeugleiste ermöglicht dann dem Anwender die GPS-Synchronisierung der Datenabtastwerte und die Visualisierung verschiedener Parametertrends über verschiedene Fahrten und Fahrer in den Formen eines Histogramms, Streudiagrammen und einer GPS-Karte. Basierend auf diesen, nachdem sie dem Anwender auf einer Anzeigeeinheit ausgegeben worden sind, kann der Anwender die Fahrer vergleichen, Datenvarianzen erkennen und Ausreißer detektieren. Weiterhin kann die Werkzeugleiste durch das Bereitstellen von Informationen über die Anzahl der Kurven, die Hindernisdetektion, den Typ des Fahrmanövers und den Bewegungszustand des Fahrzeugs ein kontextabhängigeres Verständnis bereitstellen, falls die gesteuerte Maschine ein Fahrzeug ist. Eine derartige ausführliche Datenanalyse, die durch die Analyseeinheit 4 bereitgestellt wird, (siehe Schritt S3 in 2), kann den Anwender unterstützen, die zugrundeliegenden Fahrverhaltensmerkmale vor irgendwelchen Trainingsaktivitäten der Kl-geführten autonomen Fahrzeugen zu erkennen.
  • Das Analysieren und Filtern von Ausreißern in den Roh-/vorverarbeiteten Daten wird im Schritt S3 ausgeführt und wird folglich vorzugsweise nach dem Schritt S2, d. h., der Extraktion der Parameter/Merkmale, ausgeführt.
  • Um ein weiter optimiertes und noch sichereres KI-Selbstfahren zu ermöglichen, werden die Daten der vorliegenden Offenbarung in mehreren Parameterräumen aufbereitet und ausgeglichen. Ein Beispiel ist in 7 schematisch gezeigt, die verschiedene Bewegungsbahnen von Rohdatensätzen 10 zeigt. 7a zeigt z. B. einen gut verteilten Rohdatensatz 10 für eine Kurvenverteilung, während 7b ein Geschwindigkeitsprofil mit einem Ungleichgewicht zur rechten Seite zeigt, wie durch die verschiedenen Bewegungsbahnen gezeigt ist, die von der Mittellinie abgehen, während 7c einen unausgeglichenen Datensatz hinsichtlich der Längsbeschleunigungsprofile zeigt. Sobald der Anwender die Datenbeeinflussungen und -endpunkte identifiziert hat oder eine KI der Steuervorrichtung dies automatisch selbst getan hat, ist es möglich, diese Beeinflussungen basierend auf den Parameterminima und -maxima herauszufiltern. Deshalb kann sichergestellt sein, dass sich der resultierende KI-Fahrer nicht in einer Weise verhält, die die Grenzen des sicheren Fahrens überschreitet.
  • Ausführlicher werden die Aufbereitungs- und Ausgleichsschritte S4 und S5 nach 2 ausgeführt, nachdem die Daten durch die Extraktionseinheit 3 extrahiert wurden (Schritt S2). Für das Aufbereiten der Daten im Schritt S4 kann eine vorgegebene baumartige Struktur der Parameter oder eine frei durch einen Anwender gewählte Struktur der Parameter angewendet werden.
  • 4 zeigt ein Grundprinzip des Aufbereitungsprozesses der Daten. In einem ersten Teilschritt des Aufbereitens wird ein erster Parameter entweder durch den Anwender gewählt oder er wird gemäß einer vorgegebenen Struktur automatisch gewählt. Dann wird entschieden, ob er ein statistischer oder ein kontextabhängiger Parameter ist. Die Geschwindigkeit des Fahrzeugs ist z. B. ein statistischer Parameter, während das Fahrmanöver ein kontextabhängiger Parameter ist. Dann können abhängig vom Typ des Parameters die Daten, die zum ersten ausgewählten Parameter gehören, weiter aufbereitet werden, wie im Folgenden beschrieben wird. Die Daten, die dem ersten Steuerparameter zugeordnet sind/zu diesem gehören, bilden die erste Gruppe der hierarchisch strukturierten aufbereiteten Daten. Wird z. B. angenommen, dass ein statistischer Parameter als der erste Maschinensteuerparameter gewählt wurde, wird der Anwender aufgefordert, die Anzahl der Klassen einzugeben, oder es wird eine vorgegebene Anzahl von Klassen angewendet. Dann werden die zum ersten Parameter gehörenden Rohdaten in die Anzahl der Klassen aufgeteilt. Die Verteilung in die verschiedenen Klassen wird vorzugsweise durch automatisches Segmentieren der Daten in L gleich beabstandete Klassen zwischen dem Minimum und dem Maximum der Daten ausgeführt. Falls z. B. die Geschwindigkeit als der erste Maschinensteuerparameter gewählt wird und falls drei Klassen verwendet werden (wie in 4 gezeigt ist) und falls die maximale Geschwindigkeit in den Rohdaten 30 m/s beträgt, würde die Segmentierung zurückgeben, dass alle Daten in Bezug auf die Geschwindigkeit unter den Rohdaten in eine Klasse für die Geschwindigkeitswerte zwischen 0 und 10 m/s, eine Klasse für die Geschwindigkeitswerte zwischen 10 und 20 m/s und eine Klasse, die die Geschwindigkeitsdaten zwischen 20 und 30 m/s enthält, gelegt werden.
  • Falls in einem weiteren Beispiel ein kontextabhängiger Parameter als ein erster Maschinensteuerparameter ausgewählt wird, wie z. B. Kurven, werden die Daten in die vorgegebenen Cluster des Parameters partitioniert, wie zuvor beschrieben worden ist und wie z. B. in 3 gezeigt ist. Für die Kurven in diesem Beispiel nach 3 würden die Cluster Linkskurve, Rechtskurve und gerade „Kurven“/Straßen/Manöver sein. Deshalb würden in diesem Beispiel drei Cluster, wie in 4 gezeigt ist, erzeugt, wobei die Daten den drei Clustern hinsichtlich der Kurvendaten abhängig davon zugewiesen würden, ob sie sich auf Links-, Rechtskurven oder gerade Manöver beziehen.
  • Der erste Maschinensteuerparameter und die dazu sortierten Daten bilden die Gruppe der höchsten Ebene in der in 4 gezeigten baumartigen Struktur. Weitere Gruppen, d. h., Untergruppen, können hinzugefügt werden.
  • Wie in 4 gezeigt ist, wird eine Untergruppe der nächsten Ebene, die sich auf einen zweiten Parameter bezieht, zu der Gruppe der höchsten Ebene hinzugefügt. Der zweite Parameter kann durch den Anwender gewählt werden oder kann gemäß einer vorgegebenen Datenstruktur vorgegeben sein. Dann wird, wie für die Gruppe der höchsten Ebene beschrieben worden ist, entschieden, ob es ein statistischer oder ein kontextabhängiger Parameter ist, wobei, falls es ein statistischer Parameter ist, die Anzahl der Klassen durch den Anwender definiert werden muss oder vorgegeben ist. Falls es ein weiterer statistischer Parameter ist, werden Unterklassen der Klassen der zum ersten Parameter gehörenden Rohdaten erzeugt. Falls der zweite ein kontextabhängiger Parameter ist, werden Unter-Cluster zu den Klassen/Clustern der Gruppe der höchsten Ebene bezüglich des ersten Parameters hinzugefügt. Dies ist in den beiden linken Teilen der 4 in der zweiten Ebene der baumartigen Struktur dargestellt. Danach kann, wie in 4 gezeigt ist, ein dritter Parameter hinzugefügt werden. Natürlich können sogar mehr als drei Parameter hinzugefügt werden. Analog können auf der rechten Seite der baumartigen Struktur ein zweiter und ein dritter Parameter hinzugefügt werden. Weiterhin enthält die baumartige Struktur in diesem Beispiel statistische und kontextabhängige erste Parameter, was jedoch nicht unbedingt der Fall sein muss; stattdessen kann der gewählte erste Parameter entweder statistisch oder kontextabhängig sein.
  • Angenommen, dass der erste Parameter ein kontextabhängiger Parameter ist, der sich auf Kurven bezieht, und der zweite Parameter die Geschwindigkeit ist, würde dies zu Untergruppen der Geschwindigkeit führen, die mit der Gruppe der Kurven in Beziehung stehen/verknüpft sind. Mit anderen Worten, in diesem Beispiel würde die Geschwindigkeit innerhalb von Linkskurven, Rechtskurven und geraden Straßen gruppiert werden, wie es im rechten Seitenarm in der höchsten Ebene in 4 und dann im linken Seitenarm des kontextabhängigen Seitenarms in der Gruppe/Untergruppe der zweiten Ebene des ersten Parameters gezeigt ist.
  • Nach dem Aufbereiten wird der Schritt des Ausgleichens ausgeführt (Schritt S5), der zu einem ausgeglichenen Datensatz führt, der in der Datenbank db4 speicherbar ist, ebenso wie der gefilterte Datensatz in der Datenbank db3 nach 2 gespeichert werden kann. Die aufbereiteten Daten können durch Unterabtasten jeder Unterklasse bis zur kleinsten Anzahl verfügbarer Abtastwerte, die in einer Unterklasse enthalten sind, ausgeglichen werden. Sobald das Ausgleichen der Daten abgeschlossen ist, können z. B. die Daten ausgeglichen werden, indem erstens die kleinste Anzahl von Bewegungsbahnen/Datensätzen in jeder Untergruppe bestimmt wird und zweitens alle anderen Untergruppen bis zu der kleinsten Anzahl zufällig unterabgetastet werden. Spezifischer kann die Anzahl der Datensätze in einer Klasse oder einem Cluster einer Gruppe oder Untergruppe miteinander verglichen werden, wobei die Klasse oder der Cluster mit der kleinsten Anzahl von Datensätzen als die Klasse oder der Cluster gewählt werden kann, basierend auf deren bzw. dessen Anzahl der Datensätze das Unterabtasten ausgeführt wird. Weiterhin kann die Detektion eines Ungleichgewichts, das zu der Ausgleichsoperation führt, auf den Fall eingeschränkt werden, dass die Anzahl der Datensätze in den verglichenen Klassen/Clustern in einem vorgegebenen Umfang unterschiedlich ist, ein Ungleichgewicht kann z. B. nur bestimmt werden, falls eine Klasse oder ein Cluster der verglichenen Klassen oder Cluster eine Abweichung hinsichtlich der Anzahl der Datensätze aufweist, die größer/kleiner als ein vorgegebener Schwellenwert ist. Durch diesen Schwellenwert kann vermieden werden, dass ein Ausgleichen/Unterabtasten ausgeführt wird, selbst wenn nur geringe Abweichungen zwischen den verglichenen Klassen oder Clustern vorhanden sind.
  • Nachdem die ausgeglichenen Daten/Datensätze erzeugt und in der Datenbank db4 gespeichert worden sind, kann ein weiterer Schritt S6, das Training der KI, ausgeführt werden. Die während des Trainings erzeugten/verwendeten Daten, einschließlich der besten Gewichte, der Trainingshistorie und/oder des Kl-Modells, können in weiteren Speicherplätzen, wie z. B. durch mm1 bis mm3 in 2 gezeigt ist, gespeichert werden.
  • Die obigen Schritte ermöglichen, dass die Daten auf einer Mehrfachmerkmalsdimension ausgeglichen werden, wobei eine bedingte Gleichmäßigkeit zwischen kontextabhängigen und statistischen Merkmalsräumen erreicht wird. Basierend auf der Datengröße kann ein Anwender die Daten zu so vielen Anzahlen von Parametern wie möglich aufbereiten, um einen Ausgleich in der höchsten Anzahl des Parameterraums zu erreichen. Durch das Ausgleichen des Datensatzes kann der Anwender sicherstellen, dass der trainierte Kl-Agent/Controller ein einheitliches Verhaltensspektrum in den ausgeglichenen Merkmalsdimensionen aufweist. Falls der Anwender das Aufbereiten nicht ausführt, kann das Aufbereiten automatisch ausgeführt werden, z. B. unter Verwendung vorgegebener Aufbereitungsstrukturen. Spezifischer kann die Vorrichtung 1a, falls die Fahrdaten eines Fahrzeugs aufbereitet werden sollen, vorgegebene Aufbereitungsstrukturen aufweisen, die sowohl den ersten Parameter, den zweiten Parameter usw. als auch die Anzahl der Klassen oder Cluster für jede Gruppe und Untergruppe usw. angeben.
  • Ein spezifisches Beispiel der Schritte des Aufbereitens und des Ausgleichens ist in 5 gezeigt, das die Datenaufbereitung enthält, wie sie vorher beschrieben worden ist, wobei zwei Parameter gewählt sind. Die so aufbereiteten Daten werden dann in den Datenausgleich eingegeben, bei dem in diesem Beispiel drei Cluster von auf Kurven bezogenen Daten jeweils in zwei Klassen unterteilt werden, die sich auf die Geschwindigkeitsdaten beziehen. Dann wird geprüft, welche der Klassen der drei Cluster die kleinste Anzahl von Fahrabläufen/Bewegungsbahnen/Datenpunkten aufweist, die in diesem Beispiel die Klasse Nr. 2 sein soll. Angenommen, dass L Abläufe/Bewegungsbahnen in der Klasse Nr. 2 enthalten sind, dann werden die anderen Klassen bis herunter zu jeweils L Abläufen/Bewegungsbahnen unterabgetastet. Wie im weiteren Ablauf des Prozesses in 5 gezeigt ist, wird ein Ausgleichsdatensatz erreicht.
  • Weiterhin zeigt 6 ein Beispiel einer möglichen Datenausgabe an den Anwender, der den ursprüngliche Datensatz/die Rohdaten mit den ausgeglichenen Daten/dem ausgeglichenen Datensatz vergleicht. Wie in diesem Beispiel ersichtlich ist, wie außerdem durch den Pfeil angegeben ist, weist die Anzahl der Datenpunkte für die Geschwindigkeit in Rechtskurven für Geschwindigkeiten zwischen O und 10 m/s die geringste Anzahl von Datenpunkten/Bewegungsbahnen auf. Deshalb werden, wie in dem ausgeglichenen Datensatz gezeigt ist, alle anderen Geschwindigkeitsdatensätze für Linkskurven, Geradeaus und Rechtskurven und für alle Datenbereiche der Geschwindigkeit so angepasst, dass sie so viele Datenpunkte enthalten wie der Datensatz zwischen O und 10 m/s für die Rechtskurven.
  • Die Wirkung unausgeglichener oder ausgeglichener Daten (eines unausgeglichenen oder ausgeglichenen Datensatzes) hinsichtlich des Fahrverhaltens des KI-Fahrers ist in den 8 und 9 schematisch veranschaulicht. 8 zeigt von links nach rechts, dass ein unausgeglichener Rohdatensatz 10 in ein KI-Trainingsmodul eingegeben wird und die Ausgabe dann ein beeinflusstes Kl-Verhalten in Richtung auf die Rechtskurven sein würde. Falls es nicht ausreichend Lerndaten für eine Kurve mit geringer Geschwindigkeit nach links mit einem kleinen Radius gibt, wie im Beispiel nach 8 gezeigt ist, könnte das Fahrzeug, das durch eine trainierte KI gefahren wird, in einer entsprechend scharfen Kurve nicht (sicher) links abbiegen, weil im Beispiel nach 8 die Interferenzausgabe hauptsächlich für Kurven mit einem großen Radius verfügbar ist und im Allgemeinen weniger Daten für Linkskurven verfügbar sind. Mit anderen Worten, die Sicherheit eines unausgeglichenen Datensatzes, die im linken Teil der 8 visuell basierend auf dem Fehlen von Linkskurven-Bewegungsbahnen (insbesondere mit einem kleinen Radius) im Vergleich zu den Bewegungsbahnen für Rechtskurven bestimmt werden kann, kann zu einem KI-Fahrer führen, der nicht in der Lage sein kann, Fahrmanöver sicher auszuführen. Analog zeigt 9 die technische Wirkung der Kl-Trainingssteuervorrichtung 1a, wie sie hier offenbart ist: Es wird ein ausgeglichener Datensatz erzeugt, der zu einem optimalen und sicheren KI-Fahrverhalten führt. Im Vergleich zu 8 weist 9 im linken Schema, das einen ausgeglichenen Datensatz angibt, eine gleichmäßige Verteilung der Bewegungsbahnen auf. Es ist eine der Wirkungen, dass der KI-Fahrer jedes Fahrmanöver sicher ausführen kann.
  • Wie durch einen Fachmann auf dem Gebiet erkannt wird, kann die vorliegende Offenbarung, wie sie oben und in den beigefügten Figuren beschrieben worden ist, als ein Verfahren (z. B. ein computerimplementierter Prozess oder irgendein anderer Prozess), eine Vorrichtung (einschließlich einer Vorrichtung, einer Maschine, eines Systems, eines Computerprogrammprodukts und/oder irgendeines anderen Geräts) oder als eine Kombination aus dem Vorhergehenden verkörpert sein.
  • Die Aspekte/Beispiele der vorliegenden Offenbarung können vollständig eine Software (einschließlich Firmware, residenter Software, Mikrocode usw.) oder eine Kombination aus Software- und Hardware-Aspekten, die als ein „System“ bezeichnet werden kann, sein. Weiterhin kann die vorliegende Offenbarung die Form eines Computerprogrammprodukts in einem computerlesbaren Medium mit einem computerausführbaren Programmcode, der in dem Medium verkörpert ist, annehmen.
  • Es sollte angegeben werden, dass in den Zeichnungen Pfeile verwendet werden können, um eine Kommunikation, eine Übertragung oder andere Aktivitäten darzustellen, die zwei oder mehr Entitäten einbeziehen. Die Doppelpfeile geben im Allgemeinen an, dass eine Aktivität in beiden Richtungen stattfinden kann (z. B. ein Befehl/eine Anforderung in eine Richtung mit einer entsprechenden Antwort in der anderen Richtung oder Peer-zu-Peer-Kommunikationen, die durch eine der beiden Entitäten eingeleitet werden), obwohl in einigen Situationen die Aktivität nicht notwendigerweise in beiden Richtungen stattfinden kann.
  • Die einseitigen Pfeile geben im Allgemeinen eine Aktivität ausschließlich oder überwiegend in einer Richtung an, obwohl angegeben werden sollte, dass in bestimmten Situationen eine derartige gerichtete Aktivität tatsächlich Aktivitäten in beiden Richtungen einbeziehen kann (z. B. eine Nachricht von einem Sender an einen Empfänger und eine Bestätigung zurück vom Empfänger an den Sender oder der Aufbau einer Verbindung vor einer Übertragung und die Beendigung der Verbindung nach der Übertragung). Folglich ist der Typ des Pfeils, der in einer bestimmten Zeichnung verwendet wird, um eine bestimmten Aktivität zu repräsentieren, beispielhaft und sollte nicht als einschränkend angesehen werden.
  • Die vorliegende Offenbarung kann bezüglich Ablaufplanveranschaulichungen und/oder Blockschaltplänen von Verfahren und Vorrichtungen und bezüglich einer Anzahl von Musteransichten einer graphischen Anwenderschnittstelle, die durch die Verfahren und/oder Vorrichtungen erzeugt wird, beschrieben werden. Es wird erkannt, dass sowohl jeder Block der Ablaufplanveranschaulichungen und/oder der Blockschaltpläne und/oder Kombinationen von Blöcken in den Ablaufplanveranschaulichungen und/oder den Blockschaltplänen als auch die graphische Anwenderschnittstelle durch computerausführbaren Programmcode implementiert sein können.
  • Der computerausführbare Programmcode kann einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine spezielle Maschine zu erzeugen, so dass der Programmcode, der über den Prozessor des Computers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt wird, Mittel zum Implementieren der in dem Ablaufplan, dem Block oder den Blöcken des Blockschaltplans, den Figuren und/oder in der schriftlichen Beschreibung spezifizierten Funktionen/Handlungen/Ausgaben erzeugt.
  • Der computerausführbare Programmcode kann außerdem in einem computerlesbaren Speicher gespeichert sein, der einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung anweisen kann, in einer speziellen Weise zu funktionieren, so dass der im computerlesbaren Speicher gespeicherte Programmcode einen Herstellungsartikel erzeugt, der Anweisungsmittel enthält, die die im Ablaufplan, dem Block (den Blöcken) des Blockschaltplans, den Figuren und/oder der schriftlichen Beschreibung spezifizierte Funktion/Handlung/Ausgabe implementieren.
  • Der computerausführbare Programmcode kann außerdem auf einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung geladen werden, um eine Folge von Betriebsschritten zu verursachen, die in dem Computer oder einer anderen programmierbaren Vorrichtung auszuführen sind, um einen computerimplementierten Prozess zu erzeugen, so dass der Programmcode, der in dem Computer oder der anderen programmierbaren Vorrichtung ausgeführt wird, Schritte zum Implementieren der Funktionen/Handlungen/Ausgaben bereitstellt, die in dem Ablaufplan, dem Block (den Blöcken) des Blockschaltplans, den Figuren und/oder der schriftlichen Beschreibung spezifiziert sind. Alternativ können die durch ein Computerprogramm implementierten Schritte oder Handlungen mit von einer Bedienungsperson oder einem Menschen implementierten Schritten oder Handlungen kombiniert werden, um eine Ausführungsform der Offenbarung auszuführen.
  • Es sollte angegeben werden, dass Begriffe, wie z. B. „Server“ und „Prozessor“, hier verwendet werden können, um Vorrichtungen zu beschreiben, die in bestimmten Aspekten der vorliegenden Offenbarung verwendet werden können, und nicht so ausgelegt werden sollten, um die vorliegende Offenbarung auf irgendeinen speziellen Vorrichtungstyp einzuschränken, wenn es der Kontext nicht anders erfordert. Folglich kann eine Vorrichtung ohne Einschränkung eine Brücke, einen Router, einen Brücken-Router (Brouter), einen Switch, einen Knoten, einen Server, einen Computer, ein Haushaltsgerät oder einen andere Typ von Vorrichtung enthalten. Derartige Vorrichtungen enthalten typischerweise eine oder mehrere Netzschnittstellen für die Kommunikation über ein Kommunikationsnetz und einen Prozessor (z. B. einen Mikroprozessor mit einem Speicher und anderen Peripherievorrichtungen und/oder anwendungsspezifischer Hardware), der entsprechend konfiguriert ist, um die Vorrichtungsfunktionen auszuführen.
  • Die Kommunikationsnetze können im Allgemeinen öffentliche und/oder private Netze enthalten; sie können lokale Netze, Weitbereichsnetze, Stadtbereichsnetze, Speichernetze und/oder andere Typen von Netzen enthalten; wobei sie Kommunikationstechniken einschließlich analoger Techniken, digitaler Techniken, optischer Techniken, drahtloser Techniken (z. B. Bluetooth), Vernetzungstechniken und Internet-Vernetzungstechniken verwenden können, aber in keiner Weise darauf eingeschränkt sind.
  • Es sollte außerdem angegeben werden, dass die Vorrichtungen Kommunikationsprotokolle und Nachrichten (z. B. Nachrichten, die durch die Vorrichtung erzeugt, gesendet, empfangen, gespeichert und/oder verarbeitet werden) verwenden können, wobei derartige Nachrichten über ein Kommunikationsnetz oder -medium transportiert werden können.
  • Wenn es der Kontext nicht anders erfordert, sollte die vorliegende Offenbarung nicht so ausgelegt werden, dass sie auf einen bestimmten Kommunikationsnachrichtentyp, ein bestimmtes Kommunikationsnachrichtenformat oder ein bestimmtes Kommunikationsprotokoll eingeschränkt ist. Folglich kann eine Kommunikationsnachricht im Allgemeinen ohne Einschränkung einen Rahmen, ein Paket, ein Datagramm, ein Anwenderdatagramm, eine Zelle oder einen anderen Typ einer Kommunikationsnachricht enthalten.
  • Wenn es der Kontext nicht anderes erfordert, sind die Verweise auf bestimmte Kommunikationsprotokolle beispielhaft, wobei erkannt werden sollte, dass Alternativen gegebenenfalls Variationen derartiger Kommunikationsprotokolle (z. B. Modifikationen oder Erweiterungen des Protokolls, die von Zeit zu Zeit vorgenommen werden können) oder andere Protokolle, die entweder bekannt sind oder in der Zukunft entwickelt werden, verwenden können.
  • Es sollte außerdem angegeben werden, dass hier logische Abläufe beschrieben werden können, um verschiedene Aspekte der Offenbarung zu demonstrieren, wobei sie nicht so ausgelegt werden sollten, um die vorliegende Offenbarung auf irgendeinen speziellen Logikablauf oder irgendeine spezielle Logikimplementierung einzuschränken. Die beschriebene Logik kann in verschiedene Logikblöcke (z. B. Programme, Module, Funktionen oder Unterprogramme) aufgeteilt werden, ohne die Gesamtergebnisse zu verändern oder anderweitig vom wahren Schutzumfang der Offenbarung abzuweichen.
  • Oft können Logikelemente hinzugefügt, modifiziert, weggelassen, in einer anderen Reihenfolge ausgeführt oder unter Verwendung anderer Logikkonstruktionen (z. B. Logikgatter, Schleifenbildungs-Grundelemente, bedingter Logik und anderer Logikkonstruktionen) implementiert werden, ohne die Gesamtergebnisse zu verändern oder anderweitig vom Schutzumfang der Offenbarung abzuweichen.
  • Die vorliegende Offenbarung kann in vielen verschiedenen Formen verkörpert sein, einschließlich sowohl einer graphischen Verarbeitungseinheit als auch einer Computerprogrammlogik zur Verwendung mit einem Prozessor (z. B. einem Mikroprozessor, einem Mikrocontroller, einem digitalen Signalprozessor oder einem Universalcomputer), einer programmierbaren Logik zur Verwendung mit einer programmierbaren Logikvorrichtung (z. B. einer feldprogrammierbaren Gatteranordnung (FPGA) oder einer anderen PLD), diskreter Komponenten, integrierter Schaltungen (z. B. einer anwendungsspezifischen integrierten Schaltung (ASIC)) oder irgendwelcher anderen Mittel, einschließlich irgendeiner Kombination daraus, ist aber in keiner Weise darauf eingeschränkt. Die Computerprogrammlogik, die einiges oder alles der beschriebenen Funktionalität implementiert, ist typischerweise als ein Satz von Computerprogrammanweisungen implementiert, der in eine computerausführbare Form umgesetzt wird, als solche in einem computerlesbaren Medium gespeichert wird und durch einen Mikroprozessor unter der Steuerung eines Betriebssystems ausgeführt wird. Eine hardwarebasierte Logik, die einiges oder alles der beschriebenen Funktionalität implementiert, kann unter Verwendung einer oder mehrerer geeignet konfigurierter FPGAs implementiert werden.
  • Die Computerprogrammlogik, die alles oder einen Teil der hier vorher beschriebenen Funktionalität implementiert, kann in verschiedenen Formen verkörpert sein, einschließlich einer Quellcodeform, einer computerausführbaren Form und verschiedener Zwischenformen (z. B. der Formen, die durch einen Assembler, einen Kompilierer, einen Binder oder einen Lokalisierer erzeugt werden), ist aber in keiner Weise darauf eingeschränkt.
  • Der Quellcode kann eine Folge von Computerprogrammanweisungen enthalten, die in irgendeiner von verschiedenen Programmiersprachen (z. B. ein Objektcode, eine Assemblersprache oder eine Hochsprache, wie z. B. Fortran, Python, C, C++, JAVA, JavaScript oder HTML) zur Verwendung mit verschiedenen Betriebssystemen oder Betriebsumgebungen implementiert sind. Der Quellcode kann verschiedene Datenstrukturen und Kommunikationsnachrichten definieren und verwenden. Der Quellcode kann sich in einer computerausführbaren Form (z. B. über einen Interpreter) befinden, oder der Quellcode kann (z. B. über einen Übersetzer, Assembler oder Kompilierer) in eine computerausführbare Form umgesetzt werden.
  • Der computerausführbare Programmcode zum Ausführen der Operationen der Ausführungsformen der vorliegenden Offenbarung kann in einer objektorientierten, skriptierten oder unskriptierten Programmiersprache, wie z. B. Java, Perl, Smalltalk, C++ oder dergleichen, geschrieben sein. Der Computerprogrammcode zum Ausführen der Operationen der Aspekte dieser Offenbarung kann jedoch außerdem in herkömmlichen prozeduralen Programmiersprachen, wie z. B. der Programmiersprache „C“ oder ähnlichen Programmiersprachen, geschrieben sein.
  • Die Computerprogrammlogik, die alles oder eine Teil der vorher hier beschriebene Funktionalität implementiert, kann zu unterschiedlichen Zeiten in einem einzigen Prozessor (z. B. gleichzeitig) ausgeführt werden oder kann gleichzeitig oder zu unterschiedlichen Zeiten in mehreren Prozessoren ausgeführt werden und kann unter einem einzigen Betriebssystemprozess/-Thread oder unter verschiedenen Betriebssystemprozessen/-Threads laufen.
  • Folglich bezieht sich der Begriff „Computerprozess“ im Allgemeinen auf die Ausführung eines Satzes von Computerprogrammanweisungen, ungeachtet dessen, ob verschiedene Computerprozesse in demselben oder in verschiedenen Prozessoren ausgeführt werden, und ungeachtet dessen, ob verschiedene Computerprozesse unter demselben Betriebssystemprozess/-Thread oder unter verschiedenen Betriebssystemprozessen/-Threads laufen.
  • Das Computerprogramm kann in irgendeiner Form (z. B. Quellcodeform, computerausführbarer Form oder in einer Zwischenform) entweder dauerhaft oder vorübergehend in einem greifbaren Speichermedium, wie z. B. einer Halbleiterspeichervorrichtung (z. B. einem RAM, einem ROM, einem PROM, einem EEPROM oder einem Flash-programmierbaren RAM), einer Magnetspeichervorrichtung (z. B. einer Diskette oder einer Festplatte), einer optischen Speichervorrichtung (z. B. einem CD-ROM), einer PC Card (z. B. einer PCMCIA-Karte) oder einer anderen Speichervorrichtung, festgelegt sein.
  • Das Computerprogramm kann in irgendeiner Form in einem Signal festgelegt sein, das unter Verwendung verschiedener Kommunikationstechniken zu einem Computer übertragbar ist, einschließlich analoger Techniken, digitaler Techniken, optischer Techniken, drahtloser Techniken (z. B. Bluetooth), Vernetzungstechniken und Internet-Vernetzungstechniken, ist aber in keiner Weise darauf eingeschränkt.
  • Das Computerprogramm kann in irgendeiner Form als ein abnehmbares Speichermedium mit begleitender gedruckter oder elektronischer Dokumentation (z. B. Schutzhüllen-Software) verteilt werden, bei einem Computersystem (z. B. auf dem System-ROM oder einer Festplatte) im Voraus geladen sein oder von einem Server oder einem elektronischen Schwarzen Brett über das Kommunikationssystem (z. B. das Internet oder das World Wide Web) verteilt werden.
  • Die Hardware-Logik (einschließlich programmierbarer Logik zur Verwendung mit einer programmierbaren Logikvorrichtung), die alles oder einen Teil der hier vorher beschriebenen Funktionalität implementiert, kann unter Verwendung herkömmlicher manueller Verfahren entworfen werden oder kann unter Verwendung verschiedener Werkzeuge, wie z. B. dem computerunterstützen Entwerfen (CAD), einer Hardware-Beschreibungssprache (z. B. VHDL oder AHDL) oder einer PLD-Programmiersprache (z. B. PALASM, ABEL oder CUPL), elektronisch entworfen, erfasst, simuliert oder dokumentiert werden.
  • Es kann jedes geeignete computerlesbare Medium verwendet werden. Das computerlesbare Medium kann z. B. ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitersystem, -gerät, -vorrichtung oder -medium sein, ist aber nicht darauf eingeschränkt.
  • Spezifischere Beispiele des computerlesbaren Mediums enthalten eine elektrische Verbindung mit einem oder mehreren Drähten oder ein anderes greifbares Speichermedium, wie z. B. eine tragbare Computerdiskette, eine Festplatte, einen Schreib-Lese-Speicher (RAM), einen Festwertspeicher (ROM), einen löschbaren programmierbaren Festwertspeicher (EPROM oder Flash-Speicher), einen Kompaktplatten-Festwertspeicher (CD-ROM) oder eine andere optische oder magnetische Speichervorrichtung, sind aber nicht darauf eingeschränkt.
  • Die programmierbare Logik kann in einem greifbaren Speichermedium, wie z. B. einer Halbleiterspeichervorrichtung (z. B. einem RAM, einem ROM, einem PROM, einem EEPROM oder einem Flash-programmierbaren RAM), einer Magnetspeichervorrichtung (z. B. einer Diskette oder einer Festplatte), einer optischen Speichervorrichtung (z. B. einem CD-ROM) oder einer anderen Speichervorrichtung, entweder dauerhaft oder vorübergehend festgelegt sein.
  • Die programmierbare Logik kann in einem Signal festgelegt sein, das unter Verwendung irgendeiner von verschiedenen Kommunikationstechniken zu einem Computer übertragbar ist, einschließlich analoger Techniken, digitaler Techniken, optischer Techniken, drahtloser Techniken (z. B. Bluetooth), Vernetzungstechniken und Internet-Vernetzungstechniken, ist aber in keiner Weise darauf eingeschränkt.
  • Die programmierbare Logik kann als abnehmbares Speichermedium mit begleitender gedruckter oder elektronischer Dokumentation (z. B. Schutzhüllen-Software) verteilt werden, bei einem Computersystem (z. B. auf dem System-ROM oder einer Festplatte) im Voraus geladen sein oder von einem Server oder einem elektronischen Schwarzen Brett über das Kommunikationssystem (z. B. das Internet oder das World Wide Web) verteilt werden. Natürlich können einige Ausführungsformen der Offenbarung als eine Kombination aus sowohl Software (z. B. ein Computerprogrammprodukt) als auch Hardware implementiert sein. Noch andere Aspekte der vorliegenden Offenbarung sind vollständig als Hardware oder vollständig als Software implementiert.
  • Während bestimmte beispielhafte Aspekte in den beigefügten Zeichnungen beschrieben und gezeigt worden sind, soll erkannt werden, dass derartige Ausführungsformen für die umfassende Offenbarung lediglich veranschaulichend und nicht einschränkend sind und dass die Aspekte der vorliegenden Offenbarung nicht auf die gezeigten und beschriebenen spezifischen Konstruktionen und Anordnungen eingeschränkt sind, weil verschiedene andere Änderungen, Kombinationen, Auslassungen, Modifikationen und Ersetzungen zusätzlich zu denen, die in den obigen Abschnitten dargelegt sind, möglich sind.
  • Die Fachleute auf dem Gebiet erkennen, dass verschiedene Anpassungen, Modifikationen und/oder Kombinationen der gerade beschriebenen Aspekte und Beispiele konfiguriert werden können. Deshalb soll erkannt werden, dass innerhalb des Schutzumfangs der beigefügten Ansprüche die Offenbarung anders praktiziert werden kann, als es hier spezifisch beschrieben ist. Wenn es nicht ausdrücklich anders angegeben ist, können z. B. die Schritte der hier beschriebenen Prozesse in anderen Reihenfolgen als den hier beschriebenen ausgeführt werden, wobei ein oder mehrere Schritte kombiniert, aufgeteilt oder gleichzeitig ausgeführt werden können. Die Fachleute auf dem Gebiet erkennen hinsichtlich dieser Offenbarung, dass verschiedene Aspekte oder Beispiele der hier beschriebenen Offenbarung kombiniert werden können, um andere Aspekte oder Beispiele der Offenbarung zu bilden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • 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.
  • Zitierte Patentliteratur
    • WO 2019/245618 A1 [0002]

Claims (13)

  1. Computerprogrammprodukt, das computerlesbare Anweisungen umfasst, die, wenn sie in einem Computersystem ausgeführt werden, das einen oder mehrere Computer enthält, bewirken, dass das Computersystem - einen Datensatz einer Maschine empfängt, die von einem Menschen oder einem Roboterfahrer geführt wird; - den Datensatz durch Gruppieren der Daten basierend auf vorgegebenen oder definierbaren Maschinensteuerparameter aufbereitet; - die aufbereiteten Daten zum Bestimmen von Datenungleichgewichten innerhalb der Gruppen oder der Untergruppen der aufbereiteten Daten durchsucht; - die Daten, für die ein Ungleichgewicht bestimmt wurde, ausgleicht; und - die ausgeglichenen Daten ausgibt.
  2. Computerprogrammprodukt nach Anspruch 1, dadurch gekennzeichnet, dass das Gruppieren das Sortieren der Daten in hierarchisch angeordnete Gruppen und Untergruppen enthält, wobei durch das Vergleichen der Anzahl der Datenpunkte der Gruppen oder Untergruppen miteinander ein Ungleichgewicht bestimmt wird, falls eine Differenz der Anzahl der in den Gruppen oder Untergruppen enthaltenen Datenpunkte im Vergleich zueinander größer als ein vorgegebener Schwellenwert ist.
  3. Computerprogrammprodukt nach wenigstens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die aufbereiteten Daten n hierarchisch angeordnete Gruppen und Untergruppen aufweisen, wobei N die Gruppe der höchsten Ebene angibt und N - 1, N - 2, ..., N - n die Untergruppen niedrigerer Ebenen angeben und jede Gruppe oder Untergruppe in einen oder mehrere Daten-Cluster oder eine oder mehrere Datenklassen aufgeteilt ist, wobei die Maschinensteuerparameter entweder kontextabhängige oder statistische Parameter sind und jeder Maschinensteuerparameter einem oder mehreren Clustern oder einer oder mehreren Klassen einer Gruppe oder Untergruppe zugeordnet ist, und wobei die Daten, die sich auf die kontextabhängigen Parameter beziehen, in Cluster sortiert sind, und die Daten, die sich auf statistische Parameter beziehen, in Klassen sortiert sind.
  4. Computerprogrammprodukt nach Anspruch 3, dadurch gekennzeichnet, dass die aufbereiteten Daten angeordnet sind, so dass sie entweder kontextabhängige Parameter oder statistische Parameter aufweisen, die in einer Gruppe oder einer Untergruppe bereitgestellt sind, und dass in den hierarchisch angeordneten aufbereiteten Daten jede Klasse oder jeder Cluster einer Gruppe oder Untergruppe mit einer oder mehreren Klassen oder einem oder mehreren Clustern der Untergruppe der nächstniedrigeren Ebene verbunden sein kann.
  5. Computerprogrammprodukt nach wenigstens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Maschine ein Fahrzeug ist und die empfangenen Daten die Daten mehrerer Bewegungsbahnen enthalten, die durch das Fahrzeug gefahren werden, das durch einen menschlichen oder Roboterfahrer geführt wird, wobei die kontextabhängigen Parameter Kurven und die in Beziehung stehenden Unterparameter, wie z. B. Linkskurve, Rechtskurve, gerade Straße und/oder komplexe Kurve, Hindernisse, wie z. B. Hindernis detektiert und/oder kein Hindernis detektiert, Fahrerhandlungen, wie z. B. freies Fahren mit konstanter Geschwindigkeit, Spurwechsel, einem Hindernis Folgen und/oder Überholen, enthalten und die statistischen Parameter die Parameter, wie z. B. die Geschwindigkeit, die Giergeschwindigkeit und/oder die Beschleunigungen, enthalten.
  6. Computerprogrammprodukt wenigstens nach Anspruch 5, dadurch gekennzeichnet, dass, falls die Anzahl der Cluster und Klassen pro Gruppe oder Untergruppe in einer Datenbank vorgegeben ist, die Anzahl der Cluster gleich der Anzahl der Unterparameter des kontextabhängigen Parameters ist, der den Clustern zugeordnet ist, und in Abhängigkeit von der Anzahl der Klassen, die einem statistischen Parameter zugeordnet sind, der Wertebereich des statistischen Parameters über die Klassen gleichmäßig verteilt ist.
  7. Computerprogrammprodukt nach wenigstens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die hierarchische Struktur sowohl der Gruppen und Untergruppen als auch der Klassen und Cluster der Gruppen und Untergruppen vorgegeben ist oder durch einen Anwender editierbar ist, wobei im letzteren Fall der Anwender wenigstens aufgefordert wird, sowohl die Anzahl der Gruppen und Untergruppen als auch die Anzahl der Klassen oder Cluster pro Gruppe oder Untergruppe einzugeben.
  8. Computerprogrammprodukt nach wenigstens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Ungleichgewicht bestimmt wird, indem die Klassen oder Cluster wenigstens einer Gruppe oder Untergruppe miteinander verglichen werden, um die Klasse oder den Cluster mit der kleinsten Anzahl von Datenpunkten in der Gruppe oder Untergruppe zu finden, und das Ausgleichen durch ein zufälliges Unterabtasten aller anderen Klassen oder Cluster in der Gruppe oder Untergruppe bis zu der Anzahl der Datenpunkte in der Klasse oder dem Cluster mit der kleinsten Anzahl von Datenpunkten ausgeführt wird.
  9. Computerprogrammprodukt nach wenigstens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Ausgleichen der aufbereiteten Daten Ebene für Ebene von der Gruppe der höchsten Ebene bis zur Untergruppe der niedrigsten Ebene ausgeführt wird.
  10. Computerprogrammprodukt nach wenigstens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Rohdaten, die vorverarbeiteten Daten, die aufbereiteten Daten und/oder die ausgeglichenen Daten an einen Anwender zur Validierung der Aufbereitungs- und/oder Ausgleichsoperation ausgegeben werden.
  11. Computerprogrammprodukt nach wenigstens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Daten an einen Anwender ausgegeben werden, so dass die Gruppen und Untergruppen als konzentrische Ringe mit unterschiedlichen Durchmessern angeordnet sind und die Klassen oder Cluster die Segmente der konzentrischen Ringe sind.
  12. Computerprogrammprodukt nach wenigstens einem der vorhergehenden Ansprüche, das in verteilten Rechenbetriebsmitteln/Speicherplätzen installiert ist.
  13. Trainingssteuerungsvorrichtung für künstliche Intelligenz, die wenigstens eine Speichereinheit mit dem Computerprogrammprodukt nach wenigstens einem der Ansprüche 1 bis 12, das darin gespeichert ist, eine Eingangsschnittstelle, eine Ausgangsschnittstelle und eine Anzeigeeinheit aufweist, wobei die Eingangsschnittstelle konfiguriert ist, einen oder mehrere Datensätze von einer Datenquelle zu empfangen, die mit der Eingangsschnittstelle über eine verdrahtete Verbindung oder eine drahtlose Verbindung verbunden ist, die Ausgangsschnittstelle konfiguriert ist, die ausgeglichenen Daten auszugeben, die Anzeigeeinheit konfiguriert ist, die Rohdaten, die vorverarbeiteten Daten, die aufbereiteten Daten und/oder die ausgeglichenen Daten einem Anwender anzuzeigen.
DE102020206433.4A 2020-05-25 2020-05-25 Computerprogrammprodukt und Trainingssteuervorrichtung für künstliche Intelligenz Withdrawn DE102020206433A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE102020206433.4A DE102020206433A1 (de) 2020-05-25 2020-05-25 Computerprogrammprodukt und Trainingssteuervorrichtung für künstliche Intelligenz
JP2022568592A JP7498798B2 (ja) 2020-05-25 2021-02-25 コンピュータプログラム製品及び人工知能訓練制御デバイス
US17/926,939 US20230196194A1 (en) 2020-05-25 2021-02-25 Computer program product and artificial intelligence training control device
DE112021001431.5T DE112021001431T5 (de) 2020-05-25 2021-02-25 Computerprogrammprodukt und trainingssteuervorrichtung für künstliche intelligenz
PCT/JP2021/007110 WO2021240925A1 (en) 2020-05-25 2021-02-25 Computer program product and artificial intelligence training control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020206433.4A DE102020206433A1 (de) 2020-05-25 2020-05-25 Computerprogrammprodukt und Trainingssteuervorrichtung für künstliche Intelligenz

Publications (1)

Publication Number Publication Date
DE102020206433A1 true DE102020206433A1 (de) 2021-11-25

Family

ID=78408622

Family Applications (2)

Application Number Title Priority Date Filing Date
DE102020206433.4A Withdrawn DE102020206433A1 (de) 2020-05-25 2020-05-25 Computerprogrammprodukt und Trainingssteuervorrichtung für künstliche Intelligenz
DE112021001431.5T Pending DE112021001431T5 (de) 2020-05-25 2021-02-25 Computerprogrammprodukt und trainingssteuervorrichtung für künstliche intelligenz

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE112021001431.5T Pending DE112021001431T5 (de) 2020-05-25 2021-02-25 Computerprogrammprodukt und trainingssteuervorrichtung für künstliche intelligenz

Country Status (4)

Country Link
US (1) US20230196194A1 (de)
JP (1) JP7498798B2 (de)
DE (2) DE102020206433A1 (de)
WO (1) WO2021240925A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019245618A1 (en) 2018-06-20 2019-12-26 Tesla, Inc. Data pipeline and deep learning system for autonomous driving

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6575818B2 (ja) 2016-03-25 2019-09-18 パナソニックIpマネジメント株式会社 運転支援方法およびそれを利用した運転支援装置、自動運転制御装置、車両、運転支援システム、プログラム
JP6828587B2 (ja) 2017-05-22 2021-02-10 トヨタ自動車株式会社 画像処理システム、画像処理方法、情報処理装置及び記録媒体
US11631186B2 (en) 2017-08-01 2023-04-18 3M Innovative Properties Company Neural style transfer for image varietization and recognition
JP2021165966A (ja) 2020-04-07 2021-10-14 株式会社アイシン 車両データ集積装置、および車両データ集積プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019245618A1 (en) 2018-06-20 2019-12-26 Tesla, Inc. Data pipeline and deep learning system for autonomous driving

Also Published As

Publication number Publication date
DE112021001431T5 (de) 2023-01-12
JP7498798B2 (ja) 2024-06-12
WO2021240925A1 (en) 2021-12-02
JP2023524881A (ja) 2023-06-13
US20230196194A1 (en) 2023-06-22

Similar Documents

Publication Publication Date Title
DE102018215826B4 (de) Robotersystem und Werkstückgreifverfahren
EP3523168B1 (de) Verfahren und vorrichtung zur fahrdynamikregelung für ein kraftfahrzeug
DE102019123746A1 (de) Mehrstufiges netzwerk für aufgabenorientiertes tiefes neuronales netzwerk
DE102008023972A1 (de) Verfahren und Vorrichtung zur Erkennung von verkehrsrelevanten Informationen
EP3824247A1 (de) Verfahren und system zum bestimmen einer position eines fahrzeugs
DE102019209736A1 (de) Verfahren zur Bewertung möglicher Trajektorien
EP3789926A1 (de) Verfahren zum erkennen einer adversarialen störung in eingangsdaten eines neuronalen netzes
DE102016119502A1 (de) Kategorisierung von Fahrzeugen in der Umgebung eines Kraftfahrzeugs
WO2013152929A1 (de) Lernverfahren zur automatisierten erkennung von verkehrszeichen, verfahren zur bestimmung eines aktualisierten parametersatzes für eine klassifikation von einem verkehrszeichen und verkehrszeichenerkennungssystem
DE102021109395A1 (de) Verfahren, systeme und vorrichtungen für benutzerverständliche erklärbare lernmodelle
WO2019001824A1 (de) Verfahren und system zur datenerhebung
DE102021004426A1 (de) Verfahren zum Trainieren einer autonomen Fahrfunktion
DE102021000519A1 (de) Verfahren zur Validierung von Kartenobjektbeziehungen und Attributierungen für eine digitale Karte
DE102020201931A1 (de) Verfahren zum Trainieren wenigstens eines Algorithmus für ein Steuergerät eines Kraftfahrzeugs, Verfahren zur Optimierung eines Verkehrsflusses in einer Region, Computerprogrammprodukt sowie Kraftfahrzeug
DE102020206433A1 (de) Computerprogrammprodukt und Trainingssteuervorrichtung für künstliche Intelligenz
WO2022106414A2 (de) Verfahren und system zur annotation von sensordaten
DE102021116072A1 (de) System und Verfahren zur Erzeugung synthetischer Trainingsdaten
WO2021122337A1 (de) Verfahren und vorrichtung zum erkennen einer entfremdung einer sensordatendomäne von einer referenzdatendomäne
EP3398828B1 (de) Fahrerassistenzsystem und verfahren zum unterstützen eines führers eines schienenfahrzeugs
DE102019217951A1 (de) Verfahren und Vorrichtung zum Bestimmen einer Domänendistanz zwischen mindestens zwei Datendomänen
DE102019220615A1 (de) Verfahren und Vorrichtung zum Erkennen und Klassifizieren von Objekten
DE102019213459A1 (de) Verfahren zum Komprimieren eines Neuronalen Netzes
DE102019104973A1 (de) Verfahren sowie Steuergerät für ein System zum Steuern eines Kraftfahrzeugs
EP3956820B1 (de) Verfahren, vorrichtung und computerprogramm zum erstellen eines neuronalen netzes
DE102023003193A1 (de) System und Verfahren für den Entwurf von Strukturelementen eines Fahrzeugs unter Verwendung generativer adversarialer Netzwerke

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R118 Application deemed withdrawn due to claim for domestic priority