Eager, Lazy and Hybrid Algorithms for Multi-Criteria Associative Classification

Similar documents
Structure of Association Rule Classifiers: a Review

Improved Frequent Pattern Mining Algorithm with Indexing

Associating Terms with Text Categories

New Parallel Algorithms for Frequent Itemset Mining in Very Large Databases

Parallel, Incremental and Interactive Mining for Frequent Itemsets in Evolving Databases

Using Association Rules for Better Treatment of Missing Values

Temporal Weighted Association Rule Mining for Classification

Efficiently Mining Approximate Models of Associations in Evolving Databases

A SURVEY OF DIFFERENT ASSOCIATIVE CLASSIFICATION ALGORITHMS

FIT: A Fast Algorithm for Discovering Frequent Itemsets in Large Databases Sanguthevar Rajasekaran

A Conflict-Based Confidence Measure for Associative Classification

An Improved Apriori Algorithm for Association Rules

Maintenance of the Prelarge Trees for Record Deletion

Mining Quantitative Association Rules on Overlapped Intervals

Combinatorial Approach of Associative Classification

A Novel Algorithm for Associative Classification

An Approach for Privacy Preserving in Association Rule Mining Using Data Restriction

2. Department of Electronic Engineering and Computer Science, Case Western Reserve University

An Algorithm for Frequent Pattern Mining Based On Apriori

Data Structure for Association Rule Mining: T-Trees and P-Trees

Challenges and Interesting Research Directions in Associative Classification

Association Rule Mining. Introduction 46. Study core 46

Mining Quantitative Maximal Hyperclique Patterns: A Summary of Results

A Decremental Algorithm for Maintaining Frequent Itemsets in Dynamic Databases *

Real World Performance of Association Rule Algorithms

An Evolutionary Algorithm for Mining Association Rules Using Boolean Approach

Induction of Association Rules: Apriori Implementation

Mining High Average-Utility Itemsets

Parallel and Distributed Frequent Itemset Mining on Dynamic Datasets

Keshavamurthy B.N., Mitesh Sharma and Durga Toshniwal

Discovering interesting rules from financial data

Infrequent Weighted Itemset Mining Using SVM Classifier in Transaction Dataset

AC-Close: Efficiently Mining Approximate Closed Itemsets by Core Pattern Recovery

ETP-Mine: An Efficient Method for Mining Transitional Patterns

International Journal of Computer Science Trends and Technology (IJCST) Volume 5 Issue 4, Jul Aug 2017

Improving Quality of Products in Hard Drive Manufacturing by Decision Tree Technique

Rule Pruning in Associative Classification Mining

Memory issues in frequent itemset mining

A review of associative classification mining

Review and Comparison of Associative Classification Data Mining Approaches

PSON: A Parallelized SON Algorithm with MapReduce for Mining Frequent Sets

Lazy Decision Trees Ronny Kohavi

Association Rule Mining from XML Data

UAPRIORI: AN ALGORITHM FOR FINDING SEQUENTIAL PATTERNS IN PROBABILISTIC DATA

An Information-Theoretic Approach to the Prepruning of Classification Rules

PTclose: A novel algorithm for generation of closed frequent itemsets from dense and sparse datasets

A mining method for tracking changes in temporal association rules from an encoded database

Finding frequent closed itemsets with an extended version of the Eclat algorithm

Machine Learning: Symbolische Ansätze

Discovery of Multi-level Association Rules from Primitive Level Frequent Patterns Tree

Transforming Quantitative Transactional Databases into Binary Tables for Association Rule Mining Using the Apriori Algorithm

Lecture Topic Projects 1 Intro, schedule, and logistics 2 Data Science components and tasks 3 Data types Project #1 out 4 Introduction to R,

Graph Based Approach for Finding Frequent Itemsets to Discover Association Rules

Web page recommendation using a stochastic process model

On Multiple Query Optimization in Data Mining

Association Rule Discovery

A Novel Texture Classification Procedure by using Association Rules

Improving Quality of Products in Hard Drive Manufacturing by Decision Tree Technique

Association Rule Discovery

On Frequent Itemset Mining With Closure

Mining Frequent Itemsets for data streams over Weighted Sliding Windows

A Comparative Study of Association Rules Mining Algorithms

Performance Evaluation for Frequent Pattern mining Algorithm

