Skip to main content

discrete pairwise undirected graphical models

Project description

Copyright (c) 2020 Nico Piatkowski

pxpy

The python library for discrete pairwise undirected graphical models. Runs on Linux with GLIBC >= 2.28 and Windows 10.

Inference

  • Loopy belief propagation

  • Junction tree

  • Stochastic Clenshaw-Curtis quadrature

Sampling

  • Gibbs Sampling

  • Perturb+Map Sampling

Parameter learning

  • Accelerated proximal gradient

  • built-in L1 / L2 regularization

  • Support for custom regularization

Structure learning

  • Chow-Liu trees

  • Soft-thresolding

  • High-order clique structures

Misc

  • Support for deep Boltzmann tree models (DBT)

  • Support for spatio-temporal compressible reparametrization (STRF)

  • Runs on x86_64 (linux, windows) and aarch64 (linux)

  • Graph drawing via graphviz

  • Discretization

<https://randomfields.org>

Alpha Changelog

  • 1.0a58: Improved: Numerical stability of discretization

  • 1.0a55: Added: Load/store of discretization models; aarch64 support (tested on Jetson TX1)

  • 1.0a54: Improved: Init speed

  • 1.0a53: Improved: Init speed

  • 1.0a52: Improved: Graph splitting; init speed

  • 1.0a51: Fixed: Multi-core normalization; Split-edge weight centering

  • 1.0a50: Improved: Support for external inference engines; Changed required GLIBC version to 2.29

  • 1.0a49: Fixed: External loader

  • 1.0a48: Added: Shell script “pxpy_environ” for populating various environment variables. Improved: multi-core support.

  • 1.0a47: Added: draw_neighbors(..). Improved: Discretization

  • 1.0a44: Improved: Discretization

  • 1.0a42: Improved: Updated some default values

  • 1.0a41: Improved: Fixed subtle bug in parameter initialization

  • 1.0a40: Added: Loading string data via genfromstrcsv(..) (built-in string<->int mapper)

  • 1.0a36: Improved: Randomized clique search

  • 1.0a29: Added: Randomized clique search

  • 1.0a28: Improved: Handling NaN-values during discretization (now interpreted as missing)

  • 1.0a27: Improved: Accelerated structure estimation

  • 1.0a26: Improved: Progress computation. Added: Online entropy computation for large cliques

  • 1.0a25: Improved: Memory management

  • 1.0a24: Improved: Structure estimation, backend. Added: Third-order structure estimation; simple graphviz output

  • 1.0a23: Improved: Structure estimation

  • 1.0a22: Improved: Discretization engine, support for external inference engine. Added: default to 32bit computation (disable via env PX_USE64BIT)

  • 1.0a21: Improved: Support for external inference engine

  • 1.0a20: Added: Support for external inference engine (access via env PX_EXTINF)

  • 1.0a19: Improved: Manual model creation

  • 1.0a18: Added: Debug mode (linux only, enable via env PX_DEBUGMODE)

  • 1.0a17: Improved: API, tests, regularization. Added: AIC and BIC computation

  • 1.0a16: Improved: Memory management, access to optimizer state in optimization hooks. Added: Support for training resumption

  • 1.0a15: Improved: API

  • 1.0a14: Improved: Memory management

  • 1.0a13: Improved: Memory management (fixed leak in conditional sampling/marginals)

  • 1.0a12: Improved: Access to vertex and pairwise marginals

  • 1.0a11: Added: Access to single variable marginals

  • 1.0a10: Improved: Library build process

  • 1.0a9: Added: Conditional sampling

  • 1.0a8: Imroved: Maximum-a-posteriori (MAP) estimation. Added: Custom graph construction

  • 1.0a7: Added: Conditional marginal inference, support for Ising/minimal statistics

  • 1.0a6: Added: Manual model creation, support for training data with missing values (represented by pxpy.MISSING_VALUE)

  • 1.0a5: Improved: Model management

  • 1.0a4: Added: Model access in regularization and proximal hooks

  • 1.0a3: Improved: GLIBC requirement, removed libgomp dependency

  • 1.0a2: Added: Python 3.5 compatibility

  • 1.0a1: Initial release

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pxpy-1.0a58.tar.gz (21.3 MB view details)

Uploaded Source

Built Distribution

pxpy-1.0a58-py3-none-any.whl (21.5 MB view details)

Uploaded Python 3

File details

Details for the file pxpy-1.0a58.tar.gz.

File metadata

  • Download URL: pxpy-1.0a58.tar.gz
  • Upload date:
  • Size: 21.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.8.6

File hashes

Hashes for pxpy-1.0a58.tar.gz
Algorithm Hash digest
SHA256 41b9a4a59ecb2fbb89b074b71fb4bcf9ead3b0d2e11e989124e710692264e1a1
MD5 c5e4b6e893f65c28777ea242f436a627
BLAKE2b-256 73fbe9002daf639b9f6a829242694d02a0efd5c9edd55371ddeefdbc68fe725c

See more details on using hashes here.

File details

Details for the file pxpy-1.0a58-py3-none-any.whl.

File metadata

  • Download URL: pxpy-1.0a58-py3-none-any.whl
  • Upload date:
  • Size: 21.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.8.6

File hashes

Hashes for pxpy-1.0a58-py3-none-any.whl
Algorithm Hash digest
SHA256 5c18fa069ea4c39dab2f696b8b1d8d64b8e8a26ce901e0b595d59a7025a1228f
MD5 528783c766e469def3270f4d4179268f
BLAKE2b-256 cda40bdf8776f0307c19c3b44ec9733b9a931491ba9c452c985a4884a9dd0d97

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page