Skip to main content

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-2024 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.

Authors

  • Pierre-Henri Wuillemin

  • Christophe Gonzales

Maintainers

  • Lionel Torti

  • Gaspard Ducamp

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

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3086b251e289b8481687caed63b3d1b9bd8b3e3a0153e74af8154d5808233fee
MD5 b34a4efa3b1d09a9b3c12d2a731bc51d
BLAKE2b-256 0c39acbbfb7f31308deac84e950551b20a3d437a9e678eecc8d9fb4dbbc08dcd

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 29d68e8194ec94e0693667b812d005ca58b55388a4a596cc1259370e42d70e3d
MD5 bdb1ab482a44a84e51510cca4d26a478
BLAKE2b-256 3578d4ea0d769ae6372de5253f1eda700ae3715c75a523be57a2c010350bde34

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dc111d49c46da87c709aaca730b9114be479499cc0fb4558cd1598ff67c51cd0
MD5 2976936f692aa73e3edf87bdcd2f4c3b
BLAKE2b-256 f02ae1a4c9abaadd1a865133930e2b32928d2d88c94b40ba6a2294f6dc619cc3

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f9a8dd95a6a646ea79844fb077e52ac808bb945cf572906cc8b33df080f21a68
MD5 528a587149e177dff71cceb3252be483
BLAKE2b-256 415e1db397cbfddbbbf9ff8cc96a0a910f66db53eec1e224c59a98d948b8a6c7

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a3d9a2c555b1d282927df2f26478a2e0601cc93ca6d9c17b723d21a65770d634
MD5 a1eb2950351bdd0ba108c3f3dab17b21
BLAKE2b-256 8a8368f2bbf47cd2fe90168d409957f165d0f64979c2b6e91e8504c07c62adaf

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b23c60e36289eb71197e99806917966bd81f1dfb2e9a0230b9be6d3ba522d221
MD5 f4f31af8326800b6a3a90e0c25f06700
BLAKE2b-256 97e5e8fe96dbdad0bcc7a57134d7be5f87d73c147f6cc00a890fd364a3736b16

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 98ce1f3f2ddb7d1524b8c3c4ed76903dc25910266e10cd03c8cbb3d2c8f13f7a
MD5 6c0d47c8122f8ee46dcf86dfc256b7e4
BLAKE2b-256 3134e5f32e7fc9a369fe8e60875cc53dce893a8bc46d50636a66607c6ca22294

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9c4a8b26a041cb76a6616fdffebcbdcc0826c535a6386110db39eec0e5e91ce2
MD5 84eca5f78b8ffd3871eda8a493df2452
BLAKE2b-256 6074e6e88aadb513d7acecf8839cfbf3d56587319b2edf6974aaa9366870acdb

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 864f5e670eda511941bae80eeeb3a0fa20f070d6b7488d185cdaee10d3cb31bb
MD5 196005192311bc24f2080263b0a02141
BLAKE2b-256 00706167b97df43f06320d8f00e1e70cb99b2ed52b1a78a87d3f0fb4d9fb886d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 55c2a63a88c99f44a126b9c32a0830ffb6a836a052b58345b12c35ed77796c65
MD5 a6540041bec1ab79351d615c3355d0f6
BLAKE2b-256 2b24f1854e9cb25097c537444741b72eeae6f86fdb524a2cd2a2d9189ff29d0d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6d39c5385c8fa213e622cb2663d47df76ed21d90f37f00bbbf979d5a78202d0b
MD5 f4a9efa6f1522b2b6a8d62dbcc4ffc7f
BLAKE2b-256 dfaa4b79226f7f53da56f1cd5d316adff38bbcecc2e5f15f7791696be8c2e123

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1546c15c09940787c24bcd5ae061cda8c46abaf852643725e59ec3987d331179
MD5 ee01d13ad424f494ad7dc475c2839c5c
BLAKE2b-256 82362c604e6cb1fd275b6ceea40ca2b589cc439c43b806db708f9b239f1eb9c4

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d4f8590d4419450fdb3b2b43760137414f4fc4945caf3f70f0958f12ab9a5f9d
MD5 d0afcd3118f49b24662b477f3f53976b
BLAKE2b-256 9a69974836669dd7ee2c86aff25171bfb240cc596f190ccfba09cdb36004aca4

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0042ab62e1273b4fdebc1c1ab73beb972181b022c3c2c873bebe0eeea5527f4f
MD5 3c54b648f0906fc087736c77046e0177
BLAKE2b-256 aeb29c60bd43ab94852dcf83f2b44998ba5130e2bdaeef9a8cc276a34c36de35

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 265e1cd44662e92d230f42ae90b3b5a0c41eefd41974b4b1654d771c57021e07
MD5 b22603363e21f344f35fba25447f3ce7
BLAKE2b-256 37fc29479d8782278db1cf56d7a1c2925a548e039649de3ce689e4979d672bf6

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 efe963762894a9a1dc3fc454212eb3753045f81862bf629adc23ed0353ad3493
MD5 616bc183d79ef68861ae3dc58b5a0f23
BLAKE2b-256 aa87d9da1fd3e3d8775beebed4672790da3a722dd042e2419785c87dd355a6fc

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4303a54ed72f8869fe5cc733a70f6b25556f9dad979369ed4f985c820b934b5d
MD5 28f4ec4474ccd181d53bbb6484ec74cf
BLAKE2b-256 745e3978e10300eb30615be96212bc45d8f1d13c664ed76b1976f691d2ac9459

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ce72e243fba7085dd64f66bd9b9afaa6528d5b98ad78943de70a7cdd5ca6a71f
MD5 9284a1ed748ac1423b8606d93663ac23
BLAKE2b-256 f4931b70c5deb5393cbc439e0cad8b376455c7808f7d832ad8c808173d0765c6

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 781b6aca1ed08840738ca351fd5bc4a7e8e98144ce45caae5f31dfeffa49c8eb
MD5 23ae8e72921ba28bbfb8c65702e091e5
BLAKE2b-256 40635c29d7dc8ae7dac0690f23d0d25c7d9bc81da9abb4aaac105ed30138b85b

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409241723794729-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1e7331323fd17d17c793cd66a7c62ddf9dc6f22b70219af0fbfff0add1f561d3
MD5 8e932fa0b74653bbec2ffe0e33e92cb3
BLAKE2b-256 2903d5a800c20bd2ff43b09ac1cbf766d47a3188450e2a330a41f711e3ba2fe9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page