INFREQUENT WEIGHTED ITEM SET MINING USING NODE SET BASED ALGORITHM

AN IMPROVISED FREQUENT PATTERN TREE BASED ASSOCIATION RULE MINING TECHNIQUE WITH MINING FREQUENT ITEM SETS ALGORITHM AND A MODIFIED HEADER TABLE

An Improved Algorithm for Mining Association Rules Using Multiple Support Values

Salah Alghyaline, Jun-Wei Hsieh, and Jim Z. C. Lai

STUDY ON FREQUENT PATTEREN GROWTH ALGORITHM WITHOUT CANDIDATE KEY GENERATION IN DATABASES

ML-DS: A Novel Deterministic Sampling Algorithm for Association Rules Mining

Appropriate Item Partition for Improving the Mining Performance

A Frame Work for Frequent Pattern Mining Using Dynamic Function

Study on Classifiers using Genetic Algorithm and Class based Rules Generation

APPLYING BIT-VECTOR PROJECTION APPROACH FOR EFFICIENT MINING OF N-MOST INTERESTING FREQUENT ITEMSETS

Parallelizing Frequent Itemset Mining with FP-Trees

To Enhance Projection Scalability of Item Transactions by Parallel and Partition Projection using Dynamic Data Set

DESIGN AND CONSTRUCTION OF A FREQUENT-PATTERN TREE

SEQUENTIAL PATTERN MINING FROM WEB LOG DATA

Introducing Partial Matching Approach in Association Rules for Better Treatment of Missing Values

Association Pattern Mining. Lijun Zhang


An Approximate Approach for Mining Recently Frequent Itemsets from Data Streams *

CHAPTER V ADAPTIVE ASSOCIATION RULE MINING ALGORITHM. Please purchase PDF Split-Merge on to remove this watermark.

An Algorithm for Mining Large Sequences in Databases

Mining of Web Server Logs using Extended Apriori Algorithm

Using Pattern-Join and Purchase-Combination for Mining Web Transaction Patterns in an Electronic Commerce Environment

Pattern Mining. Knowledge Discovery and Data Mining 1. Roman Kern KTI, TU Graz. Roman Kern (KTI, TU Graz) Pattern Mining / 42

Value Added Association Rules

Building Intelligent Learning Database Systems

Efficient Mining of Generalized Negative Association Rules

Multi-Label Lazy Associative Classification

Rank Measures for Ordering

Data Mining and Knowledge Discovery: Practice Notes

Analytical Modeling of Parallel Systems. To accompany the text ``Introduction to Parallel Computing'', Addison Wesley, 2003.

Fast Discovery of Sequential Patterns Using Materialized Data Mining Views

Efficient Remining of Generalized Multi-supported Association Rules under Support Update

Integration of Candidate Hash Trees in Concurrent Processing of Frequent Itemset Queries Using Apriori

SA-IFIM: Incrementally Mining Frequent Itemsets in Update Distorted Databases

ACN: An Associative Classifier with Negative Rules

ASSOCIATIVE CLASSIFICATION WITH KNN

FastLMFI: An Efficient Approach for Local Maximal Patterns Propagation and Maximal Patterns Superset Checking

Transcription:

Eager, Lazy and Hybrid Algorithms for Multi-Criteria Associative Classification Adriano Veloso 1, Wagner Meira Jr 1 1 Computer Science Department Universidade Federal de Minas Gerais (UFMG) Belo Horizonte MG Brazil {adrianov, meira}@dcc.ufmg.br Abstract. Classification aims to map a data instance to its appropriate class (or label). In associative classification the mapping is done through an association rule with the consequent restricted to the class attribute. Eager associative classification algorithms build a single rule set during the training phase, and this rule set is used to classify all test instances. Lazy algorithms, however, do not build a rule set during the training phase, the rule set generation is delayed until a test instance is given. The choice between eager and lazy algorithms is not simple. Using a single rule set to perform all the predictions may not take advantage of specific characteristics of a test instance. On the other hand, building a specific rule set for each test instance may incur in excessive computational efforts. In this paper we propose new eager and lazy algorithms for associative classification. Also, we present heuristics and caching mechanisms to alleviate computational costs during lazy classification, and a new hybrid algorithm which combines characteristics of eager and lazy approaches. Finally, we also propose a multi-criteria rule selection technique which is motivated by the intuition that a single criterion cannot give a global picture of the rule (i.e., rules with high confidence but low support). We performed a systematic evaluation of the proposed approaches using real data from an important application: spam detection. 1. Introduction Given a set of data instances and their class labels (i.e., the training data), the task of classification is to find a function which maps a new data instance (i.e., a test instance) to its corresponding class. Eager classification uses the training data to build a single rule set that is used to classify all test instances. On the other hand, lazy classification uses the training data to build a specific rule set for each test instance, and therefore, decisions are based on the properties of the particular test instance being evaluated. While eager algorithms build a single classifier that is good (on average) for all predictions, lazy algorithms take advantage of particular characteristics of a given test instance, and this may reflect in an improvement of the classification accuracy. This improvement in accuracy comes with the cost of building several different rule sets, one for each test instance, making the classification process slower. There are two alternatives to speedup the process. First, one can employ heuristics to reduce the size of the rule set, focusing only on the most important rules. Another alternative is to reduce work replication by caching some already processed rules. After a few instances have been classified, commonly used rules 17

