Bayesian networks and other Probabilistic Graphical Models.
Project description
pyAgrum
pyAgrum is a scientific C++ and Python library dedicated to Bayesian Networks and other Probabilistic Graphical Models. It provides a high-level interface to the part of aGrUM allowing to create, model, learn, use, calculate with and embed Bayesian Networks and other graphical models. Some specific (python and C++) codes are added in order to simplify and extend the aGrUM API.
Example
import pyAgrum as gum
# Creating BayesNet with 4 variables
bn=gum.BayesNet('WaterSprinkler')
print(bn)
# Adding nodes the long way
c=bn.add(gum.LabelizedVariable('c','cloudy ?',["Yes","No"]))
print(c)
# Adding nodes the short way
s, r, w = [ bn.add(name, 2) for name in "srw" ]
print (s,r,w)
print (bn)
# Addings arcs c -> s, c -> r, s -> w, r -> w
bn.addArc(c,s)
for link in [(c,r),(s,w),(r,w)]:
bn.addArc(*link)
print(bn)
# or, equivalenlty, creating the BN with 4 variables, and the arcs in one line
bn=gum.fastBN("w<-r<-c{Yes|No}->s->w")
# Filling CPTs
bn.cpt("c").fillWith([0.5,0.5])
bn.cpt("s")[0,:]=0.5 # equivalent to [0.5,0.5]
bn.cpt("s")[{"c":1}]=[0.9,0.1]
bn.cpt("w")[0,0,:] = [1, 0] # r=0,s=0
bn.cpt("w")[0,1,:] = [0.1, 0.9] # r=0,s=1
bn.cpt("w")[{"r":1,"s":0}] = [0.1, 0.9] # r=1,s=0
bn.cpt("w")[1,1,:] = [0.01, 0.99] # r=1,s=1
bn.cpt("r")[{"c":0}]=[0.8,0.2]
bn.cpt("r")[{"c":1}]=[0.2,0.8]
# Saving BN as a BIF file
gum.saveBN(bn,"WaterSprinkler.bif")
# Loading BN from a BIF file
bn2=gum.loadBN("WaterSprinkler.bif")
# Inference
ie=gum.LazyPropagation(bn)
ie.makeInference()
print (ie.posterior("w"))
# Adding hard evidence
ie.setEvidence({"s": 1, "c": 0})
ie.makeInference()
print(ie.posterior("w"))
# Adding soft and hard evidence
ie.setEvidence({"s": [0.5, 1], "c": 0})
ie.makeInference()
print(ie.posterior("w"))
LICENSE
Copyright (C) 2005,2023 by Pierre-Henri WUILLEMIN et Christophe GONZALES {prenom.nom}_at_lip6.fr
The aGrUM/pyAgrum library and all its derivatives are distributed under the LGPL3 license, see https://www.gnu.org/licenses/lgpl-3.0.en.html.
Maintainers
Lionel Torti
Gaspard Ducamp
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 Distributions
Built Distributions
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1c65a37ae78b1dc1705301053c9f57ed18acc14238c1015d1a3a0a0a454f8b29 |
|
MD5 | 48ed4e1ab7193bc5be7135303b9f7ce5 |
|
BLAKE2b-256 | 71919c8ed25740929c8e4feccc6a02e9ee1713539b1c090e74be9e6cbb5413ff |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp312-cp312-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 46bfe2fd4f21a2c3a901c837e0f96ef597747780b6c2e562b657b549f905c6cf |
|
MD5 | 310e97111cbb50bcb3f7c146fe91dc0b |
|
BLAKE2b-256 | 44feaf79863cd3c2819b68c4f97367bf0d0b3aa3d28abf243f57949b41cb881b |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp312-cp312-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5bb28579574bbc0907a146f358ca8de4f25e9b4f5f847cc68989b2d2fb8c0f43 |
|
MD5 | 5a0ea792cab8e888eca918d05cbea5d7 |
|
BLAKE2b-256 | 05111535ea6a1a9c349a2f232fa27a909021a3cbce9ee1b20c893e92e0ce582d |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0be577d39f42c42f44d20e7c2415ee5a5077e522536d7ee2841d0effc633bec |
|
MD5 | e17596e0f144222be5fbad0ccbe24dfd |
|
BLAKE2b-256 | dddfb0f6e2b7ebf5d035473eb111366616eaf6fdc7e1a0985002705ca18bfa7d |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb537e00ef2d47b9aa8e4873c8d7d9e6a6289788bb77fb85edc6672b9d70c4cd |
|
MD5 | 1dfe0e1887e5fa26f2cc2177d775bd1d |
|
BLAKE2b-256 | e4e6cdeb041171a4f6594e603e0e17e6f944fd5a97a44f4c4cf18820f2b6f1cd |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2d33a7abcfda93d863758e322fc95149d745541a9f966eff997495b4e98d465d |
|
MD5 | bc8f88406aeab46cc2023932d0aaca06 |
|
BLAKE2b-256 | 2e539c4022d0e666c0b205978dfcd8098fa76d75da081d81797b6f5ad6cd95c0 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp311-cp311-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f042ed775204b53e4e9028dc821e9251769ced74cd5cd8a6050e3f49e3bc499 |
|
MD5 | d37a3f7b6e5f6243baf681dda5e41911 |
|
BLAKE2b-256 | 67978518603cf68c36ea06e9561a3bb914894e743c4830d4b8427f43aa8d4943 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp311-cp311-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 761bb4c85ac063cc24fd4a6e559a6680f9e95bda996fbfb043840c03c4dda7bb |
|
MD5 | c668591e27637ddac5ea09d6d4aac314 |
|
BLAKE2b-256 | d0ef280ede503dba19b8eac6f8864256cd1d3d6c12f229e7417ecd005eb66a6f |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd8ad2a0bca0463c0e3278c18fa49a931779bc7d41907fa313e44888b9c6da63 |
|
MD5 | 4a96894302d18006bacff6bba8495c18 |
|
BLAKE2b-256 | 7010a7df5dd7067d77d1193d2b7fae5b701b6c0ee2593c2f1343c2419b281a76 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c2e78924f2740d71a53370194ad00e31cb981a14e519fdcb59ef40b74db0fe5 |
|
MD5 | 350c095c20ce598b051754cbc5e913e7 |
|
BLAKE2b-256 | 73f39cb385804717da8d07f183132818fa81fcb8a32a850b4c98670cf82e1b4f |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c381b19eff9cf36b3be38560445f704c95ba9131fbeeee1bd9571a80cf555707 |
|
MD5 | a1e32c2cd7ddf75fb1a714d579e8ba16 |
|
BLAKE2b-256 | 6a1316c581369c0f364dbbcc337f3c1b582619cb485f2c442104fd6ae42727ff |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7df50af51207aac93b3219435025cbd282b215ad6e0ba1bdb14e9ec5456374b |
|
MD5 | 34147457b0ab73aba1b64e393d6bb567 |
|
BLAKE2b-256 | c39e914dcf2768a300d2ecf30cd729f84e09992dd4b5101e512c11f82031719d |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp310-cp310-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 02492979d602a61411068fab93ae9a83cc4a514136be43fd3232906ca8995e35 |
|
MD5 | 3ac2f2ebdea0192513f001d4bb635161 |
|
BLAKE2b-256 | bcdbb286291cc84457a2e9868c8954d0615aed9e5bb902df7578452846b49150 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e65a523addcaebd297ad7fe4f1f885f329fa2840fabd0669856deb09ed4a76ce |
|
MD5 | bdf6361928d2ccad374303a6706d52e9 |
|
BLAKE2b-256 | 3dc022f44cbec7d1ebf2f06f9909ed0deeac17bdc0f42332fbfc194eebaa91cf |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b60dd4414f214bbd51f214e77fea50bff8b40020f23e9d61e13d54324cc8236 |
|
MD5 | fde7cb15e8fd3bb228e4a555a062813e |
|
BLAKE2b-256 | 7bc9411e75d8c5d3a12adec851a7a5ace020328ce9b8a894ab80ba553fcf5a94 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ecf0e2c2620e4537bc9b6692b68ecae53ad328c79a05f1834f0871f4ce95bea8 |
|
MD5 | 68674e08b4c454f83782b9bd27ef73aa |
|
BLAKE2b-256 | 903e9598042f7f33666ff2b00bebc2dc70d5813a8a5d8dd602bcc7e0c723511a |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 78e4f343c04bca6f4577de50fd757d94bfe447e33570abf14357fc726af1279c |
|
MD5 | 8deb3ca357891b4bd0110ae006d64758 |
|
BLAKE2b-256 | 2caa5e142e88cbdef3a74b02eace91781b4f0a241cbd9bc12396368724ac18ce |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp39-cp39-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72f0d34d32ec54972a1590102abef1d64fb9e0df7661f2038f11cb311c94236d |
|
MD5 | 716937f49e1ff1bf4bf5767e09615dc5 |
|
BLAKE2b-256 | a96e2af499cedf3c48747cbd104cb6f578055b44a36ce6d43098a371e81d8d59 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d20cbcb35421250dbc72273071b4160c8930ad891a91093dae5ebadeb3662f9 |
|
MD5 | ed16980a77658a211eef00023cac921e |
|
BLAKE2b-256 | cb33a8ffe53471938cc2ec5f3a4a608b9d59b6ada018385e78eb05e42a9a779f |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72f2ed994ef960c5749c9a16558292297a0765164abf1ea48c5fc8dde43f2abf |
|
MD5 | 68d3c29b856416884fcba6e6ec1501af |
|
BLAKE2b-256 | db5edd0aae53e476f7e7c757c467f37fe1c43cb7adc8344d17a02cde03598dd7 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 527899caec903251d1319bce9044886bc4fa36c33d3c44544a889591869b5bad |
|
MD5 | 6e09ce1bd58e670141e87abbcd14c8b1 |
|
BLAKE2b-256 | 28d18781e41ca0cada7c998bcb3b0bd5b2d373e214c492d1772f6a446ce5b2ab |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp38-cp38-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 542298baa2687f5e267ec878448b42f1e6f309fa9152259dd37fac8f1c788e38 |
|
MD5 | 700aff4b4edb1ea8881c2cc6fe19c98e |
|
BLAKE2b-256 | d0743afecbc4b8c9e68b81f9a913c68b6dd8cafc932dd5e9e4678bddc1cd77b1 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp38-cp38-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 01fa5185cd30e53b0da3fb4809c3452c828c8c0456c84176c5d493d59b4bcbcb |
|
MD5 | ab55eb826ac5d92df698bea7479f2945 |
|
BLAKE2b-256 | 1f287b45b9e65bce9531e8e217882ae4ad4ef702283dab84c5d2975582feebbd |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c05d4ddfefb6deec9742308a82f983954771dd76097ed4eab91015465f9a6468 |
|
MD5 | a505316fff8ac5c7b71633a5f479b67f |
|
BLAKE2b-256 | 9da15509e4fb9cebb3d6b4c67ca576b904b48e36d7d5a09dc07bcde7ccb5bdde |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401201701813464-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bbf06a9ce1ecfbb770e412b7a26f044bc6dd370eb6af1badec1193946a13e62d |
|
MD5 | e0acb7aa19d1d1c41c7ba9f76e408a57 |
|
BLAKE2b-256 | ce297684f69356ce8c9bbfe3ea123b854e6b407a67f75cee099a70c2497bb3ff |