Rockchip · AI & Linux Hub

KI-Inferenz

RKNN2 V2.5.0 · RV1103B/RV1106B:Rekurrente Netze, Arithmetik und Pooling

RKNN2 V2.5.0 · RV1103B/RV1106B:Rekurrente Netze, Arithmetik und Pooling · Vollständige Operatorparameter und Grenzen nach der Quelle V2.5.0.

· ArmSoM Editorial · Rockchip source documentation · 6 Min. Lesezeit

Diese Plattformreferenz für RKNN2 V2.5.0 unterstützt ArmSoM-Entwickler bei der Modellauswahl und -anpassung. Sie bestätigt keine Unterstützung auf allen ArmSoM-Platinen: SoC, tatsächliche Toolkit2-, Runtime-, NPU-Treiber- und BSP-Versionen müssen geprüft werden. Die Quelle nennt keine einheitliche Linux-Kernel-Version. Es wurden keine ArmSoM-Hardwaretests durchgeführt.

Quelle: die bereitgestellte chinesische und englische RKNN2 Supported Operators and Constraints Reference V2.5.0 mit 374 bzw. 384 Seiten. Chinesisch folgt der chinesischen Ausgabe; Englisch, Russisch und Deutsch folgen der englischen. Plattformgrenzen bleiben getrennt. Das englische PDF enthält chinesische I/O-Abbildungen und Ausgabetabellen; zusätzlich werden editierbare lokalisierte Tabellen bereitgestellt. Schreibweisen wie ConvTranpose und ursprüngliche LSTM/GRU-Gleichungen bleiben erhalten; die Formeln stellen keine Korrekturen der SDK-Implementierung dar.

Quellseiten: CN 324–331; EN 334–341.

Rockchip RKNN2

Operatorreferenz-Serie

RKNN2 V2.5.0 · RK3566/RK3568:Grundlagen und Faltungen

RKNN2 V2.5.0 · RK3566/RK3568:Rekurrente Netze, Arithmetik und Pooling

RKNN2 V2.5.0 · RK3566/RK3568:Formen, Slicing und Transposition

RKNN2 V2.5.0 · RK3566/RK3568:Aktivierungen, Normalisierung und Erweiterungen

RKNN2 V2.5.0 · RK3588:Grundlagen und Faltungen

RKNN2 V2.5.0 · RK3588:Rekurrente Netze, Arithmetik und Pooling

RKNN2 V2.5.0 · RK3588:Formen, Slicing und Transposition

RKNN2 V2.5.0 · RK3588:Aktivierungen, Normalisierung und Erweiterungen

RKNN2 V2.5.0 · RK3562:Grundlagen und Faltungen

RKNN2 V2.5.0 · RK3562:Rekurrente Netze, Arithmetik und Pooling

RKNN2 V2.5.0 · RK3562:Formen, Slicing und Transposition

RKNN2 V2.5.0 · RK3562:Aktivierungen, Normalisierung und Erweiterungen

RKNN2 V2.5.0 · RV1103/RV1106:Grundlagen und Faltungen

RKNN2 V2.5.0 · RV1103/RV1106:Rekurrente Netze, Arithmetik und Pooling

RKNN2 V2.5.0 · RV1103/RV1106:Formen, Slicing und Transposition

RKNN2 V2.5.0 · RV1103/RV1106:Aktivierungen, Normalisierung und Erweiterungen

RKNN2 V2.5.0 · RK3576/RV1126B:Grundlagen und Faltungen

RKNN2 V2.5.0 · RK3576/RV1126B:Rekurrente Netze, Arithmetik und Pooling

RKNN2 V2.5.0 · RK3576/RV1126B:Formen, Slicing und Transposition

RKNN2 V2.5.0 · RK3576/RV1126B:Aktivierungen, Normalisierung und Erweiterungen

RKNN2 V2.5.0 · RK2118:Grundlagen und Faltungen

RKNN2 V2.5.0 · RK2118:Rekurrente Netze, Arithmetik und Pooling

RKNN2 V2.5.0 · RK2118:Formen, Slicing und Transposition

RKNN2 V2.5.0 · RK2118:Aktivierungen, Normalisierung und Erweiterungen

RKNN2 V2.5.0 · RV1103B/RV1106B:Grundlagen und Faltungen

