You are on page 1of 16

Association rule learning

Association rule learning is a rule-based machine learning method for discovering interesting relations
between variables in large databases. It is intended to identify strong rules discovered in databases using
some measures of interestingness.[1] In any given transaction with a variety of items, association rules are
meant to discover the rules that determine how or why certain items are connected.

Based on the concept of strong rules, Rakesh Agrawal, Tomasz Imieliński and Arun Swami[2] introduced
association rules for discovering regularities between products in large-scale transaction data recorded by
point-of-sale (POS) systems in supermarkets. For example, the rule
found in the sales data of a supermarket would indicate that if a customer buys onions and potatoes
together, they are likely to also buy hamburger meat. Such information can be used as the basis for
decisions about marketing activities such as, e.g., promotional pricing or product placements.

In addition to the above example from market basket analysis, association rules are employed today in
many application areas including Web usage mining, intrusion detection, continuous production, and
bioinformatics. In contrast with sequence mining, association rule learning typically does not consider the
order of items either within a transaction or across transactions.

The association rule algorithm itself consists of various parameters that can make it difficult for those
without some expertise in data mining to execute, with many rules that are arduous to understand.[3]

Definition
Following the original definition by Agrawal, Imieliński, Swami[2] the problem of association rule mining
is defined as:

Let be a set of binary attributes called items.

Let be a set of transactions called the database.

Each transaction in has a unique transaction ID and contains a subset of the items in .

A rule is defined as an implication of the form:

, where .

In Agrawal, Imieliński, Swami[2] a rule is defined only between a set and a single item, for
.

Every rule is composed by two different sets of items, also known as itemsets, and , where is called
antecedent or left-hand-side (LHS) and consequent or right-hand-side (RHS). The antecedent is that item
that can be found in the data while the consequent is the item found when combined with the antecedent.
The statement is often read as if then , where the antecedent ( ) is the if and the consequent
( ) is the then. This simply implies that, in theory, whenever occurs in a dataset, then will as well.

Process
Association rules are made by searching data for frequent if-then
patterns and by using a certain criterion under Support and
Confidence to define what the most important relationships are.
Support is the evidence of how frequent an item appears in the data
given, as Confidence is defined by how many times the if-then
statements are found true. However, there is a third criteria that can
be used, it is called Lift and it can be used to compare the expected
Confidence and the actual Confidence. Lift will show how many
times the if-then statement is expected to be found to be true. A Venn Diagram to show the
associations between itemsets X
Association rules are made to calculate from itemsets, which are and Y of a dataset. All transactions
created by two or more items. If the rules were built from the that contain item X are located in the
analyzing from all the possible itemsets from the data then there white, left portion of the circle, while
would be so many rules that they wouldn’t have any meaning. That those containing Y are colored red
is why Association rules are typically made from rules that are well and on the right. Any transaction
represented by the data. containing both X and Y are located
in the middle and are colored pink.
There are many different data mining techniques you could use to Multiple concepts can be used to
find certain analytics and results, for example, there is Classification depict information from this graph.
analysis, Clustering analysis, and Regression analysis.[4] What For example, if one takes all of the
transactions in the pink section and
technique you should use depends on what you are looking for with
divided them by the total amount of
your data. Association rules are primarily used to find analytics and
transactions (transactions containing
a prediction of customer behavior. For Classification analysis, it
X (white) + transactions containing
would most likely be used to question, make decisions, and predict
Y(red)), the output would be known
behavior.[5] Clustering analysis is primarily used when there are no
as the support. An instance of
assumptions made about the likely relationships within the data.[5] getting the result of a method known
Regression analysis Is used when you want to predict the value of a as the confidence, one can take all
continuous dependent from a number of independent variables.[5] of the transactions in the middle
(pink) and divide them by all
Benefits transactions that contain Y (red and
pink). In this case, Y is the
There are many benefits of using Association rules like finding the
antecedent and X is the consequent.
pattern that helps understand the correlations and co-occurrences
between data sets. A very good real-world example that uses
Association rules would be medicine. Medicine uses Association rules to help diagnose patients. When
diagnosing patients there are many variables to consider as many diseases will share similar symptoms.
With the use of the Association rules, doctors can determine the conditional probability of an illness by
comparing symptom relationships from past cases.[6]

Downsides

However, Association rules also lead to many different downsides such as finding the appropriate
parameter and threshold settings for the mining algorithm. But there is also the downside of having a large
number of discovered rules. The reason is that this does not guarantee that the rules will be found relevant,
but it could also cause the algorithm to have low performance. Sometimes the implemented algorithms will
contain too many variables and parameters. For someone that doesn’t have a good concept of data mining,
this might cause them to have trouble understanding it.[7]

Thresholds

When using Association rules, you are most likely to only use Support and Confidence. However, this
means you have to satisfy a user-specified minimum support and a user-specified minimum confidence at
the same time. Usually, the Association rule generation is split into two different steps that needs to be
applied:

1. A minimum Support threshold to find all the frequent


itemsets that are in the database.
2. A minimum Confidence threshold to the frequent itemsets
found to create rules.

Table 1. Example of Threshold for Support and Confidence.


