メインコンテンツ

外部のプラットフォームからの事前学習済みのネットワーク

R2026b
外部の深層学習プラットフォームの事前学習済みネットワークを利用する

外部の深層学習プラットフォームから事前学習済みネットワークを利用するには、モデルをインポートするか、共同実行を使用して外部モデルの学習およびテストを行うかという 2 つの方法があります。可能な限り、モデルをインポートする方法が推奨されます。

Deep Learning Toolbox™ は、TensorFlow™ 2、TensorFlow-Keras、Keras 3、PyTorch®、ONNX™ (Open Neural Network Exchange) モデル形式、および Caffe からのニューラル ネットワークのインポートをサポートしています。ディープ ネットワーク デザイナー アプリを使用して対話形式でネットワークをインポートするか、コマンド ライン関数を使用してプログラムでインポートします。アプリは、インポートのプロセスを要約し、必要なアクションを強調表示するインポート レポートを生成します。詳細については、事前学習済みの深層ニューラル ネットワークとInteroperability Between Deep Learning Toolbox, TensorFlow, PyTorch, and ONNXを参照してください。

Deep Learning Toolbox のインポート関数を使用するには、特定のサポート パッケージが必要です。必要なサポート パッケージがインストールされていない場合、各関数によって、アドオン エクスプローラーの対応するサポート パッケージへのダウンロード リンクが表示されます。使用している MATLAB® のバージョンに対応する既定の場所にサポート パッケージをダウンロードしてください。サポート パッケージは直接ダウンロードすることも可能です。

MATLAB と外部の深層学習プラットフォームの間の相互運用

事前学習済みネットワークのインポートが不可能な場合は、共同実行を使用して外部モデルを実行できます。共同実行は、TensorFlow、ONNX、PyTorch、およびカスタム Python® モデルを含む、Python ベースのモデルでサポートされています。PyTorch モデルの場合、PyTorchModel オブジェクトを使用して MATLAB 内でモデルを直接実行できます。このオブジェクトは、MATLAB–Python インターフェイスを介して Python でモデルを実行するラッパーとして機能し、モデルのインポートを必要とせずに連携を可能にします。arrayToTorchTensor 関数と torchTensorToArray 関数を使用することで、MATLAB の数値配列と PyTorch テンソルの間の変換も可能です。

アプリ

ディープ ネットワーク デザイナー深層学習ネットワークの設計と可視化

関数

すべて展開する

TensorFlow のインポート

importNetworkFromTensorFlowMATLAB ネットワークとしての TensorFlow ネットワークのインポート (R2023b 以降)
importNetworkFromKerasImport Keras 3 network as MATLAB network (R2026a 以降)

PyTorch のインポート

importNetworkFromPyTorchPyTorch ネットワークを MATLAB ネットワークとしてインポートする (R2022b 以降)

Caffe のインポート

importCaffeNetwork事前学習済み畳み込みニューラル ネットワーク モデルを Caffe からインポート
importCaffeLayersCaffe からの畳み込みニューラル ネットワーク層のインポート

ONNX のインポート

importNetworkFromONNXMATLAB ネットワークとしての ONNX ネットワークのインポート (R2023b 以降)

importONNXFunction によってインポートされるパラメーター

ONNXParametersParameters of imported ONNX network for deep learning
freezeParametersONNXParameters の学習可能なネットワーク パラメーターを学習不能に変換する
unfreezeParametersONNXParameters の学習不能なネットワーク パラメーターを学習可能に変換する
addParameterAdd parameter to ONNXParameters object
removeParameterRemove parameter from ONNXParameters object
dlnetwork深層学習ニューラル ネットワーク
functionLayer関数層
replaceLayerニューラル ネットワークの層の置き換え
addLayersニューラル ネットワークへの層の追加
removeLayersニューラル ネットワークからの層の削除
arrayToTorchTensorConvert MATLAB numeric array to PyTorch Tensor (R2026b 以降)
torchTensorToArrayConvert PyTorch Tensor to MATLAB numeric array (R2026b 以降)
forwardCompute PyTorchModel output by invoking Python model on input (R2026b 以降)
addFunctionConfigure data transfer settings for Python method or function of PyTorchModel (R2026b 以降)
callFunctionCall method of underlying Python PyTorch model instance or function taking model as its first argument (R2026b 以降)
exportSave underlying PyTorch model in different PyTorch file format (R2026b 以降)
reloadReload PyTorch model from stored model loading properties (R2026b 以降)

オブジェクト

PyTorchModelReference to a PyTorch model for Python execution (R2026b 以降)

トピック

インポート

Simulink ブロックの Python 共同実行

MATLAB コマンド ラインでの PyTorch 共同実行

カスタム層