already exist, and their computations do not need to be repeated. In this paper we focus on associative classification, a well-known classification technique based on a special type of association rule, where the consequent is restricted to the class attribute. We propose eager and lazy associative classification algorithms, and after discussing the advantages and the drawbacks of each approach, we also propose an hybrid (eager/lazy) algorithm. The accuracy of associative classification algorithms (whether they are eager or lazy) is intrinsically dependent on the criterion used to choose the best rule, that will be used to perform the classification. The problem is that, usually, a single criterion cannot give a global picture of the rules (i.e., rules with high confidence and low support), turning the algorithms prone to misclassification. In this paper we also deal with multi-criteria classification, where the best rule is the one that has the highest values in all the criteria used. We present different rule selection criteria, and then we propose a multi-criteria rule selection approach that starts the generation of the rule set by the most general rules and keep generating more specific rules until the best rule is found. The paper is organized as follows. In Section 2 we present necessary background and related work on associative classification. In Section 3 we discuss in more detail eager and lazy approaches and present the corresponding algorithms. In Section 4 we show the experimental results. Finally, in Section 5 we draw the conclusions. 2. Preliminaries In this section we provide preliminary concepts of associative classification. Further, we also discuss some related work. DEFINITION 1. [ITEMSETS] For any set X, its size is the number of elements in X. Let I denote the set of n natural numbers {1, 2,..., n}. Each x I is called an item. A non-empty subset of I is called an itemset. An itemset of size k, X = {x 1, x 2,..., x k } is called a k-itemset. We say that X contains Y if Y X. DEFINITION 2. [TRAINING AND TEST INSTANCES] A data instance T i is an itemset, where i is a natural number called the instance identifier or tid. A dataset D is a finite set of instances, and it is divided into two partitions, D = D seen D unseen, where D seen is the set of training instances (i.e., the training data) and D unseen is the set of test instances (i.e., the test data). If T i is followed by the class attribute c, then T i D seen, otherwise T i D unseen. The support of an itemset X is the fraction of training instances that contain X, given as, σ(x) = {T i D seen X T i } D seen. The itemset X may appear too frequently in some classes, and too rarely in others. Weighted support is the support of X normalized by the support of each class, and it is given by γ(x) = σ(x c) σ(c). DEFINITION 3. [ASSOCIATION RULES] An association rule is a rule with the form θ,φ,π X c, where c is the class attribute and X is an itemset (c / X ). The confidence σ(x c) of the rule, denoted as θ, is given by. The exclusiveness (or weighted confidence) σ(x) γ(x c) γ(x c)+γ(x c) of the rule, denoted as φ, is given by. The higher the exclusiveness, the more strongly X is associated to class c. The conviction of the rule, denoted as π, is given by σ(x) σ(c) and measures implication. It is directional and it is maximal (π = ) σ(x c) for perfect implications, and it properly indicates when the rule does not hold more than expected (π = 1). A rule X θ,φ,π c matches a data instance T i if X T i. 18

