主要内容

RegressionSVM预测

利用支持向量机(SVM)回归模型预测响应

  • 库:
  • 统计和机器学习工具箱/回归

描述

RegressionSVM预测块使用支持向量机回归对象(RegressionSVMCompactRegressionSVM).

通过指定包含该对象的工作空间变量的名称,将经过训练的SVM回归对象导入到块中。输入端口x接收一个观察(预测器数据)和输出端口yfit返回观察的预测响应。

港口

输入

全部展开

预测数据,指定为一个观测的列向量或行向量。

依赖关系

  • 的变量x必须与训练支持向量机模型的预测变量的顺序相同选择训练过的机器学习模型

  • 如果你设置“标准化”,真的fitrsvm在训练支持向量机模型时RegressionSVM预测块标准化的值x利用均值和标准差μ而且σ属性(分别)。

数据类型:||一半|int8|int16|int32|int64|uint8|uint16|uint32|uint64|布尔|不动点

输出

全部展开

预测响应,作为标量返回。

数据类型:||一半|int8|int16|int32|int64|uint8|uint16|uint32|uint64|布尔|不动点

参数

全部展开

主要

类型的工作空间变量的名称RegressionSVM对象或CompactRegressionSVM对象。

当你训练支持向量机模型使用fitrsvm,以下限制适用:

  • 预测器数据不能包括分类预测器(逻辑分类字符字符串,或细胞).如果在表中提供训练数据,则预测器必须是数值().此外,您不能使用CategoricalPredictors名称-值参数。要在模型中包含范畴预测器,可以使用对范畴预测器进行预处理dummyvar在拟合模型之前。

  • 的值“ResponseTransform”名称-值参数必须为“没有”(默认)。

  • 的值“KernelFunction”名称-值参数必须为“高斯”“线性”(默认),或多项式的

编程使用

块参数:TrainedLearner
类型:工作空间变量
价值观:RegressionSVM对象|CompactRegressionSVM对象
默认值:“svmMdl”

数据类型

定点运行参数

指定定点操作的舍入模式。有关更多信息,请参见舍入(定点设计师)

块参数总是四舍五入到最接近的可表示值。要控制块参数的舍入,请使用MATLAB在掩码字段中输入表达式®舍入功能。

编程使用

块参数:RndMeth
类型:特征向量
价值观:'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | '最简单' | 'Zero'
默认值:“地板”

指定溢出是饱和还是换行。

行动 基本原理 对溢流的影响 例子

选中此复选框().

您的模型可能会溢出,您希望在生成的代码中显式地保护饱和。

溢出饱和到数据类型所能表示的最小值或最大值。

的最大值int8(有符号8位整数)数据类型可以表示为127。任何大于该最大值的块操作结果都会导致8位整数溢出。选中复选框后,块输出在127处饱和。类似地,块输出在最小输出值为-128时饱和。

清除此复选框().

您希望优化生成的代码的效率。

您希望避免过度指定块如何处理超出范围的信号。有关更多信息,请参见排除信号范围错误(模型)

溢出包装为数据类型可以表示的适当值。

的最大值int8(有符号8位整数)数据类型可以表示为127。任何大于该最大值的块操作结果都会导致8位整数溢出。清除该复选框后,软件将导致溢出的值解释为int8,这可能会产生意想不到的结果。例如,130(二进制10000010)的块结果表示为int8是-126。

编程使用

块参数:SaturateOnIntegerOverflow
类型:特征向量
价值观:'off' | 'on'
默认值:“关闭”

选择此参数可防止定点工具覆盖为块指定的数据类型。有关更多信息,请参见使用锁输出数据类型设置(定点设计师)

编程使用

块参数:LockScale
类型:特征向量
价值观:'off' | 'on'
默认值:“关闭”
数据类型

的数据类型yfit输出。类型可以继承、直接指定或表示为数据类型对象,例如仿真软件。NumericType

当您选择继承:汽车,块使用继承数据类型的规则。

有关数据类型的更多信息,请参见信号的控制数据类型(模型)

单击显示数据类型助手按钮来显示数据类型助手,它帮助您设置数据类型属性。有关更多信息,请参见使用数据类型助手指定数据类型(模型)

编程使用

