Main Content

Image Classifier

Klassifizierung von Daten mithilfe eines trainierten neuronalen Deep-Learning-Netzes

Seit R2020b

  • Image classifier block

Bibliotheken:
Deep Learning Toolbox / Deep Neural Networks

Beschreibung

Der Image Classifier-Block sagt die Klassenbezeichnungen für die Daten am Eingang voraus, indem er das über den Blockparameter angegebene trainierte Netz verwendet. Dieser Block ermöglicht das Laden eines vortrainierten Netzes in das Simulink®-Modell aus einer MAT-Datei oder aus einer MATLAB®-Funktion.

Einschränkungen

  • Der Image Classifier-Block unterstützt keine Sequenznetze und Netze mit mehreren Eingängen und mehreren Ausgängen (MIMO).

  • Der Image Classifier-Block unterstützt keine MAT-Dateiprotokollierung.

Ports

Eingang

alle erweitern

Ein h-mal-w-mal-c-mal-N numerisches Array, wobei h, w und c die Höhe, die Breite bzw. die Anzahl der Kanäle der Bilder sind, und N die Anzahl der Bilder ist.

Ein N-mal-numFeatures numerisches Array, wobei N die Anzahl der Beobachtungen und numFeatures die Anzahl der Merkmale der Eingangsdaten ist.

Falls das Array NaN enthält, werden diese durch das Netz propagiert.

Ausgang

alle erweitern

Vorausgesagte Klassenbezeichnungen mit der höchsten Punktzahl, zurückgegeben als ein N-mal-1 Aufzählungsvektor von Bezeichnungen, wobei N die Anzahl der Beobachtungen ist.

Vorausgesagte Punktzahlen, zurückgegeben als K-mal-N-Matrix, wobei K die Anzahl der Klassen ist, und N die Anzahl der Beobachtungen ist.

Mit den vorausgesagten Punktzahlen verbundene Bezeichnungen, zurückgegeben als N-mal-K-Matrix, wobei N die Anzahl der Beobachtungen ist, und K die Anzahl der Klassen ist.

Parameter

alle erweitern

Geben Sie die Quelle für das trainierte Netz an. Wählen Sie eine der folgenden Möglichkeiten:

  • Network from MAT-file– Importieren eines trainierten Netzes aus einer MAT-Datei, die ein dlnetwork-Objekt enthält.

  • Network from MATLAB function– Importieren eines vortrainierten Netzes aus einer MATLAB-Funktion. Um zum Beispiel ein vortrainiertes GoogLeNet zu verwenden, erstellen Sie eine Funktion pretrainedGoogLeNet in einer MATLAB-M-Datei und importieren Sie diese Funktion dann.

    function net = pretrainedGoogLeNet
      net = imagePretrainedNetwork("googlenet");
    end

Programmatische Nutzung

Blockparameter: Network
Typ: Zeichenvektor, Zeichenfolge
Werte: 'Network from MAT-file' | 'Network from MATLAB function'
Standard: 'Network from MAT-file'

Dieser Parameter gibt den Namen der MAT-Datei an, die das zu ladende trainierte Deep-Learning-Netz enthält. Wenn sich die Datei nicht im MATLAB-Pfad befindet, verwenden Sie die Schaltfläche Browse, um die Datei zu finden.

Abhängigkeiten

Um diesen Parameter zu aktivieren, setzen Sie den Network-Parameter auf Network from MAT-file.

Programmatische Nutzung

Blockparameter: NetworkFilePath
Typ: Zeichenvektor, Zeichenfolge
Werte: MAT-Dateipfad oder -name
Standard: 'untitled.mat'

Dieser Parameter gibt den Namen der MATLAB-Funktion für das vortrainierte Deep-Learning-Netz an. Um zum Beispiel ein vortrainiertes GoogLeNet zu verwenden, erstellen Sie eine Funktion pretrainedGoogLeNet in einer MATLAB-M-Datei und importieren Sie diese Funktion dann.

function net = pretrainedGoogLeNet
  net = imagePretrainedNetwork("googlenet");
end

Abhängigkeiten

Um diesen Parameter zu aktivieren, setzen Sie den Network-Parameter auf Network from MATLAB function.

Programmatische Nutzung

Blockparameter: NetworkFunction
Typ: Zeichenvektor, Zeichenfolge
Werte: Name der MATLAB-Funktion
Standard: 'squeezenet'

Größe der für die Vorhersage zu verwendenden Mini-Batches, angegeben als positive Ganzzahl. Größere Mini-Batches erfordern mehr Speicherplatz, können aber zu schnelleren Vorhersagen führen.

Programmatische Nutzung

Blockparameter: MiniBatchSize
Typ: Zeichenvektor, Zeichenfolge
Werte: positive Ganzzahl
Standard: '128'

Die Größe der Daten am Eingangsport wird an die Eingangsgröße des Netzes angepasst.

Programmatische Nutzung

Blockparameter: ResizeInput
Typ: Zeichenvektor, Zeichenfolge
Werte: 'off' | 'on'
Standard: 'on'

Aktivieren des Ausgangsports ypred, der die Bezeichnung mit der höchsten Punktzahl ausgibt.

Programmatische Nutzung

Blockparameter: Classification
Typ: Zeichenvektor, Zeichenfolge
Werte: 'off' | 'on'
Standard: 'on'

Aktivieren der Ausgangsports scores und labels, die alle vorhergesagten Punktzahlen und die dazugehörigen Klassenbezeichnungen ausgeben.

Programmatische Nutzung

Blockparameter: Predictions
Typ: Zeichenvektor, Zeichenfolge
Werte: 'off' | 'on'
Standard: 'off'

Variable, die Klassennamen enthält, die als kategorischer Vektor, als Zeichenfolgen-Array oder als Zellen-Array von Zeichenvektoren angegeben werden.

Die Ausgangsgröße des Netzes muss der Anzahl der Klassen entsprechen.

Abhängigkeiten

Um diesen Parameter zu aktivieren, setzen Sie den Network-Parameter auf Network from MAT-file, um ein trainiertes dlnetwork-Objekt aus einer MAT-Datei zu importieren.

Programmatische Nutzung

Blockparameter: classNames
Typ: Variablenname eines kategorischen Vektors, eines Zeichenfolgen-Arrays oder eines Zellen-Arrays von Zeichenvektoren.
Werte: Name einer Variablen, die Klassennamen enthält, angegeben als kategorischer Vektor, als Zeichenfolgen-Array oder als Zellen-Array von Zeichenvektoren.
Standard: Die Workspace-Variable classNames.

Tipps

Erweiterte Fähigkeiten

Versionsverlauf

Eingeführt in R2020b

alle erweitern

Siehe auch