代码生成

为统计和机器学习工具箱™函数生成C/ c++代码和MEX函数

MATLAB®编码器™从支持代码生成的Statistics和Machine Learning Toolbox函数中生成可读且可移植的C和c++代码。金宝app例如,通过使用代码生成将训练有素的支持向量机(SVM)分类模型部署到设备上,可以对无法运行MATLAB的硬件设备上的新观察结果进行分类。金宝app

您可以通过几种方式为Statistics和Machine Learning Toolbox函数生成C/ c++代码。

  • 对象函数的代码生成(预测随机knnsearch,或rangesearch)的机器学习模型-使用saveLearnerForCoderloadLearnerForCoder,codegen.通过使用保存一个训练过的模型saveLearnerForCoder.定义一个入口点函数,通过使用loadLearnerForCoder并调用对象函数。然后使用codegen为入口点函数生成代码。

  • 的代码生成预测更新使用支持向量机或线性二进制学习器的树模型、支持向量机模型、线性模型或多类纠错输出码(ECOC)分类模型的功能learnerCoderConfigurer然后通过使用generateCode.您可以在生成的C/ c++代码中更新模型参数,而不必重新生成代码。

  • 支持代码生成的其他函数-使用金宝appcodegen.定义一个入口点函数来调用支持代码生成的函数。金宝app然后为入口点函数生成C/ c++代码codegen

您还可以为SVM模型、决策树模型和决策树集成的预测生成定点C/ c++代码。这种类型的代码生成需要Fixed-Point Designer™。

有关支持代码生成的函数列表,请参见金宝app函数列表(C/ c++代码生成)

要了解代码生成,请参见代码生成简介

功能

全部展开

saveLearnerForCoder 将模型对象保存到文件中以供代码生成
loadLearnerForCoder 从保存的模型中重建模型对象以便生成代码
generateLearnerDataTypeFcn 为定点代码生成定义数据类型的Generate函数

创建Coder配置器对象

learnerCoderConfigurer 创建机器学习模型的编码器配置器

使用Coder配置器对象

generateCode 使用编码器配置器生成C/ c++代码
generateFiles 生成MATLAB使用编码器配置器生成代码的文件
validatedUpdateInputs 验证并提取机器学习模型参数进行更新
更新 更新代码生成的模型参数

对象

全部展开

ClassificationTreeCoderConfigurer 用于多类分类的二叉决策树模型的编码器配置
ClassificationSVMCoderConfigurer 编码器配置支持向量机(SVM)为一类和二进金宝app制分类
ClassificationLinearCoderConfigurer 用于高维数据的线性二进制分类的编码器配置器
ClassificationECOCCoderConfigurer 使用二进制学习器的多类模型的编码器配置器
RegressionTreeCoderConfigurer 用于回归的二叉决策树模型的编码器配置器
RegressionSVMCoderConfigurer 支持向量机(SVM)回归模型的编码器配置器金宝app
RegressionLinearCoderConfigurer 高维数据线性回归模型的编码器配置器

主题

代码生成工作流

代码生成简介

学习如何为统计和机器学习工具箱函数生成C/ c++代码。

通用代码生成工作流

为不使用机器学习模型对象的统计和机器学习工具箱函数生成代码。

机器学习模型在命令行预测的代码生成

在命令行生成预测分类或回归模型的代码。

基于MATLAB编码器的机器学习模型预测代码生成

方法生成预测分类或回归模型的代码MATLAB编码器应用程序。

使用编码器配置器生成预测和更新的代码

使用编码器配置器生成预测模型的代码,并在生成的代码中更新模型参数。

代码生成和分类学习程序

使用classification Learner app训练分类模型,并生成C/ c++代码用于预测。

最近邻搜索器的代码生成

使用最近邻居搜索器模型生成查找最近邻居的代码。

为代码生成指定可变大小参数

生成接受在运行时大小可能改变的输入参数的代码。

使用分类预测器训练SVM分类器并生成C/ c++代码

在拟合SVM分类器和生成代码之前,将分类预测器转换为数字虚拟变量。

支持向量机预测的定点代码生成

为SVM分类或回归模型的预测生成定点代码。

概率分布对象的代码生成

生成将概率分布对象拟合到样本数据的代码,并对拟合的分布对象进行评估。

生成代码对表中的数字数据进行分类

使用二叉决策树生成对表中的数字数据进行分类的代码。

代码生成的应用程序

用MATLAB函数块预测类标签

从Simulink生成代码金宝app®使用SVM模型对数据进行分类的模型。

分类和代码生成的系统对象

从System对象™生成代码,使用经过训练的分类模型进行预测,并在Simulink模型中使用System对象。金宝app

使用状态流预测类标签

从状态流生成代码®使用判别分析分类器对数据进行分类的模型。

特色的例子