近来对贝叶斯网十分感兴趣,按照博客《读懂概率图模型:你需要从基本概念和参数估计开始》给出的第一个例子,试着搭建了一个student网。

(1)点击绿F,对条件概率表予以输入(包括两个祖先节点difficulty和intelligence,这两个节点的绿F输入将会显现在柱状图面版上,其它CPT输入则不显示在面版,仅在点击黄色闪电后自动计算得到)。

(2)现以SAT为例说明为什么p(SAT=low)=0.725:

已知先验概率:p(intelligence=bad)=0.7,p(intelligence=good)=0.3

根据CPT可知likelihood:

p(SAT=low|intelligence=bad)=0.95

p(SAT=low|intelligence=good)=0.2

p(SAT=high|intelligence=bad)=0.05

p(SAT=high|intelligence=good)=0.8

故可以计算evidence如下:

p(SAT=low)=$∑_{intelligence}$ p(SAT=low,intelligence)

=p(SAT=low,intelligence=good)+p(SAT=low,intelligence=bad)

=p(SAT=low|intelligence=good)p(intelligence=good)

+p(SAT=low|intelligence=bad)p(intelligence=bad)

=0.2*0.3+0.95*0.7=0.725

p(SAT=high)=1-p(SAT=low)=0.275

(3)现给定证据SAT=low,并将该证据嵌入到先验概率p(intelligence=bad/good)中去,求p(intelligence=bad|SAT=low)和p(intelligence=good|SAT=low):

由(2)知p(SAT=low)=0.725

p(intelligence=bad|SAT=low)=p(intelligence=bad,SAT=low)/ p(SAT=low)

=(0.95*0.7)/0.725=0.917

p(intelligence=good|SAT=low)=1- p(intelligence=bad|SAT=low)=0.083

因此在给子节点SAT的值进行设定以后(变灰以后),现在显示在父节点Intelligence柱状图面板的结果实际上是嵌入证据以后的后验概率p(intelligence|SAT=low)(但是如果你点击绿F查看Intelligence可以发现表格所显示的先验概率的值p(intelligence)还是保持不变,为0.7和0.3)

(4) uncertain evidence (BRML: 3.2.1 Uncertain evidence)

y为硬证据,y~为软证据。p(y|y~)是“硬证据确实成立”的概率。以Gibbon太太为例:

“100%确定听到报警”是硬证据(y=1),“0%确定听到报警(没听到报警)”同样是硬证据(y=0);

“80%确定听到报警”是软证据(y~),硬证据y=1确实成立的概率p(y=1|y~)为80%,硬证据y=0确实成立的概率p(y=0|y~)=20%。

——————

在(3)里我们是将“SAT考了低分”作为证据嵌入的,此时“SAT低分”是确凿无疑的(称之为“硬证据”)。现在仍然以SAT成绩和智力水平为例,当我不知道我的智力水平,且SAT成绩还没出来,但是我刚刚考完SAT,对自己考了多少分有个大概的估计(以下图为例:我仅有33.7%的把握我SAT考的不错),那么这个“不确定成绩”也是可以作为证据嵌入的,称之为“软证据”。现在我们希望计算嵌入软证据后的后验概率p(intelligence|SAT~)。

软证据如下:

66.3%确定SAT=low——p(SAT=low|SAT~)=0.663

33.7%确定SAT=high——p(SAT=high|SAT~)=0.337

由上面的公式:

p(intelligence=bad|SAT~)=$∑_{SAT}$ p(intelligence=bad|SAT)p(SAT|SAT~)

= p(intelligence=bad|SAT=low)p(SAT=low|SAT~)

+ p(intelligence=bad|SAT=high)p(SAT=high|SAT~)

=0.917*α+0.127(1-α)

=0.917*0.663+0.127*0.337

=0.651

(其中α=0.663,为“SAT考低分的确信程度”)

(红色部分即(3)中算出的结果,绿色部分我还没有算,可以用类似的方法手算得出,也可以简单地在SAT面板上将high的柱状图拉到100%再看intelligence面板上bad的显示值)

2018.9.20

by 悠望南山