RELATED WORK There are several association rule mining algorithms in the literature. The most well known are APRIORI [Agrawal and Srikant 1994], FP- GROWTH [Han et al. 00], and ECLAT [Zaki et al. 1997]. There are also several algorithms for classification, such as ID3 [Quinlan 1986], C4.5 [Quinlan 1993], and CART [Breiman et al. 1984], but they are based on decision trees or Bayesian rules. Differently, our work is related to associative classification, which was introduced in [Liu et al. 1998] with the CBA classification system. Enhancements were proposed in [Yin and Han 03] where best rules are selected based on the Ocam s Razor principle, and in [Li et al. 01] where the classification is based on multiple best rules (rather than on one single best rule). These algorithms are all based on eager classification, but there are also lazy classification algorithms [Friedman et al. 1996, Zheng and Webb 00] which are all based on decision trees and Bayesian rules, and not on association rules. Our work is novel, first because the proposed algorithms (including the eager algorithm) use a novel multi-criteria for rule selection approach, and also because there are no lazy or hybrid algorithms for associative classification in the literature. THE ECLAT ALGORITHM Some ideas behind the ECLAT algorithm are specially important for us, and we will also use these ideas in our classification algorithms. We start by discussing search space partitioning using equivalence classes, which is very useful for sake of enumerating itemsets with a particular item (i.e., the class attribute). For example, to generate the rule X c we first need to generate the itemset X c. We can easily constrain the enumeration of itemsets to only supersets that contain one class, c, by using the equivalence class partitioning scheme [Zaki et al. 1997]. Another important characteristic of the ECLAT algorithm is the vertical dataset layout approach to perform support counting, which is more appropriate to our lazy rule generation approach. Each itemset X has a tidset, denoted as L(X), which is the set of. Basically, we can count the support of a k-itemset X = {x 1,x 2,...,x k } in two different ways. The 2-way intersection uses the tidsets of two (k-1)-subsets of X (say Y and Z) to calculate L(X), which is given as L(Y) L(Z). In some cases, however, we only have access to the tidsets of the 1-itemsets, and in these cases, we use the k-way intersection approach to calculate σ(x), by calculating L(X) as L(x 1 ) L(x 2 )... L(x k ). tids in D seen in which X has occurred. Then σ(x) is given as L(X) D seen 3. Algorithms for Multi-Criteria Associative Classification In this section we describe our proposed algorithms. First, we will explain our multicriteria rule selection approach, which is used in all the proposed algorithms. Then, for each algorithm we will explain how it deals with the training and test data. MULTI-CRITERIA RULE SELECTION Our multi-criteria rule selection approach is based on three criteria: θ,φ and π. The best rule is the one with the highest values in all these three criteria. The rule selection always starts with the most general rules (rules of size 2), and if no best rule is found (there is no rule with the highest values in all criteria), then more specific rules (rules of size 3) are analyzed. This process continues analyzing more specific rules until the best rule is found or the maximum rule size is reached (in order to avoid overfitting). If no best rule is found, the rule with the highest conviction value is selected (In our experiments, conviction seems to be the best single criterion). 19

EAGER ALGORITHM (EC) The algorithm starts by generating a set of frequent itemsets 1 from D seen. The itemset generation follows the ECLAT algorithm execution, which is based on equivalence classes, where the search space is partitioned and itemsets with the form X c i are generated for each class c {positive,negative} 2. The support computation is based on the 2-way intersection approach. After all frequent itemsets are found, EC generates a rule set R. Then, for each test instance T i, EC retrieves all matching rules from R (i.e., rule with the form X θ,φ,π c where X T i ). From the retrieved rules, the best rule is selected according to our multi-criteria approach, and a class is finally chosen for the prediction. If there is no matching rule in R, a default prediction (i.e., the most frequent class in D seen ) is performed. LAZY ALGORITHM (LC) The algorithm starts by constructing the tidset of each item in D seen (including the classes, which are treated as frequent items). Until this moment no rule has been generated. Now, for each test instance T i = {t 1,t 2,...,t n }, LC generates a rule set R. To reduce the amount of computation for generating the rule set, the items {t 1,t 2,...,t n } T i are sorted in according to their support values (in descending order), and the first v (where v is specified by the user) most frequent items are maintained. The algorithm keeps performing combinations between the v most frequent items and θ,φ,π θ,φ,π generating rules such as t 1 c, t 2 c and {t 1 t 2 } θ,φ,π c. If v is much smaller than n, few rules will be generated and the quality of the rule set will be reduced, since the amount of information about the test instance will be smaller. The support computation is based on the k-way intersection approach. Different test instances have different rule sets, but different rule sets may share common association rules. To avoid generating the same rule more than once when processing different test instances, LC uses a cache whose key is given by the items that compose the rule and the content is composed by θ,φ and π. From the generated rule set, the best rule is selected according to our multi-criteria approach, and class is finally chosen for the prediction. All rules generated match the test instance because the rules were generated based on the items that appear in the test instance, and so there is no need for a default prediction. HYBRID ALGORITHM (HC) As mentioned earlier, the EC algorithm suffers from the missing rule (or rule set coverage) problem when there is no matching rule in the rule set. In this case the solution adopted by EC is to use a default prediction. However, this solution is too restrictive and lacks diversity, since choosing a pre-determined class does not take into account any characteristic of the test instance. The HC algorithm works similarly to the EC algorithm, the only difference is that HC generates a customized rule set for each test instance that is not covered by the original rule set. In order to evaluate our algorithms, after all test instances are classified four measures are obtained: TT: number of positive cases that were correctly classified as positive. TF: number of negative cases that were wrongly classified as positive. FT: number of positive cases that were wrongly classified as negative. FF: number of negative cases that were correctly classified as negative. 1 An itemset X is frequent if σ(x) σ min, where σ min is a threshold specified by the user. 2 In this paper we focus on binary classification.

