主要内容

深層学習ネットワク向けの汎用c / c++コドの生成

MATLAB®编码器™を使用して,既に学習済みのニューラルネットワークからの予測のための汎用Cまたはc++コードを生成できます。生成されたc / c++コドは,いずれのサ。生成されたコドは,入力SeriesNetwork(深度学习工具箱)またはDAGNetwork(深度学习工具箱)ネットワークオブジェクトで指定されるアーキテクチャ,レイヤー,およびパラメーターを使用してニューラルネットワークを実装します。コド生成でサポトされているネットワを参照してください。

次のいずれかの方法を使用してコドを生成します。

  • Matlabコドからのc / c++コド生成のための標準codegenコマンド。

  • MATLAB编码器アプリ。

必要条件

  • 窗户®では,関数codegenを使用した深層学習ネットワクのコド生成には微软®Visual Studio®またはMinGW®コンパ邮箱ラが必要です。

  • 深度学习库的MATLAB编码器接口。このサポトパッケジをeconンストルするには,これをmatlabの[アドオン]メニュから選択します。

  • 深度学习工具箱™。

codegenを使用したコド生成

  1. Matlabで,以下を行うエントリポ源码ント関数を記述します。

    次に例を示します。

    函数Out = my_predict(in)% # codegen持久对象mynet用于加载系列网络对象。第一次调用此函数时,将构造持久对象并%设置。当该函数随后被调用时,将重用相同的对象%调用对输入的预测,从而避免重构和重新加载%网络对象。持续的mynet;如果isempty(mynet) mynet = code . loaddeeplearningnetwork (“myNetwork.mat”);结束输入传入率Out = predict(mynet,in,“MiniBatchSize”2);

  2. 関数编码器。DeepLearningConfigを使用して,汎用c / c++コドの生成用に設定された深層学習構成オブジェクトdlconfigを作成します。

    Dlconfig =编码器。DeepLearningConfig (TargetLibrary =“没有”);

    墨西哥人用またはスタティックまたはダイナミックリンクライブラリ用のコード生成構成オブジェクトを作成します。既定では,コドジェネレタは汎用cコドを生成します。汎用c++コドを生成するには,コド生成構成オブジェクトでTargetLangパラメタを“c++”に設定します。DeepLearningConfigパラメタを前に作成したオブジェクトdlconfigに設定します。

    CFG = code .config(“自由”);cfg。TargetLang =“c++”;cfg。DeepLearningConfig = dlconfig;
  3. codegenコマンドを実行します。配置オプションを使用して,構成オブジェクトを指定します。arg游戏オプションを使用して,入力型を指定します。

    codegen配置cfgmy_predictarg游戏{myInput}报告

    メモ

    コド生成では半精度入力を指定できます。ただし,コドジェネレタによって入力が単精度に型キャストされます。深度学习工具箱は,MATLABでのすべての計算に単精度浮動小数点演算を使用します。

MATLAB编码器アプリを使用したコド生成

  1. 通常の手順に従い、エントリポ以及ント関数の指定および入力型の指定を行います。MATLAB编码器アプリを使用したCコドの生成を参照してください。

  2. [コドの生成]ステップで,以下を実行します。

    • [言語][C]または(c++)のいずれかに設定します。

    • [詳細設定]をクリックします。[深層学習]ペンで,[タゲットラブラリ][なし]に設定します。

  3. コドを生成します。

参考

||

関連するトピック