This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: CS228 Programming Assignment #1 1 Stanford CS 228, Winter 2011-2012 Assignment #1: Introduction to Bayesian Networks This assignment is due at 12 noon on January 16. 1 Overview Welcome to CS228! The goal of this rst assignment is for you to gain familiarity with Bayesian networks and to understand how we might compute probability queries in these networks. As such, this assignment has two parts. In the rst part of the assignment, you will use the SAMIAM package to design a small Bayesian network for evaluating credit-worthiness. Then, in the second part of the assignment, you will replicate some of the functionality in SAMIAM for answering probability queries in the network using the factor operations discussed in the lectures. You will test your implementation on the network you designed in the rst part of the assignment. 2 Engineering a network for credit worthiness In the rst part of the assignment, you will design a Bayesian network for the purpose of pre- dicting credit worthiness using the SAMIAM software package. 2.1 Using SAMIAM SAMIAM was developed by the Automated Reasoning Group at UCLA to provide a graphical interface for manipulating probabilistic networks on Windows, Linux, or Mac OS. It has extensive functionality for learning and inference in probabilistic networks; however, we will use it only to manipulate a network and view marginals. While we provide the program as part of the assignment, you can also nd the program and more information at this website: http://reasoning.cs.ucla.edu/samiam/index.php The SAMIAM program can be found on the course website. There are separate les for each operating system (Linux, Windows, and Mac) so just use whichever is appropriate for the machine you are on. SAMIAM relies on Java, so if you do not already have a Java runtime installed on your machine (or you receive errors that no java executable is found), you should download one from: http://www.java.com/en/download/ The network we will use is an example network for evaluating credit-worthiness. Load this into the program by going to File, then, Open, then opening Credit_net.net. When constructing your network, you will be using Edit Mode to add edges to your network. To engage Edit Mode , go to the Mode menu and simply select Edit Mode ; if the option is greyed out, SAMIAM is already in this mode. To add an edge, go to Edit , Add Edge , click on whichever node you want to be the parent, then click on the node you want to be the child. CS228 Programming Assignment #1 2 To change the node's properties, double click on it. You should only change the CPDs for the nodes; all other properties should be left the same, as changing any of the other...
View Full Document
- Winter '09
- Bayesian probability, Bayesian network, Chow-Liu tree, graphical model