এপ্রিয়রি (Apriori) হলো সেই অ্যালগরিদম যেটি ফ্রিকোয়েন্ট আইটেমসেট জেনারেশনের কম্বিনেটোরিয়াল বিস্ফোরণকে কঠোরভাবে সমাধান করেছে। এটি এপ্রিয়রি প্রিন্সিপল ব্যবহার করে এক্সপোনেনশিয়াল সার্চ স্পেস সংকুচিত করে এটি করে। এর গুরুত্বপূর্ণ পারফরম্যান্স উন্নতির باড়ঘরে, অ্যালগরিদমটি konsiderেবল I/O ওভারহেড লাভ করে কারণ এটি ট্রানজ্যাকশন রেকর্ডসেটের ওপর একাধিক পাস করার প্রয়োজন।
ডেন্স ডেটাসেটের জন্য এপ্রিয়রি অ্যালগরিদমের পারফরম্যান্স ترানজ্যাকশনের প্রস্থ বৃদ্ধির কারণে“什么”ডিগ্রেড করতে পারে। এই খামি দূর করে এবং এপ্রিয়রি অ্যালগরিদমের কার্যকারিতা বেড়াতে একাধিক পদ্ধতি উন্নত করা হয়েছে।
নিচে এই পদ্ধতিগুলোর হাই-লেভেল বর্ণনা দেওয়া হলো:
আইটেমসেট ল্যাটিস ট্রভার্সাল (Traversal of Itemset Lattice)
ফ্রিকোয়েন্ট আইটেমসেটের সার্চকে আইটেমসেট ল্যাটিসে ট্রভার্সাল হিসেবে বিবেচনা করা যায়। একটি অ্যালগরিদম যে সার্চ কৌশল ব্যবহার করে সেটি নির্ধারণ করে ল্যাটিস কাঠামোটি ফ্রিকোয়েন্ট আইটেমসেট জেনারেশন ফেজে কীভাবে ট্রভার্স করা হয়। কিছু সার্চ কৌশল অন্যগুলোর চেয়ে ভালো, ল্যাটিসে ফ্রিকোয়েন্ট আইটেমসেটের কম্পোজিশনের ওপর নির্ভর করে।
জেনারেল-টু-স্পেসিফিক বনাম স্পেসিফিক-টু-জেনারেল (General-to-Specific versus Specific-to-General)
এপ্রিয়রি অ্যালগরিদম জেনারেল-টু-স্পেসিফিক সার্চ পদ্ধতি ব্যবহার করে, যেখানে ফ্রিকোয়েন্ট (k-1)-আইটেমসেটের যুগ्मগুলো কম্বাইন করা হয় ক্যান্ডিডেট k-আইটেমসেট পেতে। এই জেনারেল-টু-স্পেসিফিক সার্চ পদ্ধতি কার্যকর, যতক্ষণ না ফ্রিকোয়েন্ট আইটেমসেটের সর্বোচ্চ দৈর্ঘ্য খুব দীর্ঘ হয়।
স্পেসিফিক-টু-জেনারেল সার্চ পদ্ধতি প্রথমে বেশি স্পেসিফিক ফ্রিকোয়েন্ট আইটেমসেট খুঁজে, তারপর জেনারেল ফ্রিকোয়েন্ট আইটেমসেট খুঁজে। এই পদ্ধতি ডেন্স ট্রানজ্যাকশনে ম্যাক্সিমাল ফ্রিকোয়েন্ট আইটেমসেট খুঁজে বের করার জন্য উপকারী, যেখানে ফ্রিকোয়েন্ট আইটেমসেট বর্ডার ল্যাটিসের নিচের দিকে অবস্থিত।
এপ্রিয়রি প্রিন্সিপল ব্যবহার করে ম্যাক্সিমাল ফ্রিকোয়েন্ট আইটেমসেটের কিছু সাবসেট প্রুন করা যায়। বিশেষ করে, যদি একটি ক্যান্ডিডেট k-আইটেমসেট ম্যাক্সিমাল ফ্রিকোয়েন্ট হয়, তবে এর কোথাও k-1 আকারের সাবসেট নির্ধারণ করার প্রয়োজন নেই। কিন্তু যদি ক্যান্ডিডেট k-আইটেমসেট ইনফ্রিকোয়েন্ট হয়, তবে পরবর্তী ইটারেশনে এর সব k-1 সাবসেট চেক করা লাগে।
একটি অন্য পদ্ধতি হলো জেনারেল-টু-স্পেসিফিক এবং স্পেসিফিক-টু-জেনারেল উভয় সার্চ পদ্ধতি কম্বাইন করা। এই বাইডাইরেকশনাল পদ্ধতিতে ক্যান্ডিডেট আইটেমসেট সংরক্ষণের জন্য বেশি স্পেস লাগে, তবে এটি দ্রুত ফ্রিকোয়েন্ট আইটেমসেট বর্ডার চিহ্নিত করতে সাহায্য করে।
একুইভ্যালেন্স ক্লাস (Equivalence Classes)
ট্রভার্সাল ভিজ্যুয়ালাইজ করার একটি অন্য পদ্ধতি হলো ল্যাটিসকে ডিসজয়েন্ট নোডের গোষ্ঠীতে (বা একুইভ্যালেন্স ক্লাসে) পার্টিশন করা। একটি ফ্রিকোয়েন্ট আইটেমসেট জেনারেশন অ্যালগরিদম একটি নির্দিষ্ট একুইভ্যালেন্স ক্লাসের ভেতরে ফ্রিকোয়েন্ট আইটেমসেট খুঁজে, তারপর অন্য একুইভ্যালেন্স ক্লাসে স্যুইচ করে।
এপ্রিয়রি অ্যালগরিদমে ব্যবহৃত লেভেল-ওয়াইজ পদ্ধতিকে আইটেমসেট সাইজের ভিত্তিতে ল্যাটিস পার্টিশন করার হিসেবে বিবেচনা করা যায়; অর্থাৎ, অ্যালগরিদম প্রথমে ফ্রিকোয়েন্ট 1-আইটেমসেট খুঁজে বের করে তারপর উচ্চতর আকারের আইটেমসেটে যাওয়া। একুইভ্যালেন্স ক্লাসকে আইটেমসেটের প্রিফিক্স বা সাফিক্স লেবেল অনুযায়ীও ডিফাইন করা যায়।