Items Support Confidence Items Support Confidence
Frequent itemset lattice, where the
Item Item color of the box indicates how many
30% 50% 45% 55%
A C
transactions contain the combination
Item Item of items. Note that lower levels of
15% 25% 30% 50%
B A the lattice can contain at most the
Item Item minimum number of their parents'
45% 55% 35% 40%
C D items; e.g. {ac} can have only at
Item Item most items. This is called
35% 40% 15% 25% the downward-closure property.[2]
D B

The Support Threshold is 30%, Confidence Threshold is 50%

The Table on the left is the original unorganized data and the table on the right is organized by the
thresholds. In this case Item C is better than the thresholds for both Support and Confidence which
is why it is first. Item A is second because its threshold values are spot on. Item D has met the
threshold for Support but not Confidence. Item B has not met the threshold for either Support or
Confidence and that is why it is last.

To find all the frequent itemsets in a database is not an easy task since it involves going through all the data
to find all possible item combinations from all possible itemsets. The set of possible itemsets is the power
set over I and has size , of course this means to exclude the empty set which is not considered to be
a valid itemset. However, the size of the power set will grow exponentially in the number of item n that is
within the power set I. An efficient search is possible by using the downward-closure property of
support[2][8] (also called anti-monotonicity[9]). This would guarantee that a frequent itemset and all its
subsets are also frequent and thus will have no infrequent itemsets as a subset of a frequent itemset.
Exploiting this property, efficient algorithms (e.g., Apriori[10] and Eclat[11]) can find all frequent itemsets.

Useful Concepts
To illustrate the concepts, we use Table 2. Example database with 5 transactions and 5 items
a small example from the
supermarket domain. Table 2 transaction ID milk bread butter beer diapers eggs fruit
shows a small database 1 1 1 0 0 0 0 1
containing the items where, in 2 0 0 1 0 0 1 1
each entry, the value 1 means the
presence of the item in the 3 0 0 0 1 1 0 0
corresponding transaction, and 4 1 1 1 0 0 1 1
the value 0 represents the absence
5 0 1 0 0 0 0 0
of an item in that transaction. The
set of items is
.
An example rule for the supermarket could be meaning that if butter and
bread are bought, customers also buy milk.

In order to select interesting rules from the set of all possible rules, constraints on various measures of
significance and interest are used. The best-known constraints are minimum thresholds on support and
confidence.

Let be itemsets, an association rule and T a set of transactions of a given database.

Note: this example is extremely small. In practical applications, a rule needs a support of several hundred
transactions before it can be considered statistically significant, and datasets often contain thousands or
millions of transactions.

Support

Support is an indication of how frequently the itemset appears in the dataset.

In our example, it can be easier to explain support by writing


[12] where A and B are

separate item sets that occur in at the same time in a transaction.

Using Table 2 as an example, the itemset has a support of since it


occurs in 20% of all transactions (1 out of 5 transactions). The argument of support of X is a set of
preconditions, and thus becomes more restrictive as it grows (instead of more inclusive).[13]

Furthermore, the itemset has a support of as it appears in 20% of


all transactions as well.

When using antecedents and consequents, it allows a data miner to determine the support of multiple items
being bought together in comparison to the whole data set. For example, Table 2 shows that if milk is
bought, then bread is bought has a support of 0.4 or 40%. This because in 2 out 5 of the transactions, milk
as well as bread are bought. In smaller data sets like this example, it is harder to see a strong correlation
when there are few samples, but when the data set grows larger, support can be used to find correlation
between two or more products in the supermarket example.

Minimum support thresholds are useful for determining which itemsets are preferred or interesting.

If we set the support threshold to ≥0.4 in Table 3, then the would be removed since it
did not meet the minimum threshold of 0.4. Minimum threshold is used to remove samples where there is
not a strong enough support or confidence to deem the sample as important or interesting in the dataset.

Another way of finding interesting samples is to find the value of (support)X(confidence); this allows a data
miner to see the samples where support and confidence are high enough to be highlighted in the dataset and
prompt a closer look at the sample to find more information on the connection between the items.

Support can be beneficial for finding the connection between products in comparison to the whole dataset,
whereas confidence looks at the connection between one or more items and another item. Below is a table
that shows the comparison and contrast between support and support x confidence, using the information
from Table 4 to derive the confidence values.
Table 3. Example of Support, and support X confidence
if Antecedent then Consequent support support X confidence

if buy milk, then buy bread 2/5= 0.4 0.4X1.0= 0.4

if buy milk, then buy eggs 1/5= 0.2 0.2X0.5= 0.1


if buy bread, then buy fruit 2/5= 0.4 0.4X0.66= 0.264

if buy fruit, then buy eggs 2/5= 0.4 0.4X0.66= 0.264

if buy milk and bread, then buy fruit 2/5= 0.4 0.4X1.0= 0.4

The support of X with respect to T is defined as the proportion of transactions in the dataset which contains
the itemset X. Denoting a transaction by where i is the unique identifier of the transaction and t is its
itemset, the support may be written as:

This notation can be used when defining more complicated datasets where the items and itemsets may not
be as easy as our supermarket example above. Other examples of where support can be used is in finding
groups of genetic mutations that work collectively to cause a disease, investigating the number of
subscribers that respond to upgrade offers, and discovering which products in a drug store are never bought
together.[12]

Confidence

Confidence is the percentage of all transactions satisfying X that also satisfy Y .[14]

With respect to T , the confidence value of an association rule, often denoted as , is the ratio of
transactions containing both X and Y to the total amount of X values present, where X is the antecedent
and Y is the consequent.

Confidence can also be interpreted as an estimate of the conditional probability , the probability
of finding the RHS of the rule in transactions under the condition that these transactions also contain the
LHS.[13][15]

It is commonly depicted as:

The equation illustrates that confidence can be computed by calculating the co-occurrence of transactions X
and Y within the dataset in ratio to transactions containing only X. This means that the number of
transactions in both X and Y is divided by those just in X .

For example, Table 2 shows the rule which has a confidence of

in the dataset, which denotes that every time a customer buys butter and bread, they

also buy milk. This particular example demonstrates the rule being correct 100% of the time for transactions
containing both butter and bread. The rule , however, has a confidence of

. This suggests that eggs are bought 67% of the times that fruit is brought. Within this

particular dataset, fruit is purchased a total of 3 times, with two of those times consisting of egg purchases.

For larger datasets, a minimum threshold, or a percentage cutoff, for the confidence can be useful for
determining item relationships. When applying this method to some of the data in Table 2, information that
does not meet the requirements are removed. Table 4 shows association rule examples where the minimum
threshold for confidence is 0.5 (50%). Any data that does not have a confidence of at least 0.5 is omitted.
Generating thresholds allow for the association between items to become stronger as the data is further
researched by emphasizing those that co-occur the most. The table uses the confidence information from
Table 3 to implement the Support x Confidence column, where the relationship between items via their
both confidence and support, instead of just one concept, is highlighted. Ranking the rules by Support x
Confidence multiples the confidence of a particular rule to its support and is often implemented for a more
in-depth understanding of the relationship between the items.

Table 4. Example of Confidence and Support x Confidence


if Antecedent then Consequent Confidence Support x Confidence

if buy milk, then buy bread 2/2= 1.0 0.4X1.0= 0.4

if buy milk, then buy eggs 1/2= 0.5 0.2X0.5= 0.1


if buy bread, then buy fruit 2/3= 0.66 0.4X0.66= 0.264

if buy fruit, then buy eggs 2/3= 0.66 0.4X0.66= 0.264

if buy milk and bread, then buy fruit 2/2= 1.0 0.4X1.0= 0.4

Overall, using confidence in association rule mining is great way to bring awareness to data relations. Its
greatest benefit is highlighting the relationship between particular items to one another within the set, as it
compares co-occurrences of items to the total occurrence of the antecedent in the specific rule. However,
confidence is not the optimal method for every concept in association rule mining. The disadvantage of
using it is that it does not offer multiple difference outlooks on the associations. Unlike support, for
instance, confidence does not provide the perspective of relationships between certain items in comparison
to the entire dataset, so while milk and bread, for example, may occur 100% of the time for confidence, it
only has a support of 0.4 (40%). This is why it is important to look at other viewpoints, such as Support x
Confidence, instead of solely relying on one concept incessantly to define the relationships.

Lift

The lift of a rule is defined as:

or the ratio of the observed support to that expected if X and Y were independent.

For example, the rule has a lift of .


If the rule had a lift of 1, it would imply that the probability of occurrence of the antecedent and that of the
consequent are independent of each other. When two events are independent of each other, no rule can be
drawn involving those two events.

If the lift is > 1, that lets us know the degree to which those two occurrences are dependent on one another,
and makes those rules potentially useful for predicting the consequent in future data sets.

If the lift is < 1, that lets us know the items are substitute to each other. This means that presence of one
item has negative effect on presence of other item and vice versa.

The value of lift is that it considers both the support of the rule and the overall data set.[13]

Conviction

The conviction of a rule is defined as .[16]

For example, the rule has a conviction of , and can be


interpreted as the ratio of the expected frequency that X occurs without Y (that is to say, the frequency that
the rule makes an incorrect prediction) if X and Y were independent divided by the observed frequency of
incorrect predictions. In this example, the conviction value of 1.2 shows that the rule
would be incorrect 20% more often (1.2 times as often) if the association
between X and Y was purely random chance.

Alternative measures of interestingness

In addition to confidence, other measures of interestingness for rules have been proposed. Some popular
measures are:

All-confidence[17]
Collective strength[18]
Leverage[19]

Several more measures are presented and compared by Tan et al.[20] and by Hahsler.[21] Looking for
techniques that can model what the user has known (and using these models as interestingness measures) is
currently an active research trend under the name of "Subjective Interestingness."

History
The concept of association rules was popularized particularly due to the 1993 article of Agrawal et al.,[2]
which has acquired more than 23,790 citations according to Google Scholar, as of April 2021, and is thus
one of the most cited papers in the Data Mining field. However, what is now called "association rules" is
introduced already in the 1966 paper[22] on GUHA, a general data mining method developed by Petr
Hájek et al.[23]
An early (circa 1989) use of minimum support and confidence to find all association rules is the Feature
Based Modeling framework, which found all rules with and greater than user
defined constraints. [24]

