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.dev202402291708630418-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c85e3852dec221bc2bbfe8027b10513618cdcfa15fb986863b019c8d6bc1e668 |
|
MD5 | 1f44d058a969b741318e837aee8a1dae |
|
BLAKE2b-256 | 1f3196a2f7431dd2c5db5cbdb04bf29804feb24f4a0ff34e82eb20eea765d4c8 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp312-cp312-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2db92a0eec9d15ab42b824365389d7cc83cd5f8b375b95ff9d96b1fc9ee560ab |
|
MD5 | 288e290e5f663eb21b7f4e097fbe2654 |
|
BLAKE2b-256 | 8a642cb1ce862d3c61bac1ecfa6d196d4461c79ca5aa0fec25ce74c65cd4a8b2 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp312-cp312-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63d3c20117bd9164b34a09e097465f0c7cedbbe0774dfc9a3a6dcc9002135e79 |
|
MD5 | ebe0d19c7b10e5d9a61096e7eace406e |
|
BLAKE2b-256 | 8d375e1aeca311b997aa10d9a2ba692d2bb1951b0ab5d395826f94e9cbab9a6f |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9f671ef70537f095cf310d707e8524ad64cc47ded5f523b9d15a21d1ce18e0d0 |
|
MD5 | c7f2473194f726567f862053d85463e5 |
|
BLAKE2b-256 | 54e7056a447d5fcf8c03870e6fc35355392738e378c738ca0e051c448caf6760 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ec01e27429fab8218d84cc5354cd46f7dfea8735c8b24ccbbd3cf2d903d4cdc |
|
MD5 | e25cad784f0b444d9662f2445030aca0 |
|
BLAKE2b-256 | 5ab23eb3028f3e071a73b8339c284d4d6568587b653668591f18677197703738 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1bedd26d3eecbd53d5b1e4b7176a23afb3d528b218d90f4a3ac737cc137c518 |
|
MD5 | 454b5fe712e08d784f7a1c1e49209668 |
|
BLAKE2b-256 | f01a10be13a4097d4063a3c2e01955944a502d0b18509d69760bc305fae6ecab |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp311-cp311-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a2e05f1c4c9e2e12b1aa31b56464aae0fa27257cbc61c49f4795a7541d9caa5 |
|
MD5 | 79e0827655ba0994caffd238d615c043 |
|
BLAKE2b-256 | b1904364deca14fe1da09d3804ccc0df5119bb63c5a3fdc6718043db511db4b2 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp311-cp311-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0378d07fa2d84257739ae2c6a3f0a3091d7d22d09eb3b01f38d6bc869d87802d |
|
MD5 | c1b1f66ab00b119a5203fa68e156cfc6 |
|
BLAKE2b-256 | 41b7098750e0d0784156b8057d61cc72183cff0b493bab6b210ca3b64fb614f8 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b62e37c541894e257d7866012dc44e6e5aae4db0ada785450b80c0ef9e112c04 |
|
MD5 | 1f7e4a514e7d0c2ea6a67f9d214555ea |
|
BLAKE2b-256 | 46a0549712c2d1967f83137d2ec1dbfb6ccb46f4ba92158f0c5704f5919f5ef7 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b0f387d384adb3a563d62d063077b7958d42fc0fc385799bbdb77dfef3718124 |
|
MD5 | 7710abb7c5aa0f2b031b1aaf19b3202f |
|
BLAKE2b-256 | fe7dfb6f1d983e13c9222b1d42d2bcb9278e22bce3c919e41d8b7d2f4ef88557 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2a4623b9821df0a860e759c89bebd16b35c97e76f35518ce2abdb9b0339adb43 |
|
MD5 | 45392949f95eb74538d576d13512f07e |
|
BLAKE2b-256 | a4397945f759dfed82fb225c7e61e77a67a25d37890818bbfabd3b7d645e439a |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18f2b63af27a3c3d4785a9351991ee3ea013748aee5bb1955bb9a763b19297b8 |
|
MD5 | df384b151234740ddc6e666ba3f95e1e |
|
BLAKE2b-256 | 26b1e42d1ce0d653ff7ed03ae97bb23f11e7400633b260f5bad8b6d5b9ef3fea |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp310-cp310-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8710c832b9a2cbc89c1e137124273315492db94ac3c5aafbc60d9acaa4831aca |
|
MD5 | 2e73c5c911d09da64efc05453f2f2b65 |
|
BLAKE2b-256 | 1c0032bad77b3c21716ac56b8c202b755f5c2acafdc3fb3c04a1c32a9c51a12b |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b68ca65fb77edc31c120e48c84f205b1b941618fda25b74c7ed96e66302883e9 |
|
MD5 | 0a175024c1424841e749cba01b32b258 |
|
BLAKE2b-256 | 8033fb4836d73aefab77c999eb7e4be6ffdabcdcb5368facc9be02b70c669db5 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ae28c9949236755ce5209abe8bd2a99ee2af913953fe104c41aaa96ea22a1f6 |
|
MD5 | 6af0901d511351884251e8942aadd8f5 |
|
BLAKE2b-256 | 67ad07201d838117f54917857633b06483858877e04184afa2be3d3e5724aa62 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2af336161f31941cf12119d8b6585761b5f25252f75b9a71ed52e04bcc909a85 |
|
MD5 | 56f959148af05d3b9697ec585716ccbd |
|
BLAKE2b-256 | 81e4fe29b81e029079102897da7852ae49c290db4f33f87ff44cb7c4dae2e032 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | edfab241cba1fbccc677f6de44a8409df9a57c4f42d576e1af90a2cb0fd6cdd1 |
|
MD5 | 9ef89019df9f393cee365b24fde3ca89 |
|
BLAKE2b-256 | 3864c71864cf3b07bcaab321065ceed4b4628ae0025ce921538406185106be43 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp39-cp39-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 20f25eb97196e17d6ec18f528f0141f09b002f3429938c03582d6cbd8991a16a |
|
MD5 | dbbab05bf321e58ea1fd529517fbda5e |
|
BLAKE2b-256 | ac9a425b71b7dec8f3117ea27226193222ea575a119c7d1c2cdd2d588ed49499 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce7b0b6cb30a54c837226e9f0c93d21fd7d9ff3f92f44a4ecb46f1b2e54afee1 |
|
MD5 | fd52672c4874359e9bff173fa099f482 |
|
BLAKE2b-256 | 46b10b5b62320b9804f757375bc2a3158961ba77a0722b87904208411a2ae686 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d817c36ac8bd4c8ae1f4c3713296f409e5bea8592f27c674d88b233c49df32fc |
|
MD5 | 03e77356e84ab6116fc419533a1e2a00 |
|
BLAKE2b-256 | 62fe1f182a2b68608d4c7ae6951d1da9e718b9c2be1aaf750f772c85a23c094e |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 31e2caf74d5dcb107564e89bdf207b932c409cba885aabe3e63e9a5d3f4a32f2 |
|
MD5 | a473af53e153779630ae0c74f650d61f |
|
BLAKE2b-256 | 3ee8882233e3c1c460ab801ae05c119e8731505b0e195f679209d8296b4b7494 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp38-cp38-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcc19a1ae41c87095d3f8de29103fdd65ca84e2c3efc806f6cf0f60ae5f4d20c |
|
MD5 | ce3d525dde8874dc5211c13d79b89393 |
|
BLAKE2b-256 | ed852880eca9bb0481765b7fa915e6e8a803beda6fb82a6f93d8d4038a215d05 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp38-cp38-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6318009543b4fde64b4589a23bd96a575f22576f101e18e516ca77a8a0b3d933 |
|
MD5 | 33da59cb1c9da36961cf52ff2ab33dc5 |
|
BLAKE2b-256 | 7da15bc89ebdb47461b617431277f0e2f022678372a6982a9fdf94bf6c0d5479 |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce2b3a80bfbae765aab5ec1d2bd6b8c2ce820bf40846a73ce697bfede1007cc7 |
|
MD5 | 06ee336a00f707e1c00c9c346ba0ef4e |
|
BLAKE2b-256 | e0ec79ac8c32c7fab3738583fe59a9f6b1a0cfa950cd2a76a2f4ffdafb28f3bb |
Hashes for pyAgrum_nightly-1.12.1.9.dev202402291708630418-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7d1e39150059752528531fcab9ae11603c47dd0b4321f93be5f8e42e060e1600 |
|
MD5 | 0ea9d8db738a86fa71d0da996e88973c |
|
BLAKE2b-256 | 80f0d479c59807eb0cbc9c532e283da7e0eebad140d8075544c81eb18f445acb |