块参数OutDataTypeStr
类型:字符向量
“继承:汽车”|“双”|“单一”|“一半”|“int8”|“uint8”|“int16”|“uint16”|“int32”|“uint32”|“int64”|“uint64”|“布尔”|“fixdt(16)”|“fixdt(0) 1, 16日”|“fixdt(1, 16日2 ^ 0,0)”|'<数据类型表达式>'
默认的“继承:汽车”

的较低值yfitSimulink的输出范围®检查。

Simulink使用最小值执行:

请注意

输出最小参数不饱和或剪辑实际yfit信号。使用饱和(模型)块来代替。

编程使用

块参数OutMin
类型:字符向量
“[]”|标量
默认的“[]”

的上值yfit输出范围,Simulink检查。

Simulink使用最大值执行:

请注意

输出最大参数不饱和或剪辑实际yfit信号。使用饱和(模型)块来代替。

编程使用

块参数OutMax
类型:字符向量
“[]”|标量
默认的“[]”

为内核计算指定参数的数据类型。类型可以直接指定,也可以表示为数据类型对象,例如仿真软件。NumericType

内核数据类型parameter根据指定的SVM模型的核函数类型指定不同参数的数据类型。指定“KernelFunction”训练SVM模型时的name-value参数。

“KernelFunction”价值 数据类型
“高斯”“rbf” 内核数据类型指定平方距离的数据类型 D 2 x 年代 2 对于高斯核 G x 年代 经验值 D 2 ,在那里x预测数据是一个观察和年代是支持向量。
“线性” 内核数据类型指定线性核函数输出的数据类型 G x 年代 x 年代 ,在那里x预测数据是一个观察和年代是支持向量。
多项式的 内核数据类型指定多项式核函数输出的数据类型 G x 年代 1 + x 年代 p ,在那里x是观察的预测数据,年代是支持向量,和p是一个多项式核函数的顺序。

有关数据类型的更多信息,请参见信号的控制数据类型(模型)

单击显示数据类型助手按钮来显示数据类型助手,它帮助您设置数据类型属性。有关更多信息,请参见使用数据类型助手指定数据类型(模型)

编程使用

块参数KernelDataTypeStr
类型:字符向量
“双”|“单一”|“一半”|“int8”|“uint8”|“int16”|“uint16”|“int32”|“uint32”|“uint64”|“int64”|“布尔”|“fixdt(16)”|“fixdt(0) 1, 16日”|“fixdt(1, 16日2 ^ 0,0)”|'<数据类型表达式>'
默认的“双”

Simulink检查的内核计算内部变量范围的较低值。

Simulink使用最小值执行:

请注意

内核最低参数不会饱和或截取实际的内核计算值信号。

编程使用

块参数KernelOutMin
类型:字符向量
“[]”|标量
默认的“[]”

Simulink检验的内核计算内部变量范围的上值。

Simulink使用最大值执行:

请注意

内核最大参数不会饱和或截取实际的内核计算值信号。

编程使用

块参数KernelOutMax
类型:字符向量
“[]”|标量
默认的“[]”

块特征

数据类型

布尔||不动点|一半|整数|

直接引线

是的

多维信号

没有

适应信号

没有

讨论二阶导数过零检测

没有

提示

  • 如果您使用的是线性支持向量机模型,并且它有许多支持向量,那么预测可能会很慢。为了有效地预测基于线性支持向量机模型的响应,需要将支持向量从RegressionSVMCompactRegressionSVM对象,使用discardSupportVectors

选择功能

你可以使用MATLAB函数块预测支持向量机回归对象(RegressionSVMCompactRegressionSVM).示例请参见用MATLAB函数块预测类标签

当决定是否使用RegressionSVM预测在统计和机器学习工具箱™库中的预测函数,考虑以下情况:

  • 如果使用“统计和机器学习工具箱”库块,则可以使用定点的工具(定点设计师)将浮点模型转换为定点模型。

  • 控件必须为MATLAB函数块启用对可变大小数组的支持预测函数。

  • 如果使用MATLAB函数块,则可以使用MATLAB函数在同一个MATLAB函数块中进行预测前后的预处理或后处理。

扩展功能

C/ c++代码生成
使用Simulink®Coder™生成C和c++代码。

定点转换
使用定点设计器设计和模拟定点系统。

版本历史

在R2020b中引入

全部展开

Baidu
map