贝叶斯网(1)尝试用Netica搭建简单的贝叶斯网并使用贝叶斯公式解释各个bar的结果的更多相关文章

  1. 贝叶斯网(2)Netica:从数据中学习CPT

    1. 离散节点 在官方Tutorial中是有详细的案例的,就是B篇3.3节,你可以动手把天气预报这个实现一下: http://www.norsys.com/tutorials/netica/secB/ ...

  2. 当我们尝试用JavaScipt测网速

    npm包地址 https://www.npmjs.com/package/network-speed-test Github地址 https://github.com/penghuwan/networ ...

  3. 【记录】尝试用QEMU模拟ARM开发板去加载并运行Uboot,kernel,rootfs【转】

    转自:https://www.crifan.com/try_use_qemu_emulate_arm_board_to_load_and_run_uboot_kernel_rootfs/ [背景] 手 ...

  4. 闲置安卓设备搭建Linux服务器实现外网访问

    title: 闲置安卓设备搭建Linux服务器实现外网访问 这是我搭过的第一个博客系统,写贴纪念一下 待博主整理好思路,将今天所用到的全部分享! 好吧,我就是穷.富人靠科技,穷人靠变异.我这种穷人是真 ...

  5. 【记录】尝试用android-logging-log4j去实现log输出内容到sd卡中的文件的功能

    [背景] 折腾: [记录]给Android中添加log日志输出到文件 期间,已经试了: [记录]尝试用android中microlog4android实现log输出到文件的功能 但是不好用. 然后就是 ...

  6. 尝试用Uplodify

    尝试用Uplodify     Uplodify官方 前台index代码: @{ Layout = null; } <script src="~/Scripts/jquery-1.8. ...

  7. 自建yum源解决Ceph搭建过程中从官网取包慢的问题

    最近项目组需要ceph环境,第一次搭建ceph,各种不顺,装了卸,卸了装,一遍又一遍地按照官网的操作进行.最气人的是网速差,从官网取包太慢.一轮尝试就浪费一上午. 因此想到本地新建yum源. 首先,按 ...

  8. Windows 实例搭建的 FTP 在外网无法连接和访问

    外网无法连接和访问 Windows 实例搭建的 FTP,这种情况可能是由于以下两种原因导致的: 安全组拦截外网访问 防火墙拦截 FTP 进程 安全组拦截外网访问 这种情况下,可以尝试新建一条入方向的安 ...

  9. 尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框

    尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框 近期正在逐步摸索学习React的用法,尝试着写几个通用型的组件,整体项目还是根据webpack+react+css-me ...

随机推荐

  1. jquery插件layer

    //信息框-例1 layer.alert('见到你真的很高兴', {icon: 6}); //信息框-例2 layer.confirm('你确定你很帅么?', {icon: 3}, function( ...

  2. C# 程序启动其他进程程序

    1  启动一个独立进程,需要用到的命名空间是:using System.Diagnostics;   进程类是 Process ,进程的相关参数信息类是 ProcessStartInfo 2  等待启 ...

  3. Java实现非递归归并排序

    public class nonRecursiveMergeSort { public static void main(String[] args) { int[] list = {8,4,3,6, ...

  4. 微信小程序腾讯云配置Tomcat https端口

    在个人开发微信小程序时,发布之前要配置微信小程序的域名https及域名的SSL证书的申请及安装 我用的是腾讯云,SSL证书申请好之后,点击下载,解压文件夹,会有如图,根据你要配置的服务器是哪种,我是t ...

  5. IntelliJ IDEA使用hibernate

    环境:数据库:mariadb 10.2.16  https://downloads.mariadb.org/配置好maven:见收藏的博文链接 https://www.cnblogs.com/ICE_ ...

  6. NEC 框架规范 template media

    <!DOCTYPE html><html><head><meta charset="utf-8"/><title>NEC ...

  7. 如何在match中使用正则表达式

    这是在实现搜索功能的时候遇到的一个问题,在搜索的场景中,会根据搜索框中输入的内容,匹配出包含搜索内容的部分.简单模拟还原使用场景: 首先定义一个遍历 value 用来接收输入的内容 var value ...

  8. Tomcat服务器的介绍、安装配置

    [1] Tomcat服务器的介绍 1.是一个免费的.开饭源代码的Servlet服务器,目前非常流行. 2.Tomcat服务器是Apache软件基金会的一个顶级项目,由Apache.Sun等公司共同开发 ...

  9. Maria-DB

    mysql客户端可用选项: -A, --no-auto-rehash 禁止补全 -u, --user= 用户名,默认为root -h, --host= 服务器主机,默认为localhost -p, - ...

  10. 编辑文件出现:E212 can’t open file for writing

    前面目录没有创建 还可能是权限问题