Bayesian Networks in Scala
It is a Scala library for Bayesian Networks and Probabilistic Graphical Models. It allows for defining Baysian models and performing Bayesian inference in a number of ways:
- DSL - This is a high level api for defining Bayesian Networks.
- Factor graph - It supports discrete and continuous variables. Inference is performed with Expectation Propagation.
- Factor graph 2 - Different (newer) implemenation of factor graph.
- Cluster graph - Supports discrete variables only.
The bayes-scala-gp library for Gaussian Processes is built on top of bayes-scala.
Links
- Some code examples for moment matching, linear gaussian, linear dynamical systems, EP, etc.
- Can you please clarify for us: what is the future of bayes-scala?
How to use it from sbt and maven?
Release version
SBT configuration:
libraryDependencies += "com.github.danielkorzekwa" %% "bayes-scala" % "0.6"
Maven configuration:
<dependencies>
<dependency>
<groupId>com.github.danielkorzekwa</groupId>
<artifactId>bayes-scala_2.11</artifactId>
<version>0.5</version>
</dependency>
<dependencies>
Snapshot version
Snapshot artifact is built by a Travis CI and deployed to Sonatype OSS Snapshots repository with every commit to Bayes-scala project.
With sbt build tool, add to build.sbt config file:
libraryDependencies += "com.github.danielkorzekwa" %% "bayes-scala" % "0.7-SNAPSHOT"
resolvers += Resolver.sonatypeRepo("snapshots")
With maven build tool, add to pom.xml config file:
<repositories>
<repository>
<id>oss-sonatype-snapshots</id>
<name>oss-sonatype-snapshots</name>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.github.danielkorzekwa</groupId>
<artifactId>bayes-scala_2.11</artifactId>
<version>0.7-SNAPSHOT</version>
</dependency>
<dependencies>