【发布时间】:2012-10-22 11:19:39
【问题描述】:
我想使用遗传程序 (gp) 来估计“事件”中“结果”的概率。为了训练 nn,我使用了遗传算法。
所以,在我的数据库中,我有许多事件,每个事件都包含许多可能的结果。
我会给 gp 一组输入变量,这些变量与每个事件中的每个结果相关。
我的问题是 - gp 中的适应度函数应该是什么??
例如,现在我给 gp 一组输入数据(结果输入变量)和一组目标数据(如果结果 DID 发生,则为 0,如果结果未发生,则为 0,适应度函数为输出和目标的均方误差)。然后,我对每个结果取每个输出的总和,并将每个输出除以总和(给出概率)。但是,我确信这不是正确的做法。
为了清楚起见,这就是我目前这样做的方式:
我想估计一个事件中出现 5 种不同结果的概率:
Outcome 1 - inputs = [0.1, 0.2, 0.1, 0.4]
Outcome 1 - inputs = [0.1, 0.3, 0.1, 0.3]
Outcome 1 - inputs = [0.5, 0.6, 0.2, 0.1]
Outcome 1 - inputs = [0.9, 0.2, 0.1, 0.3]
Outcome 1 - inputs = [0.9, 0.2, 0.9, 0.2]
然后我将计算每个输入的 gp 输出:
Outcome 1 - output = 0.1
Outcome 1 - output = 0.7
Outcome 1 - output = 0.2
Outcome 1 - output = 0.4
Outcome 1 - output = 0.4
此事件中每个结果的输出总和为:1.80。然后我会通过将输出除以总和来计算每个结果的“概率”:
Outcome 1 - p = 0.055
Outcome 1 - p = 0.388
Outcome 1 - p = 0.111
Outcome 1 - p = 0.222
Outcome 1 - p = 0.222
在你开始之前 - 我知道这些不是真实的概率,而且这种方法不起作用!我只是把它放在这里,以帮助您了解我想要实现的目标。
谁能给我一些关于如何估计每个结果的概率的指示? (另外,请注意我的数学不是很好)
非常感谢
【问题讨论】:
-
我不明白你描述的问题。您的数据集到底是什么样的?它是如何产生的?你到底想估计什么?
-
我正在尝试估计事件中发生结果的概率。事件可以是任何东西(例如比赛),结果可以是任何东西(例如跑步者)。 gp 的输入将是与每个跑步者相关的变量,我正在尝试估计每个跑步者赢得比赛的概率。
-
所以您的
Event不是Eventin the probabilistic sense 而是“发生某事”的一般含义的事件?这非常令人困惑。那么,您是否试图估计给定事件的某个结果的条件概率? -
是的,你是对的。为我使用术语道歉 - 就像我说我的数学一点都不好。
-
您应该查看machine learning。但请注意:这是一个巨大的话题。还要努力将您手头的问题正式化。您会注意到这是一个非常普遍且普遍的问题,并且存在无数种不同的方法来处理它。
标签: artificial-intelligence probability genetic-algorithm genetic-programming