DE112019003910T5 - Informationsverarbeitungsverfahren, informationsverarbeitungsvorrichtung und informationsverarbeitungsprogramm - Google Patents

Informationsverarbeitungsverfahren, informationsverarbeitungsvorrichtung und informationsverarbeitungsprogramm Download PDF

Info

Publication number
DE112019003910T5
DE112019003910T5 DE112019003910.5T DE112019003910T DE112019003910T5 DE 112019003910 T5 DE112019003910 T5 DE 112019003910T5 DE 112019003910 T DE112019003910 T DE 112019003910T DE 112019003910 T5 DE112019003910 T5 DE 112019003910T5
Authority
DE
Germany
Prior art keywords
neural network
information
information processing
unit
evaluation
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
DE112019003910.5T
Other languages
English (en)
Inventor
Ryo Takahashi
Yukio Oobuchi
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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of DE112019003910T5 publication Critical patent/DE112019003910T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/2163Partitioning the feature space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • 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/048Activation functions

Landscapes

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

Abstract

Bei einem Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung bewertet ein Computer ein neuronales Netzwerk, das eine Struktur aufweist, die von einer ersten Vorrichtung und einer zweiten Vorrichtung auf geteilte Weise gehalten wird, wobei die Bewertung auf der Grundlage von Informationen durchgeführt wird, die die Übertragung von Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk betreffen, und bestimmt die Struktur des neuronalen Netzwerks auf der Grundlage der Bewertung des neuronalen Netzwerks.

