概率图是一个基于令人惊叹的Pytorch(https://pytorch.org)to)的库,易于使用和改编有向和无向分层概率图形模型。这些机器包括受限Boltzmann机器、深度信念网络、深度Boltzmann机器和HelmholtzMachines(Sigmoid信念网络)。
可以使用单元层、随机单元层以及这些单元层之间的交互,以模块化的方式建立模型。目前,只有高斯、分类和伯努利单元可用,但可以进行扩展以允许来自指数族的所有类型的分布。(参见https://en.wikipedia.org/wiki/Exponential_family)。
对于无方向模型,交互通常只是线性的,但可以从任意的PyTorch Torch.nn.Modules(使用向前和向后渐变)构建。
有一个预先实现的完全连接的InteractionLine,一个用于使用现有的torch.nn.Modules和一些自定义的交互/映射,以启用概率最大池(Probabilistic Max-Pooling)。交互也可以在没有IntermediateRandom UnitLayers的情况下与InteractionSequential连接。
这个图书馆是由Korbian Poeppel和Hendrik Elvers在慕尼黑理工大学的一个实践课程“超越深度学习-不确定性感知模型”中建造的。免责声明:它是PyTorch的扩展,没有直接附属关系。
使用Sphinx框架提供了更详细的文档。进入目录';docs';并运行';make html';(已安装Sphinx)。然后可以在_build子目录中找到文档。
这里有一些示例模型,以及使用examples文件夹中的EMNIST数据集的评估脚本。
该库可通过PyPI存储库访问,并可通过以下方式安装:pip install pytorch_prograph。
李洪乐等,用于分层表示的可扩展无监督学习的卷积深度信念网络,ICML09