Let's now look at the sample output that is emitted from the recommender utility (per the source discussed above). The source was compiled with DEBUG disabled, so the inner workings of the ART1 algorithm are not shown.
The first element emitted in the output is the actual clustering of the feature vectors. This shows each of the prototype vectors (that represent the clusters) along with the member feature vectors (see Listing 3.8). From this data set, four clusters were created, even though five were available.
ProtoVector 0 : 0 0 0 0 0 0 0 0 1 0 0 Customer 0 : 0 0 0 0 0 1 0 0 1 0 0 : 0 : Customer 7 : 0 0 1 0 0 0 0 0 1 0 0 : 0 : Customer 9 : 0 0 1 0 0 1 0 0 1 0 0 : 0 : ProtoVector 1 : 0 0 0 0 1 0 0 1 0 0 0 Customer 3 : 0 0 0 0 1 0 0 1 0 0 1 : 1 : Customer 8 : 0 0 0 0 1 0 0 1 0 0 0 : 1 : ProtoVector 2 : 0 0 0 1 0 0 0 0 0 0 0 Customer 2 : 0 0 0 1 0 0 1 0 0 1 0 : 2 : Customer 4 : 1 0 0 1 0 0 0 0 0 1 0 : 2 : Customer 6 : 1 0 0 1 0 0 0 0 0 0 0 : 2 : ProtoVector 3 : 0 0 0 0 0 0 0 0 0 0 1 Customer 1 : 0 1 0 0 0 0 0 1 0 0 1 : 3 : Customer 5 : 0 0 0 0 1 0 0 0 0 0 1 : 3 : ProtoVector 4 : 0 0 0 0 0 0 0 0 0 0 0
Listing 3.9 provides a portion of the output of the recommendation utility. This applies textual names to the items represented by the feature vector as well as the resulting recommendation choice.
For Customer 0, The best recommendation is 2 (Snickers) Owned by 2 out of 3 members of this cluster Already owns: Kit-Kat Heath-Bar For Customer 1, The best recommendation is 4 (Pen) Owned by 1 out of 2 members of this cluster Already owns: Paper Pencil Binder For Customer 2, The best recommendation is 0 (Hammer) Owned by 2 out of 3 members of this cluster Already owns: Screwdriver Wrench Tape-Measure For Customer 3, No recommendation can be made. Already owns: Pen Pencil Binder
In each case, the ART1 algorithm correctly segmented the customers into groups based upon the items that they've purchased. Customer 0 was placed into the " candy " cluster, Customer 1 into an "office supplies " cluster and Customer 2 into a "tools" cluster. Recommendations follow the groupings that should be a good prediction of the customer's buying habits. Note that no recommendations could be made for Customer 3. This is because this customer's feature vector was the same as the prototype vector (no dissimilar elements), which meant that it had purchased all items that were represented by this cluster.