ML 模型:所有的平均值与平均值的平均值?

数据挖掘 神经网络 表现
2022-02-26 12:32:11

我有 20 个不同人的数据,并且正在根据每个人的数据训练一个模型(例如,具有相同超参数的神经网络);所以这给了我20个模型。

我选择使用 RMSE 来评估性能。然而,由于训练数据被打乱,计算出的 RMSE 是不确定的,因此会振荡。所以我认为将每个模型运行 10 次并对结果进行平均,即 RMSE,可以让我更好地估计性能。但这是针对单个人/模型的。我如何将所有内容(即所有 20 个模型)的性能组合到一个度量中?

将 20 个模型中的每一个运行 10 次,总共 200 个 RMSE 值,然后取平均值?还是先计算每个人的平均值,然后再计算这些平均值的平均值?

也许不同的方法更好?最终目标是比较几个模型(例如 NN 与 SVM)。

2个回答

如果你平均所有这些或取每个人的平均值,这无关紧要。事实证明,它会给你相同的数字。这被称为总期望定律。本质上,

E(X)=E(E(X|Y))

以下是维基百科文章以获取更多详细信息:

https://en.wikipedia.org/wiki/Law_of_total_expectation

我的两分钱
如果您的目的是为每个人训练不同的模型,那么您应该考虑使用更多的平均值来进行模型比较。
想象一下,一个模型对 70% 的个体表现良好(低 RMSE),而对另外 30% 的个体表现不佳,而第二个模型在所有个体中表现平庸。
两种模型可能具有相同的平均值,但实际上会表现得完全不同。
此外,您应该考虑对每个单独模型的 RMSE 使用某种统计度量(比如 RMSE 的置信区间)。也许一种模型比另一种更不稳定。