CS322 Fall 1997
Assignment 11

Due: 1:30pm, Friday 28 November 1997.

Question 1

In the file ~cs322/cilog/dtlearn1.pl is an axiomatization of a decision-tree learning algorithm. This works with the data in the file ~cs322/cilog/dtlearn_t1.pl, and produces the tree of Figure 11.3 of the textbook. This uses a complicated procedure to determine what is the best attribute to split on. In this question, you will look at what happens when this procedure is changed.
  1. Suppose you change the procedure select_split so that it always selects the first element of the list of attributes. What tree is found when the attributes are in the order [author, thread, length, where_read]? Does this tree represent a different function than that found with the more complicated selection mechanism? Explain.
  2. What tree is found when the attributes are in the order [where_read, thread, length, author]? Does this tree represent a different function than that found with the more complicated selection mechanism or the one given for the preceding part? Explain.
  3. Is there a tree that correctly classifies the training examples, but represents a different function than those found by the preceding algorithms? If so, give it. If not, explain why.

Question 2

Suppose that in the output of a neural network, we assign any value over 0.5 to be true and any less than 0.5 to be false (i.e., any positive value before the activation function is true, and a negative value is false). Given the final parameter settings, of Figure 11.7 of the text, give a logical formula (or a decision tree or a set of rules) that represents the Boolean function that is the value for the hidden units and the output units. This formula or set of rules shouldn't refer to any real numbers. Hint: one brute-force method is to go through the 16 combinations of values for the inputs to each hidden unit and determine the truth value of the output. A better method is to try to understand the functions themselves. Your meta-interpreter for parameterized logic programs may help here.

Question 3

For each question in this assignment: how long you spent on it, was it reasonable and what did you learn?