بخشی از مقاله
*** این فایل شامل تعدادی فرمول می باشد و در سایت قابل نمایش نیست ***
شخصي سازي وب با استفاده از قوانين انجمني توسعه يافته
چکيده
قوانين انجمني نوعا براي توضيح اينکه چه آيتمهايي مکررا" با هم خريداري ميشوند استفاده شده اند. همچنين ميتوان از قوانين انجمني در شخصي سازي وب براي اينکه مشخص کرد چه صفحاتي اغلب با هم ملاقات ميشوند استفاده کرد. دو ايرادي که ميتوان به شخصي سازيهايي که با قوانين انجمني انجام شده گرفت اين است که ترتيب صفحات در کاوش در نظر گرفته نميشود که اين باعث ميشود دقت پيشنهادات کاهش پيدا کند و همچنين براي کاوش قوانين کاربر بايد فقط يک مينيمم ضريب پشتيبان را مشخص کند که اين اغلب منجر به تعداد خيلي زياد يا خيلي کم قوانين ميشود که تاثير منفي در کارآئي شخصي سازي وب دارد. در اين مقاله روشي براي شخصي سازي وب با استفاده از قوانين انجمني توسعه يافته که از ضريب پشتيبانهاي چندگانه و همچنين از ترتيب صفحات استفاده ميکند پيشنهاد ميگردد. کارآئي الگوريتم پيشنهادي از طريق مقايسه با دو روش قوانين انجمني و قوانين انجمني با ضريب پشتيبانهاي چندتائي مورد ارزيابي قرار گرفته است . نتايج آزمايشها حاکي از برتري روش پيشنهادي دارد.
کلمات کليدي
شخصي سازي وب ، کاوش استفاده از وب ، قوانين انجمني
١- مقدمه
کاوش وب در واقع استفاده از تکنيکهاي داده کاوي براي کشف و استخراج اطلاعات مفيد و قابل توجه از دنياي پيچيده و پرهياهوي وب است [١٣,١٦]. با توجه به اينکه يکي از مهمترين خصوصيات دنياي وب ، سهل الوصول بودن جابجايي از يک منطقه به منطقه ديگر است ، کاربران وب را مي توان بسيار سيار تلقي کرد. و با توجه به اين خصوصيت سيار بودن کاربران وب ، اگر يک وب سايت نتواند به نيازهاي يک مشتري ، در مدت کوتاهي از زمان پاسخ مفيدي بدهد، کاربر به راحتي و به سرعت به وب سايت ديگري مراجعه مي کند. بنابراين ، فهميدن و کشف کردن نيازها و خصوصيات کاربران و استفاده کنندگان وب ، براي طراحان وب سايت بسيار مهم است [٤,٥].
براي حل اين مشکل شخصي کردن وب يک پديده ي محبوب به منظور سفارشي کردن محيطهاي وب تبديل شده است . هدف سيستم هاي شخصي ساز فراهم کردن نيازهاي کاربران ، بدون اينکه به طور صريح آنها را بيان کنند يا نشان بدهند مي باشد[١٤]. شخصي سازي وب به طرق مختلف انجام مي شود که يکي از آنها استفاده از قوانين انجمني مي باشد.
مسئله ي کاوش قوانين انجمني اولين بار در سال ١٩٩٣ مطرح شد[٧,١٢]. اين مفهوم روي داده هاي يک سوپرمارکت به کار گرفته شد. يک مثال از قوانين انجمني در اين خصوص اين است که ٩٠% از تراکنشهايي که شامل کره و نان هستند شامل شير هم هستند[٣]. يعني ٩٠% از مشتريان يک فروشگاه که نان و کره مي خرند شير را نيز مي خرند. همچنين قوانين انجمني براي آناليز ترافيک وب سايت نيز به کار گرفته مي شود[١٥]. نتايج قوانين انجمني نشان مي دهد که صفحات وب اغلب با هم درخواست داده مي شوند[٦]. از اين طريق مي توان صفحه ي بعدي را که يک بازديدکننده مي خواهد ملاقات کند پيش بيني کرد و از طريق آن شخصي سازي وب را انجام داد.
دو ايرادي که مي توان به شخصي سازيهايي که با قوانين انجمني انجام شده گرفت اين است که ترتيب صفحات در کاوش در نظر گرفته نمي شود که اين باعث مي شود دقت پيشنهادات کاهش پيدا کند و همچنين براي کاوش قوانين کاربر بايد فقط يک مينيمم ضريب پشتيبان ١ را مشخص کند که اين اغلب منجر به تعداد خيلي زياد يا خيلي کم قوانين مي شود که تاثير منفي در کارآئي شخصي سازي وب دارد [٢]. ما در اين مقاله شخصي سازي وب را با قوانين انجمني توسعه يافته که از ضريب پشتيبانهاي چندگانه استفاده مي کند و ترتيب صفحات را در نظر مي گيرد انجام مي دهيم . کارآئي روش پيشنهادي از طريق مقايسه با دو روش قوانين انجمني ٢ و قوانين انجمني با ضريب پشتيبانهاي چندتائي ٣ مورد ارزيابي قرار خواهد گرفت که نتايج نشان مي دهد دقت پيشنهادات ايجاد شده با روش پيشنهادي از دو روش ديگر بيشتر است که اين موجب شده کارآئي روش پيشنهادي در حد مطلوبي باشد.
ادامه ي مقاله بدين صورت سازمان دهي شده است ، در بخش ٢ مروري بر قوانين انجمني داريم در بخش ٣ روش پيشنهادي را مطرح مي کنيم در بخش ٤ ارزيابي روش پيشنهادي را مطرح مي کنيم و در بخش ٥ نتيجه گيري مقاله مي باشد.
٢- قوانين انجمني
فرض کنيد که D يک پايگاه داده از تراکنشها باشد. هر تراکنش شامل يک شناسه ي تراکنش و يک مجموعه از آيتمهاي که از مجموعه ي جهاني I انتخاب شده مي باشد. در جدول ١ يک پايگاه داده ، شامل ٤ تراکنش نشان داده شده است .
که آيتمها وابسته به کاربرد هستند، براي مثال آيتمها مي تواند محصولات مختلف خريداري شده توسط يک مشتري باشند يا مثل اين مقاله صفحه ي وبي باشند که شخص آنها را ملاقات کرده است . يک قانون انجمني يک عبارت به شکل فوق مي باشد : هر قانون انجمني به وسيله ي ضريب پشتيان ٤ و اطمينانش ٥ به صورت زير توصيف مي شود[١٠,١١]:
به عنوان مثال براي قانون انجمني در پايگاه داده داده شده ضريب پشتيبان آن ٥٠% است و ضريب اطمينانش ٦٦.٧% است .
مطابق با تعريفهاي بالا ضريب پشتيبان يک قانون درصدي از تراکنشهايي است که شامل مي باشند. کاوش قوانين انجمني اساسا" همه ي قوانين انجمني را که ضريب پشتيبان و اطمينانشان بالاتر از حداقل ضريب پشتيبان و حداقل ضريب اطمينان مشخص شده باشد پيدا مي کند.
٢-١- قوانين انجمني با محدوديت زماني
براي اينکه ترتيب آيتمها را در کاوش قوانين انجمني در نظر بگيريم از ضريب پشتيبان زماني و ضريب اطمينان زماني که در مقاله ي [٣] معرفي شده استفاده مي کنيم که در ادامه توضيح مختصري در اين مورد داده مي شود. فرض کنيد که ما پايگاه داده ي D را مشابه به جدول ١ داريم ولي هر آيتم يک مهر زماني مرتبط را دارد. از آنجائي که زمان هر تراکنش مهم است مهر زماني آيتم اول در هر تراکنش با صفر مقداردهي شده است .
حالا تعريف زير را در نظر بگيريد:
در پايگاه داده ي اگر براي قانون دو مقدار محاسبه شود ديده ميشود که fsup قانون برابر با است و fconf آن برابر با ٦٦.٧% است . در مقايسه با محاسبه ي ضريب پشتيبان و اطمينان نرمال تراکنش دوم در نظر گرفته نشده به دليل اينکه A بعد از B ملاقات شده است . با استفاده از اطلاعات زماني که در پايگاه داده موجود است مي توان معناي بيشتري را به قوانين انجمني داد. براي مثال ، از ضريب اطمينان صد درصدي قانون ما مي توانيم نتيجه بگيريم که صفحه ي G هميشه در ترکيب با صفحه ي A ملاقات مي شود. سپس از fconf قانون که برابر ٠% است ما نتيجه مي گيريم که صفحه ي A هميشه قبل از صفحه ي G ملاقات مي شود. ترکيب اين دو اندازه به ما شناخت بهتري از داده مي دهد. همچنين مي توان bsup و bconf را به روش مشابه تعريف کرد:
ما مي توانيم اين تعريفها را به صورت زير تعميم دهيم که مقادير صحيح هستند.
براي تعاريف متناسب با تعاريف نرمال ضريب پشتيان و اطمينان است . براي اين تعاريف مطابق با تعاريف fsup و fconf است و براي این تعاريف مطابق با تعاريف bsup و bconf مي باشند.
٢-٢- قانون انجمني با مينيمم ضريب پشتيبانهاي چندتائي
جزء کليدي که باعث شده کاوش قوانين انجمني عملي باشد وجود حداقل ضريب پشتيبان است . آن براي هرس کردن فضاي جستجو و محدود کردن تعداد قوانين توليد شده استفاده شده است . با در نظر گرفتن فقط يک حداقل ضريب پشتيبان ، فرض مي کنيم که همه ي آيتمهاي در پايگاه داده ماهيت يکسان و تعداد تکرار مشابهي دارند که اغلب در کاربردهاي زندگي روزمره اينگونه نيست . در بسياري از کاربردها، برخي آيتمها خيلي زياد مشاهده مي شوند در حالي که برخي ديگر خيلي کمتر مشاهده مي شوند[٢]. اگر تعداد تکرار آيتمها خيلي متغير باشد، ما با دو مشکل مواجه مي شويم :
١- اگر حداقل ضريب پشتيبان خيلي بزرگ باشد، ما آن دسته از قوانيني را که شامل آيتمهايي هستند که تکرار کمي دارند يا شامل آيتمهاي ناياب هستند را پيدا نمي کنيم .
٢- اگر حداقل ضريب پشتيبان خيلي کوچک باشد، ما آن دسته ازقوانيني را که شامل آيتمهايي هستند که مکررا" تکرار مي شوند و آيتمهايي که بندرت يافت مي شوند را پيدا مي کنيم که اين باعث مي شود تعداد قوانين کاوش شده خيلي زياد باشد.
به عنوان مثال در يک تراکنش داده هاي فروشگاه ، براي يافتن قوانيني که شامل آيتمهاي خريداري شده با تکرار کم هستند مثل قابلمه و ماهي تابه ما نياز داريم تا حداقل ضريب پشتيبان را با مقدار خيلي کم مقداردهي کنيم (٠.٥%) ما ممکن است قانون مفيد زير را پيدا کنيم :
ماهي تابه → قابلمه
در حالي که اين ضريب پشتيبان کوچک ممکن است همچنين منجر شود به اينکه قانون بي معني زير نيز يافت شود:
آب پرتغال →نان ، پنير، شير
اين قانون به ما مي گويد که ٠.٥% از مشتريها اين ٤ آيتم را با هم خريداري مي کنند که استفاده ي کمي از آن مي شود زيرا همه ي اين آيتمها مکررا" خريداري مي شوند. براي اينکه اين قانون مفيد باشد، بايد حداقل ضريب پشتيبان بالاتر باشد.در مقاله [٢] اثبات شده که استفاده از تنها يک ضريب پشتيبان براي کل پايگاه داده نامناسب است زيرا آن نمي تواند طبيعت ذاتي و يا اختلاف فرکانس آيتمها را در پايگاه داده بدست آورد.
منظور ما از طبيعت آيتمها اين است که برخي آيتمها به طور طبيعي بيشتر از برخي ديگر ظاهر مي شوند. براي مثال در يک سوپرمارکت مردم قابلمه و ماهي تابه را کمتر از نان و شير مي خرند ولي در حالت کلي اجناسي که ماندگار و يا گران هستند خوب است که کمتر خريده شوند چرا که هر کدام از آنها اطلاعات مفيدي را توليد مي کنند. پس مهم است تا قوانيني را که شامل آيتمهايي با تکرار کم هستند را بدست آوريم اما بايد اينکار را به گونه اي انجام دهيم که به آيتمهاي تکرار شونده اجازه ندهيم تا قوانين انجمني بي معني زيادي با ضريب پشتيبانهاي خيلي پائين توليد کنند.