Octave支持以下用于计算预测指标的函数。
E = mape (F, A) ¶E = mape (F, A, dim) ¶E = mape (F, A, vecdim) ¶E = mape (F, A, "all") ¶E = mape (…, nanflag) ¶E = mape (…, zeroflag) ¶E = mape (…, 'Weights', W) ¶计算两个数组之间的平均绝对百分比误差。
T平均绝对百分比误差定义为
mape (F, A) = SUM_i (abs ((A(i) - F(i)) / A(i))) * 100 / N
这里的N是F和A中的元素在减法操作之后应用的广播的数量。
加权平均绝对百分比误差的定义是
weighted_mape (F, A) = SUM_i (W(i) * (abs ((A(i) - F(i)) / A(i)))) * 100 / SUM_i (W(i)
这里的N是F和A中的元素在减法操作之后应用的广播的数量。
F和A必须要么尺寸相同,要么尺寸兼容。
如果F和A是相同尺寸的向量,那么
mape (F, A)返回一个标量,表示F和A的元素之间的MAPE。
如果A - F是一个矩阵,那么mape (F, A)
返回一个行向量,其中每个元素包含A - F的相应列之间的MAPE。
如果A - F是一个数组,那么
mape (F, A)
沿着F和A的第一个非奇异维度计算MAPE。
E的尺寸沿着操作维度为1,而其他所有维度的尺寸与A - F相同。
可选输入参数dim指定要操作的维度,并且必须是正整数。
指定任何奇异维度,包括任何超过ndims (A - F)的维度,将返回
abs ((A - F) ./ A).
用vecdim指定维度,一个非重复维度的向量,将返回在由
vecdim指定的数组切片上计算的MAPE。
如果vecdim索引A - F的所有维度,则它等效于"all".
任何在vecdim中大于ndims (A - F)中的维度将被忽略。
指定维度为"all"将导致mape在A - F中操作所有元素,
并且等效于
mape ((A - F)(:)).
可选变量nanflag指定是否使用任何先前指定的输入参数组合来包含或排除NaN值。
nanflag的默认值是
"includenan",保留NaN值在计算中。要排除NaN值,需要将nanflag的值设置为
"omitnan".
如果A - F在操作维度中的值均为NaN,那么输出将仍然包含NaN值。
可选变量zeroflag指定是否使用任何先前指定的输入参数组合来包含或排除零值。
zeroflag的默认值是
"includezero",
此时如果A包含一个或多个零,则计算的MAPE为Inf。
要忽略任何A中的零值,需要将zeroflag的值设为"omitzero".
如果A在操作维度中的值均为NaN,那么MAPE将是NaN。
可选的键值对参数…, "Weights", W指定了一个权重方案W,它应用于输入数组
F和A,
为了mape计算加权MAPE。
当沿着一个维度操作时,W必须与操作维度的长度相同或与x的尺寸相同。
当沿着一个由vecdim定义的数组切片操作时,W必须与操作的数组切片的大小相同,即
size (A - F)(vecdim),
或者与
A - F的大小相同.
E = rmse (F, A) ¶E = rmse (F, A, dim) ¶E = rmse (F, A, vecdim) ¶E = rmse (F, A, "all") ¶E = rmse (…, nanflag) ¶E = rmse (…, 'Weights', W) ¶计算两个数组之间的均方根误差。
均方根误差定义为
rmse (F, A) = sqrt (SUM_i ((A(i) - F(i)) ^ 2) / N)
这里的N是F和A中的元素在减法操作之后应用的广播的数量。
加权均方根误差定义为
weighted_rmse (F, A) = sqrt (SUM_i (W(i) * ((A(i) - F(i)) ^ 2)) / SUM_i (W(i)))
这里的N是F和A中的元素在减法操作之后应用的广播的数量。
F和A必须是相同大小的数组,或者它们的尺寸必须兼容。
如果F和A是相同尺寸的向量,则
rmse (F, A)返回一个标量,表示F和A的元素之间的RMSE。
如果A - F是一个矩阵,则
rmse (F, A)
返回一个列向量,其中每个元素包含A - F的相应列之间的RMSE。
如果A - F是一个数组,则
rmse (F, A)
沿着第一个非奇异维度计算F和A之间的RMSE。
E沿着操作维度的大小为1,而其他所有维度的尺寸与
A - F相同.
可选输入参数dim指定要操作的维度,并且必须是正整数。
指定任何奇异维度,包括超过ndims (A - F)的维度,将返回
abs ((A - F) ./ A).
用vecdim指定维度,一个不重复的维度的向量,将返回由
vecdim定义的数组切片上的RMSE。
如果vecdim索引了A - F的所有维度,
那么它等效于选项"all".
任何在vecdim中大于ndims (A - F)的维度将被忽略。
指定维度为"all"将导致rmse在A - F中操作所有元素,
并且等效于
rmse ((A - F)(:)).
可选变量nanflag指定是否使用任何先前指定的输入参数组合包含或排除NaN值。
默认的nanflag值是
"includenan",保留NaN值在计算中。
要排除NaN值,请将nanflag的值设置为"omitnan".
如果A - F在操作维度中的值均为NaN,那么输出将仍然包含NaN值。
可选键值对参数…, "Weights", W指定指定了一个权重方案W,它应用于输入数组
F和A, 为了rmse计算加权RMSE。
当沿着一个维度操作时,W必须与操作维度的长度相同或与x的尺寸相同。
当沿着一个由vecdim定义的数组切片操作时,W必须与操作的数组切片的大小相同,即
size (A - F)(vecdim),
或者与
A - F的大小相同.
版权所有 © 2024-2026 Octave中文网
ICP备案/许可证号:黑ICP备2024030411号-2