主要内容

resubLoss

Resubstitution回归损失

    描述

    例子

    l= resubLoss (Mdl通过对训练的回归模型的再替换(L)返回回归损失,或样本内回归损失Mdl使用存储在Mdl。X和相应的响应存储在Mdl。Y

    的解释l取决于损失函数(“LossFun”)及加权计划(Mdl。W).一般来说,更好的模型产生更小的损失值。默认的“LossFun”值是mse的(均方误差)。

    例子

    l= resubLoss (Mdl,名称,值使用一个或多个名称-值参数指定其他选项。例如,“IncludeInteractions”,假的指定从广义可加模型中排除交互项Mdl

    例子

    全部折叠

    训练广义可加性模型(GAM),然后利用均方误差(MSE)计算再替代损失。

    加载病人数据集。

    负载病人

    创建一个包含预测变量的表(年龄,舒张压,吸烟者,重量,性别,SelfAssessedHealthStatus)和响应变量(收缩压).

    台=表(年龄、舒张压、吸烟、体重、性别、SelfAssessedHealthStatus,收缩期);

    训练一个单变量GAM,其中包含预测因子的线性项资源描述

    Mdl = fitrgam(资源描述,“收缩”
    Mdl = RegressionGAM PredictorNames: {1x6 cell} ResponseName: 'Systolic' CategoricalPredictors: [3 5 6] ResponseTransform: 'none' Intercept: 122.7800 IsStandardDeviationFit: 0 NumObservations: 100属性,方法

    Mdl是一个RegressionGAM模型对象。

    用均方误差(MSE)计算再替代损失。

    L = resubLoss (Mdl)
    L = 4.1957

    加载示例数据并存储在表格

    负载fisheriris台=表(量(:1),量(:,2),(:,3),(4):,,,...“VariableNames”,{“meas1”,“meas2”,“meas3”,“meas4”,“物种”});

    使用第一次测量作为响应,其他变量作为预测变量,拟合GPR模型。

    mdl = fitrgp(资源描述,“meas1”);

    使用训练过的模型预测反应。

    ypred =预测(mdl(资源);

    计算平均绝对误差。

    n =身高(台);y = tbl.meas1;Fun = @(y,ypred,w) sum(abs(y-ypred))/n;L = resubLoss (mdl,“lossfun”有趣的)
    L = 0.2345

    训练一个广义可加性模型(GAM),其中包含预测因子的线性和交互项,并估计训练数据和测试数据有或没有交互项时的回归损失(均方误差,MSE)。指定在估计回归损失时是否包括交互项。

    加载carbig数据集,其中包含20世纪70年代和80年代初生产的汽车的测量数据。

    负载carbig

    指定加速度,位移,马力,重量为预测变量(X),英里/加仑为响应变量(Y).

    X =(加速度、位移、马力、重量);Y = MPG;

    将数据集划分为两个集:一个包含训练数据,另一个包含新的、未观察到的测试数据。为新的测试数据集保留10个观测值。

    rng (“默认”%的再现性n =大小(X, 1);newInds = randsample (n, 10);第1 = ~ ismember (1: n, newInds);XNew = X (newInds:);YNew = Y (newInds);

    训练一个广义可加性模型,其中包含所有可用的线性和交互项X

    Mdl = fitrgam (X(第1:),Y(第1),“互动”,“所有”);

    Mdl是一个RegressionGAM模型对象。

    计算有和无交互项时的再替代mse(即样本内mse)Mdl.要排除交互项,请指定“IncludeInteractions”,假的

    resubl = resubLoss (Mdl)
    resubl = 0.0292
    resubl_nointeraction = resubLoss (Mdl,“IncludeInteractions”假)
    resubl_nointeraction = 4.7330

    为测试数据集计算有或无交互项的回归mse。使用内存高效的模型对象进行计算。

    CMdl =紧凑(Mdl);

    CMdl是一个CompactRegressionGAM模型对象。

    l =损失(CMdl XNew YNew)
    l = 12.8604
    l_nointeraction =损失(CMdl XNew YNew,“IncludeInteractions”假)
    l_nointeraction = 15.6741

    包含交互项对训练数据集和测试数据集的误差较小。

    输入参数

    全部折叠

    回归机器学习模型,指定为一个完整的回归模型对象,如下表所示所支持的模型。万博1manbetx

    模型 回归模型对象
    高斯过程回归模型 RegressionGP
    广义可加模型 RegressionGAM
    神经网络模型 RegressionNeuralNetwork

    名称-值参数

    指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

    例子:resubLoss (Mdl IncludeInteractions,假)从广义可加模型中排除交互项Mdl

    标记以包含模型的交互术语,指定为真正的.此论证仅对广义可加模型有效。也就是说,您只能指定此参数MdlRegressionGAM

    默认值为真正的如果Mdl包含交互方面。该值必须为如果模型不包含交互项。

    例子:“IncludeInteractions”,假的

    数据类型:逻辑

    损失函数,记为mse的或者函数句柄。

    • mse的-加权均方误差。

    • 函数句柄-要指定自定义的丢失函数,请使用函数句柄。函数必须是这样的形式:

      lossval =lossfun(Y, YFit W)

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

      • 指定函数名(lossfun).

      • Y是一个长度n观测响应的数值向量,其中n观察的次数在吗资源描述X

      • YFit是一个长度n对应预测响应的数值向量。

      • W是一个n-乘1数值向量的观测权值。

    例子:“LossFun”@lossfun

    数据类型:字符|字符串|function_handle

    更多关于

    全部折叠

    加权均方误差

    加权均方误差衡量回归模型的预测不准确性。当你在许多模型中比较相同类型的损失时,错误越低,预测模型越好。

    加权均方误差计算如下:

    均方误差 j 1 n w j f x j y j 2 j 1 n w j ,

    地点:

    • n是数据的行数。

    • xjj第一行数据。

    • yj真正的回应是xj

    • fxj是模型的响应预测吗Mdlxj

    • w为观测权向量。

    算法

    resubLoss计算相应的回归损失损失对象的功能(Mdl).有关特定于模型的描述,请参见损失函数参考页下表。

    模型 回归模型对象(Mdl 损失目标函数
    高斯过程回归模型 RegressionGP 损失
    广义加性模型 RegressionGAM 损失
    神经网络模型 RegressionNeuralNetwork 损失

    选择功能

    为了计算新的预测器数据的响应损失,使用相应的损失对象的功能(Mdl).

    另请参阅

    介绍了R2021a