Statistically sound associations


One limitation of the standard approach to discovering associations is that by searching massive numbers of
possible associations to look for collections of items that appear to be associated, there is a large risk of
finding many spurious associations. These are collections of items that co-occur with unexpected frequency
in the data, but only do so by chance. For example, suppose we are considering a collection of 10,000
items and looking for rules containing two items in the left-hand-side and 1 item in the right-hand-side.
There are approximately 1,000,000,000,000 such rules. If we apply a statistical test for independence with
a significance level of 0.05 it means there is only a 5% chance of accepting a rule if there is no association.
If we assume there are no associations, we should nonetheless expect to find 50,000,000,000 rules.
Statistically sound association discovery[25][26] controls this risk, in most cases reducing the risk of finding
any spurious associations to a user-specified significance level.

Algorithms
Many algorithms for generating association rules have been proposed.

Some well-known algorithms are Apriori, Eclat and FP-Growth, but they only do half the job, since they
are algorithms for mining frequent itemsets. Another step needs to be done after to generate rules from
frequent itemsets found in a database.

Apriori algorithm

Apriori is given by R. Agrawal and R. Srikant in 1994 for frequent item set mining and association rule
learning. It proceeds by identifying the frequent individual items in the database and extending them to
larger and larger item sets as long as those item sets appear sufficiently often. The name of the algorithm is
Apriori because it uses prior knowledge of frequent itemset properties.

Overview: Apriori uses a "bottom up"


approach, where frequent subsets are
extended one item at a time (a step known as
candidate generation), and groups of
candidates are tested against the data. The
algorithm terminates when no further
successful extensions are found. Apriori uses
breadth-first search and a Hash tree structure
to count candidate item sets efficiently. It
generates candidate item sets of length   from
item sets of length . Then it prunes the
candidates which have an infrequent sub The control flow diagram for the Apriori algorithm
pattern. According to the downward closure
lemma, the candidate set contains all frequent
-length item sets. After that, it scans the transaction database to determine frequent item sets among the
candidates.
Example: Assume that each row is a cancer sample with a certain combination of mutations labeled by a
character in the alphabet. For example a row could have {a, c} which means it is affected by mutation 'a'
and mutation 'c'.

Input Set
{a, b} {c, d} {a, d} {a, e} {b, d} {a, b, d} {a, c, d} {a, b, c, d}

Now we will generate the frequent item set by counting the number of occurrences of each character. This
is also known as finding the support values. Then we will prune the item set by picking a minimum support
threshold. For this pass of the algorithm we will pick 3.

Support Values
a b c d

6 4 3 6

Since all support values are three or above there is no pruning. The frequent item set is {a}, {b}, {c}, and
{d}. After this we will repeat the process by counting pairs of mutations in the input set.

Support Values

{a, b} {a, c} {a, d} {b, c} {b, d} {c, d}


3 2 4 1 3 3

Now we will make our minimum support value 4 so only {a, d} and {c, d} will remain after pruning. Now
we will use the frequent item set to make combinations of triplets. We will then repeat the process by
counting occurrences of triplets of mutations in the input set.

Support
Values

{a, c, d}
2

Since we only have one item the next set of combinations of quadruplets is empty so the algorithm will
stop.

Advantages and Limitations:

Apriori has some limitations. Candidate generation can result in large candidate sets. For example a 10^4
frequent 1-itemset will generate a 10^7 candidate 2-itemset. The algorithm also needs to frequently scan the
database, to be specific n+1 scans where n is the length of the longest pattern. Apriori is slower than the
Eclat algorithm. However, Apriori performs well compared to Eclat when the dataset is large. This is
because in the Eclat algorithm if the dataset is too large the tid-lists become too large for memory. FP-
growth outperforms the Apriori and Eclat. This is due to the FP-growth algorithm not having candidate
generation or test, using a compact data structure, and only having one database scan.[27]

Eclat algorithm

Eclat[11] (alt. ECLAT, stands for Equivalence Class Transformation) is a backtracking algorithm, which
traverses the frequent itemset lattice graph in a depth-first search (DFS) fashion. Whereas the breadth-first
search (BFS) traversal used in the Apriori algorithm will end up checking every subset of an itemset before
checking it, DFS traversal checks larger itemsets and can save on checking the support of some of its
subsets by virtue of the downward-closer property. Furthermore it will almost certainly use less memory as
DFS has a lower space complexity than BFS.

To illustrate this, let there be a frequent itemset {a, b, c}. a DFS may check the nodes in the frequent
itemset lattice in the following order: {a} → {a, b} → {a, b, c}, at which point it is known that {b}, {c},
{a, c}, {b, c} all satisfy the support constraint by the downward-closure property. BFS would explore each
subset of {a, b, c} before finally checking it. As the size of an itemset increases, the number of its subsets
undergoes combinatorial explosion.

It is suitable for both sequential as well as parallel execution with locality-enhancing properties.[28][29]

FP-growth algorithm

FP stands for frequent pattern.[30]

In the first pass, the algorithm counts the occurrences of items (attribute-value pairs) in the dataset of
transactions, and stores these counts in a 'header table'. In the second pass, it builds the FP-tree structure by
inserting transactions into a trie.

