RegressionLinear类

线性回归模型用于高维数据

描述

RegressionLinear为回归一个训练有素的线性模型对象;线性模型是一个支持向量机回归(SVM)或线性万博1manbetx回归模型。fitrlinear配合一RegressionLinear通过最小化使用减少计算时间为高维数据集(例如,随机梯度下降)技术的目标函数模型。回归损失加上调整项组成的目标函数。

不像其他的回归模型,并为经济的内存使用情况,RegressionLinear模型对象不存储训练数据。然而,他们这样做店为例,估计线性模型的系数,系数估计值,以及正规化强度。

您可以使用受训RegressionLinear模型预测新数据的反应。有关详细信息,请参阅预测

施工

创建一个RegressionLinear通过使用对象fitrlinear

属性

展开全部

线性回归属性

的ε-不敏感带的宽度,指定为一个非负的标量的一半。

如果学习者不是'SVM', 然后小量是一个空数组([])。

数据类型:|

正则化项的强度,指定为非负的值的非负标量或矢量。

数据类型:|

线性回归模型类型,指定为“最小二乘法”要么'SVM'

在该表中, F X = X β + b

  • β是的向量p系数。

  • X是从观察p预测变量。

  • b是标量偏差。

算法 损失函数 FittedLoss
“最小二乘法” 通过普通最小二乘线性回归 均方误差(MSE): [ ÿ F X ] = 1 2 [ ÿ - F X ] 2 'MSE'
'SVM' 万博1manbetx支持向量机回归 小量不敏感: [ ÿ F X ] = 最大 [ 0 | ÿ - F X | - ε ] 'epsiloninsensitive'

线性系数估计,指定为与长度的数字矢量等于预测的数量。

数据类型:

估计的偏置术语或模型截距,指定为数值标量。

数据类型:

损失函数用来拟合模型,指定为'epsiloninsensitive'要么'MSE'

算法 损失函数 学习者
'epsiloninsensitive' 万博1manbetx支持向量机回归 小量不敏感: [ ÿ F X ] = 最大 [ 0 | ÿ - F X | - ε ] 'SVM'
'MSE' 通过普通最小二乘线性回归 均方误差(MSE): [ ÿ F X ] = 1 2 [ ÿ - F X ] 2 “最小二乘法”

复杂性惩罚类型,指定为'套索(L1)'要么'脊(L2)'

该软件组成从平均损失函数的和最小化的目标函数(见FittedLoss),并从该表中的正则化的值。

描述
'套索(L1)' 套索(大号1)罚款: λ Σ Ĵ = 1 p | β Ĵ |
'脊(L2)' 里奇(大号2)罚款: λ 2 Σ Ĵ = 1 p β Ĵ 2

λ指定正则长期强度(见LAMBDA)。

该软件不包括偏项(β0)从正规化处罚。

其它回归属性

用于训练参数RegressionLinear建模,指定为结构。

接入领域ModelParameters使用点符号。例如,访问线性系数的相对公差,并通过使用偏差项Mdl.ModelParameters.BetaTolerance

数据类型:结构

在他们出现的顺序预测名称的预测数据X,指定为字符向量的单元阵列。长度PredictorNames等于列的数量X

数据类型:细胞

扩展预测器名,指定为字符向量的单元阵列。

由于RegressionLinear模型不支持分类预测,万博1manbetxExpandedPredictorNamesPredictorNames是相等的。

数据类型:细胞

响应变量名,指定为字符向量。

数据类型:烧焦

响应转换功能,指定为'没有'或功能句柄。ResponseTransform介绍了软件如何将原始响应值。

对于MATLAB®功能,或者您定义的功能,进入它的功能句柄。例如,您可以输入Mdl.ResponseTransform = @功能,其中功能接受原始响应的数值向量,并返回包含转化的反应的相同大小的数值向量。

数据类型:烧焦|function_handle

方法

