随机块模型和隐块模型的稀疏矩阵实现。

sparsebm的Python项目详细描述


SparseBM:一个用于处理带有块模型的稀疏图的python模块

安装

来自pypi:

pip3 install sparsebm

要使用GPU加速:

^{pr2}$

或者

pip3 install sparsebm
pip3 install cupy

随机块体模型实例

生成SBM合成图

  • 生成合成图以使用SBM进行分析:
fromsparsebmimportgenerate_SBM_datasetdataset=generate_SBM_dataset(symmetric=True)graph=dataset["data"]cluster_indicator=dataset["cluster_indicator"]

用sparsebm SBM推断:

  • 使用伯努利随机集团模型:
fromsparsebmimportSBMnumber_of_clusters=cluster_indicator.shape[1]# A number of classes must be specify. Otherwise see model selection.model=SBM(number_of_clusters)model.fit(graph,symmetric=True)print("Labels:",model.labels)

计算性能:

fromsparsebm.utilsimportARIari=ARI(cluster_indicator.argmax(1),model.labels)print("Adjusted Rand index is {:.2f}".format(ari))

要使用GPU加速,需要安装CUPY并将GPU编号替换为所需的GPU索引。在

潜在块体模型实例

生成LBM合成图

  • 生成一个综合图,用LBM分析:
fromsparsebmimportgenerate_LBM_datasetdataset=generate_LBM_dataset()graph=dataset["data"]row_cluster_indicator=dataset["row_cluster_indicator"]column_cluster_indicator=dataset["column_cluster_indicator"]

用sparsebm LBM推断:

  • 使用伯努利潜在集团模型:
fromsparsebmimportLBMnumber_of_row_clusters=row_cluster_indicator.shape[1]number_of_columns_clusters=column_cluster_indicator.shape[1]# A number of classes must be specify. Otherwise see model selection.model=LBM(number_of_row_clusters,number_of_columns_clusters,n_init_total_run=1,)model.fit(graph)print("Row Labels:",model.row_labels)print("Column Labels:",model.column_labels)

计算性能:

fromsparsebm.utilsimportCARIcari=CARI(row_cluster_indicator.argmax(1),column_cluster_indicator.argmax(1),model.row_labels,model.column_labels,)print("Co-Adjusted Rand index is {:.2f}".format(cari))

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

推荐PyPI第三方库


热门话题
构造函数的java条件调用   类Dog中的java构造函数Dog不能应用于给定类型   java jsch和运行“sudo su”   java将队列和堆栈相互复制   java如何在netbeans项目的文件夹中添加库   java While循环在我的代码中不存在   如何在XML中使用java方法的返回值   java是否可以在不写入文件的情况下将字符串/字节数组作为文件发布?   java为什么这些字符串不相等?   sockets客户机-服务器java编程,用户可选择   java如何在SpringMVC和hibernate中保存模型返回视图的列表   java如何修复组织。openqa。硒。WebDriverException:未知错误   Java,Ant错误:编码Cp1252的不可映射字符   JAVAlang.ClassCastException:[Ljava.lang.String;与java.lang.String不兼容   java如何使用JDK8(可选)为空字段创建自定义IntelliJ getter模板   java Tomcat6响应。sendRedirect()404错误