DE112022001612T5 - Rechenvorrichtung, erkennungsvorrichtung und steuervorrichtung - Google Patents

Rechenvorrichtung, erkennungsvorrichtung und steuervorrichtung Download PDF

Info

Publication number
DE112022001612T5
DE112022001612T5 DE112022001612.4T DE112022001612T DE112022001612T5 DE 112022001612 T5 DE112022001612 T5 DE 112022001612T5 DE 112022001612 T DE112022001612 T DE 112022001612T DE 112022001612 T5 DE112022001612 T5 DE 112022001612T5
Authority
DE
Germany
Prior art keywords
calculation
unit
information
filter
cnn
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112022001612.4T
Other languages
English (en)
Inventor
Tadashi Kishimoto
Akira Kitayama
Riu HIRAI
Hiroaki Ito
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
Publication of DE112022001612T5 publication Critical patent/DE112022001612T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Complex Calculations (AREA)

Abstract

Die vorliegende Erfindung beschäftigt sich mit dem Problem des Verbesserns der Recheneffizienz eines Rechenelements. Eine Konfiguration der vorliegenden Erfindung zum Lösen des Problems ist eine Rechenvorrichtung, die eine CNN-Berechnung basierend auf Eingabedaten durchführt, wobei die Rechenvorrichtung aufweist: eine CNN-Berechnungseinheit, die die CNN-Berechnung unter Verwendung eines Modells durchführt, um eine Faltungsberechnung für jede von mehreren Faltungsschichten auszuführen; eine Berechnungszuweisungseinheit, die eine Kombination aus einer Berechnung und Gewichtsinformationen, die für die CNN-Berechnung erforderlich sind, zur Übertragung an die CNN-Berechnungseinheit zuweist; und eine Löschindex-Bestimmungseinheit, die einen Teil der für die Faltungsberechnung verwendeten Filterinformationen basierend auf einer maximalen Anzahl möglicher Berechnungen der CNN-Berechnungseinheit, einer Ausführungsreihenfolge der CNN-Berechnung, Kanalinformationen und Gewichtsinformationen für jede Schicht der CNN-Berechnungseinheit und Filterinformationen für jede der mehreren Faltungsschichten löscht.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung bezieht sich auf eine Rechenvorrichtung, die eine Berechnung basierend auf Eingabedaten ausführt, und ein Berechnungsverfahren dafür. Die vorliegende Erfindung bezieht sich außerdem auf eine Erkennungsvorrichtung, die Eingabedaten mittels der Rechenvorrichtung erkennt, und eine Steuervorrichtung, die eine Steuerung gemäß den Eingabedaten durchführt. Unter diesen bezieht sich die vorliegende Erfindung insbesondere auf eine Technologie zum Sammeln von Außenweltinformationen unter Verwendung eines Sensors wie einer Kamera oder von Lichtdetektion und Entfernungsmessung (LIDAR) und zum Detektieren eines Objekttyps und von Koordinaten, an denen sich das Objekt befindet, aus den Informationen.
  • Stand der Technik
  • Verkehrsunfälle sind in den letzten Jahren zu einem gesellschaftlichen Problem geworden und es besteht ein zunehmender Bedarf an Sicherheit bei der Fortbewegung von Fahrzeugen. Um den Bedarf zu erfüllen, wurden verschiedene Technologien für automatisches Fahren und Fahrunterstützung vorgeschlagen. Unter diesen Technologien sind insbesondere ein Objekterkennungsverfahren und ein Verhaltensvorhersageverfahren unter Verwendung eines neuronalen Faltungsnetzes (CNN), das eines der tiefen neuronalen Netze (DNNs) ist, für ihre hohe Erkennungsleistung bekannt und ihr Anwendung auf automatisches Fahren ist im Gange.
  • Das CNN ist ein neuronales Netz, das durch mehrere Faltungsschichten mit Bilddaten als Außenweltinformationen als Eingabe ausgebildet ist und kaskadiert gekoppelt ist. Dabei ist die Faltungsschicht durch eine Produktsummenberechnung und eine Aktivierungsfunktionsberechnung ausgebildet und besteht aus einer Reihe von Berechnungen zum Durchführen einer Multiplikation eines Pixels in Eingabedaten und eines entsprechenden Gewichtsparameters, Erstellen von Ausgabedaten durch kumulatives Addieren der Ergebnisse für eine bestimmte Anzahl von Malen, anschließendes Durchführen einer Aktivierungsfunktionsberechnung und Ausgeben des Ergebnisses.
  • Durch Durchführen einer Berechnung einer Faltungsschicht an den Bilddaten werden ein Typ eines bestimmten Objekts in den Eingabebilddaten und die Koordinaten, an denen das Objekt vorhanden ist, ausgegeben. Zunächst wird eine spezifische Konfiguration beschrieben. In der in dem vorliegenden Patent beschriebenen Erkennungsvorrichtung führt eine erste Schicht eine Produktsummenberechnung der eingegebenen Bilddaten und eines Gewichtsparameters einer Faltungsberechnung der ersten Schicht durch, um ein Ergebnis der Faltungsberechnung auszugeben. Eine j-te Faltungsschicht der mehreren neuronalen Netze wird als j-te Schicht bezeichnet und die j-te Schicht (ganze Zahl, die 1 ≤ j ≤ L erfüllt) gibt ein Berechnungsergebnis der j-ten Faltungsschicht aus Ausgabedaten einer j-1-ten Schicht und einem Gewichtsparameter einer Faltungsberechnung der j-ten Schicht aus. Unter der Annahme, dass eine letzte Schicht eine L-Schicht ist, werden die Ausgabedaten einer L-1-ten Schicht, die der der L-Schicht vorausgeht, und der Gewichtsparameter der Faltungsberechnung der L-ten Schicht als Eingaben verwendet und der Typ des Objekts und die Koordinaten, an denen das Objekt vorhanden ist, werden ausgegeben. Jede Faltungsschicht führt eine Faltungsberechnung unter Verwendung der Eingabedaten und des Gewichtsparameters durch und gibt dann das Ergebnis der Aktivierungsfunktionsberechnung aus.
  • Dabei ist es in einem Fall, in dem eine Verarbeitung mit einem großen Rechenaufwand, der hauptsächlich eine Produktsummenberechnung umfasst. wie etwa ein CNN in einer elektronischen Steuereinheit (ECU) in dem Fahrzeug implementiert wird, erforderlich, einen Durchsatz, der einer Verarbeitungsgeschwindigkeit einer Außenweltinformations-Erfassungsvorrichtung entspricht, und eine Latenzzeit, die kleiner oder gleich einem Fahrzeugsteuerzyklus ist zu erfüllen. Herkömmlicherweise wurde bei der Implementierung eines CNN im Allgemeinen eine für eine Randvorrichtung konzipierte Grafikverarbeitungseinheit (GPU), eine feldprogrammierbare Logikanordnung (FPGA) oder dergleichen verwendet. Allerdings verfügt eine Vorrichtung für den Einsatz im Fahrzeug aufgrund der Nutzungsbedingungen, der Implementierungskosten und der Beschränkung der Größe der montierbaren Vorrichtung nur über eine begrenzte Rechenleistung und es besteht das Problem, dass die erforderliche Rechenleistung nicht erzielt werden kann. Um die erforderliche Rechenleistung zu erzielen, ist es daher üblich, eine Zielverarbeitungsgeschwindigkeit durch eine Verbesserung der Vorrichtung selbst oder die Verwendung eines auf eine CNN-Berechnung spezialisierten Rechenelements zu erzielen.
  • Als Nächstes wird eine herkömmliche Technologie in einem Fall beschrieben, in dem das CNN als Rechenvorrichtung in Hardware implementiert ist. Die Eingabe von außen wird mittels einer Außenweltinformations-Erfassungsvorrichtung wie einer Kamera oder eines LIDAR erfasst. Die erfassten Informationen werden in einem Speicher gespeichert. Die Rechenvorrichtung umfasst einen Speicher, eine Modell-Speichereinheit, eine Parameter-Speichereinheit und mehrere Faltungsberechnungseinheiten und gibt ein Erkennungsergebnis eines Objekttyps, Koordinaten, an denen das Objekt vorhanden ist, und dergleichen aus.
  • Dabei werden die in dem Speicher gespeicherten Außenweltinformationen an die Faltungsberechnungseinheit gesendet. Darüber hinaus speichert die Modell-Speichereinheit im Voraus gelernte Daten und speichert die gelernten Daten in der Parameter-Speichereinheit. Die Parameter-Speichereinheit wählt aus den empfangenen gelernten Daten einen Gewichtsparameter für jede Schicht, eine Anzahl von Kanälen für jede Schicht und eine Anzahl von Filtern für jede Schicht aus und sendet sie an die Faltungsberechnungseinheiten von einer ersten Schicht bis zu einer L-Schicht. Die Faltungsberechnungseinheit empfängt als Eingaben Eingabedaten aus dem Speicher in der ersten Schicht, den Gewichtsparameter der ersten Schicht, die Anzahl der Kanäle in der ersten Schicht und die Anzahl der Filter in der ersten Schicht und gibt ein Berechnungsergebnis an eine zweite Schicht aus. Ferner sind die Faltungsberechnungseinheiten gekoppelt. Dann werden in der Faltungsberechnungseinheit einer j-ten Schicht, die eine j-te Schicht ist, eine Ausgabe der Faltungsberechnungseinheit einer j-1-ten Schicht, der Gewichtsparameter der j-ten Schicht, die Anzahl der Kanäle der j-ten Schicht und die Anzahl der Filter der j-ten Schicht eingegeben und ein Berechnungsergebnis wird an eine j+1-te Schicht ausgegeben.
  • Darüber hinaus führt die Faltungsberechnungseinheit eine Faltungsberechnung basierend auf den aus dem Speicher gesendeten Eingabedaten, dem aus der Parameter-Speichereinheit gesendeten Gewichtsparameter, der Anzahl von Kanälen und der Anzahl von Filtern durch und führt dann eine Aktivierungsfunktionsberechnung durch und gibt ein Berechnungsergebnis an die nächste Schicht aus.
  • Bei der fahrzeuginternen Rechenvorrichtung, bei der die Rechenleistung des Rechenelements begrenzt ist, besteht jedoch das Problem, dass die Rechenvorrichtung aufgrund dem Missverhältnis zwischen einer Recheneinheit der Rechenvorrichtung und der Anzahl von Filtern und Kanälen, die für die Faltungsberechnung verwendet werden, nicht ausreichend genutzt werden kann und die Verarbeitungsgeschwindigkeit abnimmt.
  • Daher wurde ein Verfahren von PTL 1 als Verfahren und Vorrichtung vorgeschlagen, die die CNN-Berechnung im Rahmen einer begrenzten Rechenleistung bei der Berechnung bezüglich des CNN effizient ausführen können. Eine Konfiguration von PTL 1 wird beschrieben. Zunächst umfasst die in PTL 1 beschriebene Rechenvorrichtung einen Teiler, ein Rechenelement und einen Generator. Als Nächstes wird eine Kopplungsbeziehung von PTL 1 beschrieben.
  • Die Ausgabe des Teilers wird in das Rechenelement eingegeben. Das Rechenelement gibt eine Ausgabe an den Generator aus und der Generator empfängt eine Eingabe aus dem Rechenelement.
  • Als Nächstes wird ein Betrieb der in PTL 1 vorgeschlagenen Rechenvorrichtung beschrieben. Zunächst wird ein Gewichtsparameter einer ausgewählten Schicht eines neuronalen Faltungsnetzes durch einen Teiler in mindestens eine Dimension in einer Tiefenrichtung und eine Dimension einer Anzahl von Kerneln geteilt. Dann wird ein Berechnungsparameter-Array erhalten, das mehrere Berechnungsparameter enthält. Als Nächstes wird durch Verwendung jedes Berechnungsparameters in dem Berechnungsparameter-Array und Ausführen der Berechnung der ausgewählten Schicht durch die Berechnungseinheit ein Teilberechnungsergebnis-Array erhalten. Schließlich erzeugt der Generator eine Ausgabe der Schicht basierend auf dem Teilberechnungsergebnis-Array. Im Ergebnis wird der Gewichtsparameter nach Teilung durch den Teiler gemäß der Recheneinheit des Rechenelements an das Rechenelement gesendet. Dies verbessert die Betriebseffizienz oder Auslastung des Rechenelements und vermeidet Hardware-Einschränkungen aufgrund der Größe der Parameter.
  • Entgegenhaltungsliste
  • Patentdokument(e)
  • PTL 1: JP 2019-82996 A
  • Zusammenfassung der Erfindung
  • Technisches Problem
  • In PTL 1 wird der im Voraus in das Rechenelement eingegebene Gewichtsparameter in mindestens eine Richtung der Tiefenrichtung der CNN-Berechnung oder die Dimension der Anzahl der Kernel geteilt und die geteilten Daten werden von dem Teiler an das Rechenelement gesendet, um eine Faltungsberechnung durchzuführen. Dann wird eine Faltungsberechnung auf dem Rechenelement mit einer begrenzten Größe basierend auf dem Berechnungsergebnis durchgeführt, indem der Gewichtsparameter verwendet wird, der in Größen unterteilt ist, die von dem Rechenelement berechnet werden können.
  • Allerdings ist es in PTL 1 erforderlich, im Vorab eine Teilüngsberechnung, um das Teil-Array von Gewichtsparametern zu erhalten, durch den Teiler außerhalb des Rechenelements durchzuführen und eine Berechnung in dem Generator durchzuführen, um die Berechnungen der Gewichtsparameter des geteilten Teil-Arrays wieder zu kombinieren. Ferner ist es bei der Faltungsberechnung notwendig, die Widerspruchsfreiheit der Berechnungen vor und nach der Teilung aufrechtzuerhalten. Aus diesem Grund besteht das Problem, dass das Rechenelement aufgrund von Einschränkungen bei dem Verfahren zum Teilen des Gewichtsparameters und der Größe des Gewichtsparameters nach der Teilung nicht vollständig genutzt werden kann.
  • Lösung des Problems
  • Um das vorstehende Problem zu lösen, werden in der vorliegenden Erfindung Filterinformationen basierend auf der Empfindlichkeit und einer Berechnungsrichtung (Ausführungsreihenfolge) in einer Faltungsberechnung gelöscht.
  • Genauer umfasst eine Rechenvorrichtung, die eine CNN-Berechnung basierend auf Eingabedaten durchführt, Folgendes: eine Modell-Speichereinheit, die ein für die CNN-Berechnung verwendetes Modell speichert; eine CNN-Berechnungseinheit, die die CNN-Berechnung unter Verwendung des Modells durchführt, um eine Faltungsberechnung für jede von mehreren Faltungsschichten auszuführen; eine Gewichtsparameter-Erfassungseinheit, die einen Gewichtsparameter eines für die Faltungsberechnung verwendeten Faltungsfilters aus der Modell-Speichereinheit erfasst; eine Kanalinformations-Erfassungseinheit, die Kanalinformationen für jede der mehreren Faltungsschichten aus dem in der Modell-Speichereinheit gespeicherten Modell erfasst; eine Filterinformations-Erfassungseinheit, die Filterinformationen für jede der mehreren Faltungsschichten aus der Modell-Speichereinheit erfasst; eine Berechnungszuweisungseinheit, die eine Kombination aus Gewichtsinformationen und Berechnung, die einer für die CNN-Berechnung erforderlich ist, zur Übertragung an die CNN-Berechnungseinheit zuweist; und eine Löschindex-Bestimmungseinheit, die einen Teil der für die Faltungsberechnung verwendeten Filterinformationen basierend auf einer maximalen Anzahl möglicher Berechnungen der CNN-Berechnungseinheit, einer Ausführungsreihenfolge der CNN-Berechnung, Kanalinformationen für jede Faltungsschicht der CNN Berechnungseinheit, die aus der Kanalinformations-Erfassungseinheit erfasst werden, Gewichtsinformationen, die aus der Gewichtsparameter-Erfassungseinheit erfasst werden, und Filterinformationen für jede der mehreren Faltungsschichten, die aus der Filterinformations-Erfassungseinheit erfasst werden, löscht.
  • Vorteilhafte Wirkungen der Erfindung
  • Gemäß einer repräsentativen Ausführungsform der vorliegenden Erfindung kann die Auslastungsrate eines Rechenelements verbessert werden. Andere Probleme, Konfigurationen und Wirkungen als die oben beschriebenen werden durch die folgende Beschreibung von Ausführungsformen verdeutlicht.
  • Kurzbeschreibung der Zeichnungen
    • [1] 1 ist ein Funktionsblockdiagramm einer Erkennungsvorrichtung, die eine Rechenvorrichtung gemäß einer ersten Ausführungsform ist.
    • [2] 2 ist eine erläuternde Darstellung zur Erläuterung der Löschkanalindex-Informationen gemäß der ersten Ausführungsform.
    • [3] 3 ist eine erläuternde Darstellung zur Erläuterung von Löschfilterindex-Informationen gemäß der ersten Ausführungsform.
    • [4] 4 ist eine Darstellung, die eine interne Konfiguration einer CNN-Berechnungseinheit gemäß der ersten Ausführungsform zeigt.
    • [5] 5 ist eine Darstellung, die eine interne Konfiguration einer Löschindex-Bestimmungseinheit gemäß der ersten Ausführungsform zeigt.
    • [6] 6 ist eine Darstellung, die eine interne Konfiguration einer Faltungsberechnungseinheit gemäß der ersten Ausführungsform zeigt.
    • [7] 7 ist ein Ablaufdiagramm, das einen Verarbeitungsablauf einer Löschfilter-Bestimmungseinheit gemäß der ersten Ausführungsform darstellt.
    • [8] 8 ist ein Ablaufdiagramm, das einen Verarbeitungsablauf einer Löschkanal-Bestimmungseinheit gemäß der ersten Ausführungsform darstellt.
    • [9] 9 ist ein Ablaufdiagramm, das einen Verarbeitungsablauf einer Berechnungszuweisungseinheit gemäß der ersten Ausführungsform darstellt.
    • [10] 10 ist eine Darstellung zur Erläuterung eines Beispiels eines Schritts und eines löschbaren Filters gemäß der ersten Ausführungsform.
    • [11] 11 ist eine erläuternde Darstellung, die einen Zustand eines Löschfilters gemäß der ersten Ausführungsform zeigt.
    • [12] 12 ist ein Funktionsblockdiagramm einer Erkennungsvorrichtung, die eine Rechenvorrichtung gemäß einer zweiten Ausführungsform ist.
    • [13] 13 ist eine Darstellung, die eine interne Konfiguration einer Löschindex-Bestimmungseinheit gemäß der zweiten Ausführungsform zeigt.
    • [14] 14 ist eine erläuternde Darstellung, die einen Speicherzustand eines Filters zum Zeitpunkt der Berechnung durch ein Rechenelement gemäß der zweiten Ausführungsform zeigt.
    • [15] 15 ist ein Funktionsblockdiagramm einer Steuervorrichtung gemäß einer dritten Ausführungsform.
  • Beschreibung von Ausführungsformen
  • Erste Ausführungsform
  • 1 ist ein Funktionsblockdiagramm einer Erkennungsvorrichtung 1000 gemäß einer ersten Ausführungsform. Die Erkennungsvorrichtung 1000 ist eine Art Rechenvorrichtung und eine Vorrichtung, die eine Außenweltsituation erkennt, indem sie Außenweltinformationen aus einer Kamera oder einem LIDAR verwendet.
  • Die Erkennungsvorrichtung 1000 in 1 ist mit einer Außenweltinformations-Erfassungsvorrichtung 101 gekoppelt. Die Erkennungsvorrichtung 1000 umfasst eine CNN-Berechnungseinheit 102, eine Modell-Speichereinheit 104, eine Kanalinformations-Erfassungseinheit 105, eine Gewichtsparameter-Erfassungseinheit 106, eine Filterinformations-Erfassungseinheit 107, eine Löschindex-Bestimmungseinheit 108 und eine Berechnungszuweisungseinheit 109. Als Ergebnis gibt die Erkennungsvorrichtung 1000 ein Erkennungsergebnis 103 aus.
  • Hier wird jede Komponente beschrieben. Zunächst erfasst das Außenwelt-Informationserfassungsvorrichtung 101 Außenweltinformationen und sendet die erfassten Informationen an die CNN-Berechnungseinheit 102. Die Außenweltinformations-Erfassungsvorrichtung 101 kann durch einen Sensor wie etwa eine Kamera oder ein LIDAR realisiert sein. Die Kanalinformations-Erfassungseinheit 105 empfängt zudem Modellinformationen 110, die eine Ausgabe aus der Modell-Speichereinheit 104 sind. Die Gewichtsparameter-Erfassungseinheit 106 empfängt auch Modellinformationen 110, die eine Ausgabe aus der Modell-Speichereinheit 104 sind.
  • Die Filterinformations-Erfassungseinheit 107 empfängt auch Modellinformationen 110, die eine Ausgabe aus der Modell-Speichereinheit 104 sind. Darüber hinaus empfängt die Löschindex-Bestimmungseinheit 108 Kanalinformationen 111, die die Anzahl der Kanäle jeder Schicht angeben, aus der Kanalinformations-Erfassungseinheit 105. Darüber hinaus empfängt die Löschindex-Bestimmungseinheit 108 Gewichtsparameterinformationen 112, die einen Gewichtsparameter jeder Schicht angeben, die eine Ausgabe der Gewichtsparameter-Erfassungseinheit 106 sind. Ferner empfängt die Löschindex-Bestimmungseinheit 108 Filterinformationen 113, die die Anzahl der Filter jeder Schicht angeben und die eine Ausgabe der Filterinformations-Erfassungseinheit 107 sind.
  • Darüber hinaus empfängt die Berechnungszuweisungseinheit 109 Modellinformationen 110, die eine Ausgabe der Modell-Speichereinheit 104 sind. Ferner empfängt die Berechnungszuweisungseinheit 109 Löschfilterindex-Informationen 114 jeder Schicht, die eine Ausgabe der Löschindex-Bestimmungseinheit sind. Weiterhin empfängt die Berechnungszuweisungseinheit 109 Löschkanalindex-Informationen 116 jeder Schicht.
  • Ferner empfängt die CNN-Berechnungseinheit 102 Eingabedaten 117, bei denen es sich um Außenweltinformationen der Außenweltinformations-Erfassungsvorrichtung 101 handelt, ein CNN-Berechnungs-Steuersignal 115, bei dem es sich um eine Ausgabe der Berechnungszuweisungseinheit 109 handelt, Kanalinformationen 111 und Filterinformationen 113. Dann gibt die CNN-Berechnungseinheit 102 unter Verwendung dieser das Erkennungsergebnis 103 aus.
  • Als Nächstes werden ein Betrieb der Erkennungsvorrichtung 1000 und ein Signalfluss beschrieben. Zunächst sendet die Außenweltinformations-Erfassungsvorrichtung 101 Außenweltinformationen an die CNN-Berechnungseinheit 102. Als Nächstes führt die CNN-Berechnungseinheit 102 eine Berechnung basierend auf den Modellinformationen 110 der Modell-Speichereinheit 104, dem CNN-Berechnungs-Steuersignal 115 der Berechnungszuweisungseinheit 109, den Kanalinformationen 111 und den Filterinformationen 113 durch. In 1 sind Pfeile, die eingegebene Kanalinformationen 111 und Filterinformationen 113 angeben, weggelassen. Anschließend berechnet die CNN-Berechnungseinheit 102 unter Verwendung dieser das Erkennungsergebnis 103 und gibt es aus.
  • Als Nächstes extrahiert die Kanalinformations-Erfassungseinheit 105 die Anzahl der Kanäle jeder Schicht aus den Modellinformationen der Modell- . Speichereinheit 104 und gibt die Kanalinformationen 111 an die Löschindex-Bestimmungseinheit 108 aus. Außerdem extrahiert die Gewichtsparameter-Erfassungseinheit 106 einen Gewichtsparameter jeder Schicht aus den von der Modell-Speichereinheit 104 empfangenen Modellinformationen 110 und gibt die Gewichtsparameterinformationen 112 an die Löschindex-Bestimmungseinheit 108 aus.
  • Darüber hinaus erfasst die Filterinformationserfassungseinheit 107 die Anzahl von Filtern jeder Schicht aus den Modellinformationen 110 der Modell-Speichereinheit 104 und gibt Filterinformationen 113 jeder Schicht einschließlich dieser an die Löschindex-Bestimmungseinheit 108 aus.
  • Weiterhin berechnet die Löschindex-Bestimmungseinheit 108 Indizes eines Filters und eines Kanals zum Löschen einer Berechnung aus den Kanalinformationen 111, den Gewichtsparameterinformationen 112 und den Filterinformationen 113. Dann gibt die Löschindex-Bestimmungseinheit 108 die Löschfilterindex-Informationen 114 und die Löschkanalindex-Informationen 116 einschließlich dieser Indizes an die Berechnungszuweisungseinheit 109 aus.
  • Darüber hinaus bestimmt die Berechnungszuweisungseinheit 109 eine Berechnungsreihenfolge und spezifiziert ein Filter oder einen Kanal, das/der aus dem Modell gelöscht werden soll, basierend auf den Löschfilterindex-Informationen 114, den Löschkanalindex-Informationen 116 für jede Schicht und den Modellinformationen 110. Dabei kann die Berechnungszuweisungseinheit 109 als Löschziel zumindest ein Filter und/oder einen Kanal angeben. Insbesondere ist das Löschziel wünschenswerterweise ein Filter. Dann sendet die Berechnungszuweisungseinheit 109 ein CNN-Berechnungs-Steuersignal 115 einschließlich des angegebenen Filters oder Kanals an die CNN-Berechnungseinheit 102.
  • Hier werden die Löschkanalindex-Informationen 116 unter Bezugnahme auf 2 beschrieben. Die Löschfilterindex-Informationen 114 werden unter Bezugnahme auf 3 beschrieben. Ferner wird der Betrieb der Löschindex-Bestimmungseinheit 108 im Einzelnen unter Bezugnahme auf 5 beschrieben. Es ist zu beachten, dass die Erkennungsvorrichtung der vorliegenden Ausführungsform auch durch einen sogenannten Computer realisiert werden kann. In diesem Fall wird die Funktion jeder Einheit von einer Verarbeitungsvorrichtung wie einer CPU gemäß einem Programm ausgeführt. Das Programm ist auf einem Speichermedium gespeichert. Jede Einheit kann auch durch dedizierte Hardware wie ein feldprogrammierbare Gatteranordnung. (FPGA) oder eine dedizierte Schaltung realisiert werden.
  • 2 ist eine erläuternde Darstellung zur Erläuterung der Löschkanalindex-Informationen 116. Zunächst umfassen die CNN-Schichten der vorliegenden Ausführungsform L Schichten und sind untergeordnet von einer ersten Schicht bis zu einer L-ten Schicht gekoppelt. Darüber hinaus ist für jede Schicht ein Kanal 251 vorhanden und ein Kanal 251 einer Schicht ist mit allen Kanälen 251 der nächsten Schichten gekoppelt. Dabei sind den Kanälen für jede Schicht unterschiedliche Indizes zugewiesen und in den Löschkanalindex-Informationen 116 ist für jede Schicht ein zu löschender Kanalindex angegeben. Nachfolgend wird die festgelegte Indexnummer als Löschkanalindex bezeichnet.
  • Als Nächstes ist 3 eine erläuternde Darstellung zur Beschreibung der Löschfilterindex-Informationen 114. Zunächst sind in dem CNN von der ersten bis zu der L-ten Schicht Filter 351 vorhanden. In 3 ist für eine bestimmte j-Schicht (1 ≤ j ≤ L) ein 3×3-Filter dargestellt. Es ist zu beachten, dass die Anzahl der Filter lediglich ein Beispiel ist und es keine Beschränkung darauf gibt
  • Hier ist in der vorliegenden Ausführungsform allen Filtern einer Schicht für jede Schicht die gleiche Indexnummer 352 zugewiesen. In den Löschfilterindex-Informationen 114 ist für jede Schicht ein zu löschender Filterindex 352 angegeben, Im Folgenden wird die bezeichnete Indexnummer als Löschfilterindex bezeichnet.
  • 4 ist eine Darstellung, die eine interne Konfiguration der CNN-Berechnungseinheit 102 zeigt. In 4 umfasst die CNN-Berechnungseinheit 102 einen Speicher 201, eine Parameter-Speichereinheit 202 und eine Faltungsberechnungseinheit 203. Darüber hinaus verarbeitet die CNN-Berechnungseinheit 102 die Eingabedaten 117, das CNN-Berechnungs-Steuersignal 115, die Modellinformationen 110, ein CNN-Berechnungs-Steuersignal 204 einer Schicht, Gewichtsparameter 205 aller Schichten, eine Anzahl von Filtern 206 aller Schichten, eine Anzahl von Kanälen 207 aller Schichten, einen einzelnen Gewichtsparameter 208, der der Gewichtsparameter einer Schicht, d. h. jeder einzelnen Schicht, ist, eine Anzahl einzelner Filter 209 jeder Schicht und eine Anzahl einzelner Kanäle 210 jeder Schicht. Anschließend gibt die CNN-Berechnungseinheit 102 unter Verwendung dieser das Erkennungsergebnis 103 aus.
  • Als Nächstes wird eine Kopplungsbeziehung der in 4 dargestellten CNN-Berechnungseinheit 102 beschrieben. Die Eingabedaten 117 werden in den Speicher 201 eingegeben. Die Eingabedaten 117 sind die oben beschriebenen Außenweltinformationen. Darüber hinaus speichert die Parameter-Speichereinheit 202 die Modellinformationen 110.
  • Ferner werden die folgenden Signale oder Informationen in eine Faltungsberechnungseinheit 203-1 der ersten Schicht eingegeben:
    • ein einzelnes CNN-Berechnungs-Steuersignal 204-1, das von einem CNN-Berechnungs-Steuersignal 115 abgezweigt ist, d. h. ein CNN-Berechnungs-Steuersignal 204-1 einer Schicht
    • gespeicherte Daten 211 (Eingabedaten 117), die in einem Speicher 201 gespeichert sind
    • ein einzelner Gewichtsparameter 208-1, der von einem Gewichtsparameter 205 abgezweigt ist, der aus einer Parameter-Speichereinheit 202 ausgegeben wird
    • eine Anzahl einzelner Filter 209-1, die von einer Anzahl von Filtern 206 abgezweigt ist, die aus einer Parameter-Speichereinheit 202 ausgegeben wird
    • eine Anzahl einzelner Kanäle 210-1, die von einer Anzahl von Kanälen abgezweigt ist, die aus einer Parameter-Speichereinheit 202 ausgegeben wird.
  • Danach werden die folgenden Signale oder Informationen in die Faltungsberechnungseinheiten der zweiten Schicht und der folgenden Schichten, d. h. eine Faltungsberechnungseinheit 203-j der j-ten Schicht, eingegeben:
    • ein einzelnes CNN-Berechnungs-Steuersignal 204-j, das von einem CNN-Berechnungs-Steuersignal 115 abgezweigt ist, d. h. ein CNN-Berechnungs-Steuersignal 204-j einer j-Schicht
  • Ausgabedaten 212-j einer Faltungsberechnungseinheit einer j-1-Schicht
    • ein einzelner Gewichtsparameter 208-j, der von einem Gewichtsparameter 205 abgezweigt ist, der aus einer Parameter-Speichereinheit 202 ausgegeben wird
    • eine Anzahl einzelner Filter 209-j, die aus einer Anzahl von Filtern 206 abgezweigt ist, die aus einer Parameter-Speichereinheit 202 ausgegeben wird
    • eine Anzahl einzelner Kanäle 210-j, die aus einer Anzahl von Kanälen abgezweigt ist, die aus einer Parameter-Speichereinheit 202 ausgegeben wird
  • Ferner werden die folgenden Signale oder Informationen in eine Faltungsberechnungseinheit 203-L einer L-ten Schicht der letzten Schicht eingegeben.
    • ein einzelnes CNN-Berechnungs-Steuersignal 204-L, das von einem CNN-Berechnungs-Steuersignal 115 abgezweigt ist
  • Ausgabedaten 212-L einer Faltungsberechnungseinheit 203-j einer L-1-ten Schicht
    • ein einzelner Gewichtsparameter 208-L, der von einem Gewichtsparameter 205 abgezweigt ist, der von einer Parameter-Speichereinheit 202 ausgegeben wird
    • eine Anzahl einzelner Filter 209-L, die von einer Anzahl von Filtern 206 abgezweigt ist, die von einer Parameter-Speichereinheit 202 ausgegeben wird
    • eine Anzahl einzelner Kanäle 210-L, die von einer Anzahl von Kanälen abgezweigt ist, die von einer Parameter-Speichereinheit 202 ausgegeben wird.
  • Anschließend gibt die Faltungsberechnungseinheit 203-L der L-ten Schicht das unter deren Verwendung erkannte Erkennungsergebnis 103 aus.
  • Als Nächstes werden Einzelheiten des Betriebs der CNN-Berechnungseinheit 102 beschrieben. Zunächst führt die CNN-Berechnungseinheit 102 eine Faltungsberechnung basierend auf den Eingabedaten 117 und den Modellinformationen 110 durch und gibt ein Erkennungsergebnis 103 aus. Zu diesem Zeitpunkt empfängt jede Faltungsberechnungseinheit 203 ein CNN-Berechnungs-Steuersignal 204 für jede Schicht, das aus dem CNN-Berechnungs-Steuersignal 115 abgezweigt ist, und überspringt die Berechnung eines Teils der Filter und Kanäle. Dieses Überspringen der Berechnung ist ein Beispiel für die Löschung aus der vorliegenden Anmeldung. Dabei umfasst die Löschung in der vorliegenden Anmeldung auch passive Verarbeitung wie Weglassen und Vernachlässigen der Berechnung. Hier sind der Filter und der Kanal, die zu löschen, also zu überspringen sind, gleich, bis die Modellinformationen 110 gemäß der Modellaktualisierung von außen geändert werden. Wie es oben beschrieben ist, kann das übersprungene Ziel entweder das Filter oder der Kanal sein. Im Ergebnis wird in der vorliegenden Ausführungsform, mit anderen Worten in der vorliegenden Anmeldung, mindestens eine der Filterinformationen und der Kanalinformationen, die für die Faltung verwendet werden, gelöscht.
  • Darüber hinaus speichert der Speicher 201 Eingabedaten 117. Anschließend werden die gespeicherten Daten 211, bei denen es sich um die Eingabedaten 117 handelt, an die Faltungsberechnungseinheit 203 ausgegeben. Als Nächstes führt die Faltungsberechnungseinheit 203 eine Faltungsberechnung basierend auf den eingegebenen gespeicherten Daten 211 (Ausgabedaten 212) und de, einzelnen Gewichtsparameter 208 durch. Als Ergebnis dieser Faltungsberechnung werden die Anzahl der Berechnungen, die Anzahl der Ausgabedaten und die Datenzuweisung zu dem Rechenelement durch das CNN-Berechnungs-Steuersignal 204, das ein Signal zur Steuerung der Berechnungsreihenfolge und des Datenauslesens ist, der Anzahl der einzelnen Filter 209 und der Anzahl der einzelnen Kanäle 210 bestimmt. Die Faltungsberechnungseinheit 203 gibt die Ausgabedaten 212 aus, die das auf diese Weise ermittelte Berechnungsergebnis darstellen. Diese Verarbeitung wird von der ersten Schicht bis zu der L-ten Schicht wiederholt.
  • Darüber hinaus werden der Gewichtsparameter 205 jeder Schicht, die Anzahl von Filtern 206 jeder Schicht und die Anzahl von Kanälen 207 jeder Schicht aus den von der Parameter-Speichereinheit 202 empfangenen Modellinformationen 110 dividiert und an die Faltungsberechnungseinheit 203 ausgegeben.
  • Die Beschreibung der CNN-Berechnungseinheit 102 ist abgeschlossen und anschließend wird die Löschindex-Bestimmungseinheit 108 beschrieben. 5 ist eine Darstellung, die eine interne Konfiguration der Löschindex-Bestimmungseinheit 108 zeigt.
  • In 5 empfängt die Löschindex-Bestimmungseinheit 108 als Eingaben Kanalinformationen 111, Gewichtsparameterinformationen 112 und Filterinformationen 113. Anschließend gibt die Löschindex-Bestimmungseinheit 108 auf der Basis dieser Eingaben Löschkanalindex-Informationen 116 und Löschfilterindex-Informationen 114 aus. Zu diesem Zweck umfasst die Löschindex-Bestimmungseinheit 108 eine Zielverarbeitungsgeschwindigkeits-Speichereinheit 301, eine Einheit zum Speichern der maximalen Anzahl von Berechnungen 302, eine Rechengeschwindigkeits-Analyseeinheit 303, eine Empfindlichkeitsinformations-Analyseeinheit 304, eine Löschkanal-Bestimmungseinheit 305, eine Löschfilter-Bestimmungseinheit 306, eine Löschkanalindex-Ausgabeeinheit 307 und eine Löschfilterindex-Ausgabeeinheit.
  • Als Nächstes wird eine Kopplungsbeziehung der Löschindex-Bestimmungseinheit 108 unter Bezugnahme auf 5 beschrieben. Die Rechengeschwindigkeits-Analyseeinheit 303 empfängt als Eingaben eine Zielverarbeitungsgeschwindigkeit 310, die eine Ausgabe der Zielverarbeitungsgeschwindigkeits-Speichereinheit 301 ist, eine maximale Anzahl von Berechnungen 315, die pro Rechenelement berechnet werden kann und die eine Ausgabe der Einheit zum Speichern der maximalen Anzahl von Berechnungen 302, die Kanalinformationen 111 und die Filterinformationen 113.
  • Ferner empfängt die Empfindlichkeitsinformations-Analyseeinheit 304 als Eingaben die Kanalinformationen 111, die Gewichtsparameterinformationen 112 und die Filterinformationen 113. Darüber hinaus empfängt die Löschkanal-Bestimmungseinheit 305 als Eingaben eine Anzahl von Löschkanälen 311 die ein Ergebnis der Rechengeschwindigkeits-Analyseeinheit 303 ist, und Empfindlichkeitsinformationen 313, die ein Ergebnis der Empfindlichkeitsinformations-Analyseeinheit 304 sind.
  • Die Löschfilter-Bestimmungseinheit 306 empfängt als Eingaben eine Anzahl von Löschfiltern 312, die eine Ausgabe der Rechengeschwindigkeits-Analyseeinheit 303 sind, und Empfindlichkeitsinformationen 316, die eine Ausgabe der Empfindlichkeitsinformations-Analyseeinheit 304 sind. Darüber hinaus empfängt die Löschkanalindex-Ausgabeeinheit 307 als Eingaben Prioritätsinformationen 317, die eine Ausgabe der Löschkanal-Bestimmungseinheit 305 sind, und eine Anzahl von Berechnungen 315, die eine Ausgabe der Einheit zum Speichern der maximalen Anzahl von Berechnungen 302 ist, und gibt die Löschkanalindex-Informationen 116 für jede Schicht aus.
  • Ferner empfängt die Löschfilterindex-Ausgabeeinheit 308 als Eingaben eine Ausgabe 318 der Löschfilter-Bestimmungseinheit 306 und eine Anzahl von Berechnungen 315, die eine Ausgabe der Einheit zum Speichern der maximalen Anzahl von Berechnungen 302 ist, und gibt die Löschfilterindex-Informationen aus 114 von jeder Schicht aus.
  • Als Nächstes wird ein Betrieb der Löschindex-Bestimmungseinheit 108 unter Bezugnahme auf 5 beschrieben. Zunächst schätzt die Rechengeschwindigkeits-Analyseeinheit 303 eine Differenz zwischen einer für eine Faltungsberechnung erforderlichen Zeit, einer Zielverarbeitungsgeschwindigkeit und einer für die Faltungsberechnung für jede Schicht erforderlichen Zeit basierend auf den eingegebenen Kanalinformationen 111, den Filterinformationen 113 und der maximalen Anzahl von Berechnungen 315, die pro Rechenelement berechnet werden können.
  • Ferner schätzt die Empfindlichkeitsinformations-Analyseeinheit 304 Empfindlichkeitsinformationen für die Erkennungsgenauigkeit aller Kanäle jeder Schicht und Empfindlichkeitsinformationen für die Erkennungsgenauigkeit aller Filter jeder Schicht aus den Kanalinformationen 111, den Gewichtsparameterinformationen 112 und den Filterinformationen 113.
  • Darüber hinaus empfängt die Löschkanal-Bestimmungseinheit 305 die Differenzinformationen zwischen der Rechengeschwindigkeit jeder Schicht und der Zielverarbeitungsgeschwindigkeit, die aus der Rechengeschwindigkeits-Analyseeinheit 303 eingegeben werden, die Empfindlichkeitsinformationen 313 für die Erkennungsgenauigkeit für jede Schicht, die aus der Empfindlichkeitsinformations-Analyseeinheit 304 ausgegeben werden, und die Empfindlichkeitsinformationen 313 des Kanals in der Schicht. Dann legt die Löschkanal-Bestimmungseinheit 305 auf deren Grundlage eine Priorität des zu löschenden Kanals in der Reihenfolge ab dem Kanal mit geringer Empfindlichkeit für die Erkennungsgenauigkeit so fest, dass die Differenz zu der Zielverarbeitungsgeschwindigkeit 0 wird. Einzelheiten des Betriebs in der Löschkanal-Bestimmungseinheit 305 werden später unter Bezugnahme auf 8 beschrieben.
  • Darüber hinaus stuft die Löschfilter-Bestimmungseinheit 306 die zu löschenden Filter für jede Schicht basierend auf den Differenzinformationen zwischen der Verarbeitungsgeschwindigkeit jeder Schicht und der Zielverarbeitungsgeschwindigkeit aus der Rechengeschwindigkeits-Analyseeinheit 303 und den Empfindlichkeitsinformationen 316 des Filters ein.
  • Darüber hinaus empfängt die Löschkanalindex-Ausgabeeinheit 307 die Prioritätsinformationen 317 des Kanals, für den jede von der Löschkanal-Bestimmungseinheit 305 bestimmte Schicht gelöscht werden soll, und die Informationen über die maximale Anzahl möglicher Berechnungen des Rechenelements, die von der Einheit zum Speichern der maximalen Anzahl von Berechnungen 302 ausgegeben werden. Dann legt die Löschkanalindex-Ausgabeeinheit 307 auf deren Grundlage eine Indexzahl fest, so dass die Anzahl der verbleibenden Kanäle ein Vielfaches der Anzahl der Berechnungen wird, die durch das Rechenelement berechnet werden können, oder ein anderer Teiler als 1 wird und gibt diese aus.
  • Wenn dabei die maximale Anzahl möglicher Berechnungen des Kanals Mc beträgt, die Anzahl der Kanäle in einer bestimmten j-Schicht (1 ≤ j ≤ L) C beträgt und die Anzahl der zu löschenden Kanäle in der j-Schicht Cd beträgt, führt die Löschkanalindex-Ausgabeeinheit 307 die Verarbeitung gemäß der folgenden Formel 1 durch. Das heißt, die Löschkanalindex-Ausgabeeinheit 307 legt Cd so fest, dass (Formel 1) erfüllt wird, und legt die Berechnungsreihenfolge der Cd Kanäle in absteigender Reihenfolge der Prioritätsinformationen als die Löschkanalindex-Informationen 116 der j-Schicht fest.
    [Formel 1] M O D ( ( C C d ) , M c ) = 0
    Figure DE112022001612T5_0001
  • Darüber hinaus legt die Löschfilterindex-Ausgabeeinheit 308 Indexinformationen basierend auf der Prioritätsreihenfolge der zu löschenden Filter, die von der Löschfilter-Bestimmungseinheit 306 festgelegt wird, so fest, dass die Anzahl der verbleibenden Filter ein Vielfaches der maximalen Anzahl möglicher Berechnungen des Rechenelements oder ein von 1 verschiedener Teiler ist. Anschließend gibt die Löschfilterindex-Ausgabeeinheit 308 diese aus. Die Festlegung der Prioritätsreihenfolge der Filter in der Löschfilter-Bestimmungseinheit 306 wird später unter Bezugnahme auf 7 beschrieben.
  • Wenn hier die maximale Anzahl möglicher Berechnungen des Filters Mf ist, die Anzahl der Filter einer bestimmten j-Schicht F ist und die Anzahl der zu löschenden Filter der j-Schicht Fd ist, führt die Löschfilterindex-Ausgabeeinheit 308 eine Verarbeitung gemäß der folgenden (Formel 2) aus. Das heißt, die Löschfilterindex-Ausgabeeinheit 308 legt Fd so fest, das (Formel 2) erfüllt wird, und legt die Löschfilterindex-Informationen 114 der j-Schicht für die Berechnungsreihenfolge der Fd-Filter in absteigender Reihenfolge der Prioritätsinformationen fest.
    [Formel 2] M O D ( ( F F d ) , M ƒ ) = 0
    Figure DE112022001612T5_0002
  • Als Nächstes wird die Faltungsberechnungseinheit 203 beschrieben. 6 ist eine Darstellung, die eine interne Konfiguration der Faltungsberechnungseinheit 203 in der vorliegenden Ausführungsform zeigt.
  • Zunächst wird eine Konfiguration der Faltungsberechnungseinheit 203 beschrieben. Hier wird beispielhaft die j-te Schicht beschrieben. Die Faltungsberechnungseinheit 203 empfängt als Eingaben das CNN-Berechnungs-Steuersignal 204, die Anzahl der einzelnen Kanäle 210, die Anzahl der einzelnen Filter 209, die Ausgabedaten 212-j der vorherigen Schicht und den einzelnen Gewichtsparameter 208. Dann gibt die Faltungsberechnungseinheit 203 unter Verwendung dieser die Ausgabedaten 212-j aus, die ein Berechnungsergebnis sind. Zu diesem Zweck sind eine Berechnungssteuereinheit 401, eine Eingabedaten-Zwischenspeichereinheit 402, eine Recheneinheit 403 und eine Ausgabedaten-Zwischenspeichereinheit 404 enthalten.
  • Als Nächstes wird eine Kopplungsbeziehung der internen Konfiguration der Faltungsberechnungseinheit 203 beschrieben. Die Berechnungssteuereinheit 401 empfängt als Eingaben das CNN-Berechnungs-Steuersignal 204, die Anzahl der einzelnen Kanäle 210 und die Anzahl der einzelnen Filter 209. Darüber hinaus empfängt die Eingabedaten-Zwischenspeichereinheit 402 als Eingaben die Ausgabedaten 212-j der vorherigen Schicht, den einzelnen Gewichtsparameter 208 und das Steuersignal 410, das von der Berechnungssteuereinheit 401 ausgegeben wird und die Ausgabereihenfolge und die Ausgabezeitvorgabe der gespeicherten Daten steuert.
  • Darüber hinaus empfängt die Recheneinheit 403 als Eingaben die Berechnungsreihenfolge, den Berechnungsstart, ein Berechnungsstopp-Steuersignal 412 des Berechnungsstopps und die für die Berechnung erforderlichen Eingabedaten 411. Darüber hinaus empfängt die Ausgabedaten-Zwischenspeichereinheit 404 als Eingaben ein Berechnungsergebnis 413 der Recheneinheit 403 und ein Steuersignal 414 zum Steuern der Ausgabezeitvorgabe der gespeicherten Daten und gibt Ausgabedaten 212-j+1 aus, die ein Rechenergebnis sind.
  • Nachfolgend wird der Betrieb der Faltungsberechnungseinheit 203 beschrieben. Zunächst speichert die Eingabedaten-Zwischenspeichereinheit 402 die Ausgabedaten 212-j der vorherigen Schicht und den einzelnen Gewichtsparameter 208. Dann gibt die Berechnungssteuereinheit 401 basierend auf den Informationen des CNN-Berechnungs-Steuersignals 204, der Anzahl der einzelnen Kanäle 210 und der Anzahl der einzelnen Filter 209 die Datenausgabezeitvorgabe und die Informationen des Kanals und des Filters, für den die Ausgabe übersprungen wird, entsprechend der Reihenfolge, in der die Berechnung ausgeführt wird, aus. Darüber hinaus gibt die Berechnungssteuereinheit 401 die Anzahl der Berechnungen, die Berechnungsstartzeitvorgabe und das Berechnungsstopp-Steuersignal 412 zum Steuern der Endzeitvorgabe an die Recheneinheit 403 aus.
  • Dann kann die Ausgabedaten-Zwischenspeichereinheit 404 das Steuersignal 414 zum Steuern der Zeitvorgabe der Ausgabe der berechneten Daten halten und das Steuersignal 414 in anderen Abschnitten verwenden. Darüber hinaus führt die Recheneinheit 403 eine Faltungsberechnung und Aktivierungsfunktionsverarbeitung anhand der Eingabedaten durch und gibt das Berechnungsergebnis 413 an die Ausgabedaten-Zwischenspeichereinheit 404 aus. Die Ausgabedaten-Zwischenspeichereinheit 404 gibt die Ausgabedaten 212-j +1, die ein Berechnungsergebnis sind, sequentiell gemäß dem Steuersignal 414 aus der Berechnungssteuereinheit 401 aus. Was das CNN-Berechnungssteuersignal 204, die Anzahl der einzelnen Kanäle 210 und die Anzahl der einzelnen Filter 209 betrifft, hält die Berechnungssteuerungseinheit 401 die Daten so lange, bis die Modellinformationen 110 aktualisiert werden.
  • Als Nächstes werden Einzelheiten eines Betriebs der Löschfilter-Bestimmungseinheit 306 beschrieben. 7 ist ein Ablaufdiagramm eines Betriebs zum Festlegen einer Priorität eines zu löschenden Filters durch die Löschfilter-Bestimmungseinheit 306.
  • Wenn zunächst die Anzahl der Löschkanäle 311, die eine Ausgabe der Rechengeschwindigkeits-Analyseeinheit 303 ist, und die Empfindlichkeitsinformationen 313, die eine Ausgabe der Empfindlichkeitsinformations-Analyseeinheit 304 sind, eingegeben werden, startet die Löschfilter-Bestimmungseinheit 306 einen Betrieb (Schritt S1001).
  • Als Nächstes extrahiert die Löschfilter-Bestimmungseinheit 306 n Schichten (n ist eine ganze Zahl, die n ≥ 0 erfüllt) mit einer Verarbeitungsgeschwindigkeit, die kleiner oder gleich einer Zielverarbeitungsgeschwindigkeit ist, basierend auf der Ausgabe der Rechengeschwindigkeits-Analyseeinheit 303. Dann ordnet die Löschfilter-Bestimmungseinheit 306 die Schichten in absteigender Reihenfolge der Verarbeitungsgeschwindigkeit an (Schritt S1002).
  • Als Nächstes legt die Löschfilter-Bestimmungseinheit 306 in einem Fall, in dem die Schichten mit einer Verarbeitungsgeschwindigkeit kleiner oder gleich einer Zielverarbeitungsgeschwindigkeit angeordnet sind, i als einen Parameter, der eine aktuell anvisierte Schicht darstellt, fest und setzt i = n (Schritt S1003).
  • Als Nächstes bestimmt die Löschfilterbestimmungseinheit 306, ob i = 0 (Schritt S1004). Im Ergebnis geht die Verarbeitung in einem Fall, in dem i = 0, zu Schritt S1006 über. In einem Fall, in dem i ungleich 0 ist, geht die Verarbeitung zu Schritt S1005 über.
  • Darüber hinaus legt die Löschfilter-Bestimmungseinheit 306 eine Löschpriorität in absteigender Reihenfolge der Empfindlichkeit für jede Filtergröße basierend auf den Empfindlichkeitsinformationen für die Erkennungsgenauigkeit fest (Schritt S1005). Beispielsweise wird im Fall eines Filters, der 3 × 3 = 9 Gewichtsparameter aufweist, die Priorität in einer Reihenfolge beginnend mit einem unter den neun Gewichtsparametern, der beim Löschen eine geringere Verschlechterung der Erkennungsgenauigkeit aufweist, festgelegt. Es ist zu beachten, dass die Anzahl von Filtern nicht auf dieses Beispiel beschränkt ist. Darüber hinaus ist das Löschkriterium nicht auf das Ausmaß der Verschlechterung beschränkt und kann ein beliebiges Kriterium sein, solange eine vorbestimmte Regel erfüllt wird. Zusätzlich zur Verschlechterung der Erkennungsgenauigkeit kann der Verschlechterungsbetrag der Berechnungsgenauigkeit verwendet werden.
  • Die Löschfilter-Bestimmungseinheit 306 verringert i um eins und kehrt zu Schritt S1004 zurück (Schritt S1007).
  • Schließlich gibt die Löschfilter-Bestimmungseinheit 306 einzeln für die n Schichten berechnete Löschprioritätsinformationen der Filter aus (Schritt S1006).
  • Die Beschreibung des Betriebs zum Festlegen der Priorität des zu löschenden Filters durch die Löschfilter-Bestimmungseinheit 306 wurde vorstehend abgeschlossen.
  • Als Nächstes wird ein Betrieb der Löschkanal-Bestimmungseinheit 305 beschrieben. 8 ist ein Ablaufdiagramm, das einen Betrieb der Löschkanal-Bestimmungseinheit 305 zeigt.
  • Wenn zunächst die Anzahl der Löschkanäle 311, die eine Ausgabe der Rechengeschwindigkeits-Analyseeinheit 303 ist, und die Empfindlichkeitsinformationen 313, die eine Ausgabe der Empfindlichkeitsinformations-Analyseeinheit 304 sind, eingegeben werden, startet die Löschkanal-Bestimmungseinheit 305 einen Betrieb (Schritt S2001).
  • Als nächstes extrahiert die Löschkanal-Bestimmungseinheit 305 n Schichten (n ist eine ganze Zahl, die n ≥ 0 erfüllt) mit einer Verarbeitungsgeschwindigkeit, die kleiner oder gleich einem Ziel ist, basierend auf der Anzahl der Löschkanäle 311, die eine Ausgabe der Rechengeschwindigkeits-Analyseeinheit ist, und ordnet die Schichten in absteigender Reihenfolge der Verarbeitungsgeschwindigkeit an (Schritt S2002).
  • Als Nächstes legt die Löschkanal-Bestimmungseinheit 305 i als einen Parameter, der eine aktuelle Zielschicht darstellt, in einem Fall, in dem Schichten mit einer Verarbeitungsgeschwindigkeit kleiner oder gleich einer Zielverarbeitungsgeschwindigkeit angeordnet sind, fest und setzt i = n (Schritt S2003).
  • Als Nächstes bestimmt die Löschkanal-Bestimmungseinheit 305, ob i = 0 (Schritt S2004). Im Ergebnis geht die Verarbeitung in einem Fall, in dem i = 0, zu Schritt S2006 über. In einem Fall, in dem i ungleich 0 ist, geht die Verarbeitung zu Schritt S2005 über.
  • Darüber hinaus berechnet die Löschkanal-Bestimmungseinheit 305 die Anzahl der Kanäle, die gelöscht werden müssen, basierend auf den Empfindlichkeitsinformationen 313, die eine Ausgabe der Empfindlichkeitsinformations-Analyseeinheit 304 sind, und den Informationen über die Anzahl der Löschkanäle 311, die eine Ausgabe der Rechengeschwindigkeit-Analyseeinheit 303 sind, für den Kanal der i-Schicht. Die berechnete Anzahl der Kanäle, die gelöscht werden müssen, wird wünschenswerterweise berechnet, bis die Verarbeitungsgeschwindigkeit der i-Schicht die Zielverarbeitungsgeschwindigkeit überschreitet. Dann führt die Löschkanal-Bestimmungseinheit 305 die Einstellung der Löschpriorität in absteigender Reihenfolge der Empfindlichkeit für die Erkennungsgenauigkeit durch (Schritt S2005).
  • Schließlich gibt die Löschkanal-Bestimmungseinheit 305 Löschprioritätsinformationen von Kanälen aus, die individuell für n Schichten berechnet wurden (Schritt S2006).
  • Als Nächstes wird ein Betrieb in der Berechnungszuweisungseinheit 109 beschrieben. 9 ist ein Ablaufdiagramm eines Betriebs in der Berechnungszuweisungseinheit 109. Der Verarbeitungsablauf wird nachstehend beschrieben.
  • Wenn zunächst die Löschkanalindex-Informationen 116 und die Löschfilterindex-Informationen 114 aus der Löschindex-Bestimmungseinheit 108 eingegeben werden, startet die Berechnungszuweisungseinheit 109 einen Betrieb (Schritt S3001). Als Nächstes speichert die Berechnungszuweisungseinheit 109 die eingegebenen Löschkanalindex-Informationen (Schritt S3002).
  • Als Nächstes speichert die Berechnungszuweisungseinheit 109 Löschfilterindex-Informationen und eine Löschpriorität (Schritt S3002). Als Nächstes bestimmt die Berechnungszuweisungseinheit 109, ob das zu löschende Filter an beiden Enden vorhanden ist, wenn man es aus einer Schrittrichtung der Löschfilterindexinformationen betrachtet (Schritt S3004). Die Schrittrichtung und beide Enden werden später unter Bezugnahme auf 10 beschrieben. In einem Fall, in dem bestimmt wird, dass es an beiden Enden vorhanden ist, geht die Verarbeitung zu Schritt S3007 über. In einem Fall, in dem bestimmt wird, dass es nicht an beiden Enden vorhanden ist, geht die Verarbeitung zu Schritt S3005 über.
  • Zudem bestimmt die Berechnungszuweisungseinheit 109, ob die Schrittrichtung im Hinblick auf die Implementierung geändert werden kann (Schritt S3005). Daher ist es wünschenswert, dass die Berechnungszuweisungseinheit 109 eine Entscheidung basierend auf einer Einschränkungsbedingung für die Implementierung trifft. Als Ergebnis dieser Bestimmung geht die Verarbeitung in einem Fall, in dem die Änderung vorgenommen werden kann, zu Schritt S3009 über. Wenn die Änderung nicht vorgenommen werden kann, geht die Verarbeitung zu Schritt S3006 über.
  • Als Nächstes ändert die Berechnungszuweisungseinheit 109 die Priorität des Löschfilterindex zu dem mit der höchsten Priorität an den nächsten Punkten an beiden Enden (Schritt S3006). Als Nächstes gibt die Berechnungszuweisungseinheit 109 Löschkanalindex-Informationen aus (Schritt S3007).
  • Dann gibt die Berechnungszuweisungseinheit 109 die Löschfilterindex-Informationen und die Schrittrichtung aus (Schritt S3008).
  • Darüber hinaus ändert die Berechnungszuweisungseinheit 109 die Schrittrichtung um 90 Grad, wenn in Schritt S3006 bestimmt wird, dass eine Änderung nicht möglich ist (Schritt S3009). Dann geht die Verarbeitung zu Schritt S3007 über.
  • Als Nächstes werden ein Schritt und ein löschbares Filter beschrieben. 10 ist eine Darstellung zur Erläuterung eines Beispiels für einen Schritt und ein löschbares Filter. Bei der Faltungsberechnung wird die Faltungsberechnung durchgeführt, während sich ein Faltungsfilter 803 und ein Filter 805 in Schrittrichtungen 802 und 804 auf Zwischendaten 801 von 8(a) und 8(b) verschieben. Hier ist das Filter 3 × 3, die Größe des Filters ist jedoch nicht darauf beschränkt.
  • Die beiden Enden des Filters sind Filter, die in dem Faltungsfilter 803 von 8(a) und dem Filter 805 von 8(b) grau dargestellt sind. Da hier in dem Faltungsfilter 803 die Schrittrichtung 802 seitlich ist, ist das Filter an beiden Enden seitlich. Da zudem in dem Filter 805 die Schrittrichtung 804 vertikal ist, ist das Filter an beiden Enden vertikal.
  • Als Nächstes zeigt 11 ein Beispiel, in dem die Löschung für den 3×3-Filter durchgeführt wird. Hier wird ein Beispiel beschrieben, in dem die Löschung tatsächlich in einem Fall durchgeführt wird, in dem die maximale Anzahl möglicher Berechnungen 8 beträgt. Hier beträgt die maximale Anzahl von Berechnungen beispielsweise acht, sie ist jedoch nicht darauf beschränkt und kann 2n (n ≥ 1) betragen. Wie es oben beschrieben ist, beträgt die Anzahl der zu löschenden Filter eins, wenn die maximale Anzahl möglicher Berechnungen 8 beträgt. Daher wird ein Filter in einem in 11 grau markierten Bereich gelöscht. Ein gelöschter Filter 913 ist ein Filter nach der Löschung mit einem Schritt 912 in seitlicher Richtung. Ein gelöschter Filter 914 ist ein Filter nach der Löschung mit einem Schritt 915 in vertikaler Richtung. Die Beschreibung der ersten Ausführungsform wurde vorstehend abgeschlossen.
  • Zweite Ausführungsform
  • Als Nächstes wird eine zweite Ausführungsform beschrieben. Die zweite Ausführungsform ist ein Beispiel, in dem die Erkennungsvorrichtung 1000 der ersten Ausführungsform zur Erkennung der Außenwelt während der Fahrt des Fahrzeugs eingesetzt wird. Daher wird in der zweiten Ausführungsform die Verarbeitungsgeschwindigkeit der Faltungsberechnung gemäß der Fahrgeschwindigkeit und der für die Berechnungsverarbeitung erforderlichen Geschwindigkeit beim Fahren auf einer Straße mit uneingeschränkter Geschwindigkeit, beim Fahren auf einer normalen Autobahn, beim Fahren in einem Stadtgebiet oder dergleichen geändert.
  • Hier unterscheidet sich die von der ECU benötigte Verarbeitungsgeschwindigkeit zwischen Fahren auf der normalen Autobahn oder Fahren im Stadtgebiet und Fahren auf der Straße mit uneingeschränkter Geschwindigkeit. Ferner sind die Breite der Straßenoberfläche, auf der das Fahrzeug fährt, und die Umgebungssituation unterschiedlich. Daher wird in der vorliegenden Ausführungsform ein Beispiel beschrieben, in dem eine Änderung der Fahrgeschwindigkeit beobachtet wird und die Anzahl der Berechnungen zum Durchführen mehrerer Berechnungen durch ein Rechenelement erhöht wird, um mit einem Anstieg der erforderlichen Verarbeitungsgeschwindigkeit umzugehen.
  • Darüber hinaus werden in der zweiten Ausführungsform Fahrgeschwindigkeitsinformationen erfasst und dann, wenn eine durchschnittliche Geschwindigkeit V pro Zeiteinheit einen Fahrgeschwindigkeits-Obergrenzwert überschreitet, wird die Zielverarbeitungsgeschwindigkeit geändert und die Anzahl der Löschindizes erhöht. Dies ist eine Ausführungsform zur Erhöhung der Anzahl der Berechnungen und zur Verbesserung der Verarbeitungsgeschwindigkeit, In den Zeichnungen werden für die gleichen Teile wie bei der ersten Ausführungsform die gleichen Bezugszeichen verwendet und auf deren Beschreibung wird verzichtet.
  • 12 ist ein Funktionsblockdiagramm einer Erkennungsvorrichtung 1000, die in der zweiten Ausführungsform eine Rechenvorrichtung ist. Unter Bezugnahme auf 12 wird hier ein Unterschied zu der ersten Ausführungsform beschrieben. Bei der Erkennungsvorrichtung 1000 der zweiten Ausführungsform ist eine Fahrgeschwindigkeits-Erfassungseinheit 901 hinzugefügt. Darüber hinaus umfasst die vorliegende Ausführungsform eine Löschindex-Bestimmungseinheit 903 mit einer Konfiguration, die sich von der der ersten Ausführungsform unterscheidet. Als Nächstes wird eine Kopplungsbeziehung der Erkennungsvorrichtung 1000 der vorliegenden zweiten Ausführungsform beschrieben. Zunächst gibt die Fahrgeschwindigkeits-Erfassungseinheit 901 die Fahrgeschwindigkeit an die Löschindex-Bestimmungseinheit 903 aus. Die Löschindex-Bestimmungseinheit 108 empfängt Ausgaben der Fahrgeschwindigkeits-Erfassungseinheit 901, der Kanalinformations-Erfassungseinheit 105, der Gewichtsparameter-Erfassungseinheit 106 und der Filterinformations-Erfassungseinheit 107.
  • Als Nächstes wird ein Unterschied zur ersten Ausführungsform in dem Betrieb der Erkennungsvorrichtung 1000 der zweiten Ausführungsform beschrieben. Zunächst überwacht die Fahrgeschwindigkeits-Erfassungseinheit 901 die Fahrgeschwindigkeit des Fahrzeugs und gibt die aktuelle Fahrgeschwindigkeit fortlaufend an die Löschindex-Bestimmungseinheit 108 aus.
  • Es ist zu beachten, dass die Erkennungsvorrichtung 1000 der vorliegenden Ausführungsform auch durch einen sogenannten Computer realisiert werden kann. In diesem Fall wird die Funktion jeder Einheit von einer Verarbeitungsvorrichtung wie einer CPU gemäß einem Programm ausgeführt. Das Programm ist auf einem Speichermedium gespeichert. Jede Einheit kann auch durch dedizierte Hardware wie etwa eine feldprögrammierbare Gatteranordnung (FPGA) oder eine dedizierte Schaltung realisiert werden.
  • 13 ist eine Darstellung, die eine interne Konfiguration der Löschindex-Bestimmungseinheit 903 gemäß der zweiten Ausführungsform zeigt. Hier wird unter. Bezugnahme auf 13 die Konfiguration der Löschindex-Bestimmungseinheit 903 im Hinblick auf den Unterschied zu der Löschindex-Bestimmungseinheit 108 beschrieben.
  • Die Löschindex-Bestimmungseinheit 903 umfasst zusätzlich zu der Löschindex-Bestimmungseinheit 108 der ersten Ausführungsform ferner eine Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 und eine Rechengeschwindigkeits-Analyseeinheit 905. Hier empfängt die Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 zusätzlich die von der Fahrgeschwindigkeits-Erfassungseinheit 901 ausgegebenen Fahrgeschwindigkeitsinformationen als Eingabe. Zudem verwendet die Rechengeschwindigkeits-Analyseeinheit 905 die Ausgabe 916 der Einheit zum Speichern der maximalen Anzahl von Berechnungen 302 und die Zielverarbeitungsgeschwindigkeit 310, die die Ausgabe der Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit ist, als zusätzliche Eingaben und gibt eine maximale Anzahl von Berechnungen 906 aus .
  • Als Nächstes wird eine Kopplungsbeziehung der Löschindex-Bestimmungseinheit 903 der zweiten Ausführungsform beschrieben. Zunächst werden Fahrgeschwindigkeitsinformationen in die Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 eingegeben. Zudem werden die Ausgabe 916 der Einheit zum Speichern der maximalen Anzahl von Berechnungen 302, die Zielverarbeitungsgeschwindigkeit 310, die eine Ausgabe der Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 ist, die Kanalinformationen 111 und die Filterinformationen 113 in die Rechengeschwindigkeits-Analyseeinheit 905 eingegeben. Anschließend gibt die Rechengeschwindigkeits-Analyseeinheit 905 die Anzahl der Löschkanäle 311, die Anzahl der Löschfilter 312 und die geänderte maximale Anzahl von Berechnungen 906 aus. Die geänderte maximale Anzahl von Berechnungen 906 wird in die Löschkanalindex-Ausgabeeinheit 307 und die Löschfilterindex-Ausgabeeinheit 308 eingegeben.
  • Nachfolgend wird ein Betrieb der Löschindex-Bestimmungseinheit 903 in der zweiten Ausführungsform beschrieben. Die Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 berechnet eine Fahrgeschwindigkeit V pro Zeiteinheit aus den eingegebenen Fahrgeschwindigkeitsinformationen. Wenn hier V < X erfüllt ist, behält die Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 eine vorliegende Zielverarbeitungsgeschwindigkeit G bei. Wenn hingegen V > X erfüllt ist, ändert die Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 die Zielverarbeitungsgeschwindigkeit G und sendet die geänderte Zielverarbeitungsgeschwindigkeit an die Rechengeschwindigkeits-Analyseeinheit 905.
  • Die Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 ändert die maximale Anzahl möglicher Berechnungen 2n auf 2n-1, wenn die Zielverarbeitungsgeschwindigkeit in der Rechengeschwindigkeits-Analyseeinheit 905 erhöht wird. Wenn die Zielverarbeitungsgeschwindigkeit verringert wird, ändert die Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 die maximal berechenbare Anzahl zurück auf 2n. Als Nächstes bestimmt die Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 die Anzahl von Löschfilterkanälen auf der Grundlage der geänderten maximalen Anzahl möglicher Berechnungen. Dann sendet die Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit 902 die geänderte maximale Anzahl von Berechnungen 906 an die Löschkanalindex-Ausgabeeinheit 307 und die Löschfilterindex-Ausgabeeinheit 308. Der restliche betrieb ist der gleiche wie in 5 und wird daher weggelassen.
  • Als Nächstes ist 14 ist eine erläuternde Darstellung eines Speicherzustands eines Filters, wenn eine Berechnung durch ein Rechenelement durchgeführt wird. 14(a) stellt ein Beispiel dar, bevor die maximale Anzahl von Berechnungen verringert wird, und 14(b) stellt ein Beispiel dar, nachdem die maximale Anzahl von Berechnungen verringert wurde. Darüber hinaus werden diese auf Basis eines Rechenelements 151 und eines Gewichtsparameters 152 konfiguriert.
  • Hier wird unter Bezugnahme auf 14(a) ein Fall beschrieben, bei dem die maximale Anzahl von Berechnungen 8 (n = 3) und die Filtergröße 9 beträgt. Wenn die maximale Anzahl von Berechnungen 8 beträgt, wird ein Index aus dem Filter gelöscht und der Gewichtsparameter 152 wird auf das Rechenelement 151 eingestellt, das die Berechnung durchführen soll. Ein Beispiel, bei dem die Fahrgeschwindigkeit zunimmt und die maximale Anzahl von Berechnungen 4 beträgt, wird unter Bezugnahme auf 14(b) beschrieben. Wenn die maximale Anzahl von Berechnungen 4 beträgt, werden 5 aus dem Filter gelöscht und in dem Rechenelement 151 eingestellt. In diesem Fall kann im Vergleich zu 14(a) kann zweimal der Gewichtsparameter 152 in das Rechenelement 151 eingegeben werden. Die Beschreibung der zweiten Ausführungsform wurde vorstehend abgeschlossen.
  • Dritte Ausführungsform
  • Eine dritte Ausführungsform ist eine Ausführungsform, bei der die Erkennungsvorrichtungen 1000 der ersten Ausführungsform und der zweiten Ausführungsform auf eine Steuervorrichtung 2000 angewendet werden. 15 ist ein Funktionsblockdiagramm der Steuervorrichtung 2000 gemäß der dritten Ausführungsform. Die Steuervorrichtung 2000 ist beispielsweise als ECU implementiert.
  • In 3 umfasst die Steuervorrichtung 2000 eine Erkennungsvorrichtung 1000 und eine Steuersignal-Erzeugungseinheit 2001. Dann wird das Erkennungsergebnis 103, das von der Erkennungsvorrichtung 1000 ausgegeben wird, die die Verarbeitung der ersten Ausführungsform oder der zweiten Ausführungsform ausführt, an die Steuersignal-Erzeugungseinheit 2001 gesendet. Als Nächstes erzeugt die Steuersignal-Erzeugungseinheit 2001 ein Steuersignal 2002 gemäß dem Erkennungsergebnis und steuert ein Steuerziel 3000 basierend auf dem Steuersignal 2002.
  • Wenn hier die Steuervorrichtung 2000 von der ECU ausgeführt wird, ist das Steuerziel 3000 ein Fahrzeug. In diesem Fall können automatisches Fahren und Fahrunterstützung des Fahrzeugs basierend auf der in jeweiligen Ausführungsformen beschriebenen Verarbeitung realisiert werden.
  • Obwohl die Beschreibung jeweiliger Ausführungsformen vorstehend abgeschlossen wurde, werden für jede Ausführungsform verschiedene Abwandlungen und Anwendungsbeispiele angenommen. Beispielsweise wurde in jeder Ausführungsform die Erkennungsvorrichtung 1000 als Beispiel beschrieben, aber eine Rechenvorrichtung, die Berechnungen durchführt, die nicht auf die Erkennung beschränkt sind, ist ebenfalls im Umfang jeder Ausführungsform enthalten.
  • Darüber hinaus beträgt gemäß jeder Ausführungsform in einem Fall, in dem die Berechnung unter Verwendung allgemeiner Bilddaten durchgeführt wird, die Auslastungsrate des Rechenelements etwa 50 % und es ist zu erwarten, dass die Auslastungsrate des Rechenelements unter Verwendung des Berechnungslöschungsmechanismus gemäß der vorliegenden Erfindung auf etwa 100% verbessert wird. Das heißt, die Auslastungsrate kann verbessert werden.
  • Ferner wird in der vorliegenden Ausführungsform ein Teil des bei der Faltungsberechnung verwendeten Filters und Kanals zu dem Zeitpunkt der Berechnung in dem neuronalen Faltungsnetz gelöscht. Daher werden Löschindexinformationen, bei denen es sich um eine Zahl handelt, die eine Position oder Reihenfolge von Filtern und Kanälen angibt, die für jede Schicht unterschiedlich sind, an die Berechnungssteuereinheit übergeben. Im Ergebnis wird das Lesen eines Teils der Eingabedaten der Faltungsberechnung und eines Teils des Gewichtsparameters gemäß der Recheneinheit des Rechenelements übersprungen und ein Teil der Faltungsberechnung wird gelöscht. Dadurch kann das Rechenelement in einer Vorrichtung mit beschränkter Rechenleistung effizient genutzt werden.
  • Bezugszeichenliste
  • 101
    Außenweltinformations-Erfassungseinheit
    102
    CNN-Berechnungseinheit
    104
    Modell-Speichereinheit
    105
    Kanalinformations-Erfassungseinheit
    106
    Gewichtsparameter-Erfassungseinheit
    107
    Filterinformations-Erfassungseinheit
    108
    Löschindex-Bestimmungseinheit
    109
    Berechnungszuweisungseinheit
    111
    Kanalinformationen
    112
    Gewichtsparameterinformationen
    113
    Filterinformationen
    114
    Löschfilterindex-Informationen
    115
    CNN-Berechnungs-Steuersignal
    116
    Löschkanalindex-Informationen
    117
    Eingabedaten
    202
    Parameter-Speichereinheit
    203
    Faltungsberechnungseinheit
    204
    abgezweigtes CNN-Berechnungs-Steuersignal
    208
    einzelner Gewichtsparameter
    209
    Anzahl einzelner Filter
    210
    Anzahl einzelner Kanäle
    211
    gespeicherte Daten
    301
    Zielverarbeitungsgeschwindigkeit-Speichereinheit
    302
    Einheit zum Speichern der maximalen Anzahl von Berechnungen
    303
    Rechengeschwindigkeits-Analyseeinheit
    304
    Empfindlichkeitsinformations-Analyseeinheit
    305
    Löschkanal-Bestimmungseinheit
    306
    Löschfilter-Bestimmungseinheit
    401
    Berechnungssteuereinheit
    412
    Berechnungsstopp-Steuersignal
    801
    Zwischendaten
    802
    Schrittrichtung
    803
    Faltungsfilter
    901
    Fahrgeschwindigkeits-Erfassungseinheit
    902
    Zielverarbeitungsgeschwindigkeits-Bestimmungseinheit
  • 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
    • JP 2019082996 A [0013]