4. Experimental Results In this section we present experimental results obtained from the application of our classification algorithms to a real-world problem: spam detection. We start with a description of the input parameters and evaluation metrics that will be used throughout the experiments. All experiments were run on a PENTIUM III 1GHz 512MB main memory. During our experiments we varied the following input parameters: the minimum support (when analyzing the EC and HC algorithms), the cache size and the maximum number of items in a test instance (when analyzing the LC algorithm). We have also varied the size of the training data and the size of the test data. Some metrics were also defined with the goal of evaluating the effectiveness of the classification performed using our algorithms: 1. Accuracy (Acc): It is the total number of correct classified cases (positive and TT+FF negative) divided by the total number of cases, given by:. TT+TF+FT+FF 2. Precision (Prec): It is the number of correct classified positive cases divided by TT the total number of positive classified cases, given by. TT+TF 3. Recall (Rec): It is the number of correct classified positive cases divided by the TT total number of real positive cases, given by. TT+FT 4. Improvement (Imp): It quantifies how much it is better using the classifier than not using it. Greater improvement values indicate better performance. For Imp < 1, not using the classifier is better. Improvement is given by: TT+FT. TF+FT SPAM DETECTION Spams or, more formally, unsolicited commercial electronic messages, are extremely annoying to most users, as they waste their time and extend dial-up connections. They also waste bandwidth, and often expose minors to unsuitable content by advertising pornographic sites. Without appropriate counter-measures spams can eventually undermine the usability of electronic messages. Technical counter-measures include the development of spam filters, which can automatically detect a spam message. Classification algorithms are usually the core of spam filters. DATASET AND PROBLEM DESCRIPTIONS The problem is to classify if a given electronic message is spam or legitimate (a message is a data instance). In our case, the classification is based only on the content of the message (i.e., the words and symbols that compose the message). Spams are marked as positive cases, legitimate messages are negative cases. Spams correspond to 25% of the total number of messages 3. All attributes are continuous (i.e., the same word/symbol may appear more than once in the message), and for each attribute we assume that its value ranges is discretized into 3 intervals, and then the intervals are mapped to consecutive positive integers. RESULTS We start the evaluation by comparing the EC and HC algorithms. Figure 1(a) shows precision, recall and accuracy numbers for these two algorithms. The hybrid algorithm performs better in all three metrics. This result shows that using a lazy procedure is better than using a pre-specified class for default prediction. Figure 1(b) shows the impact of the lazy procedure in the total execution time, for different training and testing configurations. As expected, EC is slightly faster than HC. Figure 1(c) shows 3 This is the set of e-mail messages from the SPAMASSASSIN project, and it is largely accepted as the ultimate test collection for spam detection benchmark. It is publicly available at http://spamassassin.apache.org/publiccorpus/ 21

