主要内容

重新公开

重新结算回归损失

    描述

    例子

    l=重新公开(MDL返回经过训练的回归模型的重生(L)或样本中回归损失的回归损失MDL使用存储在mdl.x以及存储在mdl.y

    解释l取决于损失函数(“ LossFun”)和加权方案(MDL.W)。通常,更好的模型产生较小的损失值。默认值“ LossFun”值是'MSE'(平均平方错误)。

    例子

    l=重新公开(MDL,,,,名称,价值使用一个或多个名称值参数指定其他选项。例如,“包括Internatractions”,False指定从广义加性模型中排除交互项MDL

    例子

    全部收缩

    训练广义添加剂模型(GAM),然后使用均方误差(MSE)来计算重结式损失。

    加载耐心数据集。

    加载耐心

    创建一个包含预测变量的表(年龄,,,,舒张期,,,,吸烟者,,,,重量,,,,性别,,,,自我评估healthstatus)和响应变量(收缩期)。

    tbl =表(年龄,舒张期,吸烟者,体重,性别,自我评估healthStatus,收缩期);

    培训一个单变量GAM,其中包含了预测指标的线性术语TBL

    mdl = fitrgam(tbl,“收缩”
    mdl = recressiongam predictOrnames:{1x6 cell}响应eName:'收缩式'分类predictictors:[3 5 6]响应式响应:'无'截图:122.7800 isstandardDeviationFit:0 numobservations:0 numobservations:100属性,方法,方法,方法,方法,方法,方法

    MDL是一个回归剂模型对象。

    使用均方误差(MSE)计算重新结构损失。

    l =重新公开(MDL)
    L = 4.1957

    加载样本数据并存储在一个桌子

    加载渔业tbl = table(mes(::,1),meas(:2),mes(:3),mes(:4),物种,,物种,...'variablenames',{'MEATE1',,,,'MEATE2',,,,'MEATE3',,,,'MEATE4',,,,'物种'});

    使用第一个测量作为响应和其他变量作为预测因素拟合GPR模型。

    mdl = fitrgp(tbl,'MEATE1');

    使用训练有素的模型预测响应。

    ypred =预测(MDL,TBL);

    计算平均绝对误差。

    n =高度(tbl);y = tbl.meas1;fun = @(y,ypred,w)sum(abs(y-ypred))/n;l =重新公开(mdl,“ LossFun”,乐趣)
    L = 0.2345

    训练包含预测变量和交互项的广义加性模型(GAM),并估算带有和没有相互作用项的回归损失(平方误差,MSE)的回归损失和测试数据。指定在估计回归损失时是否包括交互项。

    加载卡比格数据集包含了1970年代和1980年代初期制造的汽车的测量。

    加载卡比格

    指定加速度,,,,移位,,,,马力, 和重量作为预测变量(X) 和MPG作为响应变量(y)。

    x = [加速,位移,马力,重量];y = mpg;

    将数据集分为两组:一个包含培训数据,另一个包含新的未观察到的测试数据。保留10个新测试数据集的观察结果。

    rng('默认'%可再现性n =大小(x,1);newinds = randsample(n,10);inds =〜iSmember(1:n,newinds);Xnew = x(newinds,:);ynew = y(newinds);

    训练包含所有可用的线性和交互项中的广义添加剂模型X

    mdl = fitrgam(x(inds,:),y(inds),,“互动”,,,,'全部');

    MDL是一个回归剂模型对象。

    计算有或没有相互作用项的重新结论MSE(即,样本中的MSE)MDL。要排除交互条款,请指定“包括Internatractions”,False

    resubl = resubloss(MDL)
    重新公开= 0.0292
    resubl_nointeraction = resubloss(mdl,“包括Internactions”,错误的)
    resubl_nointeraction = 4.7330

    计算测试数据集的带有和没有交互作用项的回归MSE。使用内存有效的模型对象进行计算。

    cmdl = compact(mdl);

    cmdl是一个Compactregressiongam模型对象。

    l =损失(cmdl,Xnew,ynew)
    L = 12.8604
    l_nointeraction =损失(cmdl,Xnew,ynew,“包括Internactions”,错误的)
    l_nointeraction = 15.6741

    包括交互术语为训练数据集和测试数据集实现了较小的错误。

    输入参数

    全部收缩

    回归机器学习模型,指定为完整的回归模型对象,如下表所述模型中所述。金宝app

    模型 回归模型对象
    高斯过程回归模型 回归基
    广义添加剂模型(GAM) 回归剂
    神经网络模型 回归工业网络

    名称值参数

    将可选的参数对name1 = value1,...,namen = valuen, 在哪里姓名是参数名称和价值是相应的值。名称值参数必须在其他参数之后出现,但是对的顺序并不重要。

    在R2021a之前,请使用逗号分隔每个名称和值,并附上姓名用引号。

    例子:重新公开(MDL,“ Inception Interactions”,false)从广义加性模型中排除交互项MDL

    标志以包括模型的交互项,指定为真的或者错误的。该参数仅适用于广义加法模型。也就是说,您只能在MDL回归剂

    默认值是真的如果MDL包含互动术语。值必须是错误的如果模型不包含交互项。

    例子:“包括Internatractions”,False

    数据类型:逻辑

    损失功能,指定为'MSE'或功能句柄。

    • 'MSE'- 加权均方根误差。

    • 功能句柄 - 指定自定义损失功能,请使用功能句柄。该功能必须具有此表格:

      lossval =Lossfun(y,yfit,w)

      • 输出参数LossVal是浮点标量。

      • 您指定函数名称(Lossfun)。

      • y是一个长度n观察到的响应的数字向量,其中n是观察的数量TBL或者X

      • 是的是一个长度n相应预测响应的数字向量。

      • w是一个n-1观察权重的数字矢量。

    例子:'LossFun',@Lossfun

    数据类型:char|细绳|function_handle

    更多关于

    全部收缩

    加权平方错误

    加权平方误差衡量回归模型的预测性不准确性。当您比较许多模型之间的相同类型的损失时,较低的误差表示更好的预测模型。

    加权平方误差的计算如下:

    MSE = j = 1 n w j (( F (( X j - y j 2 j = 1 n w j ,,,,

    在哪里:

    • n是数据行的数量。

    • Xj是个j数据行。

    • yj是对Xj

    • F((Xj是模型的响应预测MDLXj

    • w是观察权重的向量。

    算法

    重新公开根据相应的计算回归损失损失对象的函数(MDL)。有关特定于模型的描述,请参阅损失下表中的功能参考页面。

    模型 回归模型对象(MDL 损失对象功能
    高斯过程回归模型 回归基 损失
    广义添加剂模型 回归剂 损失
    神经网络模型 回归工业网络 损失

    替代功能

    要计算新预测数据的响应损失,请使用相应的损失对象的函数(MDL)。

    版本历史记录

    在R2021a中引入

    也可以看看