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.
This can be found by changing the definition of select_split to:
The tree can be found by asking:select_split(_, _, [Cond|Rem_Atts], Cond, Rem_Atts).
cilog: ask dtlearn(user_action,
[e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15,e16,e17,e18],
[author,thread,length,where_read], DT).
Answer: dtlearn(user_action,
[e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14,
e15, e16, e17, e18],
[author, thread, length, where_read],
if(author = known,
if(thread = new, if(length = long, skips, reads),
if(length = long, skips, reads)),
if(thread = new, reads, skips))).
This tree represents a different function than that in Figure 11.3 of
the book as it classifies an example with
author=unknown, thread=new, length=long as reads whereas the tree of
Figure 11.3 classifies the same example as skips.