Added some criteria from Tencate et al. (2016)
This commit is contained in:
parent
06f1475194
commit
aec4b9767a
2 changed files with 32 additions and 0 deletions
|
|
@ -30,6 +30,7 @@ export TRLooCVUpdateNaive
|
||||||
export TRLooCVUpdateExperimental
|
export TRLooCVUpdateExperimental
|
||||||
|
|
||||||
# From "variousRegressionFunctions.jl"
|
# From "variousRegressionFunctions.jl"
|
||||||
|
export cVals
|
||||||
export calculateRMSE
|
export calculateRMSE
|
||||||
export oldRegCoeffs
|
export oldRegCoeffs
|
||||||
export PCR
|
export PCR
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,34 @@
|
||||||
|
"""
|
||||||
|
crit1minInd, crit2minInd, CvalCrit1, CvalCrit2 = function cVals(bcoeffs, rmsecv)
|
||||||
|
Crit1 = 'norm(regcoeffs) + cverror'
|
||||||
|
Crit2 = 'jaggedness(regcoeffs) + cverror'
|
||||||
|
bcoeffs = matrix with bcoeffs
|
||||||
|
"""
|
||||||
|
function cVals(bcoeffs, rmse)
|
||||||
|
|
||||||
|
# Finding min and max of quantities used in criteria
|
||||||
|
bminnorm = norm(bcoeffs[2:end,end]);
|
||||||
|
bmaxnorm = norm(bcoeffs[2:end,1]);
|
||||||
|
rmsecvmin = minimum(rmse);
|
||||||
|
rmsecvmax = maximum(rmse);
|
||||||
|
bjaggedness = [norm([bcoeffs[2:end,i] - bcoeffs[1:end-1,1]]) for i=1:size(bcoeffs,2)];
|
||||||
|
bjagmin = minimum(bjaggedness);
|
||||||
|
bjagmax = maximum(bjaggedness);
|
||||||
|
|
||||||
|
# Calculating the quantities used in the criteria
|
||||||
|
CvalNorm = [((norm(bcoeffs[2:end,i]) - bminnorm) / (bmaxnorm - bminnorm)) for i=1:size(bcoeffs,2)];
|
||||||
|
Cvalrmse = [((rmse[i] - rmsecvmin) / (rmsecvmax - rmsecvmin)) for i=1:length(rmse)];
|
||||||
|
CvalJagged = [((bjaggedness[i] - bjagmin)/(bjagmax-bjagmin)) for i=1:length(bjaggedness)];
|
||||||
|
|
||||||
|
# Calculating the criteria as well as argmins
|
||||||
|
CvalCrit1 = CvalNorm + Cvalrmse;
|
||||||
|
CvalCrit2 = CvalJagged + Cvalrmse;
|
||||||
|
crit1minInd = argmin(CvalCrit1);
|
||||||
|
crit2minInd = argmin(CvalCrit2);
|
||||||
|
|
||||||
|
return crit1minInd, crit2minInd, CvalCrit1, CvalCrit2
|
||||||
|
end
|
||||||
|
|
||||||
"""
|
"""
|
||||||
function rmse, ypred = calculateRMSE(X, y, beta)
|
function rmse, ypred = calculateRMSE(X, y, beta)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue