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.13.2.9.dev202405111715182293-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ae5a8d50f2d48e0dd197c6afc32b7bab31251e430a10c19c7be581eba0f28aa |
|
MD5 | 0cbd0bffa35071f14f7da59a4a3a9f2f |
|
BLAKE2b-256 | 650df8b07a7332616c4a0002d864ce45b21686c11749df1e78b352f716b31794 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp312-cp312-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 22c17390e61fc4e04a90a510095d9862649012d957915cb1a596ef3aafed0742 |
|
MD5 | 3f5eff3a84f62caf5d3ec06da230ad6c |
|
BLAKE2b-256 | 470a8fe48dfa84f2780916ca5b4623ffd0685eb0a13a617b3287f3dce6eaa18a |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp312-cp312-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a05cc8cb53cf9be6cf051aa656b8d5506ebcda731c9a4ac9b7d6f7c310202dcb |
|
MD5 | 9c77ca11771cb327f695010fcc4b808f |
|
BLAKE2b-256 | cf5b0c07bc55f28b9fe5a72fb00d7eee324cd0d9c07d73e4d33cb72f159ea77d |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1bbe7531041a0c2712a8ff8e89972f85e3c8f0ab126ff5b7c5618aa3cc7c66ed |
|
MD5 | 85dfbfdffcacec3f91be573b7177c47c |
|
BLAKE2b-256 | a6742ceaf585ae5793d856460ca0b8763d60d06b13eb4bb4436f2071c700e786 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 544dab75cbabb824ebfbe5c8241e1e9d78c070eae7a071aad2b09091f368353d |
|
MD5 | 3bd1b6a20ba6e1a0772fe960d8db7575 |
|
BLAKE2b-256 | 3ae79a7392b44e4f707b5d2070d7917228b82ddda9cdbb3287501982d6d48cd7 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b6fe305641e351deda7a31d4695b19840e56de70c676a73c440fd3e1f068bba |
|
MD5 | 01d26ae2f22d121d739f03859edd6fdf |
|
BLAKE2b-256 | a04a342e123b0faf5b3ce4fb95bd0d8e009728df443b8bdc8c4e01486123be98 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp311-cp311-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ef9a385fb2a0b4e6e39e85e157c81f86f15b477d2630b25f9c0a2d8b7bd5246 |
|
MD5 | 1cc2dbac39fa5d7bdfd0a77d33ec7482 |
|
BLAKE2b-256 | 2263e7c65ed7ce030028dcc0a9bb177c5acc902df13dcce9e73b8686adc3a9fc |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp311-cp311-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c83cb23112119b21e4e89b955b70cc9e4c0e8b55ee342b155065760c8d8f294 |
|
MD5 | bc30e5c7928b2d4b49dc707b0979b90f |
|
BLAKE2b-256 | efc6a09212f36628f4b66a915e7c623a096d02d5785079b8c7843f23c4557957 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1cddb2b30da2e265c0c2eed30ce5b63b044fd554a7d7176a21cedb60583d021 |
|
MD5 | e8b496bb2bf6dca911fb7dbc29fdf566 |
|
BLAKE2b-256 | ab72ab82a938ee9fc7fc1c49e7f3b1b45a2e7ae300862059c34c72a7b650af35 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e111810a8ba9bc6c5cfb228cd968dae2705aefb9aeec7b07c40cf6984121944 |
|
MD5 | 840f4966e19b43c5136170b4c8cc0716 |
|
BLAKE2b-256 | 1c0112177dc7ec6974666ab1d334697734e4a1a343522a29d2c01d436edd55e2 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c6215355c05b182344f73dba26cdc4ad6aa7404d6aacf8e8a63dbadffd53463 |
|
MD5 | b2f99f79f15ef1ee1b2fc73cc7ab08f6 |
|
BLAKE2b-256 | 48f3f572a438d5fb80d0a3ac617ac6d5957b3999fa34a99e0243a8350b11d1f0 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 61a6cfef5f15ce8bcd4d4be8469ffe61e485a7964beb192be10e956d6593a5a8 |
|
MD5 | 2b308348ec41359882ce1009c57794bb |
|
BLAKE2b-256 | 57da3f4c88957213fc660c563087330e81365aeeefda40e63ca19c10cc4f929b |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp310-cp310-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b97a5c141b8832efaf4c0e9afe5f0783bd2fdbfd728dc3bbf6f6f579c7158637 |
|
MD5 | 5f449f65636d3f23fff2bcd4f30f094f |
|
BLAKE2b-256 | fd246a1e71bd0f99a47275154d60a34f70b33cc55375e8004c93017a77ad0a3c |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f82a839f909797d4f5a1e5e49043f94c44d2af84d3c05a51649ce097defc1b7a |
|
MD5 | d611ea48738287671cb94a6adab5ae61 |
|
BLAKE2b-256 | f60988fce19577bfa3d5866341f4438ad6d4cdbcc1e1bd3f202d78332d02dff4 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 638002c6987ea140798a8c430b36c8b127dd7bd0d5bb63c578c16d02d86238c6 |
|
MD5 | 41328d153eb638a45cee6e20567a61dd |
|
BLAKE2b-256 | 0c51db51211e0dcdc6a355531169681e4e90d224d89caf625e8a62e8f57f7ef3 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ae955bdb7f3a4fd122337103f393e82ecb278b9055142892b1dfa2c7883d33d |
|
MD5 | d9e6f3e6b252beabd8b59e2c52814896 |
|
BLAKE2b-256 | 5b3fb50b483af2f3850dfcdf2e6860b03a1e4f00f4b2c72f2daed3d0fca1153c |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b2c48fb2a6f2d201761ed8a4d6f52b84bd1b9e0afd27b2377a54396a0ede45b8 |
|
MD5 | 9f115240f0e3bb0dd84dbaca5e7fd10e |
|
BLAKE2b-256 | 203c23e4cd3e80d00ad847d01eee665c81c546add11c91f6800e7c0d234b8bef |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp39-cp39-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c44ca916512e28cdfc2ca3919f2f9c0d6620c8b4e768981c457a8efb7a86d04 |
|
MD5 | 9255926b154ddf21b03d331731e596ed |
|
BLAKE2b-256 | 5e5e26bc5fffd8c24ef0014dbf9eb4c3abee3d983c51c6bdb297c09eaddf06a2 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35c07d562bc7fa9f3dd83ea61d886cd89d8d9acbf126454662fcf23f8b00c81b |
|
MD5 | 0e433150e78fe83c6d6441cd3935b04f |
|
BLAKE2b-256 | 7cd9a41de40bb1e3e26eb21d2aa7d297841cb94a521c360cbb6e4c3145f8d8e8 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e1551e9a4d8b27c26d7b589d0d9429c22517fcdd57a9d65e572febbc046eaa5 |
|
MD5 | e0a66d0302cd20ac5633a2cd67057022 |
|
BLAKE2b-256 | 401d43f5871d91b3d6740cadbfc337775cf0111e15c8bb60e6f51c6384b2f718 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b670caeaa02cba0a669a2840800a5d2bdab1ad256399a6230c889e3acaf2b4a5 |
|
MD5 | 17590119e015125314be29d21730545f |
|
BLAKE2b-256 | 60e01b46a0d8bdaea44edfe89cda3c269467fae7bc330e27036398db9e676215 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp38-cp38-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6f4e8e241f4c3680534543c0ea64e7504c21dbbe8897f1415d4e9ddbcf9c22e |
|
MD5 | fb5c699c203cb8387a63f941bdce5789 |
|
BLAKE2b-256 | 39fb90cc6d8cfa84d941a49574bc16938fc701268f94bdafc890c024eb95a5e8 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp38-cp38-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28fbecd41d15102f2539fc28bf360de6c565781e0a6316c07a518d09873bda5d |
|
MD5 | c17e5ed798ab2d6d045b79d9283dd32d |
|
BLAKE2b-256 | 5bb6c234ffead0335c3c75f861a89b2ea1857ae1861d0ca938bfb6ffd932a921 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ecc4eef63f8948a133962c31e89bcab3aacdcdba71a1a17f0ba4e399555e7eb7 |
|
MD5 | 126a7572c724dbb2d4fdc25485bba629 |
|
BLAKE2b-256 | d1be25bb42c74ee0d592c14b841243a953d62012aeaba4c5f9580b905bad34ba |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405111715182293-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6c57ea2758398eabd43ea9c4ebacfd4f7d89045b0f05f0c8b91b4ad135de8cd |
|
MD5 | f93d45016d867acea2b046589d238a4b |
|
BLAKE2b-256 | 9690e4c0120dd60e72268bd67c70b4da7679e222df2155bf541ae9fd11008b7c |