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.12.1.9.dev202402271708630418-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f3342796848a4afa297b28a228d754b59cb03eeb385036d2aace4a67e7f2f0f7 |
|
MD5 | dbd53bdca5aebed265f00f0ae5f15062 |
|
BLAKE2b-256 | 5b3bf7da25fd27e571a522f1cd70e2a3df677712736d8192696d441b9feb8819 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp312-cp312-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 98aeb34b187e7b0cacc35ce262ff1ce791545e962b35cba5843a4409e37d807a |
|
MD5 | d0b4d6175b34dbed12d5feacc92f7215 |
|
BLAKE2b-256 | 3acbbbceced8798a9a6e27bb6dd31ca2a8aa2c0a21e48c8376acd6c8fc6270fe |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp312-cp312-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ac9a5f5e2a12f655a7796725c4445a1cd2910b497e64a03f02d16713f4120fab |
|
MD5 | 03108c91592327045d24c245503eb8a4 |
|
BLAKE2b-256 | 4cc691ee46122736305520df7c063f01ca28810e3fe95a819c8d5739c496dd6a |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 329682c483f81edd38126dc0e829a0c131136b6901e8eb1040947fc56bff9c35 |
|
MD5 | db7a288185c462c1668e6b889789ece5 |
|
BLAKE2b-256 | 53e97ba8b66d27eecfcc232d9931307f2676e8024dcedc426befc56885c0ba3b |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1eafcfe41ddf30f3e68bef2d3b69da7c82056deb5843a9bc0d9b403d805df078 |
|
MD5 | 9304935ce79d0d3cce2ea854a9b22225 |
|
BLAKE2b-256 | be19324c011917c29c8f58270f8ee9e69ae5d732caee04db5f437a7fcf677eb8 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ebbdba9626741fe8c9ab8bfd7f1f0aa0e36bd0645c9fc95672a65a4543c3a3f |
|
MD5 | 13cccfa03eb49757337faabdbd887b92 |
|
BLAKE2b-256 | 9091ec22ab0ed753f27f167c304c3e2600ccf6331266945c76b803df35f24fb1 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp311-cp311-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5029ce12ec0b86cd403370bb39248584f4da6991bd6665ff14272ff25362e9aa |
|
MD5 | 419964697a2a2b121bc20e6bb7820d1e |
|
BLAKE2b-256 | 363c32b7dd7418e55629eda47883e0ce6cbf44651cc9c4056ce36e9dd473a579 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp311-cp311-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c50ebf91ca5f835d48ffa52cf46901fe50d54fdc24c625d008d063c0564fe72b |
|
MD5 | d6fc0b3048696cfdb5aa5136fa9479ef |
|
BLAKE2b-256 | fe95f1846189a542d4eb085bafcab60c34904188e669deb674b92b349254584c |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23cb418fe2fef9f509583d5c6d677a073135282a40fa0dec89fa90e652ec5ae1 |
|
MD5 | 75c43e33ab49eb09f982ebccaaf8257f |
|
BLAKE2b-256 | 7879e41466851055a93f20c4ac48b5a6fb2c1a50523efff8ae58c8853648bbd6 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9782940476e6e0e0ec00f409c224f89987a99554a6c4a1a95f54995f3ab61548 |
|
MD5 | 203fda552d2b3af91813aa3650980884 |
|
BLAKE2b-256 | 43b6b9aed5774f4aeea002f455631c49d30c46aae52398dbdc30b3901697184a |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3614ab80d2b8fcfa0ef5909f7493c77afb334c6b270876087adcb16649594504 |
|
MD5 | ceaefacff345a418365066366aa042fa |
|
BLAKE2b-256 | 0d19498ee24471daa3dd3bd430ed88a69602d0a830228ffdd897a94196b88a0a |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b3d77f34918b5ed1d772279579d659f8cc73e9aa2cbe481887d4a2721e3daf0f |
|
MD5 | 425ff58399d2e48765868569b4aadd4e |
|
BLAKE2b-256 | 6d4be56bc99e2c20e21099b54fb17c1f17f8fc949023e9736149fc7a631e0f65 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp310-cp310-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 553561071210232bf6c12224603d3dcf2c884eb1f8e89da3b2244da94b3804e7 |
|
MD5 | 696bb584bdfc073a4db72c2c29fc2faa |
|
BLAKE2b-256 | b444b0c8b5e2cc6e4a955f692f5756371203897d828883e5dff71095ec14fa9c |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fa86021c5c7e5c02054afa2ac067d217dbdfd0abe9858dbfba2e13f38528740e |
|
MD5 | 6445a8352b734f46a6f7f55c904388bf |
|
BLAKE2b-256 | 1e7fa44494f749941aee01e2f57009fa45d827bfe00654f111730f0d65304bac |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4186250eb00515d2b472e570928547cf50c5723016d492773160558dd6a7109c |
|
MD5 | f01b3c4d36d488cb05af4f4abaf8a312 |
|
BLAKE2b-256 | b112f9a084efe39ef353ae43a175fe924d9319c619769d43c95bcb2fb28800ca |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5bd146155743f53cc2d2edcc2f0b0c31410de0228620a801a051c188ab2cbf6c |
|
MD5 | 86f5bdcb54571f3486497e5e3c315fda |
|
BLAKE2b-256 | bbfb60e9f628770ded55b17a829554ed2c994d1dceb92cb8db1b769431f953b4 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc7ef38c55712177471e83c62331439545434cb99b90824b0ddb609aad204491 |
|
MD5 | cf7e8801ee4f8db11471bbd08b399747 |
|
BLAKE2b-256 | c574be64376ff219383990ee56862df8c6546d9687b65727e4adefab9a76d1e0 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp39-cp39-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ff0edcc660dc0b94cd376bf0f20e85961537f848d28fa291c6803ec0ddf6865 |
|
MD5 | 512dd46df5dd61acd6b5fd0f31f35f33 |
|
BLAKE2b-256 | 299e5f54f97958babf176b2105699b7c9d8e194176319ffeeeb8f8430a159b1e |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a284b07fe962d6990ae565fb60ee0f2bd766dc50389529a15ed3daad70ec0f6e |
|
MD5 | b4bbdcac6e252bbf85caa00da781f167 |
|
BLAKE2b-256 | 8db18254c84468315e9fb42186de89331006483fe3ecc079ddecc0501f0e175a |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 39dba07ffa8f56b1972e150985be74a6a5a9e70f1a4a069b86d459d9d103f17f |
|
MD5 | 02704f2b6d887dfe0765a93ffa37c3aa |
|
BLAKE2b-256 | 1a31f0721fd4e58c842541039a52c84c314a10a23f75237cc871e84064de0482 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d755be2717828b58b6c8b9db917286273f0413c06dccffec830fcea916a4544d |
|
MD5 | 7961a894d8d65172f8bbdd26e3920608 |
|
BLAKE2b-256 | e3cfc49e2d5612e0425c9b1b1707fda5718ca327417f4654e3bb58dc5a8add31 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp38-cp38-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24964d710ad43960389e5c325cbd39b7932ec67670cdd966240b45118abdc14d |
|
MD5 | 12a39767444b85ce65c46f651dc91129 |
|
BLAKE2b-256 | 6ac23665137f2c431369ef3b3b50ab2481c9c94da07d9005b3bf67aa8ab3c49d |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp38-cp38-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7efcde91bd09b776da667f72458e870f078893057262125ea6b4d83309219859 |
|
MD5 | 9775edcb9cea7468fc21c3349f59c97d |
|
BLAKE2b-256 | 332a6ddcdb35cc9ffca8817bff22c2bd19f92a7850d49b64ca1fa4c32a8ca7ea |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 804598579595283101ad31ec9d8d323929fb1a3f4d209c63c4cf246db84f57c2 |
|
MD5 | 041c37888d99ffde297eda0afd168cd5 |
|
BLAKE2b-256 | c17c0691127754ce09f31e50b02bde27c096016269446f764e0e3adea3172d9f |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402271708630418-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72733e99e535e1bca49297d7be60409d95e5c2ee858f139bd2add2d81a4e802d |
|
MD5 | a8c4ddfdc7cbabf03f4ccd1b559b7997 |
|
BLAKE2b-256 | 4f726d8cb3cca5eea94bb446c45313d44f9f356dea732474b58388199482debb |