Description

  • Gebiet der Technik
  • Die vorliegende Offenbarung betrifft ein Informationsverarbeitungsverfahren, eine Informationsverarbeitungsvorrichtung und ein Informationsverarbeitungsprogramm, und insbesondere die Verarbeitung zur automatischen Suche einer Struktur eines neuronalen Netzwerks.
  • Hintergrund
  • Neuronale Netzwerke, die jeweils einen Mechanismus des Nervensystems eines Gehirns simulieren, werden in verschiedenen technischen Bereichen eingesetzt. Da bekannt ist, dass die Lerngenauigkeit eines neuronalen Netzwerks stark von den gegebenen Daten und der Struktur des Netzwerks abhängt, wurden Technologien vorgeschlagen, um nach einer geeigneten Struktur im neuronalen Netzwerk zu suchen.
  • Beispielsweise ist eine Technologie bekannt, die effizient nach einer Struktur in Übereinstimmung mit einer Umgebung sucht, indem sie eine Pareto-optimale Lösung basierend auf einem Bewertungsergebnis eines neuronalen Netzwerks aktualisiert und ein anderes neuronales Netzwerk erzeugt, das eine andere Struktur als das neuronale Netzwerk aufweist, das mit der Pareto-optimalen Lösung verbunden ist.
  • Liste der Zitate
  • Patentliteratur
  • Patentliteratur 1: WO2017/154284
  • Zusammenfassung
  • Technische Problemstellung
  • Gemäß der herkömmlichen Technologie wird, während eine Netzwerkstruktur schrittweise unter Verwendung einer genetischen Operation erzeugt wird, nach einer optimalen Struktur gesucht. Zu diesem Zeitpunkt berücksichtigt die herkömmliche Technologie zusätzlich zu einer Erkennungsleistung eine Berechnungsmenge und kann daher eine Netzwerkstruktur erhalten, die selbst von einem Computer mit einer geringen Berechnungsleistung verarbeitbar ist.
  • Die herkömmliche Technologie geht jedoch davon aus, dass ein neuronales Netzwerk von einer einzelnen Vorrichtung verarbeitet wird. Wenn beispielsweise eine verteilte Verarbeitung durchgeführt wird, bei der mehrere Vorrichtungen das neuronale Netzwerk gemeinsam nutzen, ist es daher nicht immer möglich, nach einer optimalen Netzwerkstruktur zu suchen.
  • Somit schlägt die vorliegende Offenbarung ein Informationsverarbeitungsverfahren, eine Informationsverarbeitungsvorrichtung und ein Informationsverarbeitungsprogramm mit der Fähigkeit vor, bei der verteilten Verarbeitung des neuronalen Netzwerks nach einer geeigneten Netzwerkstruktur zu suchen.
  • Lösung des Problems
  • Um die vorstehend beschriebenen Probleme zu lösen, weist ein Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung die folgenden Schritte auf: Bewerten, durch einen Computer, eines neuronalen Netzwerks mit einer Struktur, die durch eine erste Vorrichtung und eine zweite Vorrichtung in geteilter Weise basierend auf Informationen über die Übertragung von Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk gehalten wird; und Bestimmen, durch den Computer, der Struktur des neuronalen Netzwerks basierend auf der Bewertung des neuronalen Netzwerks.
  • Vorteilhafte Wirkungen der Erfindung
  • Ein Informationsverarbeitungsverfahren, eine Informationsverarbeitungsvorrichtung und ein Informationsverarbeitungsprogramm gemäß der vorliegenden Offenbarung sind fähig, bei der verteilten Verarbeitung des neuronalen Netzwerks nach einer geeigneten Netzwerkstruktur zu suchen. Die hierin beschriebenen Auswirkungen sind nicht notwendigerweise beschränkt und können beliebige der in der vorliegenden Offenbarung beschriebenen Auswirkungen sein.
  • Figurenliste
    • 1 ist ein Diagramm, das ein Informationsverarbeitungssystem gemäß einer ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
    • 2 ist ein Diagramm, das ein Beispiel für eine Benutzeroberfläche gemäß der vorliegenden Offenbarung veranschaulicht.
    • 3 ist ein Diagramm (1) zur Erläuterung einer Struktur eines neuronalen Netzwerks gemäß der vorliegenden Offenbarung.
    • 4 ist ein Diagramm (2) zur Erläuterung der Struktur des neuronalen Netzwerks gemäß der vorliegenden Offenbarung.
    • 5 ist ein Diagramm, das ein Konfigurationsbeispiel einer Informationsverarbeitungsvorrichtung gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
    • 6 ist ein Diagramm, das ein Beispiel einer Recheneinheit-Informationsspeichereinheit gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
    • 7 ist ein Diagramm, das ein Beispiel einer Kommunikationsstandard-Speichereinheit gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
    • 8 ist ein Diagramm, das ein Beispiel einer Modellspeichereinheit gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
    • 9 ist ein Diagramm, das ein Beispiel einer Struktursuche mittels genetischer Operationen gemäß der vorliegenden Offenbarung veranschaulicht.
    • 10 ist ein Diagramm, das ein Beispiel der Struktursuche basierend auf einer Recheneinheitsinformation gemäß der vorliegenden Offenbarung veranschaulicht.
    • 11 ist ein Diagramm, das ein Konfigurationsbeispiel eines Informationsverarbeitungsservers gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
    • 12 ist ein Diagramm, das ein Konfigurationsbeispiel eines Endgeräts gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
    • 13 ist ein Flussdiagramm, das eine Prozedur für die Informationsverarbeitung gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
    • 14 ist ein Flussdiagramm, das eine Prozedur für die Suchverarbeitung gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
    • 15 ist ein Hardwarekonfigurationsdiagramm, das ein Beispiel eines Computers veranschaulicht, der Funktionen der Informationsverarbeitungsvorrichtung implementiert.
  • Beschreibung von Ausführungsformen
  • Nachfolgend werden Ausführungsformen der vorliegenden Offenbarung im Detail basierend auf den Zeichnungen beschrieben. In den folgenden Ausführungsformen werden dieselben Teile mit denselben Bezugszeichen bezeichnet, um eine wiederholte Beschreibung davon zu vermeiden.
  • (Erste Ausführungsform)
  • [Neuronales Netzwerk gemäß der vorliegenden Offenbarung]
  • Ein neuronales Netzwerk ist ein Modell, das einen neuronalen Schaltkreis des menschlichen Gehirns simuliert, und stellt eine Technik dar, um eine Lernfähigkeit, die Menschen besitzen, auf einem Computer zu erreichen. Eines der Merkmale des neuronalen Netzwerks ist, dass es die Lernfähigkeit besitzt. In dem neuronalen Netzwerk ändern künstliche Neuronen (Knoten), die durch Synapsen ein Netzwerk bilden, die Verbindungsstärke der Synapsen durch Lernen, um eine Fähigkeit zur Problemlösung zu erlangen. Das heißt, das neuronale Netzwerk wiederholt das Lernen, um automatisch eine Regel zum Lösen von Problemen abzuleiten.
  • Beispiele für das Lernen durch das neuronale Netzwerk sind unter anderem Bilderkennung und Spracherkennung. In dem neuronalen Netzwerk wird beispielsweise wiederholt ein handgeschriebenes Zahlenmuster gelernt, um es möglich zu machen, empfangene Bildinformationen in eine der Ziffern 0 bis 9 zu klassifizieren. Die Lernfähigkeit des neuronalen Netzwerks, wie vorstehend beschrieben, lenkt die Aufmerksamkeit als Schlüssel zur Entwicklung künstlicher Intelligenz auf sich. Es wird auch erwartet, dass die Erkennungsleistung des neuronalen Netzwerks bei Mustern auch auf verschiedene industrielle Bereiche angewendet wird.
  • Es ist bekannt, dass die Lerngenauigkeit des neuronalen Netzwerks stark von gegebenen Daten und der Netzwerkstruktur abhängt. Das heißt, beim Lernen durch das neuronale Netzwerk wirken sich Menge und Qualität der gegebenen Daten direkt auf die Leistung aus. Zudem können sich, selbst wenn dieselben Daten gegeben sind, neuronale Netzwerke mit unterschiedlichen Netzwerkstrukturen in ihrer Lerngenauigkeit stark unterscheiden.
  • Bei der Verarbeitung durch das neuronale Netzwerk zählt neben der Lerngenauigkeit die Berechnungsmenge zu den wichtigen Indikatoren. In dem neuronalen Netzwerk wird die Berechnungsmenge beispielsweise in Abhängigkeit von der Netzwerkstruktur erhalten. Im neuronalen Netzwerk nimmt die Lerngenauigkeit im Allgemeinen mit zunehmender Berechnungsmenge zu.
  • Da die Berechnungsmenge jedoch die Speichernutzung und die Ausführungszeit der Hardware stark beeinflusst, auf der das neuronale Netzwerk geladen ist, ist das neuronale Netzwerk mit hoher Lerngenauigkeit nicht unbedingt das beste. Mit anderen Worten, im neuronalen Netzwerk stehen die Berechnungsmenge und die Lerngenauigkeit in einer sogenannten Tauschbeziehung. Somit ist ein Verfahren zum Suchen nach einer Netzwerkstruktur mit höherer Lerngenauigkeit bei gleichzeitiger Reduzierung der Berechnungsmenge erwünscht.
  • Die Informationsverarbeitung gemäß der vorliegenden Offenbarung bewertet ein erzeugtes neuronales Netzwerk durch Fokussieren auf die Netzwerkstruktur, wie vorstehend beschrieben. Die Informationsverarbeitung gemäß der vorliegenden Offenbarung erzeugt dann ein neuronales Netzwerk mit einer effizienten Netzwerkstruktur basierend auf dem Bewertungsergebnis und stellt einem Benutzer das erzeugte neuronale Netzwerk bereit. In der vorliegenden Offenbarung schließt die Erzeugung des neuronalen Netzwerks die Verarbeitung zum Aktualisieren der Struktur eines vorhandenen neuronalen Netzwerks ein.
  • Die Erzeugung des neuronalen Netzwerks kann beispielsweise durch genetische Operationen erreicht werden, einschließlich z. B. Mutation und Crossover. Die Mutation kann ein Modell sein, das durch Modellierung der Mutation eines in einem lebenden Organismus gefundenen Gens erhalten wird. Das heißt, bei einem Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung wird jede Schicht, aus der sich das Netzwerk zusammensetzt, als Gen angesehen und wird mutiert, um ein anderes neuronales Netzwerk mit einer anderen Netzwerkstruktur zu erzeugen. Das vorstehend erwähnte Crossover kann ein Modell sein, das durch Modellierung des teilweisen gegenseitigen Austauschs von Chromosomen beim Crossover in lebenden Organismen erhalten wird. Das heißt, bei dem Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung kann das vorstehend beschriebene andere neuronale Netzwerk durch teilweises Austauschen der Schichtkonfigurationen von zwei Netzwerken erzeugt werden. Die Details der Mutation und des Crossover gemäß der vorliegenden Offenbarung werden nachfolgend beschrieben.
  • Das neuronale Netzwerk gemäß der vorliegenden Offenbarung weist eine Struktur auf, die auf eine erste Vorrichtung und eine zweite Vorrichtung verteilt ist. Beispielsweise ist die erste Vorrichtung z. B. eine Internet der Dinge (IdD)-Vorrichtung und ist ein Computer mit einer relativ geringen Rechenleistung. Die zweite Vorrichtung ist z. B. eine Servervorrichtung in der Cloud und ist ein Computer mit einer relativ hohen Rechenleistung. Beispielsweise ist die erste Vorrichtung eine Kamera mit einer Fotografiefunktion, und die zweite Vorrichtung ist eine Servervorrichtung, die z. B. über ein drahtloses Netzwerk mit der Kamera verbunden ist. In diesem Fall ist die angenommene Informationsverarbeitung beispielsweise eine Bilderkennungsverarbeitung für ein von der Kamera aufgenommenes Bild.
  • Wenn eine fortgeschrittene Verarbeitung, wie etwa die Bilderkennung, unter Verwendung eines Computers, wie etwa eine IdD-Vorrichtung, mit einer relativ geringen Rechenleistung durchgeführt wird, wird die Verarbeitung wünschenswerterweise auf verteilte Weise mit einer Vorrichtung durchgeführt, die fähig ist, die erweiterte Verarbeitung durchzuführen, anstatt die Verarbeitung nur mit der IdD-Vorrichtung durchzuführen. Beispielsweise kann die Informationsverarbeitung, die das neuronale Netzwerk verwendet, durch Verteilen, an den Server, eines Bereichs des neuronalen Netzwerks von einer Eingabeschicht an den Abschnitt einer vorherigen Stufe einer Zwischenschicht an die IdD-Vorrichtung, und durch Verteilen eines Bereichs des neuronalen Netzwerks von dem Abschnitt der späteren Stufe der Zwischenschicht an eine Ausgabeschicht verteilt werden.
  • In diesem Fall erfasst die IdD-Vorrichtung Zwischendaten, die kleiner als die Eingabedaten sind, über ein relativ kleines neuronales Netzwerk. Anders ausgedrückt: Die IdD-Vorrichtung erfasst Zwischendaten, die komprimiert worden sind, um so eine geringere Informationsmenge als die der Eingabedaten (z. B. Bilddaten) zu erhalten, die an die Eingabeschicht geliefert werden. Nach einer solchen Komprimierungsverarbeitung überträgt die IdD-Vorrichtung die Zwischendaten an die Servervorrichtung. Die Servervorrichtung führt die Verarbeitung des Abschnitts der späteren Stufe des relativ großen neuronalen Netzwerks basierend auf den erfassten Zwischendaten durch. Eine solche verteilte Verarbeitung kann die erweiterte Erkennungsverarbeitung verwirklichen, während Ressourcen, wie etwa elektrischer Strom, erhalten bleiben, die weniger verbraucht werden als wenn die Eingabedaten im Istzustand an die Servervorrichtung übertragen werden.
  • Daher wird bei dem Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung zusätzlich zu der vorstehend beschriebenen Bewertung von beispielsweise der Berechnungsmenge die Kompressionsverarbeitung in der ersten Vorrichtung durchgeführt, und das in die vorherige Stufe und die spätere Stufe unterteilte neuronale Netzwerk wird basierend auf Informationen über die Datenübertragung bewertet, einschließlich beispielsweise einer Bestimmung, in welcher Schicht des neuronalen Netzwerks die Zwischendaten übertragen werden sollen (im Folgenden wird dieser Übertragungsort als „Übertragungspunkt“ bezeichnet). Dadurch kann das Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung in geeigneter Weise nach der effizienten Struktur in dem geteilten neuronalen Netzwerk suchen. Nachfolgend wird das Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung unter Angabe spezifischer Beispiele beschrieben.
  • [Übersicht über die Informationsverarbeitung gemäß der ersten Ausführungsform]
  • 1 ist ein Diagramm, das eine Übersicht über das Informationsverarbeitungssystem gemäß einer ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht. Die Informationsverarbeitung gemäß der ersten Ausführungsform der vorliegenden Offenbarung wird von einem Informationsverarbeitungssystem 1 durchgeführt, das in 1 veranschaulicht ist. Das Informationsverarbeitungssystem 1 weist eine Informationsverarbeitungsvorrichtung 100, einen Informationsverarbeitungsserver 200 und ein Endgerät 300 auf.
  • Die Informationsverarbeitungsvorrichtung 100 ist ein Beispiel einer Informationsverarbeitungsvorrichtung gemäß der vorliegenden Offenbarung und ist eine Servervorrichtung, die von einem Benutzer 10 verwaltet wird, der nach einer Struktur eines neuronalen Netzwerks sucht. Die Informationsverarbeitungsvorrichtung 100 erzeugt ein neuronales Netzwerk gemäß den Operationen des Benutzers 10.
  • Der Informationsverarbeitungsserver 200 ist ein Beispiel für die zweite Vorrichtung gemäß der vorliegenden Offenbarung und ist eine Servervorrichtung, die die Verarbeitung der späteren Stufe in dem von der Informationsverarbeitungsvorrichtung 100 erzeugten neuronalen Netzwerk durchführt.
  • Das Endgerät 300 ist ein Beispiel für die erste Vorrichtung gemäß der vorliegenden Offenbarung und ist ein Informationsverarbeitungsendgerät, das die Verarbeitung der vorherigen Stufe in dem von der Informationsverarbeitungsvorrichtung 100 erzeugten neuronalen Netzwerk durchführt.
  • Unter Verwendung von 1 wird nachstehend die Übersicht über die Informationsverarbeitung gemäß der vorliegenden Offenbarung entlang des Durchführungsflusses beschrieben. Zunächst legt der Benutzer 10 über eine vorbestimmte Benutzeroberfläche, die von der Informationsverarbeitungsvorrichtung 100 bereitgestellt wird, ein neuronales Netzwerk fest, das der Benutzer 10 erzeugen möchte (Schritt S1). Beispielsweise legt der Benutzer 10 eine Struktur eines grundlegenden neuronalen Netzwerks fest, das für die Verarbeitung geeignet ist (zum Beispiel Bilderkennung oder Spracherkennung), die der Benutzer 10 ausführen möchte. Beispielsweise legt der Benutzer 10 beim Erzeugen eines neuronalen Netzwerks zum Durchführen der Bilderkennung z. B. eine Schichtstruktur gemäß beispielsweise einer Auflösung der empfangenen Bilddaten fest.
  • Der Benutzer 10 legt auch Informationen auf dem Informationsverarbeitungsserver 200 und dem Endgerät 300 fest, die tatsächlich eine Verarbeitung basierend auf dem neuronalen Netzwerk durchführen. Beispielsweise legt der Benutzer 10 z. B. die Rechenleistung, die das Endgerät 300 besitzt, und einen Dienst fest, der das Ziel des Informationsverarbeitungsservers 200 bereitstellt, der mit dem neuronalen Netzwerk der späteren Stufe geladen werden soll. Der Benutzer 10 legt beispielsweise auch einen Kommunikationsstandard zwischen dem Endgerät 300 und dem Informationsverarbeitungsserver 200 fest.
  • Die vorstehend beschriebene Operation wird unter Verwendung von 2 beschrieben. 2 ist ein Diagramm, das ein Beispiel für die Benutzeroberfläche gemäß der vorliegenden Offenbarung veranschaulicht. Der Benutzer 10 gibt über eine Benutzeroberfläche 50 Informationen über das neuronale Netzwerk ein, das der Benutzer 10 erzeugen möchte.
  • Beispielsweise gibt der Benutzer 10 Informationen in eine Recheneinheit des Endgeräts 300 ein, das die vorherige Stufe des neuronalen Netzwerks verarbeitet. Beispielsweise wählt der Benutzer 10 eine Platinenbezeichnung, ein System-on-a-Chip (SoC) und eine Architektur, die in dem Endgerät 300 enthalten ist, aus einer Dropdown-Anzeige 52 aus. Die Informationsverarbeitungsvorrichtung 100 speichert darin vorbestimmte numerische Werte, die diesen ausgewählten Informationen entsprechen, und kann die Struktur des neuronalen Netzwerks gemäß der Auswahl des Benutzers 10 ändern; die Details werden nachfolgend beschrieben.
  • Die Auswahl der in 2 dargestellten Informationen ist lediglich ein Beispiel, und die Dropdown-Anzeige 52 kann zur Auswahl beispielsweise eines Modellnamens und eines Herstellernamens des Endgeräts 300 verwendet werden. In diesem Fall kann die Informationsverarbeitungsvorrichtung 100 auf die Recheneinheit und die Rechenleistung Bezug nehmen, die einem ausgewählten Modell entsprechen, indem Informationen gespeichert werden, die dem Modellnamen und dem Herstellernamen des Endgeräts 300 entsprechen, ohne dass die Platinenbezeichnung und dergleichen des Endgeräts 300 von dem Benutzer 10 festgelegt werden müssen.
  • Der Benutzer 10 wählt aus einer Dropdown-Anzeige 54 den Kommunikationsstandard zwischen dem Endgerät 300 und dem Informationsverarbeitungsserver 200 sowie Informationen in Feldern einer Unterkategorie und Details zum Festlegen detaillierterer Informationen über den Kommunikationsstandard aus. Der Kommunikationsstandard ist beispielsweise der Third Generation (3G)-Standard, der Fourth Generation (4G)-Standard oder der Long Term Evolution (LTE)-Standard.
  • Der Benutzer 10 wählt aus einer Dropdown-Anzeige 56 einen Namen eines Dienstleistungsunternehmens aus, das beispielsweise einen Cloud-Server, der mit dem Abschnitt der späteren Stufe des neuronalen Netzwerks geladen werden soll, einen bestimmten Dienstnamen und detaillierte Informationen bereitstellt. Das Dienstleistungsunternehmen ist ein Unternehmen, das einen Cloud-Dienst für die Durchführung einer relativ fortgeschrittenen Verarbeitung bereitstellt, beispielsweise für den Benutzer 10 oder ein allgemeines Unternehmen.
  • Die Informationsverarbeitungsvorrichtung 100 speichert im Voraus die vorbestimmten numerischen Werte, die den vom Benutzer 10 auszuwählenden Informationen entsprechen, in einer Speichereinheit 120, wie vorstehend beschrieben, und sucht nach einer Struktur eines neuronalen Netzwerks, das für die vom Benutzer 10 ausgewählten Informationen geeignet ist.
  • Nachfolgend wird unter Verwendung von 3 die Struktur des neuronalen Netzwerks beschrieben, das auf geteilte Weise in dem Endgerät 300 und dem Informationsverarbeitungsserver 200 gehalten wird. 3 ist ein Diagramm (1) zur Erläuterung der Struktur des neuronalen Netzwerks gemäß der vorliegenden Offenbarung.
  • In dem in 3 veranschaulichten Beispiel ist konzeptionell eine Situation dargestellt, in der die Zwischendaten von dem Endgerät 300 über ein Netzwerk an den Informationsverarbeitungsserver 200 übertragen werden (Schritt S11). Wenn eine solche Verarbeitung durchgeführt wird, hält das Endgerät 300 einen Abschnitt der vorherigen Stufe 20 des neuronalen Netzwerks in einem neuronalen Netzwerk mit einer Zwischenschicht einer N-ten Schicht (wobei N eine beliebige natürliche Zahl ist) wie in 3 dargestellt. Der Informationsverarbeitungsserver 200 hält einen Abschnitt der späteren Stufe 25 des neuronalen Netzwerks. Das Endgerät 300 führt die Verarbeitung des Abschnitts der vorherigen Stufe 20 durch und überträgt die Zwischendaten an dem Übertragungspunkt (der dritten Schicht in dem Beispiel von 3) (Schritt S12). Der Informationsverarbeitungsserver 200 empfängt die am Übertragungspunkt übertragenen Zwischendaten und verwendet den Abschnitt der späteren Stufe 25, der die vierte und spätere Schichten einschließt, um die Verarbeitung durchzuführen.
  • Nachfolgend wird 4 verwendet, um die Informationsmenge, die von dem in 4 veranschaulichten neuronalen Netzwerk verarbeitet wird, konzeptionell darzustellen. 4 ist ein Diagramm (2) zur Erläuterung der Struktur des neuronalen Netzwerks gemäß der vorliegenden Offenbarung.
  • Ein Graph 30 von 4 veranschaulicht eine Beziehung zwischen der Struktur des neuronalen Netzwerks und der Informationsmenge. Eine in 4 veranschaulichte Anzeige 32 („die vierten und späteren Schichten“, dargestellt in 4) zeigt die Informationsmenge der Eingabedaten an, die an die Eingabeschicht des neuronalen Netzwerks geliefert werden. Eine in 4 veranschaulichte Anzeige 34 („die vierten und späteren Schichten“, dargestellt in 4) zeigt die Informationsmenge an, wenn die Informationsmenge komprimierter ist als die der Eingabedaten. Eine in 4 veranschaulichte Anzeige 36 („die vierten und späteren Schichten“, dargestellt in 4) zeigt den Übertragungspunkt, bei dem es sich um einen Punkt handelt, an dem die Zwischendaten an den Informationsverarbeitungsserver 200 übertragen werden.
  • In dem neuronalen Netzwerk gemäß der vorliegenden Offenbarung wird eine Schicht unter den Schichten, die in einem Abschnitt liegt, der tiefer als eine Schicht ist, von der Informationen, die die maximalen Größe aufweisen, ausgegeben werden (also eine Seite, die in dem Beispiel von 4 näher an der Eingabeschicht liegt (eine Seite, die näher an der linken Seite liegt)), und Informationen ausgibt, die eine Größe aufweisen, die kleiner als die Größe von Informationen ist, die von der Eingabeschicht des neuronalen Netzwerks ausgegeben werden, als der Übertragungspunkt bestimmt, an dem die Informationen von dem Endgerät 300 an den Informationsverarbeitungsserver 200 übertragen werden sollen. Das heißt, eine Schicht, die die vorstehend beschriebene Bedingung erfüllt, ist eine Zwischenschicht, die als Übertragungspunkt in dem neuronalen Netzwerk dient. In dem Beispiel von 4 entspricht die dritte Schicht dem Übertragungspunkt, wie in dem Graphen 30 veranschaulicht.
  • In dem Graphen 30 zeigt eine Anzeige 38 („die vierten und späteren Schichten“, veranschaulicht in 4) die Gesamtzahl von Schichten des neuronalen Netzwerks an. Eine Anzeige 40 („die vierten und späteren Schichten“, veranschaulicht in 4) zeigt die Anzahl von Schichten des Abschnitts der späteren Stufe des neuronalen Netzwerks an. Eine Anzeige 42 („AUSGABESCHICHT“, veranschaulicht in 4) zeigt die Ausgabeschicht des neuronalen Netzwerks an.
  • Wie vorstehend beschrieben, sucht die Informationsverarbeitungsvorrichtung 100 nach einem Übertragungspunkt, der die Bedingung erfüllt, um die Struktur des neuronalen Netzwerks zu bestimmen, das auf geteilte Weise gehalten wird. Die Informationsverarbeitungsvorrichtung 100 sucht nach einem Übertragungspunkt, der die Informationsmenge der Zwischendaten, die von dem Endgerät 300 an den Informationsverarbeitungsserver 200 übertragen werden, auf eine geringstmögliche Menge reduziert.
  • Dies liegt daran, dass in dem geteilten neuronalen Netzwerk die Informationen vorzugsweise so schnell wie möglich vom Endgerät 300 an den Informationsverarbeitungsserver 200 übertragen werden, und die Effizienz der Informationsverarbeitung im Allgemeinen verbessert wird, indem die übertragene Informationsmenge auf eine geringstmögliche Menge reduziert wird.
  • Die Beschreibung wird unter erneuter Bezugnahme auf 1 fortgesetzt. Wie unter Verwendung von 2 bis 4 beschrieben wurde, erzeugt die Informationsverarbeitungsvorrichtung 100 das neuronale Netzwerk basierend auf den vom Benutzer 10 festgelegten Informationen und die Informationen über die Übertragung beinhalten beispielsweise die Position des Übertragungspunkts und den Komprimierungsgrad der Zwischendaten (Schritt S2).
  • Die Informationsverarbeitungsvorrichtung 100 wertet nicht nur die vorstehend beschriebenen Informationen umfassend aus, sondern auch verschiedene Arten von Informationen, wie etwa beispielsweise die Berechnungsmenge und die Rechenleistung des Endgeräts 300, und erzeugt das neuronale Netzwerk basierend auf dem Bewertungsergebnis.
  • Beispielsweise verwendet die Informationsverarbeitungsvorrichtung 100 den nachfolgenden Ausdruck (1) zum Berechnen eines Bewertungswerts des neuronalen Netzwerks. V eval = k 1 V recognition + k 2 C computation + k 3 V energy _ saving
    Figure DE112019003910T5_0001
  • Im Ausdruck (1) bezeichnet „Reval“ den Bewertungswert des neuronalen Netzwerks. „Reval“ ist ein quantifizierter Wert einer Erkennungsleistung des neuronalen Netzwerks. Die Erkennungsleistung wird beispielsweise durch ein F-Maß, Precision (Genauigkeit), Recall (Trefferquote) und Intersection over Union (IoU) der Erkennungsverarbeitung des neuronalen Netzwerks dargestellt. Die Informationsverarbeitungsvorrichtung 100 wendet eine geeignete Normalisierung auf die oben aufgeführten numerischen Werte an, um einen numerischen Wert als Bewertungswert zu erhalten.
  • „Ccomputation“ ist ein quantifizierter Wert der für die Informationsverarbeitung des neuronalen Netzwerks erforderlichen Berechnungsmenge. Die Berechnungsmenge wird beispielsweise durch die Anzahl der Produktsummenoperationen und die Anzahl der Anweisungen in einem bestimmten Prozessor dargestellt.
  • „Venergy_saving“ ist ein durch Modellieren erhaltener Wert, wie viel elektrische Energie durch die Kompressionsverarbeitung der Netzwerkstruktur des neuronalen Zielnetzwerks reduziert wird. Ein Beispiel für die Berechnung von „Venergy_saving“ wird unter erneuter Verwendung des Graphen 30 von 4 beschrieben. Beispielsweise wird „Venergy_saving“ als der nachfolgende Ausdruck (2) basierend auf einer Beziehung zwischen einer Ausgabegröße jeder der Schichten des neuronalen Netzwerks und der Größe der Eingabedaten („die vierten und späteren Schichten“, veranschaulicht in 4) dargestellt.
  • V energy _ saving = { 0 if server _ layer _ num = all _ layer _ num 1 r compression × 1 1 r depth otherwise
    Figure DE112019003910T5_0002
  • Wie in Ausdruck (2) angegeben, hat „Venergy_saving“ einen Wert von „0“, wenn eine Struktur für das gesamte neuronale Netzwerk durch die zweite Vorrichtung (Informationsverarbeitungsserver 200) verarbeitet wird. Hingegen wird „Venergy_saving“ durch die zwei Variablen „rcompression“ und „rdepth“ erhalten, wenn das neuronale Netzwerk nicht in seiner Gesamtheit von dem Server verarbeitet wird, also eine geteilte Struktur aufweist. „rcompression“ wird beispielsweise durch den nachfolgenden Ausdruck (3) angegeben.
  • r compression = compressed _ size input _ size
    Figure DE112019003910T5_0003
  • Wie in Ausdruck (3) angegeben, ist „rcompression“ ein Verhältnis zwischen „die vierten und späteren Schichten“ und „die vierten und späteren Schichten“. Gemäß den Ausdrücken (2) und (3) erhöht sich mit der Verringerung von „die vierten und späteren Schichten“ der Wert von „Venergy_saving“, und somit wird das neuronale Netzwerk höher bewertet. „rdepth“ wird beispielsweise durch den nachfolgenden Ausdruck (4) angegeben.
  • r depth = server _ layer _ num all _ layer_num
    Figure DE112019003910T5_0004
  • Wie in Ausdruck (4) angegeben, ist „rdepth“ ein Verhältnis zwischen „die vierten und späteren Schichten“ und „die vierten und späteren Schichten“. Gemäß den Ausdrücken (2) und (4) erhöht sich mit der Erhöhung von „die vierten und späteren Schichten“ (anders ausgedrückt erhöht sich „rdepth“) der Wert von „Venergy_saving“, und somit wird das neuronale Netzwerk höher bewertet.
  • Wie vorstehend beschrieben, bewertet die Informationsverarbeitungsvorrichtung 100 gemäß den oben angegebenen Ausdrücken (2) bis (4), dass ein neuronales Netzwerk mehr elektrische Energie spart, wenn das neuronale Netzwerk eine Struktur aufweist, die die „geringstmögliche Menge von Zwischendaten“ in einer „frühestmöglichen Stufe (als tiefem Abschnitt) des neuronalen Netzwerks“ überträgt.
  • Im vorstehenden Ausdruck (1) sind „k1“, „k2“ und „k3“ Koeffizienten der jeweiligen Variablen bzw. stellen, anders ausgedrückt, vorbestimmte Gewichtungswerte für die Bewertung dar. Diese Gewichtungswerte können in Reaktion auf die Festlegung durch den Benutzer 10 bestimmt werden, welche Variablen gewichtet werden sollen, um das neuronale Netzwerk zu erzeugen. Die Gewichtungswerte können automatisch basierend auf einem numerischen Wert (numerischer Wert, der in der Informationsverarbeitungsvorrichtung 100 gespeichert ist) bestimmt werden, der im Voraus basierend auf der Rechenleistung des Endgeräts 300 und einer Beziehung, wie beispielsweise dem Kommunikationsstandard zwischen dem Endgerät 300 und dem Informationsverarbeitungsserver 200, eingestellt wurde.
  • Die Informationsverarbeitungsvorrichtung 100 verwendet den Ausdruck (1), um das erzeugte neuronale Netzwerk zu bewerten. Die Informationsverarbeitungsvorrichtung 100 sucht dann weiter nach der Struktur des neuronalen Netzwerks, bis der Bewertungswert eine vorbestimmte Bedingung erfüllt. Beispielsweise verwendet die Informationsverarbeitungsvorrichtung 100 ein Suchverfahren für genetische Strukturen - das später beschrieben wird-, um die Struktur des neuronalen Netzwerks zu ändern, und berechnet den Bewertungswert für die geänderte Struktur.
  • Wenn eine gefundene Struktur die vorbestimmte Bedingung erfüllt (zum Beispiel, wenn der Bewertungswert einen von dem Benutzer 10 im Voraus festgelegten Schwellenwert überschreitet), bestimmt die Informationsverarbeitungsvorrichtung 100, dass die Struktur des bewerteten neuronalen Netzwerks optimal ist, und bestimmt die Struktur des bereitzustellenden neuronalen Netzwerks. Die Informationsverarbeitungsvorrichtung 100 erzeugt ein neuronales Netzwerk basierend auf der bestimmten Struktur und speichert das erzeugte neuronale Netzwerk in der Speichereinheit 120.
  • Die Informationsverarbeitungsvorrichtung 100 überträgt dann das neuronale Netzwerk mit der bestimmten Struktur an den Informationsverarbeitungsserver 200 (Schritt S3). Der Informationsverarbeitungsserver 200 empfängt das übertragene neuronale Netzwerk. Der Informationsverarbeitungsserver 200 teilt dann das empfangene neuronale Netzwerk an dem Übertragungspunkt (Schritt S4). Der Informationsverarbeitungsserver 200 speichert den Abschnitt der späteren Stufe des geteilten neuronalen Netzwerks in einer Speichereinheit 220.
  • Der Informationsverarbeitungsserver 200 überträgt ferner den Abschnitt der vorherigen Stufe des geteilten neuronalen Netzwerks an das Endgerät 300 (Schritt S5). Das Endgerät 300 empfängt den übertragenen Abschnitt der vorherigen Stufe von dem neuronalen Netzwerk und speichert dann den erhaltenen Abschnitt der vorherigen Stufe in einer Speichereinheit 320.
  • Wenn sich die Gelegenheit ergibt, beispielsweise bei der Bilderkennungsverarbeitung unter Verwendung des neuronalen Netzwerks, verwendet das Endgerät 300 den Abschnitt der vorherigen Stufe des neuronalen Netzwerks, um die Zwischendaten zu erhalten, die durch Komprimieren der empfangenen Bilddaten erzeugt wurden. Das Endgerät 300 überträgt dann die Zwischendaten an den Informationsverarbeitungsserver 200. Der Informationsverarbeitungsserver 200 liefert die von dem Endgerät 300 übertragenen Zwischendaten an den Abschnitt der späteren Stufe des neuronalen Netzwerks, um die Bilderkennungsverarbeitung durchzuführen. Dadurch können das Endgerät 300 und der Informationsverarbeitungsserver 200 die erweiterte Erkennungsverarbeitung erreichen, ohne die Bilddaten, die eine große Informationsmenge aufweisen, im Istzustand an den Informationsverarbeitungsserver 200 zu übertragen. Somit können die Arbeitslasten der Kommunikation und der Berechnung verringert werden.
  • Wie vorstehend beschrieben, bewertet das Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung das neuronale Netzwerk basierend auf den Informationen über die Übertragung der Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk, dessen Struktur durch die erste Vorrichtung (Endgerät 300) und die zweite Vorrichtung (Informationsverarbeitungsserver 200) auf geteilte Weise gehalten wird. Das Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung bestimmt ferner die Struktur des neuronalen Netzwerks basierend auf der Bewertung des neuronalen Netzwerks.
  • Insbesondere verwendet das Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung die Informationen bezüglich der Übertragung für die Bewertung, um nach der Struktur des neuronalen Netzwerks zu suchen, das auf geteilte Weise gehalten wird, beispielsweise basierend auf dem Komprimierungsgrad der von der Kantenseite (Endgerät 300) übertragenen Daten und der Position des Übergabepunkts. Somit kann mit dem Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung die optimale Struktur im Fall der Durchführung der verteilten Verarbeitung, wie etwa der Erkennungsverarbeitung durch Kommunikation, unter Verwendung des neuronalen Netzwerks gesucht werden.
  • [Konfiguration der Informationsverarbeitungsvorrichtung gemäß der ersten Ausführungsform]
  • Nachfolgend wird eine Konfiguration der Informationsverarbeitungsvorrichtung 100 beschrieben, die als Beispiel für die Informationsverarbeitungsvorrichtung dient, die die Informationsverarbeitung gemäß der ersten Ausführungsform durchführt. 5 ist ein Diagramm, das ein Konfigurationsbeispiel der Informationsverarbeitungsvorrichtung 100 gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
  • Wie in 5 veranschaulicht, weist die Informationsverarbeitungsvorrichtung 100 eine Kommunikationseinheit 110, die Speichereinheit 120 und eine Steuereinheit 130 auf. Die Informationsverarbeitungsvorrichtung 100 kann eine Eingabeeinheit (wie etwa eine Tastatur und eine Maus) zum Empfangen verschiedener Operationen von beispielsweise einem Administrator, der die Informationsverarbeitungsvorrichtung 100 verwaltet, und eine Anzeigeeinheit (wie einer Flüssigkristallanzeige) zum Anzeigen verschiedener Arten von Informationen aufweisen.
  • Die Kommunikationseinheit 110 wird beispielsweise durch eine Netzwerkschnittstellenkarte (Network Interface Card, NIC) implementiert. Die Kommunikationseinheit 110 ist drahtgebunden oder drahtlos mit einem Netzwerk N (wie etwa dem Internet) verbunden und sendet und empfängt beispielsweise Informationen an und von dem Informationsverarbeitungsserver 200 und dem Endgerät 300 über das Netzwerk N.
  • Die Speichereinheit 120 wird durch eine Halbleiterspeichervorrichtung, wie etwa einen Direktzugriffsspeicher (RAM) oder einen Flash-Speicher, oder eine Speichervorrichtung, wie etwa eine Festplatte oder eine optische Platte, implementiert. Die Speichereinheit 120 weist eine Lerndatenspeichereinheit 121, eine Recheneinheit-Informationsspeichereinheit 122, eine Kommunikationsstandard-Speichereinheit 123 und eine Modellspeichereinheit 124 auf. Die Speichereinheiten werden nachstehend aufeinanderfolgend beschrieben.
  • In der Lerndatenspeichereinheit 121 wird eine Lerndatengruppe gespeichert, die für das Lernen des neuronalen Netzwerks verwendet wird. Die Lerndaten sind beispielsweise ein Satz von Bilddaten und ein Satz von korrekten Antwortdaten, die als Erkennungsergebnis der Bilddaten dienen. Die Lerndaten können beispielsweise, soweit angemessen, von einem externen Server erfasst werden, ohne von der Informationsverarbeitungsvorrichtung 100 gehalten zu werden.
  • In der Recheneinheit-Informationsspeichereinheit 122 werden Informationen über Recheneinheiten gespeichert, die in Vorrichtungen enthalten sind, die arithmetische Verarbeitungen unter Verwendung des neuronalen Netzwerks durchführen. Ein Beispiel für die Recheneinheit-Informationsspeichereinheit 122 gemäß der ersten Ausführungsform wird in 6 veranschaulicht. 6 ist ein Diagramm, das ein Beispiel der Recheneinheit-Informationsspeichereinheit 122 gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht. In dem in 6 veranschaulichten Beispiel weist die Recheneinheit-Informationsspeichereinheit 122 verschiedene Elemente auf, beispielsweise „Gerätekennung (ID)“, „Typ“ und „Recheneinheitsinformation“.
  • Die „Gerätekennung“ ist eine Kennungsinformation zum Identifizieren eines Geräts, das die Verarbeitung unter Verwendung des neuronalen Netzwerks durchführt. Der „Typ“ bezeichnet einen Typ von Gerät.
  • Die „Recheneinheitsinformation“ bezeichnet eine Information über eine in jedem der Vorrichtungen enthaltene Recheneinheit. Obwohl in 6 das Element der Recheneinheitsinformation konzeptionell als „Recheneinheitsinformation Nr. 1“ beschrieben wird, können in dem Element der Recheneinheitsinformation tatsächlich verschiedene Informationselemente gespeichert werden, beispielsweise, ob die Vorrichtung eine Recheneinheit aufweist, die Gleitkomma-Operationen unterstützt, oder die Rechenleistung der Recheneinheit sowie Informationen für die Identifizierung, beispielsweise eine Platine oder ein SoC, die für die Berechnung verwendet werden. Die Informationsverarbeitungsvorrichtung 100 kann die Bewertung des neuronalen Netzwerks in Übereinstimmung mit der in jeder der Vorrichtungen enthaltenen Recheneinheit und deren Rechenleistung berechnen; die Details werden nachfolgend beschrieben. Zu diesem Zeitpunkt kann die Informationsverarbeitungsvorrichtung 100 eine vorbestimmte Korrektur des Bewertungswerts basierend auf der Recheneinheitsinformation der Vorrichtung vornehmen, die das neuronale Netzwerk ausführt.
  • In dem in 6 veranschaulichten Beispiel ist der Typ einer Vorrichtung, die durch eine Gerätekennung „A01“ identifiziert ist, der „Server“ und dessen Recheneinheitsinformation ist die „Recheneinheitsinformation Nr. 1“.
  • Nachfolgend wird die Kommunikationsstandard-Speichereinheit 123 beschrieben. In der Kommunikationsstandard-Speichereinheit 123 wird eine Beziehung jedes Kommunikationsstandards, der für die Kommunikation zwischen der ersten Vorrichtung und der zweiten Vorrichtung verwendet wird, wenn das neuronale Netzwerk auf verteilte Weise gehalten wird, mit einem vorbestimmten numerischen Wert gespeichert, der dem Kommunikationsstandard gegeben ist. Ein Beispiel für die Kommunikationsstandard-Speichereinheit 123 gemäß der ersten Ausführungsform wird in 7 veranschaulicht. 7 ist ein Diagramm, das ein Beispiel der Kommunikationsstandard-Speichereinheit 123 gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht. In dem in 7 veranschaulichten Beispiel weist die Kommunikationsstandard-Speichereinheit 123 verschiedene Elemente auf, beispielsweise die „Kommunikationsstandard-Kennung“, den „Kommunikationsstandard“ und den „Korrekturwert“.
  • Die „Kommunikationsstandard-Kennung“ bezeichnet die Kennungsinformation zum Identifizieren eines Kommunikationsstandards. Der „Kommunikationsstandard“ bezeichnet den für die Kommunikation zwischen der ersten Vorrichtung und der zweiten Vorrichtung verwendeten Kommunikationsstandard. Der „Korrekturwert“ ist ein Wert, der zur Korrektur gemäß dem festgelegten Kommunikationsstandard verwendet wird, wenn der Kommunikationsstandard von dem Benutzer 10 bei der Erzeugung des neuronalen Netzwerks festgelegt wird. Beispielsweise wird der Korrekturwert zum Bestimmen der in Ausdruck (1) angegebenen Gewichtungswerte verwendet. Obwohl in 7 das Element des Korrekturwerts konzeptionell als „Korrekturwert Nr. 11“ beschrieben wird, wird in dem Element des Korrekturwerts tatsächlich ein numerischer Wert als tatsächlicher Ersatz für jeden der Gewichtungswerte oder ein numerischer Wert, wie etwa ein Verhältnis zur Multiplikation bei der Berechnung der Gewichtungswerte, gespeichert.
  • Das heißt, das in 7 veranschaulichte Beispiel zeigt an, dass der durch die Kommunikationsstandard-Kennung „B01“ identifizierte Kommunikationsstandard „3G“ ist und dessen Korrekturwert der „Korrekturwert Nr. 11“ ist.
  • Nachfolgend wird die Modellspeichereinheit 124 beschrieben. In der Modellspeichereinheit 124 wird ein Modell (beispielsweise ein Bilderkennungsmodell mit einer geteilten Struktur eines neuronalen Netzwerks) gespeichert, das von der Informationsverarbeitungsvorrichtung 100 erzeugt wird. Ein Beispiel für die Modellspeichereinheit 124 gemäß der ersten Ausführungsform wird in 8 veranschaulicht. 8 ist ein Diagramm, das das Beispiel der Modellspeichereinheit 124 gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht. In dem in 8 veranschaulichten Beispiel weist die Modellspeichereinheit 124 verschiedene Elemente auf, beispielsweise die „Modellkennung“, „Strukturinformation“, „Übertragungsinformation“ und den „Bewertungswert“.
  • Die „Modellkennung“ bezeichnet Identifikationsinformationen zum Identifizieren des Modells. Die „Strukturinformation“ bezeichnet Informationen über die Struktur des Modells. Obwohl in 8 das Element der Strukturinformation konzeptionell als „Strukturinformation Nr. 1“ beschrieben wird, werden in dem Element der Strukturinformation tatsächlich verschiedene Arten von Informationen über die Struktur des neuronalen Netzwerks gespeichert, wie etwa die Gesamtzahl von Schichten, der als Eingabedaten empfangene Datentyp und die Informationsmenge oder der Typ von Aktivierungsfunktion.
  • Die „Übertragungsinformation“ bezeichnet die Information über die Übertragung in dem Modell, das auf verteilte Weise gehalten wird. Obwohl in 8 das Element der Übertragungsinformation konzeptionell als „Übertragungsinformation Nr. 1“ beschrieben wird, werden in dem Element der Übertragungsinformation tatsächlich beispielsweise ein Komprimierungsverhältnis der übertragenen Zwischendaten und eine Information über den Übertragungspunkt gespeichert.
  • Der „Bewertungswert“ bezeichnet den Bewertungswert des Modells. Obwohl in 8 das Element des Bewertungswerts konzeptionell als „Bewertungswert Nr. 1“ beschrieben wird, werden in dem Element des Bewertungswerts tatsächlich beispielsweise der numerische Wert des spezifischen Bewertungswerts des Modells, der unter Verwendung von Ausdruck (1) berechnet wird, gespeichert.
  • Das heißt, das in 8 veranschaulichte Beispiel zeigt an, dass das durch die Modellkennung „M01“ identifizierte Modell die Strukturinformation „Strukturinformation Nr. 1“, die Übertragungsinformation „Übertragungsinformation Nr.1“ und den Bewertungswert „Bewertungswert Nr. 1“ aufweist.
  • Die Beschreibung wird unter erneuter Bezugnahme auf 5 fortgesetzt. Die Steuereinheit 130 wird durch Ausführen eines Computerprogramms (beispielsweise ein Informationsverarbeitungsprogramm gemäß der vorliegenden Offenbarung) implementiert, das in der Informationsverarbeitungsvorrichtung 100 durch beispielsweise eine zentrale Verarbeitungseinheit (CPU) oder eine Mikroprozessoreinheit (MPU) unter Verwendung von beispielsweise eines RAM als Arbeitsbereich gespeichert ist. Die Steuereinheit 130 ist eine Steuerung und kann durch eine integrierte Schaltung, wie etwa eine anwendungsspezifische integrierte Schaltung (ASIC) oder ein feldprogrammierbares Gate-Array (FPGA) implementiert werden.
  • Wie in 5 veranschaulicht, weist die Steuereinheit 130 eine Empfangseinheit 131, eine Erzeugungseinheit 132, eine Sucheinheit 133, eine Bewertungseinheit 134, eine Bestimmungseinheit 135 und eine Übertragungseinheit 136 auf und implementiert Funktionen oder Operationen der zu verarbeitenden Informationsverarbeitung oder führt diese aus, wie nachstehend beschrieben. Die interne Konfiguration der Steuereinheit 130 ist nicht auf die in 5 veranschaulichte Konfiguration beschränkt und kann eine andere Konfiguration aufweisen, solange es sich um eine Konfiguration zur Durchführung der nachstehend beschriebenen Informationsverarbeitung handelt.
  • Die Empfangseinheit 131 empfängt verschiedene Arten von Informationen. Beispielsweise empfängt die Empfangseinheit 131 eine Anforderung zur Erzeugung des neuronalen Netzwerks von dem Benutzer 10 über die in 2 veranschaulichte Benutzeroberfläche 50.
  • Die Empfangseinheit 131 empfängt zusammen mit der Anforderung zur Erzeugung den Typ der Informationsverarbeitung, wie etwa Bilderkennung oder Spracherkennung, die unter Verwendung des neuronalen Netzwerks von dem Benutzer 10 durchgeführt wird. Die Empfangseinheit 131 empfängt Informationen, wie etwa den Typ und die Auflösung der Eingabedaten. Das heißt, die Empfangseinheit 131 empfängt von dem Benutzer 10 grundlegende Informationen, die zum Bestimmen der grundlegenden Struktur des neuronalen Netzwerks erforderlich sind.
  • Die Empfangseinheit 131 empfängt, über die Benutzeroberfläche 50, auch Konfigurationen der ersten Vorrichtung und der zweiten Vorrichtung, die das erzeugte neuronale Netzwerk ausführen, den Kommunikationsstandard zwischen der ersten Vorrichtung und der zweiten Vorrichtung sowie Informationen über eine Umgebung, in der das neuronale Netzwerk bereitgestellt wird.
  • Die Konfigurationen der ersten Vorrichtung und der zweiten Vorrichtung sind Informationen, die von dem Benutzer 10 unter Verwendung beispielsweise der in 2 veranschaulichten Dropdown-Anzeige 52 festgelegt werden, und sind beispielsweise die Platinenbezeichnung und beispielsweise die Bezeichnung des SoC der ersten Vorrichtung. Der Kommunikationsstandard zwischen der ersten Vorrichtung und der zweiten Vorrichtung ist eine Information, die von dem Benutzer 10 unter Verwendung beispielsweise der in 2 veranschaulichten Dropdown-Anzeige 54 festgelegt wird. Beispielsweise legt der Benutzer 10 zur Durchführung der Verarbeitung unter Verwendung eines Kommunikationsstandards, der sowohl von der ersten Vorrichtung als auch von der zweiten Vorrichtung unterstützt wird, und unter der tatsächlichen Verwendung des neuronalen Netzwerks beispielsweise den angenommenen Kommunikationsstandard zwischen der ersten Vorrichtung und der zweiten Vorrichtung fest. Die Empfangseinheit 131 empfängt den vom Benutzer 10 festgelegten Kommunikationsstandard.
  • Die Informationen über die Umgebung, in der das neuronale Netzwerk bereitgestellt wird, sind Informationen, die von dem Benutzer 10 unter Verwendung beispielsweise der in 2 veranschaulichten Dropdown-Anzeige 56 festgelegt werden, und sind beispielsweise ein Name eines Dienstleistungsunternehmens, das beispielsweise einen Cloud-Server bereitstellt, auf den die spätere Stufe des neuronalen Netzwerks geladen werden soll.
  • Die Empfangseinheit 131 kann die Gewichtungswerte in Ausdruck (1) beispielsweise basierend auf den Konfigurationen der ersten Vorrichtung und der zweiten Vorrichtung, die von dem Benutzer 10 empfangen werden, dem Kommunikationsstandard zwischen der ersten Vorrichtung und der zweiten Vorrichtung und den Informationen über die Umgebung, in der das neuronale Netzwerk bereitgestellt wird, bestimmen. Beispielsweise werden numerische Werte, die als Referenzen dienen, im Voraus als Gewichtungswerte von beispielsweise dem Administrator der Informationsverarbeitungsvorrichtung 100 angegeben. Insbesondere wenn beispielsweise der Kommunikationsstandard „3G“ ist, werden die Gewichtungswerte beispielsweise bestimmt, indem der Wert von „k3“ auf einen relativ großen Wert korrigiert wird, während eine Beziehung beibehalten wird, in der die Summe von „k1“, „2“ und „k3“ in Ausdruck (1) „1“ ist. Dies liegt daran, dass, wenn der Kommunikationsstandard beispielsweise „3G“ ist, die Übertragungsgeschwindigkeit relativ niedrig ist und dementsprechend angenommen wird, dass „Venergy_saving“ eine Variable ist, die bewirkt, dass bei der Übertragung zwischen der ersten Vorrichtung und der zweiten Vorrichtung einen Engpass bei der Informationsverarbeitung auftritt. Anders ausgedrückt: Dies ist darin begründet, dass, wenn angenommen wird, dass die Kommunikation zwischen der ersten Vorrichtung und der zweiten Vorrichtung mit einer niedrigen Geschwindigkeit durchgeführt wird, die Informationsverarbeitung in dem geteilten neuronalen Netzwerk mit größerer Wahrscheinlichkeit reibungslos ausgeführt wird, wenn „Venergy_saving“ stärker gewichtet wird. Die Einstellung der Gewichtungswerte ist nicht auf das vorstehend beschriebene Beispiel beschränkt und kann automatisch vorgenommen werden, indem beispielsweise eine Lernverarbeitung basierend auf einem Ergebnis der tatsächlichen Informationsverarbeitung durchgeführt wird. Die Gewichtungswerte können auch durch Empfangen einer Eingabe von numerischen Werten durch den Benutzer 10 bestimmt werden
  • Die Erzeugungseinheit 132 erzeugt das neuronale Netzwerk, dessen Struktur von der ersten Vorrichtung und der zweiten Vorrichtung auf geteilte Weise gehalten wird. Beispielsweise erzeugt die Erzeugungseinheit 132 das von dem Benutzer 10 benötigte neuronale Netzwerk basierend auf den von der Empfangseinheit 131 empfangenen Informationen.
  • Die Erzeugungseinheit 132 aktualisiert das erzeugte neuronale Netzwerk durch Verarbeitung durch die Sucheinheit 133 und die Bewertungseinheit 134, die nachfolgend beschrieben werden. Beispielsweise aktualisiert die Erzeugungseinheit 132 die Struktur des vorhandenen neuronalen Netzwerks durch Suchverarbeitung durch die Sucheinheit 133. Die Erzeugungseinheit 132 aktualisiert das neuronale Netzwerk basierend auf dem von der Bewertungseinheit 134 berechneten Bewertungswert. Wenn beispielsweise der von der Bewertungseinheit 134 berechnete Bewertungswert niedriger als ein vorbestimmter Schwellenwert ist, bestimmt die Erzeugungseinheit 132, dass die Struktur des neuronalen Netzwerks nicht optimal ist, und aktualisiert das neuronale Netzwerk auf eine Struktur, die durch die Sucheinheit 133 neu gefunden wurde.
  • Die Sucheinheit 133 sucht nach der Struktur des neuronalen Netzwerks. Die Sucheinheit 133 kann unter Verwendung verschiedener bekannter Verfahren nach der Struktur suchen. Beispielsweise kann die Sucheinheit 133 die genetischen Operationen verwenden, um nach der Struktur des neuronalen Netzwerks zu suchen.
  • Nachfolgend wird unter Verwendung von 9 ein Beispiel beschrieben, in dem die Sucheinheit 133 die genetischen Operationen verwendet, um nach der Struktur des neuronalen Netzwerks zu suchen. 9 ist ein Diagramm, das ein Beispiel der Struktursuche mittels genetischer Operationen gemäß der vorliegenden Offenbarung veranschaulicht. 9 veranschaulicht das Beispiel der Suche nach einer Struktur eines neuronalen Netzwerks (während ein neues neuronales Netzwerk erzeugt wird) unter Verwendung der Mutation als eine der genetischen Operationen.
  • Insbesondere in dem in 9 veranschaulichten Beispiel wird ein anderes neuronales Netzwerk mit einer anderen Netzwerkstruktur aus einem bereits bewerteten neuronalen Netzwerk erzeugt, das als Grundlage dient (im Folgenden als „Startnetzwerk“ bezeichnet).
  • Wie vorstehend beschrieben, umfasst die Suche nach der Struktur des neuronalen Netzwerks unter Verwendung der genetischen Operationen beispielsweise die Mutation und das Crossover. Das heißt, bei dem Suchverfahren gemäß der vorliegenden Offenbarung wird jede Schicht, die das Netzwerk bildet, als ein Gen angesehen, und die Schichten werden mutiert oder mittels Crossover ausgetauscht, um das andere neuronale Netzwerk mit der unterschiedlichen Netzwerkstruktur zu erzeugen.
  • In dem in 9 veranschaulichten Beispiel ist ein Startnetzwerk SN aus 10 Schichten aufgebaut, einschließlich „Eingabe“ und „Ausgabe“. „Eingabe“ bezeichnet die Eingabeschicht und „Ausgabe“ bezeichnet die Ausgabeschicht. „Falt1“ und „Falt2“, wie in 9 veranschaulicht, stellen Faltungsschichten dar. „Pool1“ und „Pool2“ bezeichnen Max-Pooling-Schichten. Wie in 9 veranschaulicht, werden Parameter wie eine Kernelform und die Anzahl der Ausgabekarten jeweils in „Falt1“ und „Falt2“ eingestellt. In „Pool1“ und „Pool2“ wird jeweils ein Parameter festgelegt, der eine Poolform darstellt. Da die in 9 veranschaulichten Schichten im Allgemeinen weit verbreitet sind, werden sie nicht im Detail beschrieben. Die Struktur der in 9 veranschaulichten Schichten wird von dem Benutzer 10 beispielsweise über die Benutzeroberfläche 50 als aufgabenspezifische Information definiert, die unter Verwendung des neuronalen Netzwerks verarbeitet werden soll.
  • Im Folgenden wird ein neuronales Netzwerk MN1 beschrieben, das in 9 veranschaulicht wird. Die Sucheinheit 133 mutiert das Startnetzwerk SN oder nimmt ein Crossover darin vor, um das neuronale Netzwerk MN1 zu erzeugen, das als das andere neuronale Netzwerk dient (Schritt S21).
  • Wie in 9 veranschaulicht, wird das neuronale Netzwerk MN1 erhalten, indem die Schichtkonfiguration der Netzwerkstruktur des Startnetzwerks SN teilweise geändert wird. Insbesondere wurde in dem neuronalen Netzwerk MN1 eine Aktivierungsfunktion „relu1“ des Startnetzwerk SN in eine andere Aktivierungsfunktion „Tanh1“ geändert. Auf diese Weise kann bei dem Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung das andere neuronale Netzwerk mit der unterschiedlichen Netzwerkstruktur durch Ändern des Schichttyps einer in der Netzwerkstruktur enthaltenen Schicht erzeugt werden.
  • Außerdem kann die Sucheinheit 133 das neuronale Netzwerk MN1 mutieren oder darin ein Crossover vornehmen, um ein neuronales Netzwerk MN2 zu erzeugen, das als noch ein weiteres neuronales Netzwerk dient (Schritt S22).
  • Wie in 9 veranschaulicht, ist in der Netzwerkstruktur des neuronalen Netzwerks MN2 zusätzlich zur Schichtkonfiguration des neuronalen Netzwerks MN1 eine Aktivierungsfunktion „Abs1“ eingefügt. Auf diese Weise kann bei dem Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung das noch andere neuronale Netzwerk MN2 mit der unterschiedlichen Netzwerkstruktur durch neues Einsetzen der Schicht erzeugt werden.
  • Die mit den genetischen Operationen verbundene Mutation weist zusätzlich zu der vorstehend beschriebenen Verarbeitung Operationen wie „Schichteinsetzung“, „Schichtlöschung“, „Schichttypänderung“, „Parameteränderung“, „Graphverzweigung“ und „Graphverzweigungslöschung“ auf. Das mit den genetischen Operationen verbundene Crossover ist eine Operation des Austauschs von Schichten zwischen einem von dem Benutzer 10 zusätzlich festgelegten Startnetzwerk und dem gegenwärtig gehaltenen neuronalen Netzwerk. Verschiedene Methoden wie Einpunkt-Crossover, Zweipunkt-Crossover und Mehrpunkt-Crossover können als Verfahren zum Austausch von Schichten unterstützt werden.
  • Die vorstehend beschriebene Struktursuchverarbeitung ist lediglich ein Beispiel, und das Verfahren zum Suchen und Erzeugen der Struktur ist nicht auf das Beispiel unter Verwendung der genetischen Operationen in dem Informationsverarbeitungsverfahren gemäß der vorliegenden Offenbarung beschränkt.
  • Die Bewertungseinheit 134 bewertet das neuronale Netzwerk (mit anderen Worten die Netzwerkstruktur, die das neuronale Netzwerk besitzt).
  • Zunächst verwendet die Bewertungseinheit 134 die Struktur des neuronalen Netzwerks, die von der Sucheinheit 133 gefunden wurde, um die Lerndaten zu lernen, die beispielsweise von der Lerndatenspeichereinheit 121 gehalten werden. Die Bewertungseinheit 134 berechnet dann den Bewertungswert, wobei beispielsweise die Informationen über die Übertragung, einen Energiespareffekt und die Erkennungsleistung und die Berechnungsmenge des neuronalen Netzwerks umfassend berücksichtigt werden, wie nachfolgend beschrieben. In der vorstehend beschriebenen Lernverarbeitung kann beispielsweise eine vorhandene Softwarebibliothek verwendet werden, die zum Lernen und Bewerten des neuronalen Netzwerks entwickelt wurde, soweit angemessen.
  • In der vorliegenden Offenbarung bewertet die Bewertungseinheit 134 das neuronale Netzwerk basierend auf den Informationen über die Übertragung der Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk, wobei die Struktur durch die erste Vorrichtung und die zweite Vorrichtung auf geteilte Weise gehalten wird.
  • Beispielsweise bestimmt die Bewertungseinheit 134 den Übertragungspunkt, an dem die Informationen von der ersten Vorrichtung an die zweite Vorrichtung übertragen werden sollen, als eine Schicht unter den Schichten des neuronalen Netzwerks, die in einem tieferen Abschnitt liegt als eine Schicht, aus der Informationen, die eine maximale Größe aufweisen, ausgegeben werden, und die Informationen ausgibt, deren Größe kleiner ist als die Informationen, die von der Eingabeschicht des neuronalen Netzwerks ausgegeben werden. Die Bewertungseinheit 134 bewertet dann das neuronale Netzwerk basierend auf den Informationen über den bestimmten Übertragungspunkt.
  • Beispielsweise bewertet die Bewertungseinheit 134 das neuronale Netzwerk basierend auf der Anzahl von Schichten, die in Abschnitten liegen, die flacher als der Übertragungspunkt sind, und der Gesamtzahl der Schichten, die das neuronale Netzwerk bilden. Insbesondere bewertet die Bewertungseinheit 134 das neuronale Netzwerk basierend auf einem Indikatorwert, der durch „Venergy_saving“ dargestellt wird, wie in den vorstehenden Ausdrücken (1) bis (4) angegeben.
  • Die Bewertungseinheit 134 kann das neuronale Netzwerk nicht nur auf den Informationen über die Übertragung, sondern auch auf anderen Indikatorwerten basierend umfassend bewerten, die in dem vorstehenden Ausdruck (1) angegeben sind.
  • Beispielsweise bewertet die Bewertungseinheit 134 das neuronale Netzwerk basierend auf einem Indikatorwert, der die Erkennungsleistung des neuronalen Netzwerks darstellt. Insbesondere bewertet die Bewertungseinheit 134 das neuronale Netzwerk basierend auf einem Indikatorwert, der durch „Reval“ dargestellt wird, wie in dem vorstehenden Ausdruck (1) angegeben. Beispielsweise bewertet die Bewertungseinheit 134 das neuronale Netzwerk basierend auf beispielsweise einem numerischen Wert, der durch Normalisieren von F-Maß, Precision, Recall und IoU der Erkennungsverarbeitung des neuronalen Netzwerks als der Indikatorwert erhalten wird.
  • Die Bewertungseinheit 134 bewertet das neuronale Netzwerk auch basierend auf der Berechnungsmenge in dem neuronalen Netzwerk.
  • Insbesondere bewertet die Bewertungseinheit 134 das neuronale Netzwerk basierend auf einem Indikatorwert, der durch „Ccomputation“ dargestellt wird, wie in dem vorstehenden Ausdruck (1) angegeben. Beispielsweise bewertet die Bewertungseinheit 134 das neuronale Netzwerk basierend beispielsweise auf der Anzahl von Produktsummenoperationen und der Anzahl von Anweisungen in einem bestimmten Prozessor, wenn das neuronale Netzwerk ausgeführt wird.
  • Die Bewertungseinheit 134 kann das neuronale Netzwerk auch basierend auf den Informationen über die Leistung der arithmetischen Verarbeitung der ersten Vorrichtung bewerten. Verschiedene Vorrichtungen, wie etwa eine IdD-Vorrichtung, werden als die erste Vorrichtung angenommen, wie etwa das Endgerät 300, das die vorherige Stufe des neuronalen Netzwerks verarbeitet. Aus diesem Grund wird auch angenommen, dass sich die Leistung der arithmetischen Verarbeitung, die jede Vorrichtung besitzt, vielfältig unterscheidet. Daher kann die Bewertungseinheit 134 eine Bewertung erhalten, die den tatsächlichen Bedingungen besser entspricht, indem die Informationen über die Leistung der arithmetischen Verarbeitung der ersten Vorrichtung als ein Bewertungsziel hinzugefügt werden.
  • In diesem Fall kann die Bewertungseinheit 134 die Bewertung unter Verwendung des nachfolgenden Ausdrucks (5) durchführen, der durch Hinzufügen einer Variablen zu dem vorstehend angegebenen Ausdruck (1) erhalten wird.
  • V eval = k 1 V recognition + k 2 C computation + k 3 V energy _ saving + k 4 V efficient _ arithmetic
    Figure DE112019003910T5_0005
  • Der Ausdruck (5) weist im Vergleich zu Ausdruck (1) ferner einen Gewichtungswert „k4“ und eine Variable „Vefficient_arithmetic“ auf. „Vefficient_arithmetic“ bezeichnet eine arithmetische Effizienz der ersten Vorrichtung. Das heißt, die Bewertungseinheit 134 bewertet das neuronale Netzwerk, wobei nicht nur die Elektrizität, die mit der Kommunikation (Übertragung) verbunden ist, sondern auch die Eigenschaften der Vorrichtung (erste Vorrichtung), die das neuronale Netzwerk verarbeitet, wie etwas das Endgerät 300, als ein Computer berücksichtigt werden.
  • Beispielsweise kann der Benutzer 10 durch Erhöhen der Gewichtung für die vorstehend erwähnte Variable die Netzwerkstruktur leichter erhalten, die die arithmetische Effizienz aufseiten der ersten Vorrichtung erhöht. Dies bedeutet, dass, wenn die arithmetische Effizienz einer bestimmten Ausdrucksform in der ersten Vorrichtung niedrig ist, der Bewertungswert eines Netzwerks mit einer größeren Anzahl von Berechnungen in dieser Form niedriger ist.
  • Beispielsweise kann die Bewertungseinheit 134 das neuronale Netzwerk basierend auf der Anzahl von Malen (Anzahl von Anweisungen) der Gleitkommaoperationen und der Anzahl anderer Operationen als der Gleitkommaoperationen in jeder der Schichten des neuronalen Netzwerks bewerten, das in der ersten Vorrichtung gehalten wird.
  • Das heißt, wenn das Endgerät 300 keine Gleitkomma-Recheneinheit aufweist, reduziert die Bewertungseinheit 134 den Bewertungswert des neuronalen Netzwerks, das eine relativ große Anzahl von Gleitkommaoperationen beinhaltet. Andernfalls erhöht die Bewertungseinheit 134 den Bewertungswert des neuronalen Netzwerks, wenn die Gewichtung und die Zwischendaten unter Verwendung eines Verfahrens zur Quantisierung auf beispielsweise eine Festkommazahl in vielen Schichten des neuronalen Netzwerks ausgedrückt werden.
  • Bei der Berechnung des Bewertungswerts in Bezug auf die Gleitkommaoperationen kann die Bewertungseinheit 134 die Variable „Vefficient_arithmetic“ unter Verwendung eines Ausdrucks berechnen, der beispielsweise als der nachstehende Ausdruck (6) angegeben ist. V efficient _ arithmetic = i N dev OIi i N dev ( FIi+OIi )
    Figure DE112019003910T5_0006
  • In dem vorstehenden Ausdruck (6) bezeichnet „Ndev“ die Anzahl der Schichten, die aufseiten des Endgeräts 300 verarbeitet werden sollen. „FIi“ bezeichnet die Anzahl der Anweisungen in jeder Schicht, die die Gleitkomma-Recheneinheit verwenden. „OIi“ bezeichnet die Anzahl der anderen Anweisungen.
  • Die vorstehend beschriebene Operation wird unter Verwendung von 10 beschrieben. 10 ist ein Diagramm, das ein Beispiel der Struktursuche basierend auf der Recheneinheitsinformation gemäß der vorliegenden Offenbarung veranschaulicht. 10 veranschaulicht das Beispiel, in dem der Übertragungspunkt („die vierten und späteren Schichten“) die dritte Schicht ist.
  • Wie in einer Tabelle 60 von 10 veranschaulicht, berechnet die Bewertungseinheit 134 die Anzahl von Anweisungen, die die Gleitkomma-Recheneinheit verwenden, und die Anzahl der anderen Anweisungen in jeder der Schichten des neuronalen Netzwerks in dem Endgerät 300. 10 veranschaulicht konzeptionell die Anzahl von Anweisungen, wie etwa „Nr. 21“. Die Bewertungseinheit 134 ersetzt dann die Anzahl der in der Tabelle 60 aufgeführten Anweisungen im Ausdruck (6), um den Wert von „Vefficient_arithmetic“ zu berechnen, und berechnet den Wert von „Reval“, der als Bewertungswert des neuronalen Netzwerks dient. Beispielsweise entwickelt die Bewertungseinheit 134 die in 10 veranschaulichte Tabelle 60 virtuell in der Speichereinheit 120 und erhält den Wert von „Reval“ durch die vorstehend beschriebene Berechnungsverarbeitung.
  • Wie in den Ausdrücken (1) und (5) angegeben, werden vorbestimmte Gewichtungswerte für die jeweiligen Variablen eingestellt, um den Bewertungswert zu erhalten. Das heißt, die Bewertungseinheit 134 bewertet das neuronale Netzwerk basierend auf Werten, die durch Multiplizieren der Informationen über die Übertragung, des Indikatorwerts, der die Erkennungsleistung des neuronalen Netzwerks darstellt, der Berechnungsmenge im neuronalen Netzwerk und der Informationen über die Leistung der arithmetischen Verarbeitung der ersten Vorrichtung mit den jeweils vorgegebenen Gewichtungswerten erhalten werden.
  • Wie vorstehend beschrieben, bestimmt die Bewertungseinheit 134 die Gewichtungswerte basierend auf der Konfiguration der ersten Vorrichtung und der zweiten Vorrichtung, dem Kommunikationsstandard zwischen der ersten Vorrichtung und der zweiten Vorrichtung und den Informationen über die Umgebung, in der das neuronale Netzwerk bereitgestellt wird. Alternativ kann die Bewertungseinheit 134 jeden der Gewichtungswerte gemäß der Festlegung durch den Benutzer 10 bestimmen. Durch diese Festlegung kann der Benutzer 10 einen Gewichtungswert frei einstellen, der einer von dem Benutzer 10 hervorgehobenen Leistung mehr Gewicht beimisst, und somit die vom Benutzer 10 gewünschte Struktur des neuronalen Netzwerks erhalten.
  • Die Bestimmungseinheit 135 bestimmt die Struktur des neuronalen Netzwerks basierend auf dem Bewertungsergebnis des neuronalen Netzwerks, das von der Bewertungseinheit 134 erhalten wird.
  • Wenn beispielsweise das Ergebnis der Bewertung durch die Bewertungseinheit 134 eine Endbedingung der Suchverarbeitung erfüllt, beispielsweise durch Überschreiten eines vorbestimmten Schwellenwerts, bestimmt die Bestimmungseinheit 135, dass die Struktur des neuronalen Netzwerks optimal ist, und bestimmt die Struktur des neuronalen Netzwerks.
  • Wenn im Gegensatz dazu das Ergebnis der Auswertung durch die Auswertungseinheit 134 die Endbedingung der Suchverarbeitung nicht erfüllt, beispielsweise wenn der resultierende Wert gleich oder kleiner als der vorbestimmte Schwellenwert ist, kann die Bestimmungseinheit 135 die Sucheinheit 133 veranlassen, die Suchverarbeitung erneut durchzuführen, beispielsweise durch Anwenden der genetischen Operationen. Die Endbedingung kann vom Benutzer 10 auf eine beliebige Bedingung eingestellt werden. Die Endbedingung kann erzeugt werden, indem beispielsweise die Erkennungsleistung und die Berechnungsmenge des neuronalen Netzwerks, der Energiespareffekt, das Komprimierungsverhältnis und die Anzahl der Iterationen der iterativen Verarbeitung, beispielsweise wie oft die Suchverarbeitung wiederholt wird, kombiniert werden.
  • Die Übertragungseinheit 136 überträgt das neuronale Netzwerk mit der durch die Bestimmungseinheit 135 bestimmten Struktur an die zweite Vorrichtung.
  • [ Konfiguration des Informationsverarbeitungsservers gemäß der ersten Ausführungsform]
  • Nachfolgend wird eine Konfiguration des Informationsverarbeitungsservers 200 beschrieben, der als Beispiel für die zweite Vorrichtung gemäß der ersten Ausführungsform dient. 11 ist ein Diagramm, das das Konfigurationsbeispiel des Informationsverarbeitungsservers 200 gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
  • Wie in 11 veranschaulicht, weist der Informationsverarbeitungsserver 200 eine Kommunikationseinheit 210, die Speichereinheit 220 und eine Steuereinheit 230 auf. Der Informationsverarbeitungsserver 200 kann eine Eingabeeinheit (wie etwa eine Tastatur und eine Maus) zum Empfangen verschiedener Operationen von beispielsweise einem Administrator, der den Informationsverarbeitungsserver 200 verwaltet, und eine Anzeigeeinheit (wie einer Flüssigkristallanzeige) zum Anzeigen verschiedener Arten von Informationen aufweisen.
  • Die Kommunikationseinheit 210 wird beispielsweise durch eine NIC implementiert. Die Kommunikationseinheit 210 ist drahtgebunden oder drahtlos mit einem Netzwerk N verbunden und sendet und empfängt beispielsweise Informationen an und von der Informationsverarbeitungsvorrichtung 100 und dem Endgerät 300 über das Netzwerk N.
  • Die Speichereinheit 220 wird durch eine Halbleiterspeichervorrichtung, wie etwa einen RAM oder einen Flash-Speicher, oder eine Speichervorrichtung, wie etwa eine Festplatte oder eine optische Platte, implementiert. Die Speichereinheit 220 weist eine Modellspeichereinheit der späteren Stufe 221 auf.
  • In der Modellspeichereinheit der späteren Stufe 221 wird ein Abschnitt der späteren Stufe gespeichert, der ein Abschnitt nach dem Übertragungspunkt in dem neuronalen Netzwerk ist, der von der Informationsverarbeitungsvorrichtung 100 übertragen wird.
  • Die Steuereinheit 230 wird durch Ausführen eines Computerprogramms implementiert, das auf dem Informationsverarbeitungsserver 200 von beispielsweise einer CPU oder einer MPU beispielsweise unter Verwendung eines RAM als Arbeitsbereich gespeichert wird. Die Steuereinheit 230 ist eine Steuerung und kann von einer ASIC oder einem FPGA implementiert werden.
  • Wie in 11 veranschaulicht, weist die Steuereinheit 230 eine Modellempfangseinheit 231, eine Teilungseinheit 232, eine Modellübertragungseinheit 233, eine Zwischendaten-Empfangseinheit 234, eine Erkennungseinheit 235 und eine Erkennungsergebnis-Übertragungseinheit 236 auf und implementiert Funktionen oder Operationen der zu verarbeitenden Informationsverarbeitung oder führt diese aus, wie nachstehend beschrieben. Die interne Konfiguration der Steuereinheit 230 ist nicht auf die in 11 veranschaulichte Konfiguration beschränkt und kann eine andere Konfiguration aufweisen, solange es sich um eine Konfiguration zur Durchführung der nachstehend beschriebenen Informationsverarbeitung handelt.
  • Die Modellempfangseinheit 231 empfängt das Modell (beispielsweise ein Erkennungsverarbeitungsmodell, das die Struktur des neuronalen Netzwerks aufweist), das von der Informationsverarbeitungsvorrichtung 100 übertragen wird.
  • Die Teilungseinheit 232 teilt das Modell, das von der Modellempfangseinheit 231 empfangen wird. Die Teilungseinheit 232 speichert dann den Abschnitt der späteren Stufe des neuronalen Netzwerks in dem geteilten Modell in der Modellspeichereinheit der späteren Stufe 221.
  • Die Modellübertragungseinheit 233 überträgt den Abschnitt der vorherigen Stufe des neuronalen Netzwerks in dem Modell, das von der Teilungseinheit 232 geteilt wird, an das Endgerät 300.
  • Die Zwischendaten-Empfangseinheit 234 empfängt die Zwischendaten (die in dem Endgerät 300 komprimierten Daten), die von dem Endgerät 300 übertragen werden.
  • Die Erkennungseinheit 235 liefert die von der Zwischendaten-Empfangseinheit 234 empfangenen Zwischendaten an den Abschnitt der späteren Stufe des neuronalen Netzwerks, um verschiedene Arten der Erkennungsverarbeitung durchzuführen. Wenn beispielsweise die Eingabedaten die Bilddaten sind, führt die Erkennungseinheit 235 die Bilderkennungsverarbeitung durch.
  • Die Erkennungsergebnis-Übertragungseinheit 236 überträgt das von der Erkennungseinheit 235 erkannte Ergebnis an das Endgerät 300. Dadurch kann ein Benutzer des Endgeräts 300 das Erkennungsergebnis der vom Benutzer eingegebenen Daten erhalten. Die Erkennungsergebnis-Übertragungseinheit 236 kann das von der Erkennungseinheit 235 erkannte Ergebnis auch an die Informationsverarbeitungsvorrichtung 100 übertragen.
  • [Konfiguration des Endgeräts gemäß der ersten Ausführungsform]
  • Nachfolgend wird eine Konfiguration des Endgeräts 300 beschrieben, das als Beispiel für die erste Vorrichtung gemäß der ersten Ausführungsform dient. 12 ist ein Diagramm, das ein Konfigurationsbeispiel des Endgeräts 300 gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
  • Wie in 12 veranschaulicht, weist das Endgerät 300 eine Kommunikationseinheit 310, die Speichereinheit 320 und eine Steuereinheit 330 auf. Das Endgerät 300 kann eine Eingabeeinheit (wie etwa eine Tastatur und eine Maus) zum Empfangen verschiedener Operationen von beispielsweise dem Benutzer, der das Endgerät 300 verwendet, und eine Anzeigeeinheit (wie einer Flüssigkristallanzeige) zum Anzeigen verschiedener Arten von Informationen aufweisen.
  • Die Kommunikationseinheit 310 wird beispielsweise durch eine NIC implementiert. Die Kommunikationseinheit 310 ist drahtgebunden oder drahtlos mit einem Netzwerk N verbunden und sendet und empfängt beispielsweise Informationen an und von der Informationsverarbeitungsvorrichtung 100 und dem Informationsverarbeitungsserver 200 über das Netzwerk N.
  • Die Speichereinheit 320 wird durch eine Halbleiterspeichervorrichtung, wie etwa einen RAM oder einen Flash-Speicher, oder eine Speichervorrichtung, wie etwa eine Festplatte oder eine optische Platte, implementiert. Die Speichereinheit 320 weist eine Modellspeichereinheit der vorherigen Stufe 321 auf.
  • In der Modellspeichereinheit der vorherigen Stufe 321 wird ein Abschnitt der späteren Stufe gespeichert, der als eine Stufe vor dem (ein tieferer Abschnitt als der) Übertragungspunkt in dem neuronalen Netzwerk dient, das von der Informationsverarbeitungsvorrichtung 100 erzeugt wird.
  • Die Steuereinheit 330 wird durch Ausführen eines Computerprogramms implementiert, das auf dem Endgerät 300 von beispielsweise einer CPU oder einer MPU beispielsweise unter Verwendung eines RAM als Arbeitsbereich gespeichert wird. Die Steuereinheit 330 ist eine Steuerung und kann von einer ASIC oder einem FPGA implementiert werden.
  • Wie in 12 veranschaulicht, weist die Steuereinheit 330 eine Modellempfangseinheit 331, eine Sensoreinheit 332, eine Erkennungseinheit 333 und eine Zwischendaten-Übertragungseinheit 334 auf und implementiert Funktionen oder Operationen der zu verarbeitenden Informationsverarbeitung oder führt diese aus, wie nachstehend beschrieben. Die interne Konfiguration der Steuereinheit 230 ist nicht auf die in 12 veranschaulichte Konfiguration beschränkt und kann eine andere Konfiguration aufweisen, solange es sich um eine Konfiguration zur Durchführung der nachstehend beschriebenen Informationsverarbeitung handelt.
  • Die Modellempfangseinheit 331 empfängt den Abschnitt der vorherigen Stufe des Modells (beispielsweise das Erkennungsverarbeitungsmodell, das die Struktur des neuronalen Netzwerks aufweist), das von dem Informationsverarbeitungsserver 200 übertragen wird. Die Modellempfangseinheit 331 speichert den empfangenen Abschnitt der vorherigen Stufe des Modells in der Modelspeichereinheit der vorherigen Stufe 321.
  • Die Sensoreinheit 332 verwendet verschiedene Arten von Sensoren, um die Erkennung durchzuführen, und erfasst verschiedene Arten von Daten. Beispielsweise verwendet die Sensoreinheit 332 eine Kamera, um Bilddaten zu erfassen. Die Sensoreinheit 332 kann auch ein Mikrofon verwenden, um Töne zu erfassen. Die Sensoreinheit 332 kann nicht nur die unter Verwendung der Sensoren erhaltenen Informationen erfassen, sondern auch beliebige Arten von Informationen, wie etwa vom Benutzer eingegebene Daten, solange die Informationen als Eingabedaten eines Modells dienen können, das ein neuronales Netzwerk aufweist.
  • Die Erkennungseinheit 333 liefert die von der Sensoreinheit 332 erfassten Informationen an den Abschnitt der vorherigen Stufe des neuronalen Netzwerks, um verschiedene Arten von Erkennungsverarbeitung durchzuführen. Beispielsweis liefert die Erkennungseinheit 333 die Eingabedaten an den Abschnitt der vorherigen Stufe des neuronalen Netzwerks, um die Zwischendaten zu erhalten, die eine Menge von Informationen aufweisen, die komprimierter sind als die der Eingabedaten. Das heißt, die Erkennungseinheit 333 führt die Erkennungsverarbeitung bis zu dem Übertragungspunkt in dem neuronalen Netzwerk durch.
  • Die Zwischendaten-Übertragungseinheit 334 überträgt die Zwischendaten, die von der Erkennungseinheit 333 ausgegeben werden, an den Informationsverarbeitungsserver 200. Nach dem Übertragen der Zwischendaten an den Informationsverarbeitungsserver 200, empfängt die Zwischendaten-Übertragungseinheit 334 das Erkennungsergebnis von dem Informationsverarbeitungsserver 200. Dadurch kann das Endgerät 300 beispielsweise das Ergebnis der Bilderkennung erhalten, ohne die Verarbeitung in dem Abschnitt der späteren Stufe durchzuführen, der eine relativ fortgeschrittene Berechnung erfordert.
  • [Prozedur der Informationsverarbeitung gemäß der ersten Ausführungsform]
  • Nachfolgend werden wird eine Prozedur der Informationsverarbeitung gemäß der ersten Ausführungsform unter Verwendung von 13 und 14 beschrieben. Zunächst wird ein Gesamtfluss der Informationsverarbeitung gemäß der ersten Ausführungsform der vorliegenden Offenbarung unter Verwendung von 13 beschrieben. 13 ist ein Flussdiagramm, das die Prozedur für die Informationsverarbeitung gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
  • Wie in 13 veranschaulicht, bestimmt die Informationsverarbeitungsvorrichtung 100, ob eine Modelleinstellungsinformation vom Benutzer 10 über die Benutzeroberfläche 50 empfangen wurde (Schritt S101). Wenn die Modelleinstellungsinformation nicht empfangen wurde („Nein“ in Schritt S101), wartet die Informationsverarbeitungsvorrichtung 100, bis die Modelleinstellungsinformation empfangen wird.
  • Wurde hingegen die Modelleinstellungsinformation empfangen („Ja“ in Schritt S101), führt die Informationsverarbeitungsvorrichtung 100 die Suchverarbeitung für die Struktur des neuronalen Netzwerks durch (Schritt S102). Die Details der Suchverarbeitung werden später unter Verwendung von 14 beschrieben.
  • Nachdem die Suchverarbeitung abgeschlossen ist, bestimmt die Informationsverarbeitungsvorrichtung 100 die Netzwerkstruktur des neuronalen Netzwerks (Schritt S103). Die Informationsverarbeitungsvorrichtung 100 überträgt dann das Modell mit der bestimmten Struktur an den Informationsverarbeitungsserver 200 (Schritt S104).
  • Nachfolgend wird unter Verwendung von 14 ein detaillierter Fluss der Suchverarbeitung gemäß der ersten Ausführungsform der vorliegenden Offenbarung beschrieben. 14 ist ein Flussdiagramm, das eine Prozedur für die Suchverarbeitung gemäß der ersten Ausführungsform der vorliegenden Offenbarung veranschaulicht.
  • Wie in 14 veranschaulicht, empfängt die Informationsverarbeitungsvorrichtung 100 das Startnetzwerk, das als Grundlage dient (Schritt S201). Die Informationsverarbeitungsvorrichtung 100 wendet anschließend die genetischen Operationen auf die Netzwerkstruktur des Startnetzwerks an (Schritt S202). Dadurch erhält die Informationsverarbeitungsvorrichtung 100 ein neuronales Netzwerk, das eine andere Netzwerkstruktur aufweist.
  • Die Informationsverarbeitungsvorrichtung 100 berechnet dann den Bewertungswert des erhaltenen neuronalen Netzwerks (Schritt S203). Die Informationsverarbeitungsvorrichtung 100 bestimmt anschließend, ob der erhaltene Bewertungswert die Endbedingung der Suche erfüllt (Schritt S204).
  • Wenn die Endbedingung nicht erfüllt ist („Nein“ in Schritt S204), wendet die Informationsverarbeitungsvorrichtung 100 die genetischen Operationen erneut auf die Netzwerkstruktur an, um ein neuronales Netzwerk zu erhalten, das eine neue Struktur aufweist (Schritt S202).
  • Ist die Endbedingung hingegen erfüllt („Ja“ in Schritt S204), schließt die Informationsverarbeitungsvorrichtung 100 die Suchverarbeitung ab.
  • (Zweite Ausführungsform)
  • Nachfolgend wird eine zweite Ausführungsform der vorliegenden Offenbarung beschrieben. In der vorstehend beschriebenen ersten Ausführungsform wurde das Beispiel beschrieben, in dem die Informationsverarbeitungsvorrichtung 100 die Information darüber, ob die Gleitkomma-Recheneinheit vorhanden ist, und die Leistung der Gleitkommaoperationen verwendet, wenn sie die Rechenleistung der ersten Vorrichtung (Endgerät 300) in den Bewertungswert einfließen lässt. Hierin kann die Informationsverarbeitungsvorrichtung 100 eine Leistung von Operationen verwenden, die sich von den vorstehend beschriebenen Operationen unterscheiden, um die Rechenleistung der ersten Vorrichtung in den Bewertungswert einfließen zu lassen.
  • Beispielsweise bewertet die Informationsverarbeitungsvorrichtung 100 gemäß der zweiten Ausführungsform das neuronale Netzwerk basierend auf einer Beziehung zwischen der Anzahl von Malen von Multiplikation und der Anzahl von Operationen, die keine Multiplikationen sind, die in jeder der Schichten des neuronalen Netzwerks durchgeführt werden, das in der ersten Vorrichtung gehalten wird.
  • Dies liegt daran, dass eine höhere Last auf der arithmetischen Verarbeitung liegt, da die Anzahl von Malen von Multiplikation im Falle einer Vorrichtung wie einem IdD-Gerät mit einer relativ geringen Rechenleistung größer ist. Das heißt, die Informationsverarbeitungsvorrichtung 100 kann eine höhere Energieeinsparung erzielen, indem die Struktur des neuronalen Netzwerks basierend darauf bewertet wird, ob die erste Vorrichtung die Berechnung durchführen kann, ohne die Multiplikation durchzuführen.
  • Insbesondere, wenn Faltungsoperationen und Operationen innerhalb des Produkts auf der ersten Vorrichtung durch Operationen mit relativ geringer Last unter Verwendung einer bekannten Technologie ersetzt werden, die beispielsweise BinaryNet genannt wird, kann die erste Vorrichtung ungefähre Berechnungen durch Durchführen einfacher Operationen wie XNOR und Operationen für die Bitzählung durchführen, ohne Additionen oder Multiplikationen durchzuführen. Wenn die erste Vorrichtung beispielsweise durch eine ASIC oder ein FPGA wie vorstehend beschrieben implementiert wird, kann der vorstehend beschriebene Ersatz einen Multiplikator von der ersten Vorrichtung entfernen, sodass eine größere Energieeinsparung erreicht werden kann. Wenn eine solche Energieeinsparung erreicht werden soll, wird die im vorstehenden Ausdruck (6) angegebene Variable als der nachstehende Ausdruck (7) neu definiert.
  • V efficient _ arithmetic = i N dev OIi i N dev ( MIi+OIi )
    Figure DE112019003910T5_0007
  • In dem vorstehenden Ausdruck (7) bezeichnet „Ndev“ die Anzahl der Schichten unter der Gesamtzahl der Schichten des neuronalen Netzwerks, die aufseiten der ersten Vorrichtung verarbeitet werden sollen.
    „MIi“ bezeichnet die Anzahl der Anweisungen zur Multiplikation in jeder Schicht der ersten Vorrichtung. „OIi“ bezeichnet die Anzahl anderer Anweisungen als die für die Multiplikation in jeder Schicht der ersten Vorrichtung.
  • Die Struktur des neuronalen Netzwerks wird unter Verwendung von Ausdruck (7) bewertet, um die Eigenschaften als ein Computer der ersten Vorrichtung besser zu berücksichtigen. Daher kann die Informationsverarbeitungsvorrichtung 100 die Netzwerkstruktur leichter erhalten, die die arithmetische Effizienz aufseiten der ersten Vorrichtung erhöht. Dadurch kann die Informationsverarbeitungsvorrichtung 100 die erste Vorrichtung und die zweite Vorrichtung indirekt unterstützen, um die erweiterte Erkennung durchzuführen, während gleichzeitig weniger Elektrizität benötigt wird.
  • (Andere Ausführungsformen)
  • Die Verarbeitung gemäß jeder der oben beschriebenen Ausführungsformen kann in verschiedenen anderen Formen als denen in den vorstehend beschriebenen Ausführungsformen durchgeführt werden.
  • In jeder der vorstehend beschriebenen Ausführungsformen wurde das neuronale Netzwerk als Beispiel beschrieben, das einen Übertragungspunkt aufweist. Es können jedoch mehrere Übertragungspunkte vorhanden sein. Beispielsweise kann die Verarbeitung unter Verwendung des neuronalen Netzwerks von drei oder mehr Vorrichtungen durchgeführt werden. Insbesondere kann die Verarbeitung unter Verwendung des neuronalen Netzwerks beispielsweise von einer tragbaren Vorrichtung, wie etwa einem Kopfhörer, einer intelligenten Vorrichtung, wie etwa einem Smartphone, oder einem Cloud-Server durchgeführt werden. In diesem Fall kann die Informationsverarbeitungsvorrichtung 100 eine Struktur des neuronalen Netzwerks mit zwei oder mehr Übertragungspunkten erzeugen und die Struktur bewerten.
  • In jeder der vorstehend beschriebenen Ausführungsformen wurde die Energieeinsparung als ein Beispiel für die Bewertungsmenge beschrieben, die sich auf die Komprimierung bezieht. Die Bewertungsmenge ist jedoch nicht auf die elektrische Energie beschränkt, und jede beliebige Information kann verwendet werden, solange ein numerischer Wert eine Art von Indikator aufweist, wie beispielsweise die Menge der übertragenen Informationen oder die Berechnungsmenge.
  • Die Informationsverarbeitungsvorrichtung 100 kann eine Rückmeldung des Ergebnisses der tatsächlich von dem Endgerät 300 und dem Informationsverarbeitungsserver 200 durchgeführten Erkennung empfangen und erneut nach der Struktur des neuronalen Netzwerks suchen. Wenn beispielsweise die Anzahl von Malen der Übertragung zwischen dem Endgerät 300 und dem Informationsverarbeitungsserver 200 gleich oder größer als eine erwartete Häufigkeit ist oder der Kommunikationszustand schlechter als erwartet ist, kann die Informationsverarbeitungsvorrichtung 100 eine Anpassung durchführen, beispielsweise durch Anpassen eines Gewichtungswerts für die Information über die Übertragung und erneutes Suchen nach der Struktur des neuronalen Netzwerks.
  • Von den in den vorstehenden Ausführungsformen beschriebenen Prozessen können alle oder einige der als automatisch durchgeführt beschriebenen Prozesse manuell durchgeführt werden, oder alle oder einige der als manuell durchgeführt beschriebenen Prozesse können automatisch unter Verwendung eines bekannten Verfahrens durchgeführt werden. Zusätzlich können die Verarbeitungsprozeduren, die spezifischen Bezeichnungen und die Informationen, einschließlich der verschiedenen Arten von Daten und Parametern, die im vorstehend beschriebenen Dokument und in den Zeichnungen angegeben sind, frei geändert werden, sofern nicht anders angegeben. Beispielsweise sind die verschiedenen Arten von Informationen, die in jeder der Zeichnungen dargestellt sind, nicht auf die veranschaulichten Informationen beschränkt.
  • Die Komponenten der in den Zeichnungen veranschaulichten Vorrichtungen sind funktional konzeptionelle Komponenten und müssen nicht wie in den Zeichnungen dargestellt physikalisch konfiguriert werden. Das heißt, die spezifischen Formen der Verteilung und Integration der Vorrichtungen sind nicht auf die in den Zeichnungen veranschaulichten beschränkt, und alle oder einige der Vorrichtungen können je nach Last und Verwendungszustand in den beliebigen Einheiten funktional oder physisch verteilt oder integriert werden.
  • Die vorstehend beschriebenen Ausführungsformen und Modifikationen können gegebenenfalls kombiniert werden, ohne dem Inhalt der Verarbeitung entgegenzustehen.
  • Die in dieser Beschreibung beschriebenen Auswirkungen sind lediglich Beispiele und nicht beschränkt, und es können andere Auswirkungen bereitgestellt werden.
  • (Hardwarekonfiguration)
  • Die Informationsvorrichtungen, die beispielsweise die Informationsverarbeitungsvorrichtung 100, den Informationsverarbeitungsserver 200 und das Endgerät 300 gemäß den vorstehend beschriebenen Ausführungsformen aufweisen, werden jeweils durch beispielsweise einen Computer 1000 mit einer Konfiguration, wie in 15 veranschaulicht, implementiert. Nachfolgend wird die Informationsverarbeitungsvorrichtung 100 gemäß der ersten Ausführungsform als ein Beispiel beschrieben. 15 ist ein Hardwarekonfigurationsdiagramm, das ein Beispiel des Computers 1000 veranschaulicht, der die Funktionen der Informationsverarbeitungsvorrichtung 100 implementiert. Der Computer 1000 weist eine CPU 1100, einen RAM 1200, einen Nur-Lese-Speicher (ROM) 1300, ein Festplattenlaufwerk (HDD) 1400, eine Kommunikationsschnittstelle 1500 und eine Eingabe/Ausgabeschnittstelle 1600 auf. Die Einheiten des Computers 1000 sind durch einen Bus 1050 verbunden.
  • Die CPU 1100 wird basierend auf Computerprogrammen betrieben, die in dem ROM 1300 oder auf der HDD 1400 gespeichert sind, und steuert die Einheiten. Beispielsweise lädt die CPU 1100 die im ROM 1300 oder der HDD 1400 gespeicherten Computerprogramme in den RAM 1200 und führt Prozesse aus, die den verschiedenen Computerprogrammen entsprechen.
  • Der ROM 1300 speichert darin beispielsweise ein Startprogramm, wie etwa von der CPU 1100 beim Starten des Computers 1000 ausgeführte Basic Input/Output System (BIOS) sowie Computerprogramme aus, die von der Hardware des Computers 1000 abhängen.
  • Das HDD 1400 ist ein computerlesbares Aufzeichnungsmedium, das dazu dient, darin beispielsweise die von der CPU 1100 auszuführenden Computerprogramme und die von den Computerprogrammen auf nicht vorübergehende Weise zu verwendenden Daten zu speichern. Insbesondere ist das Festplattenlaufwerk 1400 ein Aufzeichnungsmedium zum Aufzeichnen des Informationsverarbeitungsprogramms gemäß der vorliegenden Offenbarung, das als Beispiel für die Programmdaten 1450 dient.
  • Die Kommunikationsschnittstelle 1500 ist eine Schnittstelle zum Verbinden des Computers 1000 mit einem externen Netzwerk 1550 (wie etwa dem Internet). Beispielsweise empfängt die CPU 1100 Daten von einer anderen Vorrichtung und überträgt die von der CPU 1100 erzeugten Daten über die Kommunikationsschnittstelle 1500 an eine andere Vorrichtung.
  • Die Eingabe-/Ausgabeschnittstelle 1600 ist eine Schnittstelle zum Verbinden einer Eingabe-/Ausgabevorrichtung 1650 mit dem Computer 1000. Beispielsweise empfängt die CPU 1100 Daten von einer Eingabevorrichtung, wie etwa einer Tastatur oder einer Maus, über die Eingabe-/Ausgabeschnittstelle 1600. Die CPU 1100 überträgt die Daten über die Eingabe-/Ausgabeschnittstelle 1600 an eine Ausgabevorrichtung, wie etwa eine Anzeigevorrichtung, ein Lautsprecher oder ein Drucker. Die Eingabe-/Ausgabeschnittstelle 1600 kann auch als Medienschnittstelle zum Lesen von beispielsweise einem Computerprogramm dienen, das auf einem vorbestimmten Aufzeichnungsmedium aufgezeichnet ist. Das Medium ist beispielsweise ein optisches Aufzeichnungsmedium, wie etwa eine Digital Versatile Disc (DVD) oder eine überschreibbare Phasenänderungsplatte (PD), ein magnetooptisches Aufzeichnungsmedium, wie etwa eine magnetooptische Platte (MO), ein Bandmedium, ein magnetisches Aufzeichnungsmedium oder ein Halbleiterspeicher.
  • Beispielsweise führt die CPU 1100 auf dem Computer 1000, wenn der Computer 1000 als Informationsverarbeitungsvorrichtung 100 gemäß der ersten Ausführungsform dient, das in dem RAM 1200 geladene Informationsverarbeitungsprogramm aus, um Funktionen von beispielsweise der Steuereinheit 130 zu implementieren. Auf der Festplatte 1400 werden das Informationsverarbeitungsprogramm gemäß der vorliegenden Offenbarung und die Daten in der Speichereinheit 120 gespeichert. Die CPU 1100 liest die Programmdaten 1450 von dem HDD 1400 und führt sie aus, kann jedoch als ein anderes Beispiel die vorstehend beschriebenen Computerprogramme von einer anderen Vorrichtung über das externe Netzwerk 1550 erhalten.
  • Die vorliegende Technologie kann auch die folgenden Konfigurationen aufweisen.
    • (1) Informationsverarbeitungsverfahren, die folgenden Schritte umfassend:
      • Bewerten, durch einen Computer, eines neuronalen Netzwerks, das eine Struktur aufweist, die auf geteilte Weise von einer ersten Vorrichtung und einer zweiten Vorrichtung gehalten wird, basierend auf Informationen über die Übertragung von Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk; und
      • Bestimmen, durch den Computer, der Struktur des neuronalen Netzwerks basierend auf der Bewertung des neuronalen Netzwerks.
    • (2) Informationsverarbeitungsverfahren nach (1), wobei eine Schicht unter den Schichten des neuronalen Netzwerks, die in einem tieferen Abschnitt liegt als eine Schicht, aus der Informationen, die eine maximale Größe aufweisen, ausgegeben werden, und die Informationen ausgibt, deren Größe kleiner ist als die Informationen, die von einer Eingabeschicht des neuronalen Netzwerks ausgegeben werden, als ein Übertragungspunkt bestimmt wird, an dem die Informationen von der ersten Vorrichtung an die zweite Vorrichtung übertragen werden sollen, und das neuronale Netzwerk basierend auf Informationen über den bestimmten Übertragungspunkt bewertet wird.
    • (3) Informationsverarbeitungsverfahren nach (2), wobei das neuronale Netzwerk basierend auf einer Anzahl von Schichten, die in Abschnitten liegen, die flacher als der Übertragungspunkt sind, und einer Gesamtzahl der Schichten, die das neuronale Netzwerk bilden, bewertet wird.
    • (4) Informationsverarbeitungsverfahren nach einem beliebigen von (1) bis (3), wobei das neuronale Netzwerk basierend auf einem Indikatorwert bewertet wird, der die Erkennungsleistung des neuronalen Netzwerks darstellt.
    • (5) Informationsverarbeitungsverfahren nach einem beliebigen von (1) bis (4), wobei das neuronale Netzwerk basierend auf einer Berechnungsmenge im neuronalen Netzwerk bewertet wird.
    • (6) Informationsverarbeitungsverfahren nach einem beliebigen von (1) bis (5), wobei das neuronale Netzwerk basierend auf einer Information über eine Leistung der arithmetischen Verarbeitung der ersten Vorrichtung bewertet wird.
    • (7) Informationsverarbeitungsverfahren nach (6), wobei das neuronale Netzwerk basierend auf einer Anzahl von Malen von Gleitkommaoperationen und einer Anzahl von Malen anderer Operationen als der Gleitkommaoperationen in jeder Schicht des neuronalen Netzwerks bewertet wird, das in der ersten Vorrichtung gehalten wird.
    • (8) Informationsverarbeitungsverfahren nach (6) oder (7), wobei das neuronale Netzwerk basierend auf einer Beziehung zwischen der Anzahl von Malen von Multiplikation und der Anzahl von Operationen bewertet wird, die keine Multiplikationen sind, die in jeder Schicht des neuronalen Netzwerks durchgeführt werden, das in der ersten Vorrichtung gehalten wird.
    • (9) Informationsverarbeitungsverfahren nach einem beliebigen von (1) bis (8), wobei das neuronale Netzwerk basierend auf Werten bewertet wird, die durch Multiplizieren der Informationen über die Übertragung, eines Indikatorwerts, der eine Erkennungsleistung des neuronalen Netzwerks darstellt, einer Berechnungsmenge im neuronalen Netzwerk und der Informationen über eine Leistung der arithmetischen Verarbeitung der ersten Vorrichtung mit jeweils vorgegebenen Gewichtungswerten erhalten werden.
    • (10) Informationsverarbeitungsverfahren nach (9), wobei die Gewichtungswerte basierend auf Konfigurationen der ersten Vorrichtung und der zweiten Vorrichtung, einem Kommunikationsstandard zwischen der ersten Vorrichtung und der zweiten Vorrichtung und Informationen über die Umgebung, in der das neuronale Netzwerk bereitgestellt wird, bestimmt werden.
    • (11) Informationsverarbeitungsvorrichtung, umfassend:
      • eine Bewertungseinheit, die konfiguriert ist, um ein neuronales Netzwerk, das eine Struktur aufweist, die auf geteilte Weise von einer ersten Vorrichtung und einer zweiten Vorrichtung gehalten wird, basierend auf Informationen über die Übertragung von Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk zu bewerten; und
      • eine Bestimmungseinheit, die konfiguriert ist, um die Struktur des neuronalen Netzwerks basierend auf der Bewertung des neuronalen Netzwerks durch die Bewertungseinheit zu bestimmen.
    • (12) Informationsverarbeitungsprogramm zum Veranlassen eines Computers als Folgendes zu funktionieren:
      • eine Bewertungseinheit, die ein neuronales Netzwerk, das eine Struktur aufweist, die auf geteilte Weise von einer ersten Vorrichtung und einer zweiten Vorrichtung gehalten wird, basierend auf Informationen über die Übertragung von Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk bewertet; und
      • eine Bestimmungseinheit, die die Struktur des neuronalen Netzwerks basierend auf der Bewertung des neuronalen Netzwerks durch die Bewertungseinheit bestimmt.
  • Bezugszeichenliste
  • 1
    Informationsverarbeitungssystem
    100
    Informationsverarbeitungsvorrichtung
    110
    Kommunikationseinheit
    120
    Speichereinheit
    121
    Lerndatenspeichereinheit
    122
    Recheneinheit-Informationsspeichereinheit
    123
    Kommunikationsstandard-Speichereinheit
    124
    Modellspeichereinheit
    130
    Steuereinheit
    131
    Empfangseinheit
    132
    Erzeugungseinheit
    133
    Sucheinheit
    134
    Bewertungseinheit
    135
    Bestimmungseinheit
    136
    Übertragungseinheit
    200
    Informationsverarbeitungsserver
    300
    Endgerät
  • 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 2017/154284 [0004]

Claims (12)

  1. Informationsverarbeitungsverfahren, die folgenden Schritte umfassend: Bewerten, durch einen Computer, eines neuronalen Netzwerks, das eine Struktur aufweist, die auf geteilte Weise von einer ersten Vorrichtung und einer zweiten Vorrichtung gehalten wird, basierend auf Informationen über die Übertragung von Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk; und Bestimmen, durch den Computer, der Struktur des neuronalen Netzwerks basierend auf der Bewertung des neuronalen Netzwerks.
  2. Informationsverarbeitungsvorrichtung nach Anspruch 1, wobei eine Schicht unter den Schichten des neuronalen Netzwerks, die in einem tieferen Abschnitt liegt als eine Schicht, aus der Informationen, die eine maximale Größe aufweisen, ausgegeben werden, und die Informationen ausgibt, deren Größe kleiner ist als die Informationen, die von einer Eingabeschicht des neuronalen Netzwerks ausgegeben werden, als ein Übertragungspunkt bestimmt wird, an dem die Informationen von der ersten Vorrichtung an die zweite Vorrichtung übertragen werden sollen, und das neuronale Netzwerk basierend auf Informationen über den bestimmten Übertragungspunkt bewertet wird.
  3. Informationsverarbeitungsverfahren nach Anspruch 2, wobei das neuronale Netzwerk basierend auf einer Anzahl von Schichten, die in Abschnitten liegen, die flacher als der Übertragungspunkt sind, und einer Gesamtzahl der Schichten, die das neuronale Netzwerk bilden, bewertet wird.
  4. Informationsverarbeitungsverfahren nach Anspruch 1, wobei das neuronale Netzwerk basierend auf einem Indikatorwert bewertet wird, der die Erkennungsleistung des neuronalen Netzwerks darstellt.
  5. Informationsverarbeitungsverfahren nach Anspruch 1, wobei das neuronale Netzwerk basierend auf einer Berechnungsmenge im neuronalen Netzwerk bewertet wird.
  6. Informationsverarbeitungsverfahren nach Anspruch 1, wobei das neuronale Netzwerk basierend auf einer Information über eine Leistung der arithmetischen Verarbeitung der ersten Vorrichtung bewertet wird.
  7. Informationsverarbeitungsverfahren nach Anspruch 6, wobei das neuronale Netzwerk basierend auf einer Anzahl von Malen von Gleitkommaoperationen und einer Anzahl von Malen anderer Operationen als der Gleitkommaoperationen in jeder Schicht des neuronalen Netzwerks bewertet wird, das in der ersten Vorrichtung gehalten wird.
  8. Informationsverarbeitungsverfahren nach Anspruch 6, wobei das neuronale Netzwerk basierend auf einer Beziehung zwischen einer Anzahl von Malen von Multiplikation und einer Anzahl von Operationen bewertet wird, die keine Multiplikationen sind, die in jeder Schicht des neuronalen Netzwerks durchgeführt werden, das in der ersten Vorrichtung gehalten wird.
  9. Informationsverarbeitungsverfahren nach Anspruch 1, wobei das neuronale Netzwerk basierend auf Werten bewertet wird, die durch Multiplizieren der Informationen über die Übertragung, eines Indikatorwert, der eine Erkennungsleistung des neuronalen Netzwerks darstellt, einer Berechnungsmenge im neuronalen Netzwerk und der Informationen über eine Leistung der arithmetischen Verarbeitung der ersten Vorrichtung mit jeweils vorgegebenen Gewichtungswerten erhalten werden.
  10. Informationsverarbeitungsverfahren nach Anspruch 9, wobei die Gewichtungswerte basierend auf Konfigurationen der ersten Vorrichtung und der zweiten Vorrichtung, einem Kommunikationsstandard zwischen der ersten Vorrichtung und der zweiten Vorrichtung und Informationen über die Umgebung, in der das neuronale Netzwerk bereitgestellt wird, bestimmt werden.
  11. Informationsverarbeitungsvorrichtung, umfassend: eine Bewertungseinheit, die konfiguriert ist, um ein neuronales Netzwerk, das eine Struktur aufweist, die auf geteilte Weise von einer ersten Vorrichtung und einer zweiten Vorrichtung gehalten wird, basierend auf Informationen über die Übertragung von Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk zu bewerten; und eine Bestimmungseinheit, die konfiguriert ist, um die Struktur des neuronalen Netzwerks basierend auf der Bewertung des neuronalen Netzwerks durch die Bewertungseinheit zu bestimmen.
  12. Informationsverarbeitungsprogramm zum Veranlassen eines Computers, als Folgendes zu funktionieren: eine Bewertungseinheit, die ein neuronales Netzwerk, das eine Struktur aufweist, die auf geteilte Weise von einer ersten Vorrichtung und einer zweiten Vorrichtung gehalten wird, basierend auf Informationen über die Übertragung von Informationen zwischen der ersten Vorrichtung und der zweiten Vorrichtung in dem neuronalen Netzwerk bewertet; und eine Bestimmungseinheit, die die Struktur des neuronalen Netzwerks basierend auf der Bewertung des neuronalen Netzwerks durch die Bewertungseinheit bestimmt.
DE112019003910.5T 2018-08-03 2019-07-10 Informationsverarbeitungsverfahren, informationsverarbeitungsvorrichtung und informationsverarbeitungsprogramm Pending DE112019003910T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018147180 2018-08-03
JP2018-147180 2018-08-03
PCT/JP2019/027415 WO2020026741A1 (ja) 2018-08-03 2019-07-10 情報処理方法、情報処理装置及び情報処理プログラム

Publications (1)

Publication Number Publication Date
DE112019003910T5 true DE112019003910T5 (de) 2021-04-29

Family

ID=69231065

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112019003910.5T Pending DE112019003910T5 (de) 2018-08-03 2019-07-10 Informationsverarbeitungsverfahren, informationsverarbeitungsvorrichtung und informationsverarbeitungsprogramm

Country Status (5)

Country Link
US (1) US20210312295A1 (de)
JP (1) JP7287397B2 (de)
CN (1) CN112513886B (de)
DE (1) DE112019003910T5 (de)
WO (1) WO2020026741A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200084099A (ko) * 2019-01-02 2020-07-10 삼성전자주식회사 뉴럴 네트워크 최적화 장치 및 뉴럴 네트워크 최적화 방법
CN113470653A (zh) * 2020-03-31 2021-10-01 华为技术有限公司 声纹识别的方法、电子设备和系统
CN113873539A (zh) * 2020-06-30 2021-12-31 华为技术有限公司 获取神经网络的方法和装置
US20240015052A1 (en) * 2020-12-23 2024-01-11 Sony Group Corporation Communication device, communication method, and communication system
JP7352600B2 (ja) * 2021-07-19 2023-09-28 ヤフー株式会社 情報処理装置、情報処理方法及び情報処理プログラム
WO2023127388A1 (ja) * 2021-12-28 2023-07-06 ソニーグループ株式会社 無線基地局、無線基地局の制御方法、通信制御装置、通信制御装置の制御方法およびプログラム
KR20230111099A (ko) 2022-01-17 2023-07-25 네이버 주식회사 딥러닝 모델의 튜닝 방법 및 시스템

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10474948B2 (en) * 2015-03-27 2019-11-12 University Of Dayton Analog neuromorphic circuit implemented using resistive memories
US11093826B2 (en) * 2016-02-05 2021-08-17 International Business Machines Corporation Efficient determination of optimized learning settings of neural networks
EP3428856A4 (de) * 2016-03-09 2019-04-10 Sony Corporation Informationsverarbeitungsverfahren und informationsverarbeitungsvorrichtung
CN105892691A (zh) * 2016-06-07 2016-08-24 京东方科技集团股份有限公司 代步工具的控制方法和控制装置、代步工具系统
KR20190022439A (ko) * 2016-06-30 2019-03-06 파나소닉 아이피 매니지먼트 가부시키가이샤 정보 처리 장치, 시계열 데이터의 정보 처리 방법, 및 프로그램
US11205110B2 (en) * 2016-10-24 2021-12-21 Microsoft Technology Licensing, Llc Device/server deployment of neural network data entry system
DE102017125256A1 (de) * 2016-10-28 2018-05-03 Google Llc Suche nach einer neuronalen Architektur
CN106960281A (zh) * 2017-03-23 2017-07-18 深圳大图科创技术开发有限公司 一种基于神经网络的电力通信网风险管理系统
JP6832783B2 (ja) * 2017-04-20 2021-02-24 株式会社日立製作所 データ分析装置、データ分析方法、およびデータ分析プログラム
KR102413028B1 (ko) * 2017-08-16 2022-06-23 에스케이하이닉스 주식회사 중첩 신경망을 프루닝하는 방법 및 장치
US20190354852A1 (en) * 2018-05-17 2019-11-21 Advanced Micro Devices, Inc. Stress indicators associated with instances of input data for training neural networks

Also Published As

Publication number Publication date
CN112513886A (zh) 2021-03-16
CN112513886B (zh) 2024-03-22
JPWO2020026741A1 (ja) 2021-08-05
WO2020026741A1 (ja) 2020-02-06
US20210312295A1 (en) 2021-10-07
JP7287397B2 (ja) 2023-06-06

Similar Documents

Publication Publication Date Title
DE112019003910T5 (de) Informationsverarbeitungsverfahren, informationsverarbeitungsvorrichtung und informationsverarbeitungsprogramm
DE202019106182U1 (de) Neuronenarchitektursuche mit faktorisiertem hierarchischem Suchraum
DE102018129424A1 (de) System und verfahren zum lernen der struktur von tiefen neuronalen netzwerken
DE102017125256A1 (de) Suche nach einer neuronalen Architektur
DE102017121887A1 (de) Ausführen von Kerndurchschreiten in Hardware
DE202017007517U1 (de) Aggregatmerkmale für maschinelles Lernen
DE202017105528U1 (de) Ausführen von Mittelwert-Poolbildung in Hardware
DE202017105829U1 (de) System für kommunikationseffizientes gemeinschaftliches Lernen
DE112016005006T5 (de) Automatische videozusammenfassung
DE102021004591A1 (de) Für Graphen vorgesehene neuronale Netzwerke für Datensätze mit Heterophilie
DE102020202335A1 (de) Verfahren und Vorrichtung zum Erstellen eines Modells eines technischen Systems aus Messungen
DE102008027215A1 (de) Reifenkonstruktionsverfahren
DE102021200012A1 (de) Optimierte quantisierung für neuronale netze mit verringerter auflösung
DE112020004471T5 (de) Folgerungsvorrichtung, Trainingsvorrichtung, Folgerungsverfahren und Trainingsverfahren
LU501881B1 (de) Eine methode und ein system zur vorhersage von mirna-krankheitsassoziationen auf der grundlage von heterogenen graphen
DE102021109382A1 (de) System und verfahren eines monotonen neuronalen operatornetzes technisches gebiet
DE102015201690A1 (de) Verfahren und systeme zur analyse eines finanzdatensatzes
DE112016007411T5 (de) Fuzzy-eingabe für autoencoder
DE102020209853A1 (de) Vorrichtung und system für das lernen unüberwachter geordneter darstellung mit einem residual-variational-autoencoder
DE112020000202T5 (de) Komprimierungsvorrichtung für neuronale Netze
DE102023202593A1 (de) Verfahren und System zum Empfehlen von Modulen für ein Engineering-Projekt
Givens et al. Logarithmic pooling of priors linked by a deterministic simulation model
DE112022002790T5 (de) Verbesserungen in Bezug auf die Kodierung und Verarbeitung von Datenverteilungen
DE102021201597A1 (de) Verwenden von hardware-beschleunigten befehlen
DE102020123155A1 (de) Quantisierungsverfahren eines künstlichen neuronalen Netzwerks und Operationsverfahren unter Verwendung eines künstlichen neuronalen Netzwerks