贝叶斯网络的提出就是要解决这个问题。它把复杂的联合概率分布分解成一系列相对简单的模块,从而大大降低知识获取和概率推理的复杂度,使得可以把概率论应用于大型问题。
2021-09-28 14:37:05 746KB 贝叶斯
1
大致讲解的是贝叶斯网络模型,以及其基本的学习模式,并且添加了基本的应用方法。
2021-09-28 13:09:24 3.5MB 贝叶斯模型
1
贝叶斯网络结构的学习总结 贝叶斯网络建模一般有三种方法:1)依靠专家建模;2)从数据中学习;3)从知识库中创建。在实际建模过程中常常综合运用这些方法,以专家知识为主导,以数据库和知识库为辅助手段,扬长避短,发挥各自优势,来保证建模的效率和准确性。但是,在不具备专家知识或知识库的前提下,从数据中学习贝叶斯网络模型结构的研究显得尤为重要。 常用的结构学习方法主要有两类,分别是基于依赖性测试的学习和基于搜索评分的学习。
2021-09-28 11:01:39 331KB 贝叶斯网络
1
**主要是让参赛选手根据训练集中的乘客数据和存活情况进行建模,进而使用模型预测测试集中的乘客是否会存活。乘客特征总共有11个,以下列出。当然也可以根据情况自己生成新特征,这就是特征工程(feature engineering)要做的事情了。**
2021-09-28 08:59:51 398KB 学习文档
1
作为开发贝叶斯网络和概率编程的matlab开源库分享给大家,作为刚入门的你应该最为合适,另外这个代码在github上也能找到,还包括基于python的和基于R语言的库也能找到,如果大家有兴趣的化可以关注我一下,有问题一起探讨,谢谢!
2021-09-27 20:09:50 11.4MB 贝叶斯网络 bnt matlab 开发包
1
通过贝叶斯网络对500组位置信息进行分类,位置信息一共分为4类,每类分类的正确率都达到90%以上
2021-09-24 18:17:05 6KB bys
1
这是本人业余的破解版本,我也不知道有没有完全破解成功,不过去除了一些功能限制(比如可以保存超过15个结点的图),如果遇到有破解未成功的地方请联系我,仅供学习与试用谢谢。附上我唯一找到的中文教程:http://blog.sciencenet.cn/blog-82650-255141.html
2021-09-21 21:04:46 5.59MB netica
1
一个很有用的关于贝叶斯网络的工具包,希望对大家有用
2021-09-21 16:03:25 5.02MB 贝叶斯网络
1
一个实用的贝叶斯网络仿真软件。能够实现大部分贝叶斯分类及推理。图形化的界面,上手很快 一个实用的贝叶斯网络仿真软件。能够实现大部分贝叶斯分类及推理。图形化的界面,上手很快
2021-09-17 14:59:45 2.4MB 贝叶斯网络
1
贝叶斯网络的K2结构学习 clear N = 4; dag = zeros(N,N); %C = 1; S = 2; R = 3; W = 4; % topological order C = 4; S = 2; R = 3; W = 1; % arbitrary order dag(C,[R S]) = 1; dag(R,W) = 1; dag(S,W)=1; false = 1; true = 2; ns = 2*ones(1,N); % binary nodes bnet = mk_bnet(dag, ns); bnet.CPD{C} = tabular_CPD(bnet, C, 'CPT', [0.5 0.5]); bnet.CPD{R} = tabular_CPD(bnet, R, 'CPT', [0.8 0.2 0.2 0.8]); bnet.CPD{S} = tabular_CPD(bnet, S, 'CPT', [0.5 0.9 0.5 0.1]); bnet.CPD{W} = tabular_CPD(bnet, W, 'CPT', [1 0.1 0.1 0.01 0 0.9 0.9 0.99]); [n ncases] = size(data); % set default params type = cell(1,n); params = cell(1,n); for i=1:n type{i} = 'tabular'; %params{i} = { 'prior', 1 }; params{i} = { 'prior_type', 'dirichlet', 'dirichlet_weight', 1 }; end scoring_fn = 'bayesian'; discrete = 1:n; clamped = zeros(n, ncases); max_fan_in = n; verbose = 0; dag = zeros(n,n); for i=1:n ps = []; j = order(i); u = find(clamped(j,:)==0); score = score_family(j, ps, type{j}, scoring_fn, ns, discrete, data(:,u), params{j}); if verbose, fprintf('\nnode %d, empty score %6.4f\n', j, score), end done = 0; while ~done & (length(ps) score score = best_pscore; ps = [ps best_p]; if verbose, fprintf('* adding %d to %d, score %6.4f\n', best_p, j, best_pscore),end else done = 1; end end if ~isempty(ps) % need this check for matlab 5.2 dag(ps, j) = 1; end end
2021-09-13 16:02:21 2KB 贝叶斯网络
1