贝叶斯割方法的一种实现

bayesian-cut的Python项目详细描述


Pypi VersionLicenseBuild Status

bayesian cut python包为bayesian网络的直接应用提供了一个易于使用的api 基于gibbs抽样的度修正随机全贝叶斯推理框架的割集 块模型(dc-sbm)或贝叶斯割(bc)。 此外,还提供了基于模块化、比率切割和范数切割的谱网络切割方法。 它还提供了一个丰富的可视化库,可以方便地分析后验解决方案景观和网络 通过各种方法得到的切割。

Jupyter笔记本电脑上有如何使用该软件包的示例,请访问 https://github.com/DTUComputeCognitiveSystems/bayesian_cut/tree/master/examples

安装

  • 使用以下命令安装python3的包。一些 依赖项可能需要升级(scikit learn、numpy和 scipy)。
    $ pip install bayesian_cut
  • 现在您可以通过键入
    from bayesian_cut.cuts import Model

快速启动

使用bayesian_-cut包执行图切割

# Load the packagefrombayesian_cut.data.loadimportload_datafrombayesian_cut.cuts.bayesian_modelsimportModel# Load an example networknetwork_name='karate'X,Y=load_data(network=network_name,labels=True,remove_disconnected=True)# Set the parameters for the modeln_samples_per_chain=75n_chains=15C=2model_params={'alpha_in':1e-2,'beta_in':1e-2,'alpha_out':1e-2,'beta_out':1e-2,'b':1,'gamma':3}# Define the modelBC=Model('ShiftedApproximateBayesianCommunityDetection',X,model_params,Y=Y,C=C,block_sampling=False,marginalize_phi=True)# Add the number of chains to runBC.add_chains(number_of_chains=n_chains)# Run the Gibbs samplerBC.run_chains(n_samples=n_samples_per_chain,n_prior_updates=20,verbose=2,save_all_samples=False,parallel=True)# Obtain the cut with the highest log-likelihoodgraph_cut_z_vector=BC.get_best_chain().max_log_lik_z_# Plot the cut as an adjacency matrixfrombayesian_cut.utilsimportutilsutils.cluster_plot(BC)# Done

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
orm如何在Java中实现规范化映射?   java以编程方式修改Xtext生成的Mwe2工作流   java正在覆盖外部文件中的现有数据,如何停止?   java在ANTLR BNF语法符号中epsilon的等价物是什么?   java如何使用Hibernate@Anyrelated注释?   代码生成生成java类并在运行时加载它   java Maven无法在本地jar文件中收集依赖项   java NetBeans IDE 8.2不显示错误消息   java Selenium web驱动程序找不到元素   java如何修复“拒绝访问属性”invoke“”的权限?   JavaApacheJClouds,从比日期更早的blob中删除blob的最佳方法   java如何比较和排序树集中的项目?   使用JavaSpring和无头/解耦CMS   java使用swagercodegen在不同的类中生成端点   Java外部Keylistener没有响应