loadLearnerForCoder
从保存的模型中重构模型对象以生成代码
语法
描述
为机器学习模型的目标函数生成C/ c++代码预测
,随机
,knnsearch
,rangesearch
,isanomaly
,和增量学习函数),使用saveLearnerForCoder
,loadLearnerForCoder
,codegen
(MATLAB编码器).在训练一个机器学习模型后,用保存模型saveLearnerForCoder
.定义一个入口点函数,它通过使用loadLearnerForCoder
并调用一个对象函数。然后使用codegen
或者是MATLAB®编码器™应用程序生成C/ c++代码。生成C/ c++代码需要MATLAB编码器.
对于支持单精度C/ c++代码生成的函数,请使用saveLearnerForCoder
,loadLearnerForCoder
,codegen
(MATLAB编码器);指定名称-值参数“数据类型”、“单”
当你打电话给loadLearnerForCoder
函数。
此流程图显示了机器学习模型的对象函数的代码生成流程。使用loadLearnerForCoder
对于高亮显示的步骤。
定点C/ c++代码生成需要一个额外的步骤,该步骤定义预测所需变量的定点数据类型。通过使用生成的数据类型函数来创建定点数据类型结构generateLearnerDataTypeFcn
,并使用该结构作为的输入参数loadLearnerForCoder
在一个入口点函数中。生成定点C/ c++代码需要MATLAB编码器和定点设计师™。
的定点代码生成工作流预测
机器学习模型的功能。使用loadLearnerForCoder
对于高亮显示的步骤。
重构模型(Mdl
= loadLearnerForCoder (文件名
)Mdl
)从模型中存储在MATLAB格式化的二进制文件(MAT-file)中命名文件名
.您必须创建文件名
文件的使用saveLearnerForCoder
.
返回存储在中的模型的定点版本Mdl
= loadLearnerForCoder (文件名
“数据类型”,T
)文件名
.结构T
控件所需的变量的定点数据类型预测
模型的功能。创建T
所生成的函数generateLearnerDataTypeFcn
.
在入口点函数中使用此语法,并使用codegen
为入口点函数生成定点代码。您只能在生成代码时使用此语法。
例子
输入参数
输出参数
限制
当
Mdl
是CompactLinearModel
- - - - - -假设你训练一个线性模型使用fitlm
并指定“RobustOpts”
作为具有匿名函数句柄的结构RobustWgtFun
字段中,使用saveLearnerForCoder
保存模型,然后使用loadLearnerForCoder
加载模型。在这种情况下,loadLearnerForCoder
不能恢复健壮的属性放入MATLAB工作区。然而,loadLearnerForCoder
可以在编译时在入口点函数中加载模型以生成代码。当
Mdl
是CompactClassificationSVM
或CompactClassificationECOC
- - - - - -如果你使用saveLearnerForCoder
保存用于预测后验概率的模型,并使用loadLearnerForCoder
然后加载模型loadLearnerForCoder
不能恢复ScoreTransform
属性放入MATLAB工作区。然而,loadLearnerForCoder
可以加载模型,包括ScoreTransform
属性中的入口点函数,以便在编译时生成代码。
提示
对于高斯过程回归(GPR)模型或支持向量机(SVM)模型的单精度代码生成,通过指定使用标准化数据
“标准化”,真的
当你训练模型时。
算法
saveLearnerForCoder
准备一个机器学习模型(Mdl
),以生成程式码。该函数删除了一些不必要的属性。
对于具有相应紧凑模型的模型,则
saveLearnerForCoder
函数应用适当的紧凑的
函数在保存模型之前。对于没有相应的紧凑模型的模型,例如
ClassificationKNN
,ClassificationLinear
,RegressionLinear
,ExhaustiveSearcher
,KDTreeSearcher
,IsolationForest
,saveLearnerForCoder
函数删除超参数优化属性、训练求解器信息等属性。
loadLearnerForCoder
加载保存的模型saveLearnerForCoder
.
选择功能
使用创建的编码器配置器
learnerCoderConfigurer
对于该表中列出的型号。模型 编码器配置对象 用于多类分类的二叉决策树 ClassificationTreeCoderConfigurer
支持向量机用于一类和二类分类 ClassificationSVMCoderConfigurer
二元分类的线性模型 ClassificationLinearCoderConfigurer
支持向量机和线性模型的多类模型 ClassificationECOCCoderConfigurer
用于回归的二叉决策树 RegressionTreeCoderConfigurer
支持向量机(SVM)回归 RegressionSVMCoderConfigurer
线性回归 RegressionLinearCoderConfigurer
在训练机器学习模型之后,创建模型的编码器配置器。类的对象函数和属性可用于配置代码生成选项和生成代码
预测
而且更新
模型的功能。如果您使用编码器配置器生成代码,您可以在生成的代码中更新模型参数,而不必重新生成代码。有关详细信息,请参见使用编码器配置器进行预测和更新的代码生成.
扩展功能
版本历史
介绍了R2019b