このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
モデルオブジェクトをコード生成用のファイルに保存
機械学習モデルのオブジェクト関数(预测
、随机
、knnsearch
、rangesearch
,インクリメンタル学習オブジェクト関数など)に対するC / c++コードを生成するには,saveLearnerForCoder
、loadLearnerForCoder
,およびcodegen
(MATLAB编码器)を使用します。機械学習モデルに学習をさせた後で,saveLearnerForCoder
を使用してモデルを保存します。loadLearnerForCoder
を使用してモデルを読み込みオブジェクト関数を呼び出す,エントリポイント関数を定義します。その後,codegen
またはMATLAB®编码器™アプリを使用してC / c++コードを生成します。C / c++コードの生成にはMATLAB编码器が必要です。
次のフローチャートは,機械学習モデルのオブジェクト関数に対するコード生成ワークフローを示します。強調表示されているステップでsaveLearnerForCoder
を使用します。
固定小数点のC / c++コードを生成するには,予測に必要な変数の固定小数点データ型を定義する追加の手順が必要です。generateLearnerDataTypeFcn
によって生成されるデータ型関数を使用して固定小数点データ型構造体を作成し,その構造体をエントリポイント関数でloadLearnerForCoder
の入力引数として使用します。固定小数点のC / c++コードを生成するには,MATLAB编码器および定点设计师™が必要です。
次のフローチャートは,機械学習モデルの関数预测
の固定小数点のコード生成ワークフローを示します。強調表示されているステップでsaveLearnerForCoder
を使用します。
saveLearnerForCoder (
は,分類モデル,回帰モデルまたは最近傍探索モデル(Mdl
,文件名
)Mdl
)をコード生成用に準備してから,文件名
という名前のMATLAB形式のバイナリファイル(垫ファイル)に保存します。文件名
をloadLearnerForCoder
に渡すと,文件名
ファイルからモデルオブジェクトを再構築できます。
saveLearnerForCoder
は機械学習モデル(Mdl
)をコード生成用に準備します。この関数は,いくつかの不要なプロパティを削除します。
対応するコンパクトなモデルがあるモデルの場合,関数saveLearnerForCoder
は該当する関数紧凑的
をモデルに適用してからモデルを保存します。
対応するコンパクトなモデルがないモデル(ClassificationKNN
、ClassificationLinear
、RegressionLinear
、ExhaustiveSearcher
、KDTreeSearcher
など)の場合,関数saveLearnerForCoder
はプロパティ(ハイパーパラメーター最適化プロパティなど),ソルバーの学習に関する情報などを削除します。
loadLearnerForCoder
は,saveLearnerForCoder
によって保存されたモデルを読み込みます。
次の表に記載されているモデルに対して,learnerCoderConfigurer
が作成したコーダーコンフィギュアラーを使用します。
モデル | コーダーコンフィギュアラーオブジェクト |
---|---|
マルチクラス分類用の二分決定木 | ClassificationTreeCoderConfigurer |
1クラスおよびバイナリ分類用のSVM | ClassificationSVMCoderConfigurer |
バイナリ分類用の線形モデル | ClassificationLinearCoderConfigurer |
SVMモデルおよび線形モデル用のマルチクラスモデル | ClassificationECOCCoderConfigurer |
回帰用の二分決定木 | RegressionTreeCoderConfigurer |
サポートベクターマシン(SVM)回帰 | RegressionSVMCoderConfigurer |
線形回帰 | RegressionLinearCoderConfigurer |
機械学習モデルに学習をさせた後で,モデルのコーダーコンフィギュアラーを作成します。コンフィギュアラーのプロパティとオブジェクト関数を使用することにより,コード生成オプションを設定し,モデルの関数预测
および更新
に対するコードを生成します。コーダーコンフィギュアラーを使用してコードを生成した場合,コードを再生成せずに,生成されたコードのモデルパラメーターを更新できます。詳細については,予測用のコード生成とコーダーコンフィギュアラーの使用による更新を参照してください。
loadLearnerForCoder
|codegen
(MATLAB编码器)|generateLearnerDataTypeFcn