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.dev202405291715182293-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f950fb6f19fa7f16f9e3e9d078b8d02f9d3113a782832a7a5729ce13cdce8f0f |
|
MD5 | d8b90866ba604228fad442b9b38c85bd |
|
BLAKE2b-256 | b8b2dcdebd17b5c93768bc9cf398342fda3f72a4d2ebb47f041547c3bf2612d6 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp312-cp312-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d320f845f299ba8a1b3ab311360f2dabb52f2c4c79ea5480770bcf162bbbcf82 |
|
MD5 | 391b9d202d407ff73bca0103324df4b4 |
|
BLAKE2b-256 | 7ac1f558c15b6111edb20c7b5589a7ad1b5a15145c8fbfffd7c82930e0bd7672 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp312-cp312-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9b9e9d2d1e31a5ba329f2e3929480d9810050332514fec8d3bdcc8269c226aa6 |
|
MD5 | e74342b100880ba02bad9fbe0b64d1c8 |
|
BLAKE2b-256 | b52a33c59289c973ac539324fb305d88e8d87d955bcebc7b0b4f6b1fdb564da4 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 298642023f53e468f7ccbfbfebd6c916a5d271fbffa9a95a110e65839a149e72 |
|
MD5 | 37dab3ece610c946d1d8dde4a89731c5 |
|
BLAKE2b-256 | a590c614b44e47c5a6f5b0ac57ef088dd077f48828a5d638058afb59328b52eb |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1cce3e8a33e37e0f4a2be94d9d82224171858270540b092082dc46aab7f5d25e |
|
MD5 | b10266b866de99616bab81cb4b5141f8 |
|
BLAKE2b-256 | 635d922727745b7bae4449b6fc7e1055db3cfdf65a00aafe111782ee26669032 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3c23e99dae5e4d3e6d23b53a978c385dedeb7cd890f6b31b5b30d3c2b4d544b |
|
MD5 | 45ca4a5b20240021ca9372c53c3dad62 |
|
BLAKE2b-256 | b5fd9c82d485d68e9eff24638b90aee870bbd2fc18ea0a812b1a301f932537b2 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp311-cp311-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3d28ee5c25b1959f0da6ad316f952861a1a3bdab5c6b7fc7647a12c6a046070d |
|
MD5 | 4d7367e1ece3af652a96efd18468284e |
|
BLAKE2b-256 | ab67fa109ce12c137a57fe6cf62c931ddea71b2db1738a82581622e2e2ac544b |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp311-cp311-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 567f071cc410c745b622a712da9e36911c71e250ae7f99c9c0d1a11b4c12738a |
|
MD5 | 1cc1cc5851c67a730113e82b46c90216 |
|
BLAKE2b-256 | d6b990f435d49bd16e497c6a146c106d8bd804032cf788f46f362ca896060ceb |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 339934a81669376df77f1721be4ea4cd0a658977634f1c58360474eb059a070d |
|
MD5 | 44b2c2fcb8cdff95cd80d4e46a1c8ccc |
|
BLAKE2b-256 | 1582559c3909d0e7876a50d693ef079208a5c5ef8bda3cdff66ccc510273d4e7 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c9e2eab5dbf8b1677bde956928612ea7b534cdeabb56e337c8abbfdc3995d752 |
|
MD5 | 2145ac0bd784998bc20530ae562bb89f |
|
BLAKE2b-256 | 11f724290d9b94b8dfd70a705d77988200e36bb803256b23ecd01c9ab9e24cbb |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3d81ed4deb57528c88fa08a890b7f2c401e4f07743473350a87ed938ab9c662f |
|
MD5 | f9d56ee90088002c013a847f79d61a66 |
|
BLAKE2b-256 | 5677e9ccc6b82243fa6f90984d120cb59f8953fbe855f08f745cecc2c59fe0aa |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1277339ebee60558c405cdfdcfa272f54619ee2826864e018ebb879063e71c90 |
|
MD5 | 7c6be7259d414e9de974511d182eff7f |
|
BLAKE2b-256 | 9072e751387daa900df49764b11987a56679c198562cd37fc9f6b95d5396f6fc |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp310-cp310-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a47509aad625e720b49b85cf56ab385ab193d79dc1d79b86d9ff84326d07072 |
|
MD5 | 06bcb0cc901aae77fd79e7205373f6ec |
|
BLAKE2b-256 | 016e73bd705cc53e097e3b81f98f46968501cca7ec52916381bf916db55ef0c3 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9b5f60346d3d28799be2c241a686c39fec6de7df4e7c0fa46f81c635e2974ae6 |
|
MD5 | 0041bc7944e56dda214600d938725ad0 |
|
BLAKE2b-256 | 1611e58c1101c90edadc0ed6d2b53fada217df25257c52a18d5cb4aa22671675 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8d383588a966e143bb409d32724a02b887bb99d38f1678e326aca632dfca413 |
|
MD5 | 0d2b74266377a796500d84d4f1e0b678 |
|
BLAKE2b-256 | f7d4d677d461bbcfeeae1817e8fc87f80e05f69e45a73d2745813b7f5f7796f6 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e663fd5a4f76299799b792a8ef0e96eb1046737d75aa580bd015a56bb88ad27 |
|
MD5 | 44307ed21fccef8033d2433d77341cbf |
|
BLAKE2b-256 | 23f39677f99c908f3beb7c930aa4f1e8cb9cca2c76154609878c03d26e1f8103 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d65ae0d1d9fa52cffff7b767f09d2ba6919e4fc6a8476a68352b8cdc8b33f455 |
|
MD5 | 17f3fc989c76cf74680b56aef7bc142d |
|
BLAKE2b-256 | 69fff989a4393281b33c4102720ad537eebd02f8acd9511a8156f3eeea9c4b54 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp39-cp39-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe4517e59b61879b1dc5b97813fb416a3c715956fc5a0056e1fcf5948c6c37dd |
|
MD5 | 78d891e8b7aa962787536c208716413e |
|
BLAKE2b-256 | 4c1ad58279a0e8c752f9bae9cfbb5a7375c4b7b053cca5af0d0ef27351c1fda9 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6430cf658f46302542f21dc19beaf8a56f7abe9e07d1b39818fe310c860b9800 |
|
MD5 | a07e610a773f1b523f450f920be8d9d0 |
|
BLAKE2b-256 | 4cc311dbe6ae9e683c743f7de66eecd403ab6c4f82090f0450cdd4798cad1058 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | added6185e918be407a6d502895d8afdc3c55d598e760211538ccffecd641cec |
|
MD5 | e490e003d8bc4821214be54ce5b70c96 |
|
BLAKE2b-256 | bb40731339749412ac0280521aee27ec831e95e23e37c2f2936ebcca99fe05bc |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9bc17261399ec4340afc9c3b134376fd7303c2e4db76bb701dbcf38ed267baa3 |
|
MD5 | b799f53cf50612b9ca5fb5bfc01f5b18 |
|
BLAKE2b-256 | 5617db03d91e7773430057ae3885f1d4a673b053e5d9521b7604b87bde3303c9 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp38-cp38-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2fe12c851f9fed5486586d6c937067cd0827701d707d60df0a4ec0e67eb38221 |
|
MD5 | f4a91cccafbca6f0103a2a3bf2665c6a |
|
BLAKE2b-256 | 7e0e01cd27f42f301e7d882d08d294a3db299743fb0166bdb834c43785c92f4b |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp38-cp38-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 39373307f2e7b5ec34aef0304f7120d43a446e56f11596f726b9a9753d64da74 |
|
MD5 | 47fbbeaedbea0d97408efb94fb1cec32 |
|
BLAKE2b-256 | b9d3fe31a0d17662f3fc773481706254dcecdfccef0ea7473fe35829f5eb9345 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6957c4e2879cccee0db56945981efd3542d70f36d3ab4ea666ef910506651a6b |
|
MD5 | adce504d828be326ed28a5a9e22c21a1 |
|
BLAKE2b-256 | b3b1e16d7541698abbb552fe1e4036da9e5e70db4576ed4fab0edd5d0988264d |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405291715182293-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f614067beb7ca7bb799a3ba2097ebe732c18d444996961546ecd068dc833d7f7 |
|
MD5 | 78071d4822ff051b8a569cedd8bde5de |
|
BLAKE2b-256 | d7a17e7fd5179c0cdf70434638fe767a3d3d2d3976954655793a2c89bf85e1fe |