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.dev202401251701813464-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 252a898fe76170580411e313ebf7999477d3bcdeb8565e971b353002a7bcae00 |
|
MD5 | 53607c06915bc0c7d9bff6f0fbd8e81b |
|
BLAKE2b-256 | 586ec8ff2e290c1121d77922d928b9de7f8f26ef11217c9197ec3751350b6622 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp312-cp312-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d2e57ffee53c955bd540064a215f30ac62423d8f7708d067593a3b09038f28f1 |
|
MD5 | fa2b027d0e7f89a18606927b6bd9dccf |
|
BLAKE2b-256 | e9180b07cd2c8733b6164476bc5fb89cc159b19455f714a935b560ae29180fb6 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp312-cp312-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 212ef07e956118d3d64888b4235bfadb256803931059e11d0bd587b4f0edc00e |
|
MD5 | e373df56c3b1e9872aa012d941feec60 |
|
BLAKE2b-256 | 0d31ddf1e6ee40591c2548c61eea53c78348c1e58ecc140c61bdc9680076745a |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a556c730f1af0543f6e6acd12f7fefe0ee4bc12e81ae29b24105a8771dbbef75 |
|
MD5 | f2c8610154374119ce5cbf0f35ecabce |
|
BLAKE2b-256 | 7994d46dc4e73fbcf86bf253bb32715a991d0f85ee2c0e535e996e6cf2e7b567 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 286c88f4617ad6b44955bd7a3216867546e463b0a6003a55c45b7aa1c0fc7da9 |
|
MD5 | 092eb62cc2dc178e192ff3bcfc1aca3a |
|
BLAKE2b-256 | b2b01e467134707ecdd9217b8955bdc25f392c4d40e678b96d8d0abf2eca3619 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 641f40743d4c979ee81994563880a218358b30f67a4616be96c992f84c71726c |
|
MD5 | 59fc0093a11339fcc50a44350c048931 |
|
BLAKE2b-256 | 9cb49b94ca2af39d79470e50d36e43b95700b40e66b5355a3cf734a65f69149f |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp311-cp311-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0507f7a7fcacf95ffb4ab8594626f4291869ddaee973b61eb4ba2849bacc5f9f |
|
MD5 | f254448fde16a8da3ad9b9c90efa4733 |
|
BLAKE2b-256 | 508e2f3d549065bfd78b67daa371f887c32a56f6467a2c478b97cfafdb5d2c8a |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp311-cp311-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72f7ef5aa9ae0f327b7a638ad9a08f3ef70c3a1b175415085ffc82457987dad8 |
|
MD5 | efaa39960c5b9d827c213ac2327739ee |
|
BLAKE2b-256 | 20fc755a331362a566231650d41a34fad180b062facbcb92778ab142f321fb68 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14614b777cdbe8d34fef6aaa15c561551758bee63eef28bcebd384fe8ce3109f |
|
MD5 | 3a6223a5175360dbda7183c3858208b6 |
|
BLAKE2b-256 | dd20f8acf696eb715dc356e5326df13f7a05be31968ecf1a9ba05f19784fa523 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b48cdb82bb3a05a69010364cc045ba4a5b36803effb4f3d41bb17a7cca16989f |
|
MD5 | f40fac22119718b40da9c47e82257ffc |
|
BLAKE2b-256 | 4a1a46b66b839c68bedb7d2e0362411afb9e3bfaf328b3954e626cee07d009d2 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b13679e55018c079102c0d5d58d3292a259cf36386ff5f52a56a6299ce38bc0e |
|
MD5 | 0c07dea80f43b57495ed21964210a819 |
|
BLAKE2b-256 | ad324953c2a54ec5af45c9e60b75332c3328f7a0a9850ea3b19dd3d70f44e3ee |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a07916eeb25feab6d8737beafd79511a5fc21b6c15c6b3309c0f35c5d7503b1d |
|
MD5 | da53996a8e41c99bcfe4b91954639a81 |
|
BLAKE2b-256 | 9e296dc394e186b75b27deadcf45427ac3ef23a2edab92c8398fd2a485bcbba6 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp310-cp310-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d265664c0be0ca3c28326b32df76affaa329c5aa27bb9f3688b09460309f0e0d |
|
MD5 | e9f08abbf6feee4b081860ecbeee7d1a |
|
BLAKE2b-256 | cfb43aae464a132447478dbdbf44a92f0f44082938e8f909eae3ae7d78e744cd |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3f4b2a63512a5b198721d6fca8e2555c9f56203f278f0c5453d35dfaf6b48074 |
|
MD5 | f9fa96232c423327f8df4fc4715d5d01 |
|
BLAKE2b-256 | 1e0ac31a90f3c2cc3cd0e9c713dce3a9203ecd39e27d1d5103934de266833608 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6807e913d7810a8ec600671993f74ab787d68497c661e6cac1737beddae7a779 |
|
MD5 | 9fe9c8eee2ea29088133995caa7b5633 |
|
BLAKE2b-256 | 72ca54957693853f860d4b20dc1f470ef2e6cfa51bd0c473058f837b1d351a37 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4567a4cc1e4b549afc2749576b975a2ecf771481485fd11d80e1149d5820ef16 |
|
MD5 | 320daef13bf19ba55f332fc77ccb5584 |
|
BLAKE2b-256 | 773e5ac5e9cdfbdfcf220951dc446b594bd9d85ba6592417dcd274f84d13183e |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d790b2c7884c7c676ae7073b1d73f3d69afed97dd67f2abd0d16cce2d33646b |
|
MD5 | 6ff37e943e9e87914d975e89ead24bb7 |
|
BLAKE2b-256 | a82a26de10fea295271fe38efc1781feff953de8d931271905899f935467d3eb |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp39-cp39-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2fae1814ae087b9fb017e50b9d6e18f17e6f7228f4ccd66355f28699beb1159 |
|
MD5 | 9c0c32b7ec12859e43dd2fd0ca3e855a |
|
BLAKE2b-256 | e677a27e941146aaed46c948989b2d8ee637ce6ef09a06c3cd21afca1dd6c2c2 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 825cac957d0cf1b8285b030dba0b670788fd0f63b591acfa3875d3cf3b36af9b |
|
MD5 | f6865ec4a840647a1b76e67e2316d0e3 |
|
BLAKE2b-256 | 5d6dbf5848824c53a2a055798ca4931d34bda469cbe8af68ac0ef461f7c9bbda |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fad378a233f4e5025d4e9542b7aa6d25adefa6f7f43b7abc22f2631b24cf1658 |
|
MD5 | 56ae78f5e4e6a4eaac2f3121f16cc0e9 |
|
BLAKE2b-256 | d8d44f7537b1427cbca83b092a39fa0a4ee90c19feb1c2f2892d5e76ed507087 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9ff651fa8d63c495ce91ffd884627969867fee173b411dd432759f579f565b33 |
|
MD5 | f25f21c6d755b714dba9a2454204fe92 |
|
BLAKE2b-256 | 086a5f5d1a94213c0537670ec06ed861bdf59e931364b027a0f018cc671dd84f |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp38-cp38-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d724c4228c2dbc5f4ae3ba1bc9e3b23b506f75cdf77512f1e138174c5c2e9038 |
|
MD5 | a2116a363883525021312ad449f18bd6 |
|
BLAKE2b-256 | acfd9b0f44f510e4dadea26914dae2b9cbc3a09d29d3ee43fe605ef927ce1aa9 |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp38-cp38-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc838b136db1433f18d62a5406dd860cb44080618c62326084e515b760399974 |
|
MD5 | 654afe9a27699b22089d1a9574467ac9 |
|
BLAKE2b-256 | 090644dc4ba6ae688c68fc4121eb47d181d1e92ef5ca83eabafb1365781dc34c |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 089ef15dd59f722b60d2ad2cff7278cb083b9c953b14aa56eb0ec38181cd18ff |
|
MD5 | 584545bd004ac57292006d6f6bba7715 |
|
BLAKE2b-256 | 64af39a2bd1365b8ac7b0b823e1179787145f83b516d54a21cfb39c84422b5dd |
Hashes for pyAgrum_nightly-1.11.0.9.dev202401251701813464-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3b2a499f0636b96f71d7f0484aefae1f42c0314fee7ce50ed827c1fd37c1397 |
|
MD5 | d4d0f967a6beaf79a30d12f24369dcfd |
|
BLAKE2b-256 | e513c82af987e8bf11ee238824a32839741d003f21640542fa76945a8da2376e |