Claims (10)

  1. Rechenvorrichtung, die eine CNN-Berechnung basierend auf Eingabedaten durchführt, wobei die Rechenvorrichtung umfasst: eine Modell-Speichereinheit, die ein für die CNN-Berechnung verwendetes Modell speichert; eine CNN-Berechnungseinheit, die die CNN-Berechnung unter Verwendung des Modells durchführt, um eine Faltungsberechnung für jede von mehreren Faltungsschichten auszuführen; eine Gewichtsparameter-Erfassungseinheit, die einen Gewichtsparameter eines für die Faltungsberechnung verwendeten Faltungsfilters aus der Modell-Speichereinheit erfasst; eine Kanalinformations-Erfassungseinheit, die Kanalinformationen für jede der mehreren Faltungsschichten aus dem in der Modell-Speichereinheit gespeicherten Modell erfasst; eine Filterinformations-Erfassungseinheit, die Filterinformationen für jede der mehreren Faltungsschichten aus der Modell-Speichereinheit erfasst; eine Berechnungszuweisungseinheit, die eine Kombination aus Gewichtsinformationen und einer Berechnung, die für die CNN-Berechnung erforderlich ist, zur Übertragung an die CNN-Berechnungseinheit zuweist; und eine Löschindex-Bestimmungseinheit, die einen Teil der für die Faltungsberechnung verwendeten Filterinformationen basierend auf einer maximalen Anzahl möglicher Berechnungen der CNN-Berechnungseinheit, einer Ausführungsreihenfolge der CNN-Berechnung, Kanalinformationen für jede Faltungsschicht der CNN Berechnungseinheit, die aus der Kanalinförmations-Erfassungseinheit erfasst werden, Gewichtsinformationen, die aus der Gewichtsparameter-Erfassungseinheit erfasst werden, und Filterinformationen für jede der mehreren Faltungsschichten, die aus der Filterinformations-Erfassungseinheit erfasst werden, löscht.
  2. Rechenvorrichtung nach Anspruch 1, wobei die Löschindex-Bestimmungseinheit ferner einen Teil der für die Faltungsberechnung verwendeten Kanalinformationen löscht.
  3. Rechenvorrichtung nach Anspruch 1, wobei die Löschindex-Bestimmungseinheit zu löschende Filterinformationen gemäß einer Änderung der Gewichtsinformationen bestimmt.
  4. Rechenvorrichtung nach Anspruch 2, wobei die Löschindex-Bestimmungseinheit zu löschende Kanalinformationen gemäß einer Änderung der Gewichtsinformationen bestimmt.
  5. Rechenvorrichtung nach Anspruch 1, wobei ein durch die Filterinformationen angegebenes Filter mehrere Gewichtsparameter umfasst, und die Löschindex-Bestimmungseinheit einen Gewichtsparameter unter den mehreren Parametern, der eine vorbestimmte Regel erfüllt, bestimmt.
  6. Rechenvorrichtung nach Anspruch 5, wobei die Löschindex-Bestimmungseinheit als die vorbestimmte Regel einen zu löschenden Gewichtsparameter basierend auf einem Verschlechterungsbetrag der Rechengenauigkeit bestimmt.
  7. Rechenvorrichtung nach Anspruch 1, wobei die Löschindex-Bestimmungseinheit zu löschende Filterinformationen gemäß einer Verarbeitungsgeschwindigkeit bestimmt.
  8. Rechenvorrichtung nach Anspruch 7, wobei die Löschindex-Bestimmungseinheit ferner zu löschende Filterinformationen basierend auf Empfindlichkeitsinformationen, die eine Empfindlichkeit der mehreren Faltungsschichten angeben, und einer Größe des Filters bestimmt.
  9. Erkennungsvorrichtung, wobei mittels der Rechenvorrichtung nach einem der Ansprüche 1 bis 8, die Erkennungsvorrichtung Außenweltinformationen, die von einer Außenwelt-Erfassungsvorrichtung erfasst werden, als Eingabedaten verwendet, und die Erkennungsvorrichtung die Außenweltinformationen verwendet, um eine Außenweltsituation zu erkennen.
  10. Steuervorrichtung, die die Erkennungsvorrichtung nach Anspruch 9 umfasst, wobei die Steuervorrichtung ein Ergebnis einer Berechnung in der Erkennungsvorrichtung als Steuersignal für ein Ziel gemäß der erkannten Außenweltsituation ausgibt.
