我正在尝试学习贝叶斯网络,我有一个问题,我想要澄清一下。
给定表
p(Aggression=high|Anger=Partly,Hostility=Yes)是什么?我的答案是0.5。
我的思维过程是愤怒和敌意是相互依赖的,所以根据给定的信息,部分愤怒和敌意的概率是0.5。
侵略性是独立于这两者的,所以它就是P(侵略性)*0.5= 0.5。
这是一个正确的假设吗?
发布于 2017-06-28 06:05:53
简而言之:我对p(Aggression=high|Anger=Partly,Hostility=Yes)的值是100%.
如果攻击性与敌意和愤怒无关,那么你有什么证据就无关紧要了。因此,p(攻击性)是p(Agg=low),p(Agg=high),p(Agg=veryhigh)中的最大值。
然而,3*9表意味着p(Agg) = p(Hos,Ang),并且它不是独立的。
我试着用自由软件"Samiam“来模拟你的CPT (上表)。
为此,我在Samiam中输入了来自CPT的侵略性节点的值。对于先例:我假设一个人有5%的时间处于愤怒状态,15%的时间是部分愤怒的,80%的人不是愤怒的;10%的时间是敌对的,30%的时间是敌对的,60%的时间不是敌对的。
查看截图:

攻击性节点的表值:

根据观察到的证据- Aggression=High的值达到了100%:

我还附上了samiam文件:
net
{
propagationenginegenerator1791944048146838126L = "edu.ucla.belief.approx.BeliefPropagationSettings@20ece334";
recoveryenginegenerator6944530267470113528l = "edu.ucla.util.SettingsImpl@49f77e1b";
node_size = (130.0 55.0);
huginenginegenerator3061656038650325130L = "edu.ucla.belief.inference.JoinTreeSettings@71a1d859";
}
node Aggression
{
states = ("Low" "High" "VeryHigh" );
position = (268 -263);
diagnosistype = "AUXILIARY";
DSLxSUBMODEL = "Root Submodel";
ismapvariable = "false";
ID = "variable2";
label = "Aggression";
DSLxEXTRA_DEFINITIONxDIAGNOSIS_TYPE = "AUXILIARY";
excludepolicy = "include whole CPT";
}
node Anger
{
states = ("no" "partly" "yes" );
position = (118 -48);
diagnosistype = "AUXILIARY";
DSLxSUBMODEL = "Root Submodel";
ismapvariable = "false";
ID = "variable0";
label = "Anger";
DSLxEXTRA_DEFINITIONxDIAGNOSIS_TYPE = "AUXILIARY";
excludepolicy = "include whole CPT";
}
node Hostility
{
states = ("No" "Partly" "Yes" );
position = (351 -46);
diagnosistype = "AUXILIARY";
DSLxSUBMODEL = "Root Submodel";
ismapvariable = "false";
ID = "variable1";
label = "Hostility";
DSLxEXTRA_DEFINITIONxDIAGNOSIS_TYPE = "AUXILIARY";
excludepolicy = "include whole CPT";
}
potential ( Aggression | Anger Hostility )
{
data = ((( 1.0 0.0 0.0 )
( 0.5 0.5 0.0 )
( 0.5 0.0 0.5 ))
(( 0.5 0.5 0.0 )
( 0.5 0.5 0.0 )
( 0.0 1.0 0.0 ))
(( 0.5 0.0 0.5 )
( 0.0 0.5 0.5 )
( 0.0 0.0 1.0 )));
}
potential ( Anger | )
{
data = ( 0.8 0.15 0.05 );
}
potential ( Hostility | )
{
data = ( 0.6 0.3 0.1 );
}https://stackoverflow.com/questions/43296242
复制相似问题