代码生成
为统计和机器学习工具箱™函数生成C/ c++代码和MEX函数
MATLAB®编码器™从支持代码生成的统计和机器学习工具箱函数生成可读和可移植的C和c++代码。例如,通过使用代码生成将经过训练的支持向量机(SVM)分类模型部署到设备上,可以对无法运行MATLAB的硬件设备上的新观测数据进行分类。
你可以通过以下几种方式为这些函数生成C/ c++代码:
使用
saveLearnerForCoder
,loadLearnerForCoder
,codegen
(MATLAB编码器)用于机器学习模型的一个目标函数。使用创建的编码器配置器
learnerCoderConfigurer
为预测
而且更新
机器学习模型的目标函数。通过在生成的代码中使用配置器和更新模型参数来配置代码生成选项。使用
codegen
用于支持代码生成的其他函数。
您还可以为一些机器学习模型的预测生成定点C/ c++代码。这种类型的代码生成需要定点设计器™。
将机器学习模型的预测集成到Simulink中®,使用MATLAB函数块或统计和机器学习工具箱库中的Simulink块。
要了解代码生成,请参见代码生成简介.
有关支持代码生成的函数列表,请参见函数列表(C/ c++代码生成).
功能
对象
块
主题
代码生成工作流
- 代码生成简介
了解如何为统计和机器学习工具箱函数生成C/ c++代码。 - 通用代码生成工作流
为不使用机器学习模型对象的统计和机器学习工具箱函数生成代码。 - 命令行机器学习模型预测的代码生成
在命令行生成用于预测分类或回归模型的代码。 - 增量学习的代码生成
生成在命令行上为二进制线性分类实现增量学习的代码。 - 基于MATLAB Coder App的机器学习模型预测代码生成
类生成用于预测分类或回归模型的代码MATLAB编码器应用程序。 - 使用编码器配置器进行预测和更新的代码生成
使用编码器配置器生成预测模型的代码,并在生成的代码中更新模型参数。 - 为代码生成指定可变大小的参数
生成接受输入参数的代码,其大小可能在运行时发生变化。 - 生成代码对表格中的数据进行分类
生成用于对包含数字变量和类别变量的表中的数据进行分类的代码。 - 为分类预测器创建虚拟变量并生成C/ c++代码
在拟合SVM分类器并生成代码之前,将分类预测器转换为数字虚拟变量。 - 支持向量机预测的定点编码生成
生成用于预测支持向量机分类或回归模型的定点代码。 - 代码生成和分类学习应用程序
使用classification Learner应用程序训练分类模型,并生成C/ c++代码进行预测。 - 最近邻搜索器的代码生成
使用最近邻搜索器模型生成查找最近邻的代码。 - 概率分布对象的代码生成
生成适合抽样数据的概率分布对象的代码,并计算适合的分布对象。 - 分类学习者训练的逻辑回归模型的代码生成
这个例子展示了如何使用Classification Learner训练逻辑回归模型,然后生成使用导出的分类模型预测标签的C代码。 - 异常检测代码生成
使用训练过的隔离林模型或单类SVM生成检测数据异常的单精度代码。
分类和回归预测块
- 使用分类支持向量机预测块预测类标签
这个例子展示了如何在Simulink®中使用ClassificationSVM预测块进行标签预测。 - 使用分类树预测块预测类标签
使用分类学习者应用程序训练分类决策树模型,然后使用ClassificationTree预测块进行标签预测。 - 使用ClassificationEnsemble预测块预测类标签
训练一个具有最优超参数的分类集合模型,然后使用ClassificationEnsemble预测块进行标签预测。 - 使用分类神经网络预测块预测类标签
训练一个神经网络分类模型,然后使用ClassificationNeuralNetwork预测块进行标签预测。 - 使用ClassificationKNN预测块预测类标签
训练最近邻分类模型,然后使用ClassificationKNN预测块进行标签预测。 - 使用回归支持向量机预测块预测响应
使用回归学习者应用程序训练支持向量机(SVM)回归模型,然后使用RegressionSVM预测块进行响应预测。 - 使用回归树预测块预测响应
这个例子展示了如何在Simulink®中使用RegressionTree预测块进行响应预测。 - 使用回归集成预测块预测响应
训练一个具有最优超参数的回归集合模型,然后使用RegressionEnsemble预测块进行响应预测。 - 使用回归神经网络预测块预测响应
训练一个神经网络回归模型,然后使用RegressionNeuralNetwork预测块进行响应预测。 - 使用RegressionGP预测块预测响应
训练一个高斯过程(GP)回归模型,然后使用RegressionGP预测块进行响应预测。
代码生成的应用程序
- 用MATLAB函数块预测类标签
从使用支持向量机模型对数据进行分类的Simulink模型生成代码。 - 分类和代码生成的系统对象
从System对象™生成代码,使用经过训练的分类模型进行预测,并在Simulink模型中使用System对象。 - 使用状态流预测类标签
从状态流生成代码®使用判别分析分类器对数据进行分类的模型。 - 定点部署的Simulink人体活动识别模型
从为定点部署准备的分类Simulink模型生成代码。 - 在Arduino硬件上使用机器学习算法识别打孔手势和弯曲手势(Simulink Arduino硬件支持包)
这个例子展示了如何使用Arduino®硬件的Simulink®支持包,使用机器学习算法识别打孔和弯曲手势。 - 将神经网络回归模型部署到FPGA/ASIC平台
利用神经网络回归模型在Simulink中进行预测,并利用HDL代码生成将Simulink模型部署到FPGA/ASIC平台上。