DE112022001612.4T 2021-05-20 2022-02-04 Rechenvorrichtung, erkennungsvorrichtung und steuervorrichtung Pending DE112022001612T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2021085284A JP2022178465A (ja) 2021-05-20 2021-05-20 演算装置、認識装置および制御装置
JP2021-085284 2021-05-20
PCT/JP2022/004491 WO2022244331A1 (ja) 2021-05-20 2022-02-04 演算装置、認識装置および制御装置

Publications (1)

Publication Number Publication Date
DE112022001612T5 true DE112022001612T5 (de) 2024-01-18

Family

ID=84140179

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112022001612.4T Pending DE112022001612T5 (de) 2021-05-20 2022-02-04 Rechenvorrichtung, erkennungsvorrichtung und steuervorrichtung

Country Status (3)

Country Link
JP (1) JP2022178465A (de)
DE (1) DE112022001612T5 (de)
WO (1) WO2022244331A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019082996A (ja) 2017-10-31 2019-05-30 ナンジン ホライゾン ロボティクス テクノロジー カンパニー リミテッドNanjing Horizon Robotics Technology Co., Ltd. 畳み込みニューラルネットワークにおいて演算を実行する方法および装置並びに非一時的な記憶媒体

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005096634A1 (ja) * 2004-03-30 2005-10-13 Kanazawa University Technolgy Licensing Organization Ltd. マルチタスク処理システム、及び、マルチタスク処理方法
JP6756661B2 (ja) * 2017-04-28 2020-09-16 日立オートモティブシステムズ株式会社 車両電子制御装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019082996A (ja) 2017-10-31 2019-05-30 ナンジン ホライゾン ロボティクス テクノロジー カンパニー リミテッドNanjing Horizon Robotics Technology Co., Ltd. 畳み込みニューラルネットワークにおいて演算を実行する方法および装置並びに非一時的な記憶媒体