Items in each transaction have to be sorted by descending order of their frequency in the dataset before
being inserted so that the tree can be processed quickly. Items in each transaction that do not meet the
minimum support requirement are discarded. If many transactions share most frequent items, the FP-tree
provides high compression close to tree root.

Recursive processing of this compressed version of the main dataset grows frequent item sets directly,
instead of generating candidate items and testing them against the entire database (as in the apriori
algorithm).

Growth begins from the bottom of the header table i.e. the item with the smallest support by finding all
sorted transactions that end in that item. Call this item .

A new conditional tree is created which is the original FP-tree projected onto . The supports of all nodes
in the projected tree are re-counted with each node getting the sum of its children counts. Nodes (and hence
subtrees) that do not meet the minimum support are pruned. Recursive growth ends when no individual
items conditional on meet the minimum support threshold. The resulting paths from root to will be
frequent itemsets. After this step, processing continues with the next least-supported header item of the
original FP-tree.

Once the recursive process has completed, all frequent item sets will have been found, and association rule
creation begins.[31]

Others

ASSOC
The ASSOC procedure[32] is a GUHA method which mines for generalized association rules using fast
bitstrings operations. The association rules mined by this method are more general than those output by
apriori, for example "items" can be connected both with conjunction and disjunctions and the relation
between antecedent and consequent of the rule is not restricted to setting minimum support and confidence
as in apriori: an arbitrary combination of supported interest measures can be used.

OPUS search

OPUS is an efficient algorithm for rule discovery that, in contrast to most alternatives, does not require
either monotone or anti-monotone constraints such as minimum support.[33] Initially used to find rules for a
fixed consequent[33][34] it has subsequently been extended to find rules with any item as a consequent.[35]
OPUS search is the core technology in the popular Magnum Opus association discovery system.

Lore
A famous story about association rule mining is the "beer and diaper" story. A purported survey of behavior
of supermarket shoppers discovered that customers (presumably young men) who buy diapers tend also to
buy beer. This anecdote became popular as an example of how unexpected association rules might be
found from everyday data. There are varying opinions as to how much of the story is true.[36] Daniel
Powers says:[36]

In 1992, Thomas Blischok, manager of a retail consulting group at Teradata, and his staff
prepared an analysis of 1.2 million market baskets from about 25 Osco Drug stores. Database
queries were developed to identify affinities. The analysis "did discover that between 5:00 and
7:00 p.m. that consumers bought beer and diapers". Osco managers did NOT exploit the beer
and diapers relationship by moving the products closer together on the shelves.

Other types of association rule mining


Multi-Relation Association Rules (MRAR): These are association rules where each item may have
several relations. These relations indicate indirect relationships between the entities. Consider the following
MRAR where the first item consists of three relations live in, nearby and humid: “Those who live in a place
which is nearby a city with humid climate type and also are younger than 20 their health condition is
good”. Such association rules can be extracted from RDBMS data or semantic web data.[37]

Contrast set learning is a form of associative learning. Contrast set learners use rules that differ
meaningfully in their distribution across subsets.[38][39]

Weighted class learning is another form of associative learning where weights may be assigned to classes
to give focus to a particular issue of concern for the consumer of the data mining results.

High-order pattern discovery facilitates the capture of high-order (polythetic) patterns or event
associations that are intrinsic to complex real-world data. [40]

K-optimal pattern discovery provides an alternative to the standard approach to association rule learning
which requires that each pattern appear frequently in the data.

Approximate Frequent Itemset mining is a relaxed version of Frequent Itemset mining that allows some
of the items in some of the rows to be 0.[41]
Generalized Association Rules hierarchical taxonomy (concept hierarchy)

Quantitative Association Rules categorical and quantitative data

Interval Data Association Rules e.g. partition the age into 5-year-increment ranged

Sequential pattern mining discovers subsequences that are common to more than minsup (minimum
support threshold) sequences in a sequence database, where minsup is set by the user. A sequence is an
ordered list of transactions.[42]

Subspace Clustering, a specific type of clustering high-dimensional data, is in many variants also based on
the downward-closure property for specific clustering models.[43]

Warmr, shipped as part of the ACE data mining suite, allows association rule learning for first order
relational rules.[44]

See also
Sequence mining
Production system (computer science)
Learning classifier system
Rule-based machine learning

References
1. Piatetsky-Shapiro, Gregory (1991), Discovery, analysis, and presentation of strong rules, in
Piatetsky-Shapiro, Gregory; and Frawley, William J.; eds., Knowledge Discovery in
Databases, AAAI/MIT Press, Cambridge, MA.
2. Agrawal, R.; Imieliński, T.; Swami, A. (1993). "Mining association rules between sets of items
in large databases". Proceedings of the 1993 ACM SIGMOD international conference on
Management of data - SIGMOD '93. p. 207. CiteSeerX 10.1.1.40.6984 (https://citeseerx.ist.ps
u.edu/viewdoc/summary?doi=10.1.1.40.6984). doi:10.1145/170035.170072 (https://doi.org/1
0.1145%2F170035.170072). ISBN 978-0897915922. S2CID 490415 (https://api.semanticsc
holar.org/CorpusID:490415).
3. Garcia, Enrique (2007). "Drawbacks and solutions of applying association rule mining in
learning management systems" (https://sci2s.ugr.es/keel/pdf/specific/congreso/3-association
rules-Final.pdf) (PDF). Sci2s. Archived (https://web.archive.org/web/20091223124403/http://
sci2s.ugr.es/keel/pdf/specific/congreso/3-associationrules-Final.pdf) (PDF) from the original
on 2009-12-23.
4. "Data Mining Techniques: Top 5 to Consider" (https://www.precisely.com/blog/datagovernan
ce/top-5-data-mining-techniques). Precisely. 2021-11-08. Retrieved 2021-12-10.
5. "16 Data Mining Techniques: The Complete List - Talend" (https://www.talend.com/resource
s/data-mining-techniques/). Talend - A Leader in Data Integration & Data Integrity. Retrieved
2021-12-10.
6. "What are Association Rules in Data Mining (Association Rule Mining)?" (https://searchbusi
nessanalytics.techtarget.com/definition/association-rules-in-data-mining).
SearchBusinessAnalytics. Retrieved 2021-12-10.
7. "Drawbacks and solutions of applying association rule mining in learning management
systems" (https://www.researchgate.net/publication/289657906). ResearchGate. Retrieved
2021-12-10.
8. Tan, Pang-Ning; Michael, Steinbach; Kumar, Vipin (2005). "Chapter 6. Association Analysis:
Basic Concepts and Algorithms" (http://www-users.cs.umn.edu/~kumar/dmbook/ch6.pdf)
(PDF). Introduction to Data Mining. Addison-Wesley. ISBN 978-0-321-32136-7.
9. Jian Pei; Jiawei Han; Lakshmanan, L.V.S. (2001). "Mining frequent itemsets with convertible
constraints". Proceedings 17th International Conference on Data Engineering. pp. 433–442.
CiteSeerX 10.1.1.205.2150 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.205.
2150). doi:10.1109/ICDE.2001.914856 (https://doi.org/10.1109%2FICDE.2001.914856).
ISBN 978-0-7695-1001-9. S2CID 1080975 (https://api.semanticscholar.org/CorpusID:10809
75).
10. Agrawal, Rakesh; and Srikant, Ramakrishnan; Fast algorithms for mining association rules
in large databases (http://rakesh.agrawal-family.com/papers/vldb94apriori.pdf) Archived (http
s://web.archive.org/web/20150225213708/http://rakesh.agrawal-family.com/papers/vldb94ap
riori.pdf) 2015-02-25 at the Wayback Machine, in Bocca, Jorge B.; Jarke, Matthias; and
Zaniolo, Carlo; editors, Proceedings of the 20th International Conference on Very Large
Data Bases (VLDB), Santiago, Chile, September 1994, pages 487-499
11. Zaki, M. J. (2000). "Scalable algorithms for association mining". IEEE Transactions on
Knowledge and Data Engineering. 12 (3): 372–390. CiteSeerX 10.1.1.79.9448 (https://citese
erx.ist.psu.edu/viewdoc/summary?doi=10.1.1.79.9448). doi:10.1109/69.846291 (https://doi.o
rg/10.1109%2F69.846291).
12. Larose, Daniel T.; Larose, Chantal D. (2014-06-23). Discovering Knowledge in Data (https://
dx.doi.org/10.1002/9781118874059). doi:10.1002/9781118874059 (https://doi.org/10.1002%
2F9781118874059). ISBN 9781118874059.
13. Hahsler, Michael (2005). "Introduction to arules – A computational environment for mining
association rules and frequent item sets" (https://mran.revolutionanalytics.com/web/package
s/arules/vignettes/arules.pdf) (PDF). Journal of Statistical Software.
doi:10.18637/jss.v014.i15 (https://doi.org/10.18637%2Fjss.v014.i15).
14. Wong, Pak (1999). "Visualizing Association Rules for Text Mining" (https://neuro.bstu.by/ai/D
ata-mining/Stock-market/InfoVis1999Association.pdf) (PDF). BSTU Laboratory of Artificial
Neural Networks. Archived (https://web.archive.org/web/20211129082512/https://neuro.bstu.
by/ai/Data-mining/Stock-market/InfoVis1999Association.pdf) (PDF) from the original on
2021-11-29.
15. Hipp, J.; Güntzer, U.; Nakhaeizadeh, G. (2000). "Algorithms for association rule mining --- a
general survey and comparison". ACM SIGKDD Explorations Newsletter. 2: 58–64.
CiteSeerX 10.1.1.38.5305 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.38.53
05). doi:10.1145/360402.360421 (https://doi.org/10.1145%2F360402.360421).
S2CID 9248096 (https://api.semanticscholar.org/CorpusID:9248096).
16. Brin, Sergey; Motwani, Rajeev; Ullman, Jeffrey D.; Tsur, Shalom (1997). "Dynamic itemset
counting and implication rules for market basket data". Proceedings of the 1997 ACM
SIGMOD international conference on Management of data - SIGMOD '97. pp. 255–264.
CiteSeerX 10.1.1.41.6476 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.41.64
76). doi:10.1145/253260.253325 (https://doi.org/10.1145%2F253260.253325). ISBN 978-
0897919111. S2CID 15385590 (https://api.semanticscholar.org/CorpusID:15385590).
17. Omiecinski, E.R. (2003). "Alternative interest measures for mining associations in
databases". IEEE Transactions on Knowledge and Data Engineering. 15: 57–69.
CiteSeerX 10.1.1.329.5344 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.329.
5344). doi:10.1109/TKDE.2003.1161582 (https://doi.org/10.1109%2FTKDE.2003.1161582).
18. Aggarwal, Charu C.; Yu, Philip S. (1998). "A new framework for itemset generation".
Proceedings of the seventeenth ACM SIGACT-SIGMOD-SIGART symposium on Principles
of database systems - PODS '98. pp. 18–24. CiteSeerX 10.1.1.24.714 (https://citeseerx.ist.ps
u.edu/viewdoc/summary?doi=10.1.1.24.714). doi:10.1145/275487.275490 (https://doi.org/1
0.1145%2F275487.275490). ISBN 978-0897919968. S2CID 11934586 (https://api.semantic
scholar.org/CorpusID:11934586).
19. Piatetsky-Shapiro, Gregory; Discovery, analysis, and presentation of strong rules,
Knowledge Discovery in Databases, 1991, pp. 229-248
20. Tan, Pang-Ning; Kumar, Vipin; Srivastava, Jaideep (2004). "Selecting the right objective
measure for association analysis". Information Systems. 29 (4): 293–313.
CiteSeerX 10.1.1.331.4740 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.331.
4740). doi:10.1016/S0306-4379(03)00072-3 (https://doi.org/10.1016%2FS0306-4379%280
3%2900072-3).
21. Michael Hahsler (2015). A Probabilistic Comparison of Commonly Used Interest Measures
for Association Rules. https://mhahsler.github.io/arules/docs/measures
22. Hájek, P.; Havel, I.; Chytil, M. (1966). "The GUHA method of automatic hypotheses
determination". Computing. 1 (4): 293–308. doi:10.1007/BF02345483 (https://doi.org/10.100
7%2FBF02345483). S2CID 10511114 (https://api.semanticscholar.org/CorpusID:1051111
4).
23. Hájek, Petr; Rauch, Jan; Coufal, David; Feglar, Tomáš (2004). "The GUHA Method, Data
Preprocessing and Mining". Database Support for Data Mining Applications. Lecture Notes
in Computer Science. Vol. 2682. pp. 135–153. doi:10.1007/978-3-540-44497-8_7 (https://do
i.org/10.1007%2F978-3-540-44497-8_7). ISBN 978-3-540-22479-2.
24. Webb, Geoffrey (1989). "A Machine Learning Approach to Student Modelling". Proceedings
of the Third Australian Joint Conference on Artificial Intelligence (AI 89): 195–205.
25. Webb, Geoffrey I. (2007). "Discovering Significant Patterns" (https://doi.org/10.1007%2Fs10
994-007-5006-x). Machine Learning. 68: 1–33. doi:10.1007/s10994-007-5006-x (https://doi.o
rg/10.1007%2Fs10994-007-5006-x).
26. Gionis, Aristides; Mannila, Heikki; Mielikäinen, Taneli; Tsaparas, Panayiotis (2007).
"Assessing data mining results via swap randomization". ACM Transactions on Knowledge
Discovery from Data. 1 (3): 14–es. CiteSeerX 10.1.1.141.2607 (https://citeseerx.ist.psu.edu/v
iewdoc/summary?doi=10.1.1.141.2607). doi:10.1145/1297332.1297338 (https://doi.org/10.1
145%2F1297332.1297338). S2CID 52305658 (https://api.semanticscholar.org/CorpusID:52
305658).
27. Heaton, Jeff (2017-01-30). "Comparing Dataset Characteristics that Favor the Apriori, Eclat
or FP-Growth Frequent Itemset Mining Algorithms". arXiv:1701.09042 (https://arxiv.org/abs/1
701.09042) [cs.DB (https://arxiv.org/archive/cs.DB)].
28. Zaki, Mohammed Javeed; Parthasarathy, Srinivasan; Ogihara, Mitsunori; Li, Wei (1997).
"New Algorithms for Fast Discovery of Association Rules": 283–286.
CiteSeerX 10.1.1.42.3283 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.42.32
83). hdl:1802/501 (https://hdl.handle.net/1802%2F501).
29. Zaki, Mohammed J.; Parthasarathy, Srinivasan; Ogihara, Mitsunori; Li, Wei (1997). "Parallel
Algorithms for Discovery of Association Rules". Data Mining and Knowledge Discovery. 1
(4): 343–373. doi:10.1023/A:1009773317876 (https://doi.org/10.1023%2FA%3A1009773317
876). S2CID 10038675 (https://api.semanticscholar.org/CorpusID:10038675).
30. Han (2000). "Mining Frequent Patterns Without Candidate Generation". Proceedings of the
2000 ACM SIGMOD international conference on Management of data - SIGMOD '00.
Proceedings of the 2000 ACM SIGMOD International Conference on Management of Data.
Vol. SIGMOD '00. pp. 1–12. CiteSeerX 10.1.1.40.4436 (https://citeseerx.ist.psu.edu/viewdoc/
summary?doi=10.1.1.40.4436). doi:10.1145/342009.335372 (https://doi.org/10.1145%2F342
009.335372). ISBN 978-1581132175. S2CID 6059661 (https://api.semanticscholar.org/Corp
usID:6059661).
31. Witten, Frank, Hall: Data mining practical machine learning tools and techniques, 3rd edition
32. Hájek, Petr; Havránek, Tomáš (1978). Mechanizing Hypothesis Formation: Mathematical
Foundations for a General Theory (http://www.cs.cas.cz/hajek/guhabook/). Springer-Verlag.
ISBN 978-3-540-08738-0.
33. Webb, Geoffrey I. (1995); OPUS: An Efficient Admissible Algorithm for Unordered Search,
Journal of Artificial Intelligence Research 3, Menlo Park, CA: AAAI Press, pp. 431-465
online access (http://webarchive.loc.gov/all/20011118141304/http://www.cs.washington.edu/
research/jair/abstracts/webb95a.html)
34. Bayardo, Roberto J. Jr.; Agrawal, Rakesh; Gunopulos, Dimitrios (2000). "Constraint-based
rule mining in large, dense databases". Data Mining and Knowledge Discovery. 4 (2): 217–
240. doi:10.1023/A:1009895914772 (https://doi.org/10.1023%2FA%3A1009895914772).
S2CID 5120441 (https://api.semanticscholar.org/CorpusID:5120441).
35. Webb, Geoffrey I. (2000). "Efficient search for association rules". Proceedings of the sixth
ACM SIGKDD international conference on Knowledge discovery and data mining - KDD '00.
pp. 99–107. CiteSeerX 10.1.1.33.1309 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=
10.1.1.33.1309). doi:10.1145/347090.347112 (https://doi.org/10.1145%2F347090.347112).
ISBN 978-1581132335. S2CID 5444097 (https://api.semanticscholar.org/CorpusID:544409
7).
36. "DSS News: Vol. 3, No. 23" (http://www.dssresources.com/newsletters/66.php).
37. Ramezani, Reza, Mohamad Saraee, and Mohammad Ali Nematbakhsh; MRAR: Mining
Multi-Relation Association Rules, Journal of Computing and Security, 1, no. 2 (2014)
38. GI Webb and S. Butler and D. Newlands (2003). On Detecting Differences Between Groups
(http://portal.acm.org/citation.cfm?id=956781). KDD'03 Proceedings of the Ninth ACM
SIGKDD International Conference on Knowledge Discovery and Data Mining.
39. Menzies, T.; Ying Hu (2003). "Computing practices - Data mining for very busy people".
Computer. 36 (11): 22–29. doi:10.1109/MC.2003.1244531 (https://doi.org/10.1109%2FMC.2
003.1244531).
40. Wong, A.K.C.; Yang Wang (1997). "High-order pattern discovery from discrete-valued data".
IEEE Transactions on Knowledge and Data Engineering. 9 (6): 877–893.
CiteSeerX 10.1.1.189.1704 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.189.
1704). doi:10.1109/69.649314 (https://doi.org/10.1109%2F69.649314).
41. Liu, Jinze; Paulsen, Susan; Sun, Xing; Wang, Wei; Nobel, Andrew; Prins, Jan (2006).
"Mining Approximate Frequent Itemsets in the Presence of Noise: Algorithm and Analysis".
Proceedings of the 2006 SIAM International Conference on Data Mining. pp. 407–418.
CiteSeerX 10.1.1.215.3599 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.215.
3599). doi:10.1137/1.9781611972764.36 (https://doi.org/10.1137%2F1.9781611972764.36).
ISBN 978-0-89871-611-5.
42. Zaki, Mohammed J. (2001); SPADE: An Efficient Algorithm for Mining Frequent Sequences,
Machine Learning Journal, 42, pp. 31–60
43. Zimek, Arthur; Assent, Ira; Vreeken, Jilles (2014). Frequent Pattern Mining. pp. 403–423.
doi:10.1007/978-3-319-07821-2_16 (https://doi.org/10.1007%2F978-3-319-07821-2_16).
ISBN 978-3-319-07820-5.
44. King, R. D.; Srinivasan, A.; Dehaspe, L. (Feb 2001). "Warmr: a data mining tool for chemical
data". J Comput Aided Mol Des. 15 (2): 173–81. Bibcode:2001JCAMD..15..173K (https://ui.a
dsabs.harvard.edu/abs/2001JCAMD..15..173K). doi:10.1023/A:1008171016861 (https://doi.
org/10.1023%2FA%3A1008171016861). PMID 11272703 (https://pubmed.ncbi.nlm.nih.gov/
11272703). S2CID 3055046 (https://api.semanticscholar.org/CorpusID:3055046).

Bibliographies
Annotated Bibliography on Association Rules (http://michael.hahsler.net/research/bib/associ
ation_rules/) by M. Hahsler

Retrieved from "https://en.wikipedia.org/w/index.php?title=Association_rule_learning&oldid=1150528912"

You might also like