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.dev202405311715182293-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 292895cd00f37d6128a8a1393beb97d1eb3190b5dda14f1c457f4d145724653d |
|
MD5 | f775273f6cefc662b681eb6d698e3aae |
|
BLAKE2b-256 | 5a006ad314840a83fa3c959756cccd3857a87555a84a502d7f2f73b38d7cf0ca |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp312-cp312-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9378e9eeaf4b199ac754d6cdb98ef2173d44a7ac9c292b0870589144d538d65c |
|
MD5 | 25b0212add2b557b023f410e8ab19f01 |
|
BLAKE2b-256 | f99046b4cc7e9dbbfecd9bdb503537f02795e4c8d5a9f6a8a740d753efebaac8 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp312-cp312-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 05415b99cc67b37dbba3e898d9ad56cf092d3bbaf8ce76859a8aa164766d6546 |
|
MD5 | 4387f9c7f9ad28c70d8d3ed57399ae94 |
|
BLAKE2b-256 | b923c2462dd61b67a35cc09c47316ff0c94c8c25eeb9e3af78c41d575ce4dceb |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f1394dc70d42382ab92f0a3815accc00598333b07278ca32c4ed612b3523dfa |
|
MD5 | f38f985a4275fffa5a324bfe76303fc6 |
|
BLAKE2b-256 | add00e92375ce804b4fb7f1df3316b869fbd912bb18db2280997e017d292d47e |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e916e7f4d16732b319a4af205af0851c6c8ceb9986d5a94b2aef06540eba623 |
|
MD5 | 952b93d388c8fc1ef1da049a9dc3a99a |
|
BLAKE2b-256 | 640aa0ebe1caa3b2ddd980ed4a4250b128d5c129f6fc6511d149db25f43e14bb |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 02f90758a9198047bc768326bfd1d2f64af17ba0c0f23da197fcbaffc075b177 |
|
MD5 | 5c439c0d1b9e80fd78577d92fe74712d |
|
BLAKE2b-256 | 8a61811dcb0aa54eb11528966ace41fde3a2f88bf880c6dd1097ca245b75ece1 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp311-cp311-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c578ef2f560468cebc5d6bf2a87044cd14f8a1d09b68d94bfbf00488d3c4e316 |
|
MD5 | 428fcf6d439b9ee3b0b7b7d57ca72f55 |
|
BLAKE2b-256 | fde75c7f1f9efe46b6814897077c2d0a75512836336616c7d36c7ba83e64d524 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp311-cp311-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d634227d2aef666c81393ba7a117fc8eabf6e6df1930563b131aa668b3937d6c |
|
MD5 | ea8cdae49cac63442a187388c168a4b0 |
|
BLAKE2b-256 | 7466d462a2b6aed9194926578977c63228436f073eb654c7e5cbe6a875c6325d |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 340a6c4b4bbed1b3a4e61a3ef3a77c324c166e32cf65893fe0f745fcb73c8cb3 |
|
MD5 | 4763959ef1354e2d27313066aa31857f |
|
BLAKE2b-256 | 9a528bb332cd91d1e77153cb5c6ec7afc328136bb89e138a5e64b9397ec73114 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18a3bcf9c0885d1435e609f02cd1468f73060a9cda56cd2eff97e6f93aaba426 |
|
MD5 | 3b1b4782bfeb9b6373f12648acd174a7 |
|
BLAKE2b-256 | 3b94422c542dfa7d4964a315b4b9787071ab685eb252b3f08a1bb08c5f345f3e |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33546ce7d1daa9fd4c2f50c4afced75863f5f039c0d31a9bf2cf5ac1ab08f474 |
|
MD5 | 0a0efbfb08d83dbaf6ba7ec36f683ade |
|
BLAKE2b-256 | 63d38c7ce83e402a9ce710383a939f81dc3a4a8963a1be277c87c9f529796e30 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f85b655f9e28c4562b420bf161b768cc6c8c14fd4498e2a568e10afbfc94d36 |
|
MD5 | 56106f9eb1e089709571056320c49e61 |
|
BLAKE2b-256 | e1e045eefff5d4b74d19b3d78d1aa3719db0d64687c36469371f10e3a7021e7a |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp310-cp310-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dcd222a7e017a6021417edf04a56402e5799b75b7bc727ec246c342ae62d91b0 |
|
MD5 | 09b9b2d0b0915a0f212ecf8bfb9bdf07 |
|
BLAKE2b-256 | e49b058ecee80489d758aef7eb72aa71321497001dcece0c62ee6479ee51f634 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea02d4a44fcd9656898a267cccd639ada25e0c83e2eebe9403659fa707cfd26b |
|
MD5 | feb81237c3d3a7841c9ec503dcc4d121 |
|
BLAKE2b-256 | 1257a22f8ba30e62e01759cec20cf9727680ba0bbbf1ea388747c2554ab7f980 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ae95c63c5a4f5f8e92da9dbdc72f19a4514b3d5da14595bc6f0056174dddfba |
|
MD5 | b7d9f4194a05da13afee164b60afd5b0 |
|
BLAKE2b-256 | 6158b0d71eefe88118e858a407f3cd61c6bd4c2f2288ed2d1c6e46890807598a |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41941fcf61fe3d55b76274d4cd4092656e16a11b650b4a65ea62a9d602ceee47 |
|
MD5 | 10675759c86cb88c84ab0ce07f3a6660 |
|
BLAKE2b-256 | 6820e6b26f54d5cbb825d66cb0eab5d259c5f97b8e29db99923e3a7f6e070fb8 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 86486e8ff53bb0e83bb29e76722d9e97955712da5ce4bc316c0430ca77264403 |
|
MD5 | b851045e15af5841991bfb4b14169cf8 |
|
BLAKE2b-256 | 1c099eb49e31b63b40ebb592984ed8368a7e4488df82d7c5363899a9996276a2 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp39-cp39-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbc9f501e529c042e7d56721e7b7b1951e259e2ddeeac31d417d4aa59f04cef8 |
|
MD5 | 73a3380eb90939c2b17d01fb3f3c817b |
|
BLAKE2b-256 | 37a472a6ae136c8abb456716c3b96bbb4415533558ed9462c55c8f73033e8acd |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a5dc6ee1cbff239e7e6862164a0224c5be0f2275fe042e707d0c2330d7557ee2 |
|
MD5 | 6ba717bb74e48400ed84a621f33c8b99 |
|
BLAKE2b-256 | 3a90ee4227a030c88518f07de412dbb5950850dabf4c3ca989eba174924b838d |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1364b063a3a36d488e371d9492f0a94f5b794271d8a70e5af80a3b45e713276 |
|
MD5 | 764dabb043d8bf7ea76aa24c04cca711 |
|
BLAKE2b-256 | 8159988f930cffacf6e238123be16e362d41cceaf15d8a79d4c52802610add63 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2670652c4bc99d45b5d36067743ab62812437dff16bd86ee406145bed1df0842 |
|
MD5 | ac6b9bf37ec5aae5283b4ee9527085e6 |
|
BLAKE2b-256 | b87284adbcaaef30105a08b566e66504ba3b9062e85915dd118b886ab47caefb |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp38-cp38-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb6cec9d45fbadbe763ad688911435fff300edbd98942880c5a44bac7ab4e948 |
|
MD5 | 2e895fadc981a0ec017e6fb1ff14b527 |
|
BLAKE2b-256 | a428ad2ad02865431f525e2fdf583ea85e0c5c476823d1d84a9d389832802a69 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp38-cp38-manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d89d8b4d124c4903af0586f2e36c53dba486e68e8c06f025e9bc03b7c99d737a |
|
MD5 | b53edfc8e1762aad10b4695b50c2df4b |
|
BLAKE2b-256 | da242f4a7a91d81690a65ceaa4f55561efb74e249ebfaae54982b81a89ba9290 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7dde2ced0d88abcadc31d5c26941d54ef8d73cd8b840e1279de4defdc970ed98 |
|
MD5 | 73412f22dea2e816037ee38f3d812705 |
|
BLAKE2b-256 | ed6277a13a188902ddfee81bf9ea11fdbbd0d2e6dc784161a3797bca6bb14bf8 |
Hashes for pyAgrum_nightly-1.13.2.9.dev202405311715182293-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1e7986e964dd27b43475e383d8f922e98123f5cf8153375ffc4dcd934d3898f |
|
MD5 | 43f20b056715dc131a967d2d3b96ec3d |
|
BLAKE2b-256 | a43783c0a8d277f6204ae5eaa34bf05b62d6fde59a5ed9a468db138c4413cb6e |