Also Published As

Publication number Publication date
WO2022244331A1 (ja) 2022-11-24
JP2022178465A (ja) 2022-12-02

Similar Documents

Publication Publication Date Title
DE102013223803A1 (de) Verfahren und Vorrichtung zur Segmentierung eines Belegungsgitters für ein Umfeldmodell eines Fahrerassistenzsystems für ein Fahrzeug
DE102009006214B4 (de) Verfahren zum Bereitstellen einer Umfeldrepräsentation eines Fahrzeugs
DE112012005531T5 (de) Anzeigesteuervorrichtung
DE102019124018A1 (de) Verfahren zum Optimieren von Tests von Regelsystemen für automatisierte Fahrdynamiksysteme
DE102017213510A1 (de) Verfahren und Vorrichtung zum Erzeugen eines maschinellen Lernsystems, und virtuelle Sensorvorrichtung
EP1038259B1 (de) Vorrichtung zur bilderfassung
DE112021005568T5 (de) Datenverarbeitungsvorrichtung und Datenverarbeitungsverfahren
DE102021207613A1 (de) Verfahren zur Qualitätssicherung eines Systems
DE112022001612T5 (de) Rechenvorrichtung, erkennungsvorrichtung und steuervorrichtung
DE102019213061A1 (de) Klassifizierung von KI-Modulen
DE102016208178A1 (de) Softwaresegmentierungsverfahren, Softwaresegmentierungsvorrichtung und fahrzeugeigene Vorrichtung
DE102015205901A1 (de) Verfahren zur Berechnung einer Route für ein Landfahrzeug
DE102016124123A1 (de) Verfahren zum Erzeugen eines Clusters von Bildbereichen zum Erfassen eines Zielobjekts in einem Bild, Computerprogrammprodukt, Kamerasystem und Kraftfahrzeug
DE102021005053A1 (de) Verfahren zum Fusionieren von einer Vielzahl von Sensordaten mittels einer elektronischen Recheneinrichtung, sowie ein Fahrerassistenzsystem
DE102021212483A1 (de) Datenverarbeitungsvorrichtung sowie Verfahren und Programm zum tiefen Lernen eines neuronalen Netzwerkes
DE112020005759T5 (de) Verfahren und System zum Bestimmen der Aufgabenkompatibilität in neuronalen Netzen
DE102010064063B4 (de) Verfahren und Vorrichtung zur rechnergestützten Prognose eine Fahrtdauer eines Fahrzeugs auf einer Route aus einem oder mehreren Routensegmenten
DE112020006317T5 (de) Computersystem und verfahren zum trainieren eines verkehrsagenten in einer simulationsumgebung
DE102019127322A1 (de) Verfahren zur Erfassung von Objekten in einer Fahrzeugumgebung, Vorrichtung zur Datenverarbeitung, Computerprogrammprodukt und computerlesbarer Datenträger
DE102022214233B3 (de) Bestimmen einer Ähnlichkeit von Verkehrsszenen zur Verbesserung maschineller Lernsysteme bzw. Algorithmen zur Trajektorienprädiktion oder Manöverplanung für automatisierte Fahrzeuge
DE102018126826A1 (de) Verfahren zum Bestimmen eines Konfidenzwerts für eine Erfassungsqualität einer Fahrbahnmarkierungsgrenze, Fahrerassistenzsystem sowie Kraftfahrzeug
DE112019006639T5 (de) Verfahren und Vorrichtung zur Ermittlung des Alterungsverhaltens eines Abgasnachbehandlungssystems
DE102022200160A1 (de) Verfahren zum Optimieren eines Prozesses
DE102022126945A1 (de) Verfahren zum Bestimmen eines hinsichtlich eines Zeit- und Energieverbrauchs optimalen Bewegungszustandes eines Objekts entlang einer Trajektorie
DE102022126944A1 (de) Verfahren zum Bestimmen eines hinsichtlich eines Zeit- und Energieverbrauchs optimalen Bewegungszustandes eines Objekts entlang einer Trajektorie

Legal Events

Date Code Title Description
R012 Request for examination validly filed