الگوریتم FP-Growth (Frequent Pattern Growth) یکی از الگوریتمهای کارآمد برای کشف مجموعههای اقلام مکرر (Frequent Itemsets) در پایگاههای داده تراکنشی است. این الگوریتم، برخلاف Apriori، نیازی به تولید کاندیداها ندارد و از ساختار دادهای به نام FP-Tree برای فشردهسازی پایگاه داده و استخراج الگوهای مکرر استفاده میکند. نرمافزار وکا (Weka)، بهعنوان یک مجموعه ابزار قدرتمند برای یادگیری ماشین و دادهکاوی، امکان پیادهسازی و اجرای این الگوریتم را بهصورت گرافیکی و کدنویسی فراهم میکند.
FP-Growth چیست و چرا در وکا؟
FP-Growth با ساخت یک درخت FP-Tree، اطلاعات تراکنشها را بهصورت فشرده ذخیره میکند و سپس با کاوش این درخت، الگوهای مکرر را بدون نیاز به اسکن مکرر پایگاه داده استخراج میکند. این ویژگی، آن را برای دادههای حجیم بسیار کارآمد میسازد. وکا به دلیل رابط کاربری آسان و قابلیتهای بصریسازی، انتخابی عالی برای آموزش و پیادهسازی الگوریتمهای دادهکاوی، از جمله FP-Growth، است.
آمادهسازی دادهها برای FP-Growth در وکا
پیش از اجرای الگوریتم FP-Growth در وکا، دادههای شما باید در قالب مناسبی باشند. وکا معمولاً از فرمت ARFF (Attribute-Relation File Format) استفاده میکند. برای FP-Growth، هر رکورد یا نمونه در فایل ARFF باید نمایانگر یک تراکنش باشد و هر صفت (Attribute) نمایانگر یک قلم (Item) باشد. مقادیر صفتها باید باینری (مثلاً ‘true’/‘false’ یا ‘1’/‘0’) یا از نوع اسمی (Nominal) باشند که نشاندهنده حضور یا عدم حضور آن قلم در تراکنش است.
مراحل آمادهسازی:
- تبدیل دادهها: اگر دادههای شما در فرمت CSV یا سایر فرمتها هستند، میتوانید آنها را به ARFF تبدیل کنید. وکا ابزارهای داخلی برای این تبدیل را دارد.
- تعریف صفتها: هر قلم (مثلاً “شیر”، “نان”، “تخممرغ”) باید یک صفت جداگانه در فایل ARFF باشد.
- تنظیم مقادیر: اگر قلمی در تراکنش وجود دارد، مقدار صفت مربوط به آن را ‘true’ یا یک مقدار اسمی (Nominal) مناسب (مثلاً نام قلم) و در غیر این صورت ‘false’ یا ‘?’ (Missing Value) قرار دهید.
پیادهسازی الگوریتم FP-Growth در وکا
برای اجرای FP-Growth در محیط گرافیکی وکا (Explorer)، مراحل زیر را دنبال کنید:
1. بارگذاری مجموعه داده
- باز کردن Weka Explorer: نرمافزار وکا را اجرا کرده و گزینه “Explorer” را انتخاب کنید.
- بارگذاری فایل ARFF: به تب “Preprocess” بروید. روی دکمه “Open file…” کلیک کرده و فایل ARFF آمادهشده خود را انتخاب کنید. دادهها در این قسمت نمایش داده خواهند شد.
2. اجرای الگوریتم FP-Growth
- رفتن به تب Associate: در بالای پنجره Explorer، روی تب “Associate” کلیک کنید.
- انتخاب الگوریتم: در قسمت “Associator”، روی دکمه “Choose” کلیک کنید. از لیست باز شده، به مسیر
weka.associations.FPGrowthبروید و آن را انتخاب کنید. - تنظیم پارامترها:
- روی نام الگوریتم (FPGrowth) که زیر دکمه “Choose” نمایش داده شده، کلیک کنید تا پنجره تنظیمات باز شود.
minSupport: حداقل پشتیبانی (Minimum Support) را تعیین کنید. این پارامتر حداقل درصد یا تعداد تراکنشهایی است که یک مجموعه اقلام باید در آنها ظاهر شود تا مکرر در نظر گرفته شود. (مثلاً0.1برای ۱۰ درصد).numRules: حداکثر تعداد قوانینی که باید تولید شود.maxNumberOfItems: حداکثر تعداد اقلام در هر مجموعه اقلام مکرر.- سایر پارامترها را میتوانید بر اساس نیاز خود تنظیم کنید. پس از تنظیمات، روی “OK” کلیک کنید.
- شروع پردازش: روی دکمه “Start” در سمت راست پایین پنجره کلیک کنید.
3. تفسیر نتایج
پس از اتمام اجرای الگوریتم، نتایج در پنجره “Associator output” در سمت راست نمایش داده میشوند. این نتایج شامل:
- Frequent Itemsets (مجموعههای اقلام مکرر): لیستی از تمام مجموعههای اقلامی که معیار حداقل پشتیبانی را برآورده کردهاند. هر مجموعه شامل لیستی از اقلام و میزان پشتیبانی (Support) آن است.
- مثال:
{Bread, Milk} (Support: 0.25)به این معنی است که “نان” و “شیر” با هم در ۲۵ درصد از تراکنشها ظاهر شدهاند. - Association Rules (قوانین انجمنی): اگر FP-Growth برای تولید قوانین انجمنی (Association Rules) نیز پیکربندی شده باشد، لیستی از قوانین به همراه معیار “اطمینان” (Confidence) و “لیفت” (Lift) نمایش داده میشود.
- مثال:
Bread => Milk (Conf: 0.75, Lift: 1.5)به این معنی است که اگر مشتری “نان” بخرد، ۷۵ درصد احتمال دارد که “شیر” نیز بخرد، و این ارتباط ۱.۵ برابر قویتر از زمانی است که خرید “شیر” و “نان” مستقل از یکدیگر باشند.
مزایای استفاده از FP-Growth در وکا
- کارایی بالا: برای مجموعه دادههای بزرگ، FP-Growth سریعتر از الگوریتمهایی مانند Apriori عمل میکند.
- سهولت استفاده: رابط کاربری گرافیکی وکا اجرای الگوریتم و تنظیم پارامترها را بسیار ساده میکند.
- بصریسازی: وکا ابزارهایی برای بصریسازی دادهها و نتایج ارائه میدهد که در فهم الگوها کمککننده است.
کلیدواژه ها : پیادهسازی FP-Growth در وکا-الگوریتم FP-Growth-Weka Explorer-دادهکاوی در وکا-کشف الگوهای مکرر-Frequent Itemsets-قوانین انجمنی-Association Rules-مدلسازی تراکنشها-Weka ARFF-تحلیل سبد خرید-Market Basket Analysis-فشردهسازی دادهها-Data Mining Algorithm