Java 函数 correlationAbs() 计算绝对值相关性 - 解释 prodCP、sumCSq 和 sumPSq
Java 函数 correlationAbs() 计算绝对值相关性 - 解释 prodCP、sumCSq 和 sumPSq
public static double correlationAbs(int[] correct, int[] predicted, int count) {
double meanC = 0.0D;
double meanP = 0.0D;
double prodCP = 0.0D;
double sumCSq = 0.0D;
double sumPSq = 0.0D;
for (int row = 1; row <= count; row++) {
meanC += Math.abs(correct[row]);
meanP += Math.abs(predicted[row]);
}
meanC /= count;
meanP /= count;
for (int row = 1; row <= count; row++) {
prodCP += (Math.abs(correct[row]) - meanC) * (Math.abs(predicted[row]) - meanP);
sumPSq += Math.pow(Math.abs(predicted[row]) - meanP, 2D);
sumCSq += Math.pow(Math.abs(correct[row]) - meanC, 2D);
}
return prodCP / (Math.sqrt(sumPSq) * Math.sqrt(sumCSq));
}
这段函数旨在计算正确值和预测值之间的绝对值相关性。其中关键变量的含义如下:
- prodCP: 表示正确值和预测值的绝对值之间的协方差。它计算了每个数据点与其平均值的偏差的乘积之和。
- sumCSq: 表示正确值的绝对值与其均值之间的平方差的总和。它反映了正确值数据点与其平均值之间的离散程度。
- sumPSq: 表示预测值的绝对值与其均值之间的平方差的总和。它反映了预测值数据点与其平均值之间的离散程度。
通过计算 prodCP、sumCSq 和 sumPSq,函数 correlationAbs() 最终得到一个介于 -1 和 1 之间的相关性系数,该系数反映了正确值和预测值的绝对值之间的线性关系程度。
该函数能够帮助分析和评估预测模型的准确性,并识别潜在的偏差和误差。
原文地址: https://www.cveoy.top/t/topic/nyeP 著作权归作者所有。请勿转载和采集!