Sensitivity Analysis, Modeling, Inference and More (SamIam)

Category Intelligent Software>Bayesian Network Systems/Tools

Abstract SamIam is a comprehensive tool for modeling and reasoning with Bayesian networks. SamIam includes two (2) main components: a graphical user interface (GUI) and a reasoning engine.

The graphical interface lets users develop Bayesian network models and save them in a variety of formats.

The reasoning engine supports many tasks including: classical inference; parameter estimation; time-space tradeoffs; sensitivity analysis; and explanation-generation based on Maximum a Posteriori (MAP) and Most Probable Explanation (MPE).

SamIam features/capabilities and tools are:

1) BatchTool - BatchTool is a command line interface to the reasoning engine of SamIam. The BatchTool allows users to execute multiple inference queries programmatically, without the need to invoke the graphical user interface of SamIam.

BatchTool requires commands to be specified in an XML input file, and will write out its results to an XML output file.

2) Code Bandit - Code Bandit is a tool that writes smart sample code for you, based on settings you configure in SamIam.

For example, if you need to use the manufacturer’s library to build Bayesian network models, Code Bandit can write a sample program that shows you what methods to call.

Code Bandit can also write programs that demonstrate how to execute queries, like Pr(e) and MAP, on existing models. Code Bandit is intended to make it easy and fun for Java programmers to learn how to write code based on the manufacturer’s inference library.

3) Editing Models - SamIam provides a sophisticated graphical user interface (GUI) for editing Bayesian network models.

The interface provides support for editing tasks such as: copy, cut, and paste of network fragments; zooming in and out of networks; and functions for routine CPT operations like parameter complementation and normalization.

The interface also includes two (2) additional tools that appear essential for working with large models. The first is an ‘instantiation-clipboard tool’ for capturing, exchanging, saving, and loading variable instantiations.

The second is a ‘variable-selection tool’ which allows users to define Boolean predicates over sets of variables to facilitate the reference to variable-sets when building and reasoning with large models.

4) EM Learning - SamIam supports the EM (Expectation Maximization) algorithm for estimating network parameters based on given data. SamIam adopts the “case file” format of Hugin for specifying data as a set of cases.

SamIam includes utilities for generating data randomly from a given network and for storing this data in case files.

5) File Formats - SamIam exploits the capabilities of the SMILE (Structural Modeling, Inference, and Learning Engine) library for loading and saving Bayesian network models in a variety of file formats.

By integrating the SMILE library, SamIam can read and write Bayesian network models defined in six (6) file formats:

6) Inference - SamIam supports a number of algorithms for inference in Bayesian networks, including:

7) Maximum a Posteriori (MAP) - A MAP-based explanation is a most likely configuration of a ‘specific set’ of variables given evidence. This type of explanations is more general and more difficult to compute, compared to MPE-based explanations.

SamIam supports both approximate and exact algorithms for MAP-based explanations. According to the manufacturer, SamIam is currently one of the only tools of this scope which provides a comprehensive engine for computing MAP-based explanations.

8) Most Probable Explanation (MPE) - SamIam supports the generation of MPE-based explanations.

An MPE-based explanation is the most likely configuration of all network variables given evidence. This type of explanation is a special case of MAP-based explanations.

Note: MPE-based explanations are much easier to compute than MAP-based explanations but may Not be adequate for certain applications.

9) Sensitivity Analysis - The sensitivity analysis engine allows users to specify constraints on network queries and will then identify minimal parameter changes that are necessary to satisfy these constraints.

This functionality is essential for model debugging, which requires an understanding of the relationship between local parameters that quantify a Bayesian network, and global conclusions drawn from the network.

According to the manufacturer, SamIam is currently one of the only tools of this scope which provides an engine for sensitivity analysis in Bayesian networks.

10) Time-Space Tradeoffs - The time-space tradeoff engine of SamIam allows users to run inference queries even when the Bayesian networks demand more memory than is supported by the given platform.

The engine is also able to estimate the running time of inference under any memory constraint.

The time-space tradeoff engine of SamIam is based on the Recursive Conditioning algorithm. According to the manufacturer, SamIam is currently one of the only tools of this scope which provides an engine for time-space tradeoffs in Bayesian networks.

11) Timing MAP - The manufacturer has made it easy for users to run timing experiments on SamIam’s MAP calculation. If you plan to report empirical timings, the manufacturer provides two (2) alternatives: Batch Tool and Code Bandit.

The Batch Tool automatically includes detailed timing information as part of the results of an approximate or exact MAP query. It breaks the time to calculate MAP into three (3) mutually exclusive tasks:

For each of these chunks BatchTool gives the system elapsed time and a thread profile time, if available.

The Code Bandit writes an example Java program that calculates MAP and reports the same timings as BatchTool.

Short prototype code demonstrates clearly and concisely how to include such timings in your own Java programs that call the manufacturer’s inference library.

SamIam Documentation --

The manufacturer of SamIam provides an extensive ‘On-line Help’ function.

System Requirements

Contact manufacturer.


Manufacturer Web Site SamIam

Price Contact manufacturer.

G6G Abstract Number 20740

G6G Manufacturer Number 104326