从已保存的模型重建模型对象进行代码生成
要生成C代码,您必须拥有一个MATLAB®编码器™许可证。
mdl = loadCompactModel(文件名)
重建紧凑的分类模型,紧凑型回归模型或最近的邻邻搜索者(MDL.
= loadCompactModel (文件名
)MDL.
)保存在MATLAB格式二进制文件(MAT-file)中的模型。文件名
.您必须创建文件名
使用savecompactmodel.
.
加载电离层
数据集。
负载电离层
使用整个数据集训练支持向量机分类模型。指定要标准化数据。
Mdl = fitcsvm (X, Y,'标准化',真正的)
mdl = classificationsvm racatectename:'y'pationoricalpricictors:[] classnames:{'b'g'} scoreTransform:'none'numobservations:351 alpha:[89x1 double]偏置:-0.1341内核参数:[1x1 struct] mu:[1x34DOUBLE] SIGMA:[1x34双] BOXCONSTRAINTS:[351x1 DOUBLE] CONFORGENGEINFO:[1x1 STRUCT] ISSupportVe万博1manbetxctor:[351x1逻辑]求解器:'SMO'属性,方法
MDL.
是一个分类VM.
模型。
将SVM分类模型保存到文件中“SVMIonosphere.mat”
.
saveCompactModel (Mdl“SVMIonosphere”);
“SVMIonosphere.mat”
出现在您当前的工作目录中。savecompactmodel.
通过删除预测不需要的属性来减少模型的存储空间,例如培训数据。然后,savecompactmodel.
保存具有特征的结构阵列MDL.
在“SVMIonosphere.mat”
.
加载结构数组“SVMIonosphere.mat”
工作区。
CompactMdl = loadCompactModel (“SVMIonosphere”)
CompactMdl = classreg.learning.classif.CompactClassificationSVM ResponseName:‘Y’CategoricalPredictors:[]类名:{b ' g '} ScoreTransform:‘没有’α:[89 x1双]偏见:-0.1341 KernelParameters: [1 x1 struct]μ:σ[1 x34双]:[1 x34双]SupportVectors: [89 x34双]SupportVectorLabels: [89 万博1manbetxx1双]属性,方法
CompactMdl
是一个CompactClassificationsVM.
配备预测的模型。
定义一个函数,该函数使用训练过的分类模型对新的观察结果进行分类,并从该函数生成代码。
载入费雪的虹膜数据集。去除萼片的长度和宽度,并观察到所有刚毛鸢尾。
负载渔民第1 = ~ strcmp(物种,'setosa');X =量(第1 3:4);Y =物种(第1);
使用处理后的数据集训练支持向量机分类模型。
Mdl = fitcsvm (X, Y)
MDL = ClassificationSVM ResponseName: 'Y' CategoricalPredictors:[]类名:{ '云芝' '锦葵'} ScoreTransform: '无' NumObservations:100阿尔法:[24x1双]偏压:-14.4149 KernelParameters:[1x1的结构] BoxConstraints:[100X1DOUBLE] CONFORGENGEINFO:[1x1 struct] iss万博1manbetxupportvector:[100x1逻辑]求解器:'smo'
MDL.
是一个分类VM.
模型。
将SVM分类模型保存到文件中svmiris.mat
.
saveCompactModel (Mdl“SVMIris”);
在当前文件夹中定义一个名为Classifirises.m.
这有以下内容:
接受与之相称的虹膜花测量测定
,并返回预测的标签。
加载紧凑的SVM分类模型。
通过加载的模型和虹膜花测量预测
.
功能标签= classifyIrises (X)% # codegen%CLASSIFYIRISES使用SVM模型对虹膜物种进行分类% CLASSIFYIRISES用X来分类鸢尾花的尺寸%压缩的SVM模型在文件SVMIris。然后返回class标签中的%标签。CompactMdl = loadCompactModel (“SVMIris”);标签=预测(compactmdl,x);结束
的% # codegen
编译指令表明MATLAB®代码用于代码生成。
生成一个MEX函数Classifirises.m.
.因为C使用静态类型,codegen
必须在编译时确定Matlab®文件中所有变量的属性。为确保MEX函数可以使用相同的输入,请使用该观察指定为功能的参数“参数”
选择codegen
.
codegenClassifirises.m.arg游戏{X}
您可以使用Coder.typeof.
指定参数维度可以具有任何长度。这种规范方便在编译时具有未知观察数的输入数据集。例如,看到为代码生成指定变量大小的参数.
软件生成MEX文件classifyIrises_mex.mexw64
到当前文件夹。文件扩展名取决于您的平台。
比较预测使用的标签预测
,Classifirises.m.
, 和classifyIrises_mex
.
label1 =预测(Mdl X);label2 = classifyIrises (X);label3 = classifyIrises_mex (X);verify_label = isequal (label1 label2 label3)
Verify_label =逻辑1
isequal
如果所有输入都相等,则返回逻辑1 (true)。这三种方法的标签都是一样的。
文件名
- - - - - -MAT文件名包含表示模型对象的结构数组包含表示模型对象的结构数组的文件名,指定为字符向量。您必须创建文件名
使用savecompactmodel.
.
loadCompactModel
重建存储在存储的模型文件名
在编译时。对于支持万博1manbetx的模型,请参阅MDL.
输入论点savecompactmodel.
.
如果文件名
那时没有延伸(即没有周期,文本),然后loadCompactModel
附加.mat
.
如果文件名
不包括一个完整的路径,那么loadCompactModel
从当前工作目录加载。
例子:'mdl'
MDL.
-紧凑分类模型,紧凑回归模型,或最近邻搜索器紧凑分类模型、紧凑回归模型或最近邻搜索器,作为该表中的模型对象之一返回。
模型对象 | 笔记 | |
---|---|---|
紧凑型分类模型对象 |
一个 |
|
此模型对象是一个小型对象,其没有相应的完整对象。 |
||
CompactClassificationseMble |
||
如果你使用 |
||
紧凑型回归模型对象 |
||
如果通过使用培训线性模型 |
||
此模型对象是一个小型对象,其没有相应的完整对象。 |
||
最近邻搜索对象 |
此模型对象是一个没有相应的Compact对象的完整对象。 |
MDL.
必须是编译时常量。您不能更改它后,您加载使用loadCompactModel
.
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。万博1manbetx
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。