失利 线性回归模型回归损失
预测 预测线性回归模型的响应
selectModels 选择安装正规化线性回归模型

复制语义

值。要了解值类如何影响复制操作,请参阅复制对象(MATLAB)。

例子

全部收缩

列车采用SVM,双SGD和屋脊正线性回归模型。

从这个模型模拟10000点意见

ÿ = X 1 0 0 + 2 X 2 0 0 + Ë

  • X = X 1 X 1 0 0 0 是用10%的非零标准正常元件10000通过-1000稀疏矩阵。

  • Ë是均值为0,标准偏差0.3随机正常的错误。

RNG(1)%用于重现N = 1E4;d = 1E3;NZ = 0.1;X = sprandn(N,d,NZ);Y = X(:,100)+ 2 * X(:,200)+ 0.3 * randn(N,1);

列车线性回归模型。默认,fitrlinear用途支持使万博1manbetx用双SGD用于SVM与脊罚向量机,并优化。确定优化算法以及如何通过提取适合总结拟合模型的数据。

[铜牌,FitInfo] = fitrlinear(X,Y)
MDL = RegressionLinear ResponseName: 'Y' ResponseTransform: '无' 测试版:[1000x1双]偏差:-0.0056 LAMBDA:1.0000e-04学习者: 'SVM' 的属性,方法
FitInfo =同场的结构:LAMBDA:1.0000e-04目的:0.2725 PassLimit:10个NumPasses:10 BatchLimit:[] NumIterations:100000 GradientNorm:NaN的GradientTolerance:0 RelativeChangeInBeta:0.4907 BetaTolerance:1.0000e-04 DeltaGradient:1.5816 DeltaGradientTolerance:0.1000 TerminationCode:0 TerminationStatus:{”迭代限制超标 '}阿尔法:[10000x1双]历史:[] FitTime:0.7623求解:{' 双反'}

MDLRegressionLinear模型。你可以通过MDL与培训或新数据失利检查样本中均方误差。或者,你可以通过MDL而新的预测数据预测预测新的观测回应。

FitInfo是含有结构阵列,除其他事项外,终止状态(TerminationStatus),并求解了很长时间才适应模型与数据(FitTime)。这是很好的做法是使用FitInfo确定优化终止测量是否令人满意。在这种情况下,fitrlinear达到迭代的最大数量。由于训练时间快,可以重新训练模式,而是通过数据增加遍数。或者,尝试另一种解算器,如LBFGS。

从这个模型模拟10000点意见

ÿ = X 1 0 0 + 2 X 2 0 0 + Ë

  • X = { X 1 X 1 0 0 0 } 是用10%的非零标准正常元件10000通过-1000稀疏矩阵。

  • Ë是均值为0,标准偏差0.3随机正常的错误。

RNG(1)%用于重现N = 1E4;d = 1E3;NZ = 0.1;X = sprandn(N,d,NZ);Y = X(:,100)+ 2 * X(:,200)+ 0.3 * randn(N,1);

抱出数据的5%。

RNG(1);%用于重现CVP = cvpartition(N,'坚持',0.05)
CVP =保持法交叉验证分区NumObservations:10000个NumTestSets:1 TrainSize:9500 TestSize:500

CVPCVPartition对象定义的所述随机分区ñ数据为训练和测试集。

列车采用训练集的线性回归模型。为了更快的训练时间,定位预测数据矩阵,以便观察在列。

idxTrain =训练(CVP);%提取训练集指标X = X';MDL = fitrlinear(X(:,idxTrain),Y(idxTrain),'ObservationsIn''列');

预测意见和保持了样品的均方误差(MSE)。

idxTest =试验(CVP);%提取测试集指标yHat =预测(MDL,X(:,idxTest),'ObservationsIn''列');L =损失(MDL,X(:,idxTest),Y(idxTest),'ObservationsIn''列'
L = 0.1851

在保持了样品MSE是0.1852。

扩展功能

介绍了在R2016a