الگوریتم‌های داده کاوی در SQL Server Data Tools یا SSDT - قسمت پنجم - الگوریتم‌ Association Rules
اندازه‌ی قلم متن
تخمین مدت زمان مطالعه‌ی مطلب: دو دقیقه

از این الگوریتم بیشتر جهت تحلیل سبد خرید یا چیزی شبیه به آن استفاده می‌شود. مشتری در هر خرید، الگویی را تولید می‌کند. این الگو نشان دهنده این است که معمولا کدام کالاها با یکدیگر خریداری می‌شوند.


مقدمه

خودتان را جای مدیر یک سوپرمارکت بگذارید. یکی از وظایف شما فروش بالاتر نسبت به بقیه مدیران یک سوپرمارکت زنجیره ای است. برای نیل به این هدف، درک الگوی خرید مشتریان بسیار حایز اهمیت است. فرض کنید متوجه شده‌اید که مشتریان شما در 75 درصد موارد سس، هات داگ و ترشی را با هم خریده‌اند. بنابراین چیدن قفسه به طوری که این اقلام کنار یکدیگر باشند، بهتر است. همچنین می‌توانید پکیجی را شامل این اقلام ایجاد کرده و با درصد تخفیف مناسبی به‌فروش برسانید؛ برای مثال یک ترشی را که تازه به بازار آمده و هنوز اقبال عمومی در رابطه با آن وجود ندارد، اما سود خوبی در فروش آن نصیب شما می‌شود، در این پکیج و در کنار هات داگ و سس معروفی قرار داده و بفروش برسانید.


نحوه عملکرد الگوریتم

این الگوریتم، براساس شمارش ترکیبات تکرارشونده‌ی حالات گوناگون ویژگی‌های یک مدل، کار می‌کند. این الگوریتم شبیه به الگوریتم Naïve Bayes می‌باشد؛ با این تفاوت که دارای رویکرد کمی است (براساس عدد خامی از وقوع ترکیبات حالات یک ویژگی) و رویکرد کیفی ندارد (محاسبه تمامی احتمالات شرطی، آنچه که در الگوریتم Naïve Bayes اتفاق می‌افتاد). همچنین در اینجا ماتریس ضرایبی محاسبه نمی‌شود، بلکه تنها ضرایب قابل توجه، نگهداری می‌شوند.


تفسیر مدل

این الگوریتم، پس از پردازش، سه تب دارد.


تب Itemsets تعداد تکرار مجموعه اقلام کشف شده را نشان می‌دهد. مقدار پارامتر Minimum_Support اگر خیلی پایین در نظر گرفته شود، آنگاه لیست طولانی را ایجاد می‌کند. با استفاده از Filter Item Set می‌توان Item Set‌های موردنظر را فیلتر نمود. برای مثال می‌توان چنین Item Set ای را در نظر گرفت Gender=Male.

تب Rules نشان دهنده قوانین وابستگی کاربردی و ارزشمندی می‌باشد که به همراه احتمال و درجه اهمیتشان در یک جدول آورده شده‌اند. درجه اهمیت (Importance) نشان دهنده میزان سودمندی یک قانون است و هرچه بیشتر باشد، قانون متناظر آن درجه کیفی بالاتری دارد. به عبارت دیگر بیشتر می‌توان روی آن قانون حساب کرد. توسط پارامترهای Minimum_Probability و Minimum_Importance به ترتیب می‌توان لیست مزبور را براساس مینیمم احتمال و مینیمم درجه اهمیت فیلتر کرد.

تب Network Dependency، هر آیتم و قانون، وابستگی بین آن‌ها را نشان می‌دهد.


نکته آخر: در یک مدل وابستگی، اگر ستونی به عنوان ورودی در نظر گرفته شود، مقادیرش فقط می‌توانند در itemset‌های تکرار شونده و درسمت چپ قوانین وابستگی قرار بگیرند. اگر ستونی به عنوان خروجی درنظر گرفته شود، حالات مختلف آن ستون می‌توانند در itemset‌های تکرار شونده و در سمت راست قوانین وابستگی قرار بگیرند. اگر ستونی به عنوان ورودی-خروجی در نظر گرفته شود، آنگاه حالات مختلف آن ستون می‌توانند در itemset‌های تکرار شونده و در سمت چپ و هم راست قوانین وابستگی قرار بگیرند.