RKNN2 V2.5.0 · RV1103B/RV1106B:Rekurrente Netze, Arithmetik und Pooling

RKNN2 V2.5.0 · RV1103B/RV1106B:Formen, Slicing und Transposition

RKNN2 V2.5.0 · RV1103B/RV1106B:Aktivierungen, Normalisierung und Erweiterungen

RKNN2 V2.5.0 · Unterstützung und Grenzen der CPU-Operatoren

RKNN2 V2.5.0 · Unterstützung und Grenzen der GPU-Operatoren

RKNN2 V2.5.0 · Modell-I/O, Ausrichtung und Faltungsgrenzen

Div

Führt elementweise binäre Division (C=A/B) mit multidirektionalem Broadcasting nach NumPy-Art aus.

Eingaben

  • A:T1,T2
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer
    • Broadcasting-Unterstützung
      • [b,c,1,1]
      • [scalar]
  • B:T1,T2
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer
    • Broadcasting-Unterstützung
      • [b,c,1,1]
      • [scalar]

Ausgaben

  • C:T1
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer

Datentypbeschränkungen

  • T1:float16(Tensor)
  • T2:float(constTensor)

Expand

Erweitert den Eingabetensor anhand von shape und Broadcasting-Regeln, ähnlich numpy.array(input) *numpy.ones(shape): Dimensionen werden rechtsbündig ausgerichtet; korrespondierende Dimensionen müssen gleich sein oder eine davon muss 1 sein.

Eingaben

  • input:T1
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer
  • shape:T2
    • shape:[batch,channel,height,width]

Ausgaben

  • output:T1
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer

Datentypbeschränkungen

  • T1:int8(Tensor)
  • T2:int64(Tensor)

Broadcasting-Einschränkungen

  • [b,c,1,w]->[b,c,h,w],h∈[1,8192]
  • [b,1,1,w]->[b,c,h,w],h∈[1,8192]
  • [b,c,h,1]->[b,c,h,w],w ∈[1,8192]
  • [b,1,h,1]->[b,c,h,w],w ∈[1,8192]
  • [b,c,1,1]->[b,c,h,w],h∈[1,8192],w ∈[1,8192]

Max

Berechnet das elementweise Maximum der Eingabetensoren.

Eingaben

  • A:T1
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer
    • Broadcasting-Unterstützung
      • Broadcasting entlang beliebiger Dimensionen wird unterstützt.
      • Broadcasting-Einschränkungen wie beim Operator Expand.
  • B:T1
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer
    • Broadcasting-Unterstützung
      • Broadcasting entlang beliebiger Dimensionen wird unterstützt.
      • Broadcasting-Einschränkungen wie beim Operator Expand.

Ausgaben

  • C:T1
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer/per-channel

Datentypbeschränkungen

  • T1:int8(Tensor)

Weitere Unterstützung

  • Zusammenarbeit mehrerer Kerne: noch nicht unterstützt.

Mul

Führt elementweise binäre Multiplikation (C=A*B) mit multidirektionalem Broadcasting nach NumPy-Art aus.

Eingaben

  • A:T1,T2
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer
    • Broadcasting-Unterstützung
      • Broadcasting entlang beliebiger Dimensionen wird unterstützt.
      • Broadcasting-Einschränkungen wie beim Operator Expand.
  • B:T1,T2
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer
    • Broadcasting-Unterstützung
      • Broadcasting entlang beliebiger Dimensionen wird unterstützt.
      • Broadcasting-Einschränkungen wie beim Operator Expand.

Ausgaben

  • C:T1
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer

Datentypbeschränkungen

  • T1:int8(Tensor)
  • T2:float(constTensor)

MulRelu

Fusionierte Berechnung von Mul und Relu,C=Relu(A*B).

Eingaben

  • Wie bei Mul.

Ausgaben

  • Wie bei Mul.

Weitere Unterstützung

  • Zusammenarbeit mehrerer Kerne: unterstützt.

Pad

Erzeugt aus Datentensor (data), Tensor der Auffüllwerte an Achsenanfang und -ende (pads), Modus (mode) und konstantem Wert (constant_value) einen aufgefüllten Tensor (output).

