我想用遗传程序(gp)来估计'事件'的'结果'的概率。为了训练nn我正在使用遗传算法。使用遗传程序来估计概率
所以,在我的数据库我有很多的活动,包含多种可能的结果每一个事件。
我会给GP一组涉及到每个事件每个结果输入变量。
我的问题是 - 应该适应度函数是在GP是什么????
例如,现在我给gp一组输入数据(结果输入变量)和一组目标数据(如果结果DID发生则为1,如果结果DID不发生则为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
开始之前 - 我知道,这些都不是真正的概率,并且这种方法是行不通的!我只是把它放在这里来帮助你理解我想要达到的目标。
谁能给我我如何能估计每个结果的概率一些指点? (另外,请注意我的数学是不是很大)
非常感谢
我不明白你描述的问题。你的数据集究竟是怎样的?它是如何产生的?你究竟想要估计什么? – ziggystar
我正在尝试估计事件中发生结果的概率。一个事件可以是任何事情(例如一场比赛),结果可以是任何事情(例如跑步者)。 gp的输入将是与每个参赛者相关的变量,并且我试图估计每个参赛者赢得比赛的概率。 – Sherlock
因此,你的'事件'不是[概率意义上的'事件'](http://en.wikipedia.org/wiki/Event_%28probability_theory%29),而是“事情发生”常见含义的事件?这很混乱。那么你是否试图估计某个事件给定结果的条件概率? – ziggystar