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.dev202402041701813464-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae011cacf637b236857fd2c48813a989273a2c174aecaa8d9bb64a32e8a6778f |
|
MD5 | e277ea9b69ed78c7f703f04620b407e7 |
|
BLAKE2b-256 | 67419cf8ef5e9b56cc0622d3f291177e17ca04352104b8e9f9f3439f76dc08e6 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp312-cp312-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 757cc0c9cac38edc0575ca963723cd1501e2e71560e9a143d0c9429b6649c82b |
|
MD5 | 13c25c7299a2f5e277dc26f22ae86332 |
|
BLAKE2b-256 | 21fcc6fd5afe411ed1a26a23bdbfe1f647db77dffa62bff40ed30f50fe5bd8ff |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp312-cp312-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | be06f7621c70f0fa1f58f2461b6757475ed3f1859e6cd24dc44bc895eaae0a53 |
|
MD5 | eef442aab28a60838d00184f6ed330c1 |
|
BLAKE2b-256 | cfacca160aa0abfaca26a30da4ecf38b154158af759629d17246a64a5ba917cb |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5bc925171851a266b8ee595f3ebecbd5995b52e718b13bf783c1996de6853c25 |
|
MD5 | 396dc5605b8cd6c3162b2d5fa48c18e3 |
|
BLAKE2b-256 | 2ef19b9a103491f7ab5a0433ed53b2db551ce36466b7afc5d54f91a169271726 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e0b6f7958bc980c4aec7dcb56af80f145a32404953e6a244dc4b3b259a848af |
|
MD5 | 54fe365b410597058c52cac413491279 |
|
BLAKE2b-256 | 5a4b2ad30e5bab6d375b7db91c6796d3f5ec0a97f7b2d8616388ef3c7ac5c004 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f2b4757c007933841378bcd9959e60303d6680633dec67fc9496fb31f16ab52 |
|
MD5 | a83082a64a5178b86c2aa29816a7c4ba |
|
BLAKE2b-256 | c5def4eb4503c7c60d9e911ad125df8b5411e523ef3e021a131f92e3161c7cb0 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp311-cp311-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 603981657181ed1865afe7b9b1b7d77ae69d306c6175ecb47a43c74891e3a951 |
|
MD5 | adaa2d72c9255487114b2c6914b021aa |
|
BLAKE2b-256 | 4d6739f64ef4fb85b2796e3a7fa0b03f8588ef44d922a181f92d44e856c76197 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp311-cp311-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f2eb6bfbfce8430f2e4fd106bc22926df8e59de6ae8d2b35ad79111e3edae57 |
|
MD5 | 578e58cfb05fe623bf4c4ae90e46bdd1 |
|
BLAKE2b-256 | 96ffbc69f2e7bcac27583d0360c7dddece280474a3cfb9f45af8a7dc3ff8ddae |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c8b696fd6bd55ad22ef604dcdb31804a1d00d3d3807fba741e4523239874937 |
|
MD5 | f115f038c093bfc941b49024467a23a3 |
|
BLAKE2b-256 | b1c95ddd00465580c9651cbaa38a3055449de967237b69380739818997dd3e85 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d849158b3802d69a324eb36903e1697fc32468581dcc04bd917c205e103cb95d |
|
MD5 | 4dc75c295f3aafe85afb0cb42bdaa11b |
|
BLAKE2b-256 | 4e7a6245e4ffcfca6472c61f826ffd3e6b4635f0834ed6fc0e67f8540cc0d370 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5cd995f4da436dc01473c39d33c4454818c05addcfdc162834ddc0fccb7f92fc |
|
MD5 | 14a3fcb0407c67f17a65cca52979ef2e |
|
BLAKE2b-256 | 295533b41d5f03c3d5aff71f2c3e495a994286e71cb3c0c0c063758c3e0bb783 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90a0642fc08ea65d8d037ad3d910698491e6416f2d6e836a4ed3346c6d0c7ebf |
|
MD5 | 9ed40385ae4760ecc41796a5f94f619f |
|
BLAKE2b-256 | 63f3581be7b76ac293971ee4b910dbb2d2379e58ac26f8ae106ce0549adfa572 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp310-cp310-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e0edded611acf621fd0a3b3189ceabd717ecc249a7ad1d5090e93d57de8228b |
|
MD5 | 596208bed191a81579a77f2a747f4538 |
|
BLAKE2b-256 | b7e92c4e1de85f9b498e898b25d0551e426e6a238055c8ea240e7b5a1313f6d3 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33b7e1b004b6985016bc1a8022e7c7bc0d241e5de54c4b4bd226d57b8b03e74e |
|
MD5 | 012da911d1522fa72b9c1309469803ad |
|
BLAKE2b-256 | 1325b80238c0e7f81579427e81c142796c77d301126e39d0304351b85268045f |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 34fcc4469eadfd821c1e8cd68bf8700ebd128e8dd1b81bdef72d1bbbb56152fa |
|
MD5 | 50e4de547deb0e606d3bddb4cc1f6605 |
|
BLAKE2b-256 | 0ac51c585582602fa91f76cc7edb22898e455f2f9e6f72d7c78db92220668dfa |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70d3318ec42e130e6044730a4b651dcda2048cc8bf8caf62638cbd396cee8764 |
|
MD5 | 410812e5205824b9efe2d0da55022944 |
|
BLAKE2b-256 | a3a5172e305a75c708436072a8fb1e6515af3c90d39ff066122cf0497645e490 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f68011488e46bd278ab081339a97431ac2345c25ae3d7eae3b6e47a2643ac695 |
|
MD5 | 7babeddf2656f6dc857bea0a6452d67f |
|
BLAKE2b-256 | 90a377bb3fad1f149d9c334161156e727e4c7154dae6a7b8b3e51ecec6d6e55e |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp39-cp39-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 09e933bab1738862264295a185983c5949f40c255bbda9088f52b66ae74f29bc |
|
MD5 | 35b3f639dbe1d0148f4c95999998ee7b |
|
BLAKE2b-256 | d3025678cfe2a6aa70183a09b9e2c965b496fa744e607c905beb575a4f68d125 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b3f555bc64076fce8fe1f6a8d89302147468581f9d815b4626eef51b7631546 |
|
MD5 | 6a47db99105d3e66486ef5e77e213335 |
|
BLAKE2b-256 | 99d6049d30f8141cb65446dd786d4f7dc6a6a25bc89d1a773cfda8903f549e3f |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9da8e2d705298b54b970681da35e68683e1822d2031fe3bab1eb636e6572f8b5 |
|
MD5 | 5ea107bebd473456778555c64ef070a8 |
|
BLAKE2b-256 | d63a80aa7006450a067320454af4fe69e1a0010cd8b2977667811fc20b63b345 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f64c0acec3b8eca66a83e25010c14b30d520a0fd29f46a32ae652492ed8befd3 |
|
MD5 | f79e14c3a272cdcc1fca8ea6db722158 |
|
BLAKE2b-256 | b5816d0b5b57203e7e60972948e8868018f0d0d9fa8b0333b734b60b8444003c |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp38-cp38-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7361a284f286ae47f06589bcdcd43d5858c0fea65d2b27df0ddf6cc2c1872325 |
|
MD5 | 776a924e669673533aa47689c91c1b66 |
|
BLAKE2b-256 | 7fa7ddb60f49afb1340a259ed385ba971eae184037c024163391dae20a18f429 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp38-cp38-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6fc7be74fb58a9bd7884dfa19f7e7dc0fa2b54b42edb6039ceb1039f253fe7c |
|
MD5 | 7ffd41c7b76003ef4ff387d6ad78447c |
|
BLAKE2b-256 | 14ae6967172a75770f5dcf405fb942eb40700432900ab01217df4aaeacf92706 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 61dd204f7b28d61fafdef35a8e58484f8dceb5867c585397f606823b5232b681 |
|
MD5 | b8063a1ecf8aaf6e2762dbc03613d964 |
|
BLAKE2b-256 | b7859b527e01fd09cc6d4be7c57dbb5e124f64178704ecb9c3fbaa186b14b842 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202402041701813464-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67893147578a2e755192d143e8d9eaf75837f3f5bfc1aab1c8683e9e1d87e087 |
|
MD5 | 9a12a7aa805a621fb1dbc12f9837dc64 |
|
BLAKE2b-256 | 5a86628afd52e18d3a857e1849e1bebb80707dce0bb8c844157b0a7ee7729207 |