Association rule (e.g., Apriori and Eclat algorithms)

Apriori and Eclat algorithms

Association rule learning is a technique used to uncover relationships or associations between items in large datasets, particularly used in market basket analysis. It aims to identify rules that describe how certain items often appear together. Two of the most popular algorithms for association rule learning are Apriori and Eclat.

Apriori Algorithm:

Principle: If an itemset is frequent, then all its subsets must also be frequent. This principle helps reduce the number of combinations we need to test.

How Apriori Works:

  1. Set a Minimum Support: Define a minimum support that an itemset needs to meet to be considered “frequent”.
  2. First Pass: Count the occurrences of each item in the dataset. Discard items that do not meet the minimum support.
  3. Build Item Pairs: Create combinations of two items. Again, only keep those combinations that meet the minimum support.
  4. Repeat: Continue generating itemsets (triplets, quadruplets, etc.), counting their occurrences, and filtering out those below the minimum support.
  5. Generate Rules: For each frequent itemset, generate association rules and evaluate them based on metrics like confidence, lift, etc.


  • Widely used and easy to understand.
  • It can be parallelized.


  • Can be slow on large datasets since it evaluates multiple combinations.
  • Needs multiple passes over the dataset.

Eclat Algorithm:

Principle: Eclat is a depth-first search algorithm that uses set intersection.

How Eclat Works:

  1. Initialization: Represent the dataset as a vertical Transaction-Items (TID) format instead of the traditional horizontal item-transaction format. In this format, for each item, we maintain a list of transactions in which it appears.
  2. Set a Minimum Support: Define a minimum support count.
  3. Start with Single Items: Just like Apriori, start with single itemsets.
  4. Intersect TID lists: For two items (say A and B), the support count of the itemset {A, B} is the intersection of their TID lists.
  5. Depth-First Search: Expand one itemset at a time and compute the TID intersections to find the support count. If the support is below the threshold, stop expanding that branch.
  6. Repeat: Continue this process for larger itemsets.


  • Faster than Apriori because it uses depth-first search and set intersection.
  • Uses less memory as it does not involve storing candidate sets.
  • Requires only one pass over the data.


  • Like Apriori, might still be slow for very large datasets due to the combinatorial explosion.

Practical Considerations:

  • Support, Confidence, and Lift: These are three main metrics used in association rule mining.
    • Support: Indicates the popularity of an itemset.
    • Confidence: Shows the likelihood of item Y being purchased when item X is purchased.
    • Lift: Indicates the likelihood of item Y being purchased when item X is purchased while controlling for the popularity of Y.
  • Setting Thresholds: The values of minimum support, confidence, etc., need to be set carefully. Too high values may result in no rules, while too low values can generate an excessive number of rules, many of which might be irrelevant.

In summary, association rule learning, with algorithms like Apriori and Eclat, is valuable for discovering relations between variables in large databases, especially in scenarios like recommending products to customers based on their purchasing behavior.

Leave a Reply

Your email address will not be published. Required fields are marked *