【发布时间】:2015-01-14 05:32:00
【问题描述】:
我目前有一个问题,即我有一个最终结果和促成它的值,但我不知道每个值对最终结果的权重是多少。
一个简化的例子:11555 + -34.65 + 350 = 26
我不知道如何在数学上计算权重,有人建议我使用线性回归和普通最小二乘法的公式。老实说,这有点超出我的想象,我正在寻找一种替代解决方案。
由于我有很多样本数据,我建议做的是对值使用蛮力方法,我使用每个值的百分比来对结果做出贡献,然后比较并保留百分比提供最小的差异。
我正在努力解决的是,我如何涵盖所有值的所有百分比组合?
例如,在 3 个值上,百分比将是这样的。
v1 v2 v3 %
98 1 1 = 100
97 2 1 = 100
96 2 2 = 100
95 3 2 = 100
94 3 3 = 100
.
.
.
4 48 48 = 100
3 49 48 = 100
2 49 49 = 100
1 50 49 = 100
我希望这个解释足够清楚,如果你能提供任何帮助,我将不胜感激。我正在用 Java 编写程序。
【问题讨论】:
-
这可能是学习普通最小二乘回归的好时机。它是适合这项工作的工具,应该比您建议的更快、更准确。
-
只设置所有权重有什么问题,除了最后一个可以让你得到答案的权重。即
11555*0 + -34.65*0 + 350*0.0742 -
您知道百分比是没有分数的,即
int值,而不是double值吗? -
我确实省略了一些细节以使事情变得相当简单。实际上有 15 个值而不是 3 个,并且并非所有结果都与其值准确。 @templatetypedef 你可能是对的,可能是清理旧灰质的好时机。
-
只省略不必要的细节;指定不足的问题不太可能为您提供有用的答案。
标签: java algorithm math combinations