Eingaben

  • data:T1
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer
  • pads:T2
    • shape : [batch_begin, channel_begin, height_begin, width_begin, batch_end, channel_end,height_end,width_end]
  • constant_value(optional):T3
    • shape:[1]
    • Quantisierungsunterstützung
      • per-layer

Ausgaben

  • output:T1
    • shape:[batch,channel,height,width]
    • Quantisierungsunterstützung
      • per-layer

Datentypbeschränkungen

  • T1:int8(Tensor)
  • T2:int64(Tensor)
  • T3:float(Scalar),int8(Scalar),float16(Scalar)

Attribute

  • mode:string (Standardwert constant)
    • Unterstützte Modi: constant,reflect.
      • constant: uneingeschränkt.
      • reflectchannel∈(0,8192],height∈(0,8192],width∈(0,8176]

Weitere Unterstützung

  • Zusammenarbeit mehrerer Kerne: noch nicht unterstützt.

MaxPool

MaxPool verarbeitet Eingabetensor X und wendet Max-Pooling anhand von Kernelgröße, Schrittweite und pad-Längen an. Für durch den Kernel bestimmte Teilmengen wird das Maximum berechnet und in den herunterabgetasteten Ausgabetensor Y zur weiteren Verarbeitung übernommen. Die räumliche Ausgabeform hängt von explizitem Padding (pads) oder automatischem Padding (auto_pad) ab. Hier wird ausschließlich explizites Padding verwendet.

Eingaben

  • input:T1
    • shape:[batch,channel,height,width]
      • channel∈(0,8192]
      • height∈(0,7]
      • width∈(0,7]

Ausgaben

  • output:T1
    • shape:[batch,channel,height,width]

Attribute

  • kernel_shape:int64(kernel_h,kernel_w)
    • kernel_h∈(0,7]
    • kernel_w∈(0,7]
  • auto_pad:string
    • Padding-Modus: nur NOTSET unterstützt.
  • ceil_mode:int64
    • Berechnung der Ausgabe-shape mit ceil oder floor: nicht unterstützt.
  • strides:int64(strides_h,strides_w)
    • strides_h∈(0,8]
    • strides_w∈(0,8]
  • count_include_pad:int64[]
    • count_include_pad, ob pad-Werte in die Berechnung eingehen:1.
  • pad:int64(pad_top,pad_left,pad_bottom,pad_right)
    • pad_top∈[0,7]
    • pad_left∈[0,7]
    • pad_bottom∈[0,7]
    • pad_right∈[0,7]

Datentypbeschränkungen

  • T1:int8(Tensor)
  • T2:float(Tensor)
  • T3:float(Scalar)

GlobalMaxPool

GlobalMaxPool wendet Max-Pooling auf die Werte jedes Kanals von Eingabetensor X an. Dies entspricht MaxPool mit kernel_shape gleich den räumlichen Dimensionen von input.

Eingaben

  • input:T1
    • shape:[batch,channel,height,width]
      • channel∈(0,8192]
      • height∈(0,7]
      • width∈(0,7]

Ausgaben

  • output:T1
    • shape:[batch,channel,height,width]

Attribute

  • kernel_shape:int64(kernel_h,kernel_w)
    • kernel_h∈(0,7]
    • kernel_w∈(0,7]
  • auto_pad:string
    • Padding-Modus: nur NOTSET unterstützt.
  • ceil_mode:int64
    • Berechnung der Ausgabe-shape mit ceil oder floor: nicht unterstützt.
  • strides:int64(strides_h,strides_w)
    • strides_h∈(0,8]
    • strides_w∈(0,8]
  • count_include_pad:int64[]
    • count_include_pad, ob pad-Werte in die Berechnung eingehen:1.
  • pad:int64(pad_top,pad_left,pad_bottom,pad_right)
    • pad_top∈[0,7]
    • pad_left∈[0,7]
    • pad_bottom∈[0,7]
    • pad_right∈[0,7]

Datentypbeschränkungen

  • T1:int8(Tensor)
  • T2:float(Tensor)
  • T3:float(Scalar)

AveragePool

  • Nicht unterstützt (vom Werkzeug in eine Faltung umgewandelt).

GlobalAveragePool

  • Nicht unterstützt (vom Werkzeug in eine Faltung umgewandelt).

Dieses Thema entdecken → · Lernpfade →