how much of improvement the algorithm can achieve by second. The hybrid algorithm needs less time to achieve more improvement and performs better than the eager one. 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 Precision, Recall and Accuracy 50% x 50% EC (Prec) EC (Rec) EC (Acc) HC (Prec) HC (Rec) HC (Acc) 0.2 0.22 0.24 0.26 0.28 0.3 Minimum Support (sec) 55 50 45 40 35 30 25 15 10 Time EC (30% x 70%) EC (50% x 50%) EC (70% x 30%) HC (30% x 70%) HC (50% x 50%) EC (70% x 30%) 0.2 0.22 0.24 0.26 0.28 0.3 Minimum Support 0.1 0.09 0.08 0.07 0.06 0.05 0.04 Imp/Time EC (30% x 70%) EC (50% x 50%) EC (70% x 30%) HC (30% x 70%) HC (50% x 50%) HC (70% x 30%) 0.03 0.2 0.22 0.24 0.26 0.28 0.3 Minimum Support Figure 1. (a) Prec/Rec/Acc for EC and HC Algorithms, (b) Execution Time and (c) Improvement per second for EC and HC using Different Training Configurations. 1 0.95 0.9 0.85 0.8 0.75 0.7 0.65 0.6 0.55 0.5 Precision, Recall and Accuracy 50% x 50% LC (Prec) LC (Rec) LC (Acc) 40 60 80 100 1 140 160 180 All Maximum Number of Items in Test Instance (sec) 100 90 80 70 60 50 40 30 LC (30% x 70%) Time 40 60 80 100 1 140 160 180 All Maximum Number of Items in Test Instance 0.14 0.12 0.1 0.08 0.06 0.04 Imp/Time LC (30% x 70%) 0.02 40 60 80 100 1 140 160 180 All Maximum Number of Items in Test Instance Figure 2. (a) Prec/Rec/Acc for LC Algorithm. (b) Execution Time and (c) Improvement per second, for LC using Different Training Configurations. 90 80 70 60 50 40 30 10 0 LC (30% x 70%) Hit Ratio 1 10 100 1000 10000 100000 Inf Cache Size (sec) 250 0 150 100 Time 50 LC (30% x 70%) 0 1 10 100 1000 10000100000 Inf Cache Size 0.25 0.2 0.15 0.1 0.05 Imp/Time LC (30% x 70%) 0 1 10 100 1000 10000100000 Inf Cache Size Figure 3. (a) Cache Effectiveness, (b) Execution Time, and (c) Improvement per second for LC, using Different Training Configurations. 5.5 5 4.5 4 3.5 3 2.5 2 1.5 1 EC HC LC Improvement 30 70 40 60 50 50 60 40 70 30 Percentage of Training (sec) 90 80 70 60 50 40 30 Time EC HC (No cache) LC (No cache) LC (Infinite cache) 30 70 40 60 50 50 60 40 70 30 Percentage of Training 0.96 0.94 0.92 0.9 0.88 0.86 0.84 0.82 0.8 0.78 0.76 Accuracy LC (Multi Criteria) LC (Conviction) LC (Exclusiveness) LC (Confidence) 30 70 40 60 50 50 60 70 70 30 Percentage of Training Figure 4. (a) Improvement and (b) Execution Time for the Different Algorithms. (c) Comparing Multi-Criteria against Single Criterion Approaches. 22

Next we analyze our proposed heuristic based on limiting the number of items in a given test instance. Figure 2(a) shows precision, recall and accuracy numbers by varying the maximum number of items in the test instances. All these numbers increase by increasing the number of items in the test instance, and this is expected since more information are available with more items being analyzed. Figure 2(b) shows the total time spent by varying the maximum number of items, and clearly the time increases linearly with the number of items. Also, we can observe that the time spent by LC increases with the number of test instances (i.e., 30% 70%). Figure 3(c) the Improvement/Time trade-off for the LC algorithm and, by comparing with Figure 1(c), we can observe that LC generally performs better than both EC and HC algorithms. Now we turn the attention to the analysis of the cache effectiveness. Using the cache only affects the execution time of LC, and it does not affect precision, recall, accuracy, and improvement. Figure 3(a) shows the hit ratio. The ratio goes from 0 to 90% by varying the cache size from 0 to. Also from this figure we observed that the cache is more effective for larger training configurations (i.e., 70% 30%). Figure 3(b) shows the impact of caching in execution time. From this figure we can see that larger caches are generally better, except for small (but greater than 0) cache sizes, because in these cases, there is a large overhead of cache replacement (since the replacement procedure is called many times). Figure 3(c) shows the Improvement/Time trade-off. We can compare this result with the ones depicted in Figures 1(c) and 2(c), and we can observe that caching is the best mechanism, since caching does not reduces the improvement. Our last analysis compares all algorithms by varying training and testing configurations. Figure 4(a) shows improvements for the different algorithms. As we can see, the improvement increases with the percentage of training for all algorithms. LC is the one with highest improvement, showing that our lazy algorithm is the best one. Figure 4(b) shows the execution time for all algorithms. The time spent by EC and HC algorithms increases with the percentage of training instances, since the amount of data that has to be processed in order to generate the rule set also increases. Differently, the time spent by LC diminishes with the percentage of training instances, since (consequently) the amount of test instances is reduced (and less rule set are generated). Figure 4(c) shows the comparison between EC, HC and LC, in terms of accuracy numbers by applying different rule selection approaches. We compared out multi-criteria approach against single-criterion ones, for instance highest confidence, highest conviction and highest exclusiveness. Clearly, our multi-criteria approach performs much better than all other rule selection approach. The best single criterion used is conviction, since this metric quantifies both the negative and positive aspects of the rule (and not only the positive one, such as confidence does). 5. Conclusions and Future Work In this paper we investigated techniques for rule generation and rule selection in associative classification. We propose three algorithms with different rule generation characteristics. EC is an eager algorithm, which generates a single rule set before any test instance is given. LC is a lazy algorithm which generates one rule set for each test instance. HC is a hybrid algorithm which combines characteristics from both EC and LC algorithms. We evaluated the three algorithms, and concluded that LC shows the best precision, recall and accuracy numbers. Also, LC demands more computation due to the fact that it has 23

to generate a possibly large number of rule sets. We propose two techniques to alleviate this problem: one heuristic and a simple caching mechanism. Our heuristic is based on limiting the size of the test instances (i.e., it analyzes only the k most frequent items on a test instance), and consequently, the heuristic also affects the effectiveness of the algorithm. Our caching mechanism is simple, but extremely efficient, and makes LC faster than both EC and HC. Our rule selection approach is based on the observation that one single criterion is not sufficient to give the global picture (i.e., rules with high confidence and low support). We propose to use a multi-criteria approach based on three metrics: confidence, exclusiveness and conviction. The best rule is the one with highest value in all these three metrics. The search for the best rule starts with more general rules and keeps generating more specific ones. The multi-criteria approach performs better than all single-criterion ones. We are currently investigating associative classification techniques that are more robust regarding changes in the underlying processes that generate the data (i.e., concept drifts and shifts). For example, in the spam detection application, the spammer periodically changes the spam generation procedure in order to escape from the spam detector. Our current work involves techniques that can capture trends and other properties in the rule set, and use these properties to make the classifier more robust. References Agrawal, R. and Srikant, R. (1994). Fast algorithms for mining association rules. In Proc. of the Int. Conf. on Very Large Databases, pages 487 499, SanTiago, Chile. Breiman, L., Friedman, J., Olshen, R., and Stone, C. (1984). Classication and regression trees. Wadsworth International Group. Friedman, J., Kohavi, R., and Yun, Y. (1996). Lazy decision trees. In Proc of the Nat. Conf. on Artificial Intelligence, pages 717 724, Menlo Park, California. AAAI Press. Han, J., Pei, J., and Yin, Y. (00). Mining frequent patterns without candidate generation. In Proc. of the Int. Conf. on Management of Data, SIGMOD, pages 1 12. ACM. Li, W., Han, J., and Pei, J. (01). CMAR: Efficient classification based on multiple class-association rules. In Proc. of the Int. Conf. on Data Mining, pages 369 376. Liu, B., Hsu, W., and Ma, Y. (1998). Integrating classification and association rule mining. In Knowledge Discovery and Data Mining, pages 80 86. Quinlan, J. (1986). Induction of decision trees. Machine Learning, 1:81 106. Quinlan, J. (1993). C4.5: Programs for machine learning. Morgan Kaufmann. Yin, X. and Han, J. (03). CPAR: Classification based on predictive association rules. In Proc. of the Int. Conf. on Data Mining, SDM. SIAM. Zaki, M., Parthasarathy, S., Ogihara, M., and Li, W. (1997). New algorithms for fast discovery of association rules. In Proc. of the Int. Conf. on Knowledge Discovery and Data Mining, pages 283 290. Zheng, Z. and Webb, G. (00). Lazy learning of bayesian rules. Machine Learning, 41(1):53 84. 24