एप्रोरी 1994 में R. अग्रवाल और R. श्रीकांत द्वारा विकसित एक मौलिक एल्गोरिदम है जो बूलियन एसोसिएशन नियमों के लिए लगातार आइटमसेट्स के खनन के लिए है। एल्गोरिदम इस मामले पर निर्भर करता है कि एल्गोरिदम को लगातार आइटमसेट गुणों का पूर्व ज्ञान चाहिए।
एप्रोरी एक पुनरावृत्त विधि का उपयोग करता है जिसे लेवल-वाइज खोज कहा जाता है, जहां k-आइटमसेट्स (k+1)-आइटमसेट्स का पता लगा सकते हैं। पहले, लगातार 1-आइटमसेट्स का सेट डेटाबेस को ब्राउज़ करके प्रत्येक आइटम के लिए गिनती इकट्ठा करके और न्यूनतम समर्थन को पूरा करने वाले उन आइटम्स को प्राप्त करके खोजा जाता है। परिणामी सेट को L1 द्वारा दर्शाया गया है।
अगला, L1 L2 ढूंढ सकता है, लगातार 2-आइटमसेट्स का सेट, जो L3 ढूंढ सकता है, आदि, जब तक कोई और लगातार k-आइटमसेट्स नहीं मिल सकते। प्रत्येक Lk की खोज के लिए डेटाबेस का एक पूर्ण स्कैन आवश्यक है।
लेवल-वाइज पीढ़ी की प्रभावशीलता बढ़ाने के लिए लगातार आइटमसेट्स, एक आवश्यक संपत्ति जिसे एप्रोरी संपत्ति के रूप में जाना जाता है। यह खोज स्थान को कम कर सकता है।
एप्रोरी संपत्ति - एक लगातार आइटमसेट के कुछ गैर-खाली सबसेट भी लगातार होने चाहिए।
एप्रोरी संपत्ति निम्नलिखित अवलोकन पर निर्भर करती है। परिभाषा के अनुसार, यदि एक आइटमसेट I न्यूनतम समर्थन थ्रेशोल्ड, मिन सुप, को पूरा नहीं करता है, तो I लगातार नहीं है; यानी, P(I) < min_sup।
यदि आइटम A को आइटमसेट I में डाला जाता है, तो परिणामी आइटमसेट (यानी, I ∪ A) I से अधिक नियमित रूप से प्रकट नहीं हो सकता। इस प्रकार, I∪A लगातार नहीं है जैसे P(I ∪ A) < min_sup।
यह संपत्ति एंटीमोनोटोन के रूप में जानी जाने वाली संपत्तियों के एक तत्व से संबंधित है इस अर्थ में कि यदि एक सेट एक परीक्षण पास नहीं कर सकता, तो कुछ सुपरसेट्स भी इसी तरह के परीक्षण को अस्वीकार कर देंगे। इसे एंटीमोनोटोन के रूप में जाना जाता है क्योंकि संपत्ति एक परीक्षण को अस्वीकार करने के संदर्भ में मोनोटोनिक है।
दो-चरण प्रक्रिया का पालन किया जाता है, जिसमें जॉइन और प्रून क्रियाएं शामिल हैं जो निम्नलिखित हैं:
जॉइन चरण - यह Lk ढूंढने के लिए, Lk-1 को स्वयं के साथ जोड़कर उम्मीदवार k-आइटमसेट्स का एक सेट उत्पन्न किया जाता है। उम्मीदवारों के इस सेट को Ck द्वारा दर्शाया गया है। मान लें कि L1 और L2 Lk-1 में आइटमसेट्स हैं। प्रलेखन Li[j] Li में jवें आइटम को परिभाषित करता है (उदाहरण के लिए, L1 [k-2] L1 में अंतिम से दूसरे आइटम को परिभाषित करता है)।
प्रून चरण - Ck Lk का एक सुपरसेट है, यानी, इसके सदस्य लगातार नहीं हो सकते, लेकिन कुछ लगातार k-आइटमसेट्स Ck में शामिल हैं। डेटाबेस का एक स्कैन Ck में प्रत्येक उम्मीदवार की गिनती तय करने के लिए Lk के निर्धारण में परिणाम दे सकता है (यानी, कुछ उम्मीदवार जिनकी गिनती न्यूनतम समर्थन गिनती से कम नहीं है, परिभाषा के अनुसार लगातार हैं, और इस प्रकार Lk से संबंधित हैं)। Ck बड़ा हो सकता है, और इसमें बड़ी गणना शामिल हो सकती है।