NetExternalObject

NetExternalObject[]

外部フレームワーク形式によるネットモデルを表す.

詳細

  • NetExternalObject は,通常は,Wolfram言語では定義されていないニューラルネットワークモデルを使って推論を実行するために使用される.
  • 次は,サポートされるファイル形式である.
  • "ONNX"ONNXモデル
    "MXNet"MXNetモデル
  • NetExternalObject[][data]は,単一の入力ポートを持つモデルについてはモデルを data に適用した結果を与える.
  • NetExternalObject[][<|port1data1,|>]は,複数の入力ポートを持つモデルについては dataiportiに与える.
  • dataNumericArrayとして与えられると出力もNumericArrayになる. »
  • Information[NetExternalObject[]]はモデルについての情報パネルを生成する. »
  • NetExternalObjectについてのInformationには以下の特性が含まれることがある.
  • "Format"モデルが使用する評価バックエンド
    "InputPortNames"入力ポート名のリスト
    "InputPorts"入力ポートの形状の連想
    "OutputPortNames"出力ポート名のリスト
    "OutputPorts"出力ポートの形状の連想
    "Properties"使用可能な特性
    "RawData"モデルの未処理のネイティブなコンテンツ
  • NetExternalObject[][data,opts]は,ネットを data に適用する際にオプションを使うように指定する.次は,使用可能なオプションである.
  • TargetDevice "CPU"評価を行うデバイス
  • TargetDeviceの可能な設定は,システムとハードウェアによって変化する.以下は,その可能な値である.
  • "CPU"CPUを使う
    "GPU"使用可能な専用ハードウェアを使う
    "CoreML"Apple CoreMLフレームワーク
    "CUDA"Nvidia CUDA API
    "DirectML"Microsoft Direct Machine Learning API

例題

すべて開くすべて閉じる

  (2)

ONNXモデルを外部ネットワークとしてインポートする:

モデルを入力データについて評価する:

量子化された画像分類器をインポートする:

データの前処理と後処理のための最小限のパイプラインを定義する:

外部モデルを実行する:

スコープ  (4)

形式  (2)

ONNXモデルをNetExternalObjectとしてインポートする:

MXNetモデルをNetExternalObjectとしてインポートする:

特性  (2)

Informationを使って外部ネットの特性を抽出する:

特性のリストを得る:

サポートされる全特性のリストを得る:

オプション  (2)

TargetDevice  (2)

ONNXファイルをインポートし, CPU上で実行する:

CoreMLを使ってモデルを実行する:

モデルの中には専用ハードウェアで実行した方が速くなるものもある:

CPUの時間:

CoreMLの時間:

アプリケーション  (1)

リアルタイムの顔検出器を実行する:

画像から配列のリストへの変換を定義する:

符号化された画像に対して検出器を実行する:

結果から境界ボックスと確率情報を抽出する:

確率が低いあるいは重なり合いが大きいものにフィルタをかけて検出結果を可視化する:

このネットワークは消費者用のノートパソコンで1秒間に40以上の画像が分析できる:

特性と関係  (2)

入力がNumericArrayとして与えられると出力もNumericArrayになる:

外部ネットモデルは,通常,ハードコードされたバッチ次元を持つ:

通常のネットワークには明示的なバッチ次元はない:

上記は単一の例と任意サイズのバッチの両方に使うことができる:

考えられる問題  (2)

外部モデルに修正を加えることはできない:

外部モデルを訓練し直すことはできない:

Wolfram Research (2022), NetExternalObject, Wolfram言語関数, https://reference.wolfram.com/language/ref/NetExternalObject.html (2023年に更新).

テキスト

Wolfram Research (2022), NetExternalObject, Wolfram言語関数, https://reference.wolfram.com/language/ref/NetExternalObject.html (2023年に更新).

CMS

Wolfram Language. 2022. "NetExternalObject." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2023. https://reference.wolfram.com/language/ref/NetExternalObject.html.

APA

Wolfram Language. (2022). NetExternalObject. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/NetExternalObject.html

BibTeX

@misc{reference.wolfram_2024_netexternalobject, author="Wolfram Research", title="{NetExternalObject}", year="2023", howpublished="\url{https://reference.wolfram.com/language/ref/NetExternalObject.html}", note=[Accessed: 17-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_netexternalobject, organization={Wolfram Research}, title={NetExternalObject}, year={2023}, url={https://reference.wolfram.com/language/ref/NetExternalObject.html}, note=[Accessed: 17-November-2024 ]}