مقاله —d1262

2-10- مشکلات فیلترینگ اشتراکی.....................................................................................................32
2-10-1- پراکنده بودن داده...................................................................................................................32
2-10-2- مقیاس پذیری.........................................................................................................................32
2-10-3- اقلام مشابه...............................................................................................................................33
2-10-4- گریشیپ.................................................................................................................................33
2-11- بررسی چگونگی کارکرد سایت آمازون....................................................................................33
فصل 3 : روش محتوا محور.....................................................................................................................36
3-1- پیشگفتار...........................................................................................................................................37
3-2- روند کار روش محتوا محور...........................................................................................................37
3-2-1- تحلیلگر محتوا..........................................................................................................................38
3-2-2- یادگیرنده نمایه .................................................................................................................39
3-2-3- جزء فیلترینگ............................................................................................................................42
3-3- مزایای روش محتوا محور..............................................................................................................42
3-3-1- استقلال کاربر.............................................................................................................................42
3-3-2- شفافیت........................................................................................................................................42
3-3-3- قلم جدید.....................................................................................................................................43
3-4- معایب روش محتوا محور...............................................................................................................43
3-4-1- کمبود محتوا...............................................................................................................................43
3-4-2- خصوصی سازی افزون...............................................................................................................43
3-4-3- کاربر جدید..................................................................................................................................44
فصل 4 : روش پیشنهادی.........................................................................................................................45
4-1- پیشگفتار...........................................................................................................................................46
4-2- مروری بر کارهای انجام شده در این راستا................................................................................46
4-3- مقدمهای بر روش پیشنهادی........................................................................................................48
4-4- روش پیشنهادی..............................................................................................................................48
4-4-1- پیش پردازش..............................................................................................................................49
4-4-1-1- پیش پردازش بر روی پایگاه داده MovieLens........................................................49
4-4-1-2- پیش پردازش بر روی پایگاه داده EachMovie........................................................50
4-4-2- وزندهی به اقلام........................................................................................................................51
4-4-3- انتخابهمسایگی........................................................................................................................53
4-4-4- پیشبینی....................................................................................................................................54
فصل 5 : آزمایشها و نتایج......................................................................................................................56
5-1- پایگاه دادههای مورد استفاده........................................................................................................57
5-2- نحوه اجرای روش پیشنهادی روی پایگاه داده MovieLens..............................................57
5-3- نحوه اجرای روش پیشنهادی روی پایگاه داده ٍEachMovie..............................................58
5-4- معیارهایارزیابی..............................................................................................................................58
5-4-1- میانگین خطای مطلق...............................................................................................................58
5-4-2- دقت و فراخوانی.........................................................................................................................59
5-4-3- معیار ارزیابیF1........................................................................................................................60
5-5- ارزیابی روش پیشنهادی توسط معیارهای معرفی شده...........................................................61
فصل 6 : بحث و نتیجهگیری...................................................................................................................66
6-1- بحث...................................................................................................................................................67
6-2- نتیجهگیری......................................................................................................................................67
6-4- پیشنهادات........................................................................................................................................68
مراجع...........................................................................................................................................................69
فهرست جدول ها
عنوان و شماره صفحه
جدول شماره 1 : نمونههایی از سیستمهای پیشنهادگر و اقلام پیشنهادی آنها..............................7
جدول شماره 2 : مقایسه میانگین خطای مطلق روش پایه و روش پیشنهادی، اعمال شده بر MovieLens.............................................................................................................................................61
جدول شماره 3 : مقایسه میانگین خطای مطلق روش پایه و روش پیشنهادی، اعمال شده بر EachMovie.............................................................................................................................................61
جدول شماره 4 : مقایسه معیار دقت روش پایه و روش پیشنهادی، اعمال شده بر
MovieLens.............................................................................................................................................61
جدول شماره 5 : مقایسه معیار دقت روش پایه و روش پیشنهادی، اعمال شده بر
EachMovie ............................................................................................................................................62
جدول شماره 6 : مقایسه معیار فراخوانی روش پایه و روش پیشنهادی، اعمال شده بر MovieLens.............................................................................................................................................62
جدول شماره 7 : مقایسه معیار فراخوانی روش پایه و روش پیشنهادی، اعمال شده بر EachMovie.............................................................................................................................................62
جدول شماره 8 : مقایسه معیارF1 روش پایه و روش پیشنهادی، اعمال شده بر MovieLens.............................................................................................................................................62
جدول شماره 9 : مقایسه معیارF1 روش پایه و روش پیشنهادی، اعمال شده بر
EachMovie.............................................................................................................................................62
جدول شماره 10 : مقایسه میانگین خطای مطلق روش پیشنهادی با روشهای[19] و [20]..............................................................................................................................................................65
فهرست تصاویر
عنوان و شماره صفحه
شکل شماره 1: نمونههایی از موتورهای جستجوگر............................................................................5
شکل شماره 2 : نمونه صفحهای از سایت Movielens...................................................................11
شکل شماره 3 : نمونه صفحه درخواست امتیازدهی Movielens از کاربر..................................12
شکل شماره 4 : نمونه صفحه فیلمهای پیشنهادی از سوی Movielens به کاربر..................13
شکل شماره 5 : نمونه ماتریس امتیازدهی کاربران - اقلام...............................................................22
شکل شماره 6: فیلترینگ اشتراکی مبتنی بر اقلام..........................................................................25
شکل شماره 7 : فیلترینگ اشتراکی مبتنی بر کاربران......................................................................25
شکل شماره 8 : روند تولید پیشنهاد در آمازون..................................................................................34
شکل شماره 9 : نمونه صفحهای از سایت آمازون...............................................................................35
شکل شماره 10 : ارائه پیشنهاد بر اساس کارت خرید مشتری.......................................................35
شکل شماره 11 : روند کار روش محتوا محور.....................................................................................38
شکل شماره 12 : نمونه صفحهای از سایت آمازون...........................................................................40
شکل شماره 13 :استفاده از روش محتوا محور در سایت آمازون..................................................41
شکل شماره 14 : نمایش مفاهیم دقت و فراخوانی در حوزه بازیابی اطلاعات.............................59
شکل شماره 15: رابطه معیار فراخوانی با معیار دقت.......................................................................60
شکل شماره 16: مقایسه میانگین خطای مطلق روش پایه و روش پیشنهادی، اعمال شده بر
MovieLens.............................................................................................................................................63شکل شماره 17: مقایسه میانگین خطای مطلق روش پایه و روش پیشنهادی، اعمال شده بر
EachMovie.............................................................................................................................................63
شکل شماره 18: مقایسه معیار دقت، فراخوانی و F روش پایه و روش پیشنهادی، اعمال شده بر EachMovie.......................................................................................................................................64
شکل شماره 19: مقایسه معیار دقت، فراخوانی و F روش پایه و روش پیشنهادی، اعمال شده بر MovieLens.........................................................................................................................................64

فصل اول
مقدمه
1- مقدمه
1-1- پیشگفتار
پیدایش اینترنت و وب جهان گستر موجب شده است که در رابطه با هر موضوع قابل تصور، حجم بسیار زیادی از اطلاعات وجود داشته باشد که کاربران بتوانند با استفاده از آن نیاز اطلاعاتی خود را برطرف سازند. افزایش روز افزون اطلاعات باعث شد که مشکل سربار اطلاعات به وجود آید و کاربران به تنهایی قادر به برطرف کردن نیازهای خود نباشند. . زیرا کاربران مجبور بودند به صورت بر خط تمامی صفحات را جستجو کنند تا بتوانند آن قسمتی را که مورد نیازشان است پیدا کنند. به همین دلیل موتورهای جستجوگر به وجود آمدند تا کاربران بتوانند با استفاده از آنها بدون نیاز به بررسی تعداد زیادی از صفحات به اطلاعات مورد نظرشان دسترسی پیدا کنند.
1-2- موتورهای جستجوگر
به عبارت دیگر یک موتور جستجوگر وب سایتی است که میتوان از آن برای پیدا کردن صفحات وب استفاده کرد. وقتی کاربر درخواست خود را در قالب کلمات کلیدی وارد موتور جستجوگر میکند موتور جستجوگر در بین بیلیونها صفحه وب جستجو کرده و به کاربر کمک میکند اطلاعاتی که به دنبال آن است را بیابد. با استفاده از این ابزار سرعت و دقت در جستجو بسیار افزایش یافت و کاربران توانستند به سادگی و در کمترین زمان به بهترین نتایج دست یابند.
انواع زیادی از موتورهای جستجوگر توسط کمپانیهای مختلف ساخته شده است که معروفترین آنها بینگ، یاهو و گوگل میباشد (شکل شماره 1).
هر موتور جستجوگر راه و روش خود را برای سازماندهی اطلاعات دارد، پس نتیجه از یک موتور جستجوگر تا دیگری متفاوت خواهد بود.
موتورهای جستجوگر به دو دسته کلی تقسیم میشوند : موتورهای جستجوگر پیمایشی و فهرستهای تکمیل دستی. موتورهای جستجوگر ترکیبی نیز حاصل ترکیب دو نوع بالا میباشند. گونهای جدید از موتورهای جستجوگر نیز تحت عنوان ابر جستجوگرها وجود دارد که در ادامه به طور خلاصه به توضیح هر کدام از این موارد خواهیم پرداخت.
1-2-1- موتورهای جستجوگر پیمایشی
این موتورهای جستجوگر، وب را پیمایش و اطلاعاتی را ذخیره میکنند. سپس کاربران از میان این اطلاعات آنچه را که میخواهند جستجو میکنند. اگر در صفحه وب تغییراتی اعمال شود موتورهای جستجوگر پیمایشی به طور خودکار آنها را مییابند و تغییرات مذکور را در فهرستها اعمال میکنند. نمونههایی ازموتورهای جستجوگر پیمایشی گوگل و یاهو میباشند.
1-2- 2- فهرستهای تکمیل دستی
فهرستهای تکمیل دستی وابسته به کاربرانی میباشد که آن را تکمیل میکنند. یا کاربر خودش صفحه مورد نظر را به همراه توضیحی کوتاه در فهرست ثبت میکند یا این کار توسط ویراستارهایی که برای آن فهرست در نظر گرفته شده صورت میپذیرد. در این حالت عمل جستجو تنها بر روی توضیحات ثبت شده انجام میگیرد و اگر تغییری روی صفحه وب به وجود آید در فهرست تغییر به وجود نخواهد آمد. نمونهای از فهرستهای تکمیل دستی
Open Directoryمیباشد.
1-2-3- موتورهای جستجوگر ترکیبی
این موتورهای جستجوگر نتایج حاصل از جستجوی هر دو نوع بالا را با هم ترکیب میکنند و نشان میدهند. علاوه بر این میتوانند برای نتایج یک نوع، اولویت قائل شوند. مثلا موتور جستجوی MSN اولویت را روی نتایج حاصل از فهرستهای تکمیل دستی قرار میدهد. ولی برای درخواستهای پیچیده، نتایج حاصل از جستجوی پیمایشی را نیز بررسی میکند.
1-2-4- ابر جستجوگرها
این نوع جدید از موتورهای جستجوگر نتایج حاصل از چند موتور جستجوگر را ترکیب نموده و نشان میدهد. به عبارتی دیگر درخواست کاربر را در چندین موتور جستجوگر جستجو کرده، سپس نتایج یافته شده را با هم ترکیب نموده و یک نتیجه کلی در اختیار کاربر قرار میدهد. به عنوان مثال موتور جستجوگر dogpile نتایج حاصل از موتورهای جستجوگرGoogle ، Yahoo، MSN و ASK را با هم ترکیب میکند و به کاربر ارائه میدهد.

شکل شماره 1 : نمونههایی از موتورهای جستجوگر
1-3- سیستمهای پیشنهادگر
مطالعات اخیر نشان دادهاند که عمده موتورهای جستجوگر با نرخ پایین موفقیت مواجه هستند. این نرخ با میزان دریافت نتایج مرتبط، نسبت به میانگین کاربران جستجو کننده تعیین میشود. به عنوان مثال در یکی از مطالعات[1] بیش از 20000 درخواست جستجو بررسی شده و مشخص گردیده که به طور میانگین در 48% موارد، کاربر در نتایجی که به او ارائه شده حداقل یک مورد مرتبط با جستجویش که ارزش انتخاب داشته باشد پیدا میکند. به بیان دیگر در 52% موارد، کاربر هیچ کدام از مواردی را که به عنوان نتیجه جستجو به او بازگشت داده میشود انتخاب نمیکند. البته این مشکل همان قدر که به موتور جستجوگر بستگی دارد به میزان دانش کاربر جستجو کننده در چگونگی نحوه جستجو نیز بستگی دارد. زیرا درخواست جستجو ممکن است منجر به ابهام شود و به ندرت میتواند به روشنی نیاز کاربر جستجو کننده را بیان کند. در این مواقع کاربر با لیست نتیجهای که نمیتواند نیاز اطلاعاتی او را برطرف سازد روبرو میشود. او در این شرایط معمولا درخواست خود را تعویض یا اصلاح میکند تا نتیجه دلخواهش به او ارائه شود.
در [2] نشان داده است که 10% از درآمد کسانی که با اطلاعات کار میکنند به دلیل تلف شدن زمانشان در جستجو از بین میرود. همچنین در بدترین حالت درصد قابل توجهی از جستجو کنندهها ممکن است در پیدا کردن اطلاعاتی که مورد نیازشان است با شکست روبرو شوند. این مسائل نشان میدهد که جستجوی وب بسیار ناکارامدتر از آن است که انتظار می- رود. همچنین علاوه بر افزایش تعداد صفحات وب تعداد کاربران اینترنت نیز به شدت افزایش یافت. کاربران هم میخواستند نیاز اطلاعاتیشان را بر طرف کنند و هم مایل به تولید و اشتراک گذاری اطلاعات، علائق و نیازمندیهای خود بودند. بنابراین شبکههای اجتماعی مانند Facebook و Twitter تاسیس شدند. همچنین سایتهایی مانند YouTube راه اندازی شد که محلی برای اشتراک گذاری فیلمها و مشاهده فیلمهای به اشتراک گذاشته میباشد.
در این بین برای برطرف نمودن ناکارامدیهای موتورهای جستجوگر و نیازهای کاربران سیستمهای پیشنهادگر به وجود آمدند.
سیستمهای پیشنهادگر برای انتخاب و ارائه اطلاعات مورد نیاز کاربران نقش قابل توجهی را ایفا نمودهاند. این سیستمها میتوانند حتی بدون اینکه کاربر درخواست جستجو بدهد تعدادی از اقلام را به او پیشنهاد یا اطلاعات مورد نیازش را به او ارائه دهد. اقلام میتوانند فیلم، موزیک، صفحه وب و... باشند (جدول شماره 1). همچنین کاربر پیشنهاداتی را از طریق یک جستجوی هوشمندانه دریافت خواهد کرد. بنابراین تاثیر به سزایی در صرفه جویی زمان و دست یابی به هدف مورد نظر کاربر دارد. زیرا از این طریق میتواند از میان این حجم بالا آن قسمت که مورد نیازش است را در اختیار داشته باشد. بدین ترتیب از سردرگم شدن کاربر هنگام تصمیمگیری جلوگیری به عمل میآید.
جدول شماره 1 : نمونههایی از سیستمهای پیشنهادگر و اقلام پیشنهادی آنها
SYSTEM Content
Amazon Books, CDS, Others
Epinions Books, CDS, Others
MovieLens Movie
Netflix DVD
Yahoo! Music Music
Grundy Books
Video Recommender Video
Ringo Music
PHOAKS Textual Information
Jester Jokes
Fab Sys-- Web page
با افزایش روز افزون اطلاعات، نیاز به وجود این سیستمها بیشتر احساس شده است. این سیستمها پیشنهادات را با استفاده از انواع مختلف دانش و داده جمع آوری شده در مورد کاربران و اقلام و همچنین بررسی تراکنشهایی مانند بازخوردی که کاربران در گذشته ایجاد کردهاند تولید میکنند. در سادهترین فرم، این پیشنهادات به صورت یک لیستی که بر اساس علائق و نیازهای کاربر مرتب شده به او عرضه خواهد شد.
در [3] سیستمهای پیشنهادگر براساس فیلترینگ اشتراکی، محتوا، آمارگیری، سود، دانش،و ترکیبی کلاسبندی شدهاند.
1-3-1- سیستم پیشنهادگر بر اساس فیلترینگ اشتراکی
فیلترینگ اشتراکی یکی از رایجترین راهکارها در سیستمهای پیشنهادگر است .[4] این راهکار اقلامی که کاربران مشابه با کاربر فعال در گذشته به آنها علاقه داشتهاند را به او پیشنهاد میکند. شباهت بین کاربران بر اساس نحوه امتیازدهیشان در گذشته محاسبه میشود.
این پایان نامه بر اساس این نوع از سیستمهای پیشنهادگر میباشد که در فصل دوم به تفصیل توضیح داده خواهد شد.
1-3-2- سیستم پیشنهادگر محتوا محور
یکی از پر کاربردترین راهکارها در سیستمهای پیشنهادگر روش محتوا محور میباشد. سیستمهای محتوا محور بر اساس ویژگیهای اقلام تعریف میشوند. آنها بررسی میکنند که کاربر در گذشته چه اقلامی مورد علاقهاش بوده، سپس اقلام مشابه را به او پیشنهاد میدهند. مثلا اگر کسی در گذشته به فیلمی از نوع کمدی امتیار مثبت داده است این سیستم در آینده فیلمهایی از این نوع را به او پیشنهاد میکند. از آنجا که روش پیشنهادی در این پایان نامه از روش محتوا محور استفاده می کند، در فصل پنجم به طور مفصل در مورد سیستم پیشنهادگر محتوا محور بحث خواهد شد.
1-3-3- سیستم پیشنهادگر بر اساس آمارگیری
تکنیک پیشنهاد براساس آمارگیری مبتنی بر اطلاعات آماری کاربران میباشد. دادههایی که در نمایه کاربر وجود دارد مانند جنسیت، سن، وضعیت خانوادگی و ... نمونههایی از اطلاعات آماری کاربر میباشد. کاربران بر اساس خصوصیاتشان کلاس بندی میشوند و پیشنهادات بر اساس این کلاسها صورت میپذیرد.
1-3-4- سیستم پیشنهادگر بر اساس سود
سیستمهای بر اساس سود، تابع سود که توسط کاربر تولید میشود را به کار میبرند. به عنوان مثال درقالب پرسشنامه این کار صورت میپذیرد. سپس بر اساس اینکه هر قلم چه مقدار سود برای کاربر دارد پیشنهادات صورت میگیرد. این نوع از سیستمها تکنیکهای ارضای محدودیت را به کار میبرند تا بهترین قلم را پیشنهاد کنند.
1-3-5- سیستم پیشنهادگر بر اساس دانش
سیستمهای پیشنهادگر بر اساس دانش، از دانشی که از خصوصیات اقلام و کاربران استخراج میگردد بهره برداری میکنند. آنها بررسی میکنند که چطور یک قلم بهخصوص میتواند نیازهای کاربر را بر آورده سازد. در سادهترین فرم، دانش مذکور میتواند در فرم درخواست توسط کاربر تولید شود.
1-3-6- سیستم پیشنهادگر ترکیبی
سیستمهای پیشنهادگر ترکیبی دو یا چند تکنیک را ترکیب میکنند تا کارایی سیستم پیشنهادگر را افزایش دهند. مثلا دو تکنیک A وB را ترکیب میکنند که از مزایای تکنیک اول برای بر طرف سازی معایب تکنیک دوم استفاده کنند. مثلا متد فیلترینگ اشتراکی با مشکل قلم جدید و کاربر جدید مواجه میباشد. یعنی قلمی که تا کنون هیچ کس به آن امتیازی نداده است را نمیتواند پیشنهاد کند. در عین حال متد بر اساس محتوا به دلیل اینکه پیشنهادات بر اساس محتوا و ویژگیهای اقلام میباشد نه امتیازات داده شده به آنها، چنین مشکلی را ندارد. پس میتوان از ترکیب این دو متد در برطرف کردن نواقص یکدیگر استفاده نمود.
1-4- بررسی سایت Movielens
MovieLens یک سیستم پیشنهادگر فیلم است (شکل شماره 2). راهکار این سیستم به این صورت است که از کاربر میخواهد به فیلم هایی که تا کنون دیده است در بازه 1 تا 5 امتیازدهی کند (شکل شماره 3). پس از آن امتیازات داده شده از سوی کاربر را ذخیره کرده و از کاربر یک مدل میسازد. زمانی که کاربر درخواست میکند که سیستم فیلمهایی را به او پیشنهاد کند، سیستم مدل کاربر فعال و همچنن مدل کاربرانی که شبیه به او میباشند را استخراج کرده و امتیاز فیلمهایی که کاربر فعال تا کنون ندیده است را از روی مدل کاربران شبیه به او پیشبینی میکند. سپسفیلمهایی که برای آنها امتیاز بالایی پیشبینی شده است را به کاربر فعال پیشنهاد میکند. کاربر لیست پیشنهاد شده از سوی سیستم را مشاهده کرده و فیلمهای مورد علاقهاش را انتخاب میکند (شکل شماره 4).

شکل شماره 2 : نمونه صفحهای از سایت Movielens [5]

شکل شماره 3: نمونه صفحه درخواست امتیازدهی Movielens از کاربر [5]

شکل شماره 4 : نمونه صفحه فیلمهای پیشنهادی از سوی Movielens به کاربر [5]
1-5- اهداف پایان نامه
روشهای محتوا محور و فیلترینگ اشتراکی از راهکارهای موفق در سیستمهای پیشنهادگر میباشند. روش محتوا محور بر اساس ویژگیهای اقلام تعریف میشود. این روش بررسی میکند که اقلام مورد علاقه کاربر دارای چه ویژگیهایی بودهاند، سپس اقلام دارای ویژگیهای مشابه را به او پیشنهاد میکند. روش فیلترینگ اشتراکی بر اساس تعیین اقلام مشابه یا کاربران مشابه کار میکند که به ترتیب فیلترینگ اشتراکی مبتنی بر اقلام و مبتنی بر کاربران نامیده میشود.
روش پایه فیلترینگ اشتراکی مبتنی بر کاربر، به منظور پیشبینی امتیاز قلم هدف، هیچ تمایزی بین اقلام قائل نمیشود. به عبارت دیگر امتیازهای تمامی اقلام به طور یکسان در انتخاب همسایگی (کاربران مشابه) و پیشبینی تاثیر میگذارند. در این پایان نامه یک سیستم پیشنهادگر فیلترینگ اشتراکی مبتنی بر کاربر، مجهز به مکانیزم تخصیص پویای وزن به اقلام، ارائه شده است. مبنای این مکانیزم، تخصیص وزن به اقلام بر اساس میزان شباهت آنها با قلم هدف میباشد. میزان شباهت اقلام توسط یک روش محتوا محور سنجیده میشود. از آنجا که پایگاه داده مورد استفاده در این پایان نامه مربوط به فیلم است، برای بالا بردن کارایی این روش علاوه بر استفاده از ویژگی ژانرها، از ویژگیهای دیگری از جمله کارگردانان و بازیگران به عنوان دادههای مکمل استفاده شده است.
1-6- ساختار پایان نامه
از آنجا که اساس روش پیشنهادی در این پایان نامه فیلترینگ اشتراکی میباشد در فصل دوم به تفصیل به شرح این روش و تاریخچهای از کارهای انجام شده در این زمینه پرداخته میشود.
پس از آن به دلیل استفاده از روش محتوا محور به جهت ارتقا روش فیلترینگ اشتراکی، مبانی این روش در فصل سوم توضیح داده میشود.
در فصل چهارم روش پیشنهادی که تلفیقی از روشهای فیلترینگ اشتراکی و محتوا محور میباشد و کارهای انجام شده در این زمینه ارائه میشود.
در فصل پنجم آزمایشهای انجام شده بر روش پیشنهادی و نتایج حاصل از این آزمایشها ارائه میگردد.
در فصل ششم به جمعبندی مطالب، نتیجهگیری و ارائه پیشنهادهایی برای آینده پرداخته میشود.
فصل دوم
روش فیلترینگ اشتراکی
2- روش فیلترینگ اشتراکی
2-1- پیشگفتار
این پایان نامه بر فیلترینگ اشتراکی که نوعی از سیستمهای پیشنهادگر میباشد متمرکز شده است. این نوع از سیستم های پیشنهادگر نقش قابل توجهی را در پیدا کردن سلیقه و علائق کاربر ایفا میکند. انگیزه پیدایش فیلترینگ اشتراکی از اینجا به وجود آمد که مردم معمولا بهترین پیشنهادات را از کسانی میگیرند که سلیقهشان مشابه با خودشان است. این متد، کاربران با سلیقه شبیه به هم را پیدا میکند و بر این اساس پیشنهادات را ارائه میدهد.
2-2- مروری بر کارهای انجام شده در این راستا
در [6] اولین سیستم پیشنهادگر رسمی که tapestry نامیده میشود ارائه شد. این یک سیستم برای مدیریت ایمیل بود و تصدیق کرد که یک لیست ایمیل ساده نمیتواند به تمام کاربرانی که علاقهمند به محتوای یک ایمیل هستند اطمینان دریافت آن را بدهد. بنابراین به کاربران اجازه شرح پیام ایمیلها را داد تا دیگران با ساختن پرسش بتوانند آنها را فیلتر کنند. اندکی بعد محققان دریافتند که این لیست ایمیل و فیلترینگ بر اساس محتوا در رابطه با نیازهای اطلاعاتی پیچیده کاربر کافی نیست. بنابراین، این عقیده مطرح شدکه سیستم با به کاربردن عامل انسان ارتقاء خواهد یافت. عبارت فیلترینگ اشتراکی به منظور توصیف اینکه چطور کاربران میتوانند با تولید کردن بازخورد به فیلترینگ پیام ها کمک کنند به کار برده شد. این بازخورد شامل ارسال، دریافت پیام و ... میباشد.
در [7]تحقیق در مورد فیلترینگ اشتراکی با استفاده از الگوریتم مبتنی بر همسایگی برای اخبارUsenet انجام شده است. قابل ذکر است که Usenet نوعی شبکه اینترنتی میباشد. این کار توسط سیستمی که GroupLensنامیده میشود انجام پذیرفت[8] . GroupLens که سیستمی پیشنهادگر بر اساس کاربر است به منظور ارزیابی و پیشنهاد دادن اقلام به کاربر از امتیازهای 1 تا 5 که دیگر کاربران به این اقلام نسبت دادهاند استفاده میکند. اکنون MovieLens که یک سیستم پیشنهادگر فیلم است راهاندازی شده است. سیستم Grouplens از معیار همبستگی پیرسون برای نشان دادن میزان شباهت کاربران به یکدیگر استفاده میکند (فرمول شماره 1).
pa,i=ra+u=1n[(ru,i-ru)*wa,u]u=1nwa,u (1)
pa,i نشانگر امتیاز پیشبینی شده برای قلم i ام میباشد. n تعداد همسایهها را نشان میدهد، ru,iامتیاز کاربر uبه قلم iام و raمیانگین امتیازهای کاربر فعال میباشد. wa,u میزان شباهت بین کاربر فعال و همسایه u را نشان میدهد که به صورت همبستگی پیرسون در فرمول شماره 2 تعریف شده است.
wa,u=i=1mra,i-raru,i-rui=1m(ra,i-ra)2i=1m(ru,i-ru)2 (2)
در سال 1996 تکنولوژی GroupLens تحت NetPerceptionبه صورت تجاری درآورده شد. یکی از اولین کاربران تجاری GroupLens سرویس الکترونیکی خرده فروشی آمازون بود که به عنوان فروشگاه کتاب برخط راه اندازی شد.
در [9]سیستم پیشنهادگر موزیک Ringoبراساس الگوریتم اصلی Grouplens توسعه یافت. Ringo اقلام را بر اساس امتیازهایی که کاربران مشابه به آنها داده بودند فیلتر میکرد. زمانی که کاربر در سیستم ثبت نام مینمود یک لیست از 125 موسیقیدان محبوب که به طور تصادفی انتخاب شده بودند را در اختیار او قرار میداد و از کاربر میخواست که به اعضای این لیست امتیازهای بین 1 تا 7 بدهد. سپس ازکاربر یک نمایه میساخت. Ringo میزان شباهتها را با استفاده از همبستگی پیرسون محدود شده محاسبه کرد و برای تولید پیشنهاد میانگین تمامی کاربران موجود در همسایگی را به کار برد و مدعی کارایی بهتر شد. همانطور که در فرمول شماره 3 نشان داده شده است عدد 4 به این دلیل انتخاب شده که حد وسط بازه امتیازهای 1 تا 7 است. Ringo عضویت در همسایگی را فقط با انتخاب همسایگانی که همبستگی آنها بیشتر از یک حد آستانه ثابت است محدود کرد. با بزرگتر شدن حد آستانه دقت بیشتر میشود ولی تعداد اقلامی که سیستم پیشنهادگر قادر به پیشبینیشان است کاهش مییابد.
wa,u=i=1m[(ra,i-4)(ru,i-4)]i=1mra,i-42i=1m(ru,i-4)2 (3)
به تدریج این سیستم به صورت تجاری در آورده شد و در سال 1995 نام آن به Firefly تغییر یافت. این سیستم حاوی یک رابط به صورت صفحه وب و فروشگاه دیسک فشرده رویخط بود و همچنین قادر بود برای انواع فیلم پیشتهاد تولید کند. این سیستم گسترش وسیعی کرد تا جایی که درسال 1998 توسطMicrosoft پذیرفته شد و به
Microsoft Passport تغییر یافت.
در [10]سیستم پیشنهادگر ویدیو Bellcoreنیز بر اساس الگوریتم اصلی Grouplens توسعه یافت. سیستم پیشنهادگر ویدیو Bellcore از همبستگی پیرسون برای وزندهی تعدادی از همسایهها که به طور تصادفی انتخاب شده بودند استفاده نمود. سپس بهترین همسایگان را انتخاب و برای پیشبینی یک رگرسیون کامل چندگانه روی آنها اعمال کرد.
مهمترین اتفاق اخیر در رابطه با سیستمهای پیشنهادگر اعلام جایزهی Netflix در اواخر سال 2006 بوده است.Netflix انجمن کرایه DVDاز آمریکا، پایگاه دادهای از امتیازهایی که کاربران به فیلمها اختصاص دادهاند منتشر کرد که به روز بود و همچنان به عنوان بزرگترین مجموعه امتیازدهی کاربران باقی مانده است. آنها اجتماع وسیعی را برای بهترکردن پیشبینی سیستمشان به میزان حداقل 10% به رقابت طلبیدند و جایزه یک میلیون دلاری برای آن درنظر گرفتند. بیشتر از 20000 تیم درطی 3 سال به این موضوع پرداختند و طی این رقابت مسائلی ازقبیل فاکتورگیری ماتریس، متدهای جمعی و دینامیکهای موقتی یاد گرفته شد[11] .
در [12] یک تحلیل تجربی روی الگوریتمهای فیلترینگ اشتراکی مبتنی بر همسایگی انجام شد. برای تعیین میزان شباهت معیارهای همبستگی پیرسون و کسینوس با هم مقایسه شدند و دریافته شد که همبستگی پیرسون بهتر کار میکند. اگرچه پس از آن در [12] اظهار شد که این دو معیار ممکن است یکسان عمل کنند.
در [13] راهکار امید بخش تشخیص هویت برای سیستمهای فیلترینگ اشتراکی ارائه شده که مدل Bayesian و روشهای مبتنی بر همسایگی را ترکیب میکند. خصوصیت خوبی که این راهکار دارد این است که یک توزیع احتمالی از امتیاز به جای مقدار واقعی امتیاز تولید میکند. این توزیع میتواند برای مشخص کردن میزان اعتماد به پیشبینی استفاده شود. همچنین ادعا شده است که این راهکار برای دادههای فیلم که شبیه به دادههایی است که ما در مقالهها استفاده میکنیم در انتخاب نزدیکترین همسایهها دقیقتر از همبستگی عمل میکند.
در [14] روشی ارائه شده که با استفاده از آن میتوان پارامترهای مربوط به فیلترینگ اشتراکی را برای هر کاربر شخصیسازی کرد. از جمله این پارامترها تعداد افرادی میباشد که در گروه همسایگی هر کاربر شرکت میکنند. این کار توسط شبیهسازی تکراری مجموعه دادههای آموزشی و درستی سنجی برای هر کاربر بهطور جداگانه صورت میگیرد.
در [15] روشی برای حل مشکل پراکندگی امتیازها در ماتریس کاربران- اقلام ارائه شده است. این مشکل زمانی به وجود میآید که تعداد اقلام بدون امتیاز بسیار بیشتر از تعداد اقلام امتیازدهی شده باشد. در این روش ابتدا مدلهایی از فیلترینگ اشتراکی به کار برده میشوند تا امتیازهای اقلام بدون امتیاز پیشبینی شوند. سپس با استفاده از نتایج حاصل شده امتیاز قلم مورد نظر با اطمینان بیشتر تعیین میگردد.
در [16]راه حلی برای مشکل شروع سرد در سیستمهای فیلترینگ اشتراکی ارائه شده است. مشکل شروع سرد زمانی به وجود میآید که سیستم بخواهد برای کاربری جدید که تا کنون امتیازی به اقلام نداده و یا قلمی جدید که تا کنون امتیازی از کاربران دریافت نکرده پیشبینی نماید. این روش به جای استفاده از بردار امتیازدهی به تنهایی، از ترکیب خطی یا آبشاری بردارهای شخصیت و بردارهای امتیازدهی برای تعیین میزان شباهت کاربران به یکدیگر استفاده میکند. بردار شخصیت، برداری دو قطبی است که هر مولفه آن تعیین کننده یک خصوصیت از شخصیت کاربر مورد نظر میباشد.
در [17] راهکاری ارائه شده که توسط آن میتوان به گروهی از کاربران گروهی از اقلام را پیشنهاد کرد. در سیستمهای فیلترینگ اشتراکی معمولی اقلامی که برای پیشنهاد به هر کاربر میتوانند مناسب باشند به طور جداگانه مشخص و سپس از نتایج حاصل شده اشتراک گرفته میشود. در روش پیشنهاد شده از نزدیکترین همسایگان تمامی کاربران موجود در گروه موردنظر اشتراک گرفته میشود. حاصل یک مجموعه مشترک از همسایگان برای تمام کاربران موجود در گروه میباشد. سپس با استفاده از این همسایگان مشترک قلم یا اقلامی به گروه مذکور پیشنهاد میگردد.
در [18] یک معیار جدید برای اندازهگیری میزان شباهت کاربران در سیستمهای فیلترینگ اشتراکی ارائه شده است. در این روش مشکل اختلاف ابعاد بین بردارهای امتیازدهی کاربران حل شده است. به بیان دیگر میزان شباهت دو کاربر با توجه به تعداد اقلامی که هر دو به آنها رای دادهاند تعیین میگردد. در صورتی که واحدهای اندازهگیری مانند همبستگی پیرسون این اختلاف ابعاد را در نظر نمیگیرند.
در [19]راهکاری جدید برای فیلترینگ اشتراکی مبتنی بر حافظه ارائه شده است. در این روش پیشنهاد اقلام مستقل از بازه امتیازات کاربر و بر اساس احتمال پیشبینی است و بررسی شده است که چطور این احتمالات میتوانند برای جمع آوری انواع مختلف وابستگیها-ی بین امتیازها در راستای انتخاب نزدیکترین همسایهها مورد استفاده قرار گیرند. در این روش معیار انتخاب همسایگی به توانایی کاربر در پیشبینی امتیازهای گذشته بستگی دارد. فرضیه این بوده است که اگر کاربری در پیشبینی امتیازهای گذشته کاربر مورد نظرخوب بوده است در آینده هم برای پیشبینی امتیازهای او خوب خواهد بود.
در [20] یک راهکار مبتنی بر هسته ارائه شده است. ایده اصلی این راهکار یافتن یک نگاشت چند خطی بین دو فضای برداری است. این راهکار بر اساس کاربران و بر اساس اقلام و همچنین تلفیق این دو مورد ارائه شده است. همچنین نشان داده شده است که چگونه میتوان اطلاعات تکمیلی نظیر ژانر فیلمها را در این راهکار استفاده و چگونه پیشنهاداتی قابل اعتماد با وجود مشکلاتی مانند پراکندگی و شروع سرد به کاربران ارائه نمود.
2-3- مبانی فیلترینگ اشتراکی
فیلترینگ اشتراکی یکی از بهترین راهکارها در سیستمهای پیشنهادگر میباشد. این روش به خاطر استفادهاش در سایتهای تجارت الکترونیک مانند AMAZOONو NETFLIX به خوبی شناخته شده است. این متد کاربرانی که علائقشان شبیه به کاربر فعال میباشند را پیدا کرده و از این طریق پیشنهادات را به او ارائه میدهد. یعنی فرض بر این است که کاربرانی که در گذشته تمایلاتی شبیه به هم داشتهاند احتمالا در آینده هم تمایلات مشابه دارند و چون قبلا به اقلام به طور مشابه ابراز علاقه کردهاند به اقلامی که تا کنون ندیدهاند نیز به طور مشابه علاقه نشان خواهند داد. فیلترینگ اشتراکی معمولا به مشارکت داشتن کاربران فعال، راهی برای نشان دادن سلیقه کاربران به سیستم و الگوریتمی که کاربران با سلیقه مشابه را شناسایی کند نیازمند میباشد.
به طور کلی فضای اطلاعاتی در فیلترینگ اشتراکی مبتنی بر یک ماتریس M * N است که ماتریس کاربران - اقلام نام دارد. M نشان دهنده تعداد کاربران و N نشان دهنده تعداد اقلام میباشد. همانطور که در (شکل شماره 5) مشاهده میکنید rm,n نشان دهنده نمرهای میباشد که کاربر m ام به قلم n ام اختصاص داده است.

شکل شماره 5 : ماتریس امتیازدهی کاربران- اقلام
2-4- وظایف فیلترینگ اشتراکی
وظایف فیلترینگ اشتراکی به دو دسته ارائه پیشنهاد به کاربران و پیشبینی امتیاز اقلام دیده نشده تقسیم میشوند که در ادامه هر کدام را به تفکیک توضیح خواهیم داد.
2-4-1- پیشنهاد
در این حالت لیستی از اقلام به کاربران ارائه میشود که بر حسب میزان مفید بودنشان برای کاربر مرتب شدهاند. یعنیN مورد از بهترین پیشنهادات را به او ارائه میدهد. برای تولید پیشنهاد، اطلاعات مربوط به تمام اقلام نیاز نمیباشد.
2-4-2- پیشبینی
در این حالت پیشبینی میشود که کاربر به قلمی که تا کنون ندیده است چه امتیازی خواهد داد. برای پیشبینی اطلاعات مربوط به تمام اقلام حتی آنهایی که به ندرت امتیازدهی شدهاند مورد نیاز است. همچنین الگوریتمهایی که سیستم برای پیشبینی به کار میبرد به حافظه و زمان محاسباتی بیشتری نسبت به الگوریتمهای تولید پیشنهاد نیاز دارد.
2-5- دسته بندی متدهای فیلترینگ اشتراکی
متدهای فیلترینگ اشتراکی به دو گروه کلی فیلترینگ اشتراکی مبتنی بر همسایگی یا مبتنی بر حافظه و فیلترینگ اشتراکی مبتنی بر مدل تقسیم میشوند.[12]
الگوریتمهای موجود در گروه فیلترینگ اشتراکی مبتنی بر همسایگی یا مبتنی بر حافظه نسبت به الگوریتمهای موجود در فیلترینگ اشتراکی مبتنی بر مدل رایجتر میباشند اما قابل ذکر است که این الگوریتمها نیازمند حافظه بیشتری هستند. از نظر کارایی الگوریتمهای موجود در گروه مدل محور نتایج قابل توجهی را ارائه میدهند. اما از نظر دقت به جز تحقیقات اخیر[21] نتایج خوبی به دست نیاوردهاند. الگوریتمهای حافظه محور به طور عمده بر الگوریتم KNN استوار میباشند.
از تلفیق دو دسته مدل محور و حافظه محور مدل تلفیقی به وجود میآید که هدف آن تلفیق مزیت هر دو دسته است . [22]هم اکنون تحقیقات در راه پیشروی به سمت مدل تلفیقی میباشد .[23]
در راهکار مبتنی بر حافظه پیشبینی به دو صورت براساس کاربران و براساس اقلام انجام میپذیرد .[24]اختلاف نظرهایی در مورد اینکه پیشبینی بر اساس اقلام مبتنی بر حافظه و یا مبتنی بر مدل است وجود دارد ؛ در [25] اعلام شده است که الگوریتمهای بر اساس اقلام همیشه مبتنی بر حافظه هستند و در [26] این الگوریتمها بر اساس مدل کلاس بندی شدهاند.
2-5-1- فیلترینگ اشتراکی مبتنی بر حافظه
در فیلترینگ اشتراکی مبتنی بر همسایگی یا مبتنی بر حافظه سرتاسر ماتریس کاربران - اقلام بررسی میشود (شکل شماره 6). در این ماتریس که در حافظه ذخیره شده است امتیازهایی که کاربران به اقلام مختلف دادهاند وجود دارد. این ماتریس به صورت مستقیم برای پیشبینی نمره اقلامی که تا کنون هیچ امتیازی دریافت نکردهاند به کار میرود [19]. یعنی این محاسبات به صورت برون خط انجام نمیپذیرد و همه چیز به صورت بر خط انجام میشود و همواره کل دادهها مورد نیاز میباشد. مزیت این روش این است که در هر زمان کل اطلاعات در دسترس میباشد اما با بزرگ شدن ماتریس یعنی تعداد کاربران و اقلام، فضای جستجو، حافظه مورد نیاز و زمان محاسبه افزایش مییابد.
همانطور که گفته شد در راهکار مبتنی بر حافظه پیشبینی به دو صورت پیشبینی بر اساس کاربران و پیشبینی براساس اقلام انجام میشود.
2-5-1-1- فیلترینگ اشتراکی مبتنی بر حافظه با پیش بینی براساس کاربران
در سیستمهای مبتنی برکاربر پیشبینی بر اساس ارزیابی امتیازهایی که توسط کاربران مشابه با کاربر فعال به اقلام مورد نظر تخصیص یافته انجام میپذیرد [27]. کاربران شبیه آنهایی هستند که الگوی امتیازدهیشان شبیه به کاربر فعال باشد (شکل شماره 6(.
یکی از چالشهای اصلی در این مدل نحوه پیدا کردن میزان شباهت بین کاربران میباشد. زیرا با استفاده از معیار شباهت شبیهترین همسایگان به کاربر فعال انتخاب و در پیشبینی استفاده میشوند.
2-5-1-2- فیلترینگ اشتراکی مبتنی بر حافظه با پیش بینی براساس اقلام
سیستمهای مبتنی بر اقلام امتیاز یک قلم خاص را بر اساس امتیازهایی که کاربر به اقلام مشابه داده است پیشبینی میکنند [28] . دو قلم در صورتی به هم شبیه هستند که چند کاربر به طور مشابه به آنها رای داده باشند (شکل شماره 7).

شکل شماره 6: فیلترینگ اشتراکی مبتنی بر قلم شکل شماره 7 : فیلترینگ اشتراکی مبتنی بر کاربر
2-5-1- 3- تفاوت فیلترینگ اشتراکی بر اساس کاربران و بر اساس اقلام
فیلترینگ اشتراکی بر اساس اقلام زمانی به کار میرود که روند افزایش اقلام کندتر از روند افزایش کاربران باشد [28]. ولی در زمانی که روند افزایش اقلام سریعتر از روند افزایش کاربران باشد فیلترینگ اشتراکی بر اساس کاربران به کار می رود .[29] به عنوان مثال اگر اقلامی مانند اخبار، مورد مقاله باشد استفاده از روش قلم مبنا نامناسب خواهد بود و در صورتی که از این روش به عنوان مدل محور استفاده گردد به علت افزایش بسیار سریع اقلام مشکل سربار زیاد محاسباتی برای به روز رسانی مدل به وجود خواهد آمد. بر عکس اگر اقلامی مانند فیلم یا کتاب مورد مقاله باشد استفاده از این روش مناسب خواهد بود.
2-5-2- فیلترینگ اشتراکی مبتنی بر مدل
برخلاف سیستمهای مبتنی بر حافظه که امتیازهای ذخیره شده را به طور مستقیم درپیشبینی به کار میبرند، سیستمهای مبتنی بر مدل از این امتیازها برای یادگیری یک مدل پیشبینی استفاده میکنند. یعنی پارامترهای مدل به صورت برون خطی یاد گرفته میشوند و دیگر نیازی نیست که هر بار ماتریس امتیازدهی کاربران- اقلام بررسی شود. این مدل بر اساس دادههای موجود آموزش داده میشود و در آینده برای پیشبینی امتیازهایی که کاربران به اقلام جدید خواهند داد به صورت روی خط به کار میرود [4]. به همین دلیل نسبت به فیلترینگ اشتراکی مبتنی بر حافظه از سرعت بیشتری برخوردار است. این مدل میتواند یک الگوریتم یادگیری ماشین یا داده کاوی باشد [30]. در گذشته الگوریتمهای موجود در حوزه یادگیری ماشین مانند شبکههای بیز [8] و خوشه بندی [31,32] بسیار مورد توجه بودهاند .[28] اگر چه امروزه الگوریتمهای فاکتورسازی ماتریس بسیار مورد توجه واقع شدهاند اما همچنان الگوریتمهای خوشه بندی جایگاه خود را حفظ کردهاند.
2-6- نحوه تشخیص علائق کاربران
تشخیص میزان علائق کاربران نسبت به اقلام متفاوت یکی از مهمترین وظایف فیلترینگ اشتراکی میباشد. هر بار که کاربری در مورد قلمی خاص ابراز علاقه میکند مقدار جدیدی در نمایه او اضافه میشود. به دو صورت صریح و ضمنی میتوان علائق کاربر را استخراج نمود.
2-6-1- تشخیص علائق به صورت صریح
برای این منظور سیستمهای پیشنهادگر تمایلی که کاربر به صورت واضح و آشکار نسبت به محصولات نشان میدهد مثل نمرههایی که به اقلام نسبت داده است را در یک پایگاه داده جمع آوری میکند. کاربر میتواند علائق خود را به طور صریح در غالب تک بیتی باینری یک و صفر به معنای خوب و بد و یا به صورت بازهای از اعداد که نشان دهنده میزان تمایل کاربر به قلم است نشان دهد. .به عنوان مثال اگر بازه امتیازدهی، اعداد 1 تا 5 باشد نسبت دادن امتیاز 1 از سوی کاربر به معنای عدم علاقه و اختصاص دادن امتیاز 5 به معنای علاقه کاربر به قلمی خاص میباشد [7,9].
2-6-2- تشخیص علائق به صورت ضمنی
برای این منظور سیستم به صورت ضمنی بعضی رویدادها مثل حرکت اشارهگر به سمت محصولی خاص را در نظر میگیرد [24]. در این روش کاربر تمایلاتش را به طور صریح و در قالب امتیاز نشان نمیدهد بلکه از رفتارش علائقاو محاسبه میشود .[33,34,35,36]
این پایان نامه فقط بر استنباط علائق به طور صریح متمرکز شده است. یعنی تمایلات کاربران باید به صورت نسبت دادن امتیاز به اقلام مشخص شده باشد.
2-7- محاسبه شباهت
برای پیشبینی یا ارائه پیشنهاد توسط فیلترینگ اشتراکی میبایست شبیهترین کاربران به کاربر فعال را پیدا کرد و به عنوان مجموعه همسایگی کاربر فعال در نظر گرفت. برای اندازهگیری میزان شباهت بین دو کاربر راهکارهای متفاوتی ارائه شده است که در اینجا دو مورد از معیارهای شباهت رایج که در فیلترینگ اشتراکی استغاده میشوند را معرفی میکنیم.
2-7-1- معیار همبستگی پیرسون
این معیار میزان وابستگی بین الگوهای امتیازدهی دو کاربر (دو قلم) را میسنجد (فرمول شماره 4). نتیجه حاصل از این فرمول عددی بین 1 و 1- میباشد. عدد 1 نشان دهنده بیشترین شباهت، 1- نمایانگر کمترین شباهت میباشد و اگر نتیجه عدد 0 باشد یعنی دو موجودیت مورد مقایسه با هم هیچ ارتباطی ندارند.
PCu,v=jru,j-ru.(rv,j-rv)j(ru,j-ru)2.j(rv,j-rv)2 (4)
از فرمول فوق برای اندازهگیری میزان شباهت دو کاربر u و v استفاده میشود. ru,j نشان دهنده امتیازی که کاربر u به قلم j ام اختصاص داده میباشد. ru میانگین کل امتیازهایی که کاربر u به اقلام نسبت داده است میباشد.
فرمول زیر با کمی تغییر شباهت بین دو قلم i و j را اندازهگیری میکند.
PCi,j=uru,i-ri.(ru,j-rj)j(ru,i-ri)2.j(ru,j-rj)2 (5)
2-7-2- معیار اندازهگیری کسینوس
معیار شباهت کسینوسی در حوزه بازیابی اطلاعات بسیار رایج است و برای اندازه گیری شباهت بین دو سند به کار میرود [37]. این معیار میزان شباهت دو کاربر (دو قلم) را با استفاده از کسینوس زاویه بین بردارهای امتیازدهی آنها مشخص میکند (فرمول شماره 6). نتیجه حاصل عددی بین 1- و 1 میباشد. هر چه عدد حاصل شده بزرگتر باشد یعنی دو موجودیت مورد مقایسه بیشتر به هم شبیه هستند و هر چه این عدد کوچکتر باشد یعنی دو موجودیت کمتر به هم شبیه هستند.
CosU,V=i∈ru∩rvru,irv,ji∈ruru,i2i∈rvrv,j2 (6)
اگرچه این معیار در حوزه بازیابی اطلاعات به خوبی کار میکند [37,38]اما برای محاسبه شباهت در فیلترینگ اشتراکی کاربر مبنا به خوبی معیار همبستگی پیرسون عمل نمیکند [12].
در این پایان نامه با کمی تغییر از معیار همبستگی پیرسون برای اندازه گیری میزان شباهتها استفاده شده که در فصل 4 به تفصیل توضیح داده شده است.
2-8- انتخاب همسایه
وقتی میزان شباهت تمام کاربران با کاربر فعال به دست آمد هم از نظر صحت و هم از نظر کارایی بهتر است زیر مجموعهای از شبیهترین آنها را انتخاب و با استفاده از آنها امتیاز قلم دیده نشده را پیشبینی کرد [18,34]. برای این کار دو راه استفاده از حد آستانه و انتخاب تعداد ثابتی از همسایگان وجود دارد.

2-8-1- استفاده از حد آستانه
در این روش یک حد آستانه تعیین میشود. کاربرانی که میزان شباهتشان بیشتر یا مساوی با این حد آستانه باشد به عنوان بهترین همسایهها انتخاب میشوند .[9]تعیین این حد آستانه مقداری مشکل میباشد چون در یک مسئله با توجه به کاربران فعال مختلف این حد آستانه باید مدام تغییر کند.
2-8-2- انتخاب تعداد ثابتی از همسایگان
در این روش کاربران با توجه به میزان شباهتشان به کاربر فعال مرتب شده سپسN تا از شبیهترین آنها به عنوان بهترین همسایهها انتخاب میشوند [7] در [16] بیان شده است که انتخاب تعداد ثابتی از همسایگان (معمولا بین 20 تا 60) نسبت به استفاده از حد آستانه منجر به نتیجه بهتری خواهد شد.
در این پایان نامه فقط از روش دوم یعنی انتخاب تعداد ثابتی از همسایگان استفاده شده است.
2-9- پیشبینی و تخمین رتبه
پس از انتخاب همسایهها نوبت به پیشبینی امتیاز قلم دیده نشده میرسد. روشهای متفاوتی برای تخمین رتبه وجود دارد که در اینجا به اختصار به بررسی دو مورد از آنها میپردازیم.
2-9-1- استفاده از امتیازهای خام
ra,t=v∈Nt(a)sim(A , V)rv,tv∈Nt(a)sim(A , V)(7)
با استفاده از فرمول بالا میانگین وزن دارk تا از نزدیکترین همسایهها به کاربر فعال را به دست میآید. وزن هر همسایه معادل با میزان شباهت به دست آمده با استفاده از معیار همبستگی پیرسون میباشد. در نهایت نتیجه به دست آمده امتیاز پیشبینی شده میباشد.
2-9-2- استفاده از امتیازهای نرمال شده
ra,t=ra+v∈Nt(a)rv,t-rv.sim(A , V)v∈Nt(a)sim(A , V) (8)
توسط فرمول بالا این مسئله در نظر گرفته میشود که کاربران مختلف ممکن است بازههای امتیازدهی متفاوتی برای نشان دادن یک درجه اهمیت داشته باشند. در فیلترینگ اشتراکی مبتنی بر کاربر به طور استاندارد از این فرمول برای پیشبینی استفاده میشود .[7]
2-10- مشکلات فیلترینگ اشتراکی
فیلترینگ اشتراکی علاوه بر کاربرد وسیع آن و مزایایی که از آن برخوردار است شامل معایبی نیز میباشد که در ادامه به توضیح تعدادی از آنها میپردازیم.
2-10-1- پراکنده بودن داده
وقتی ماتریس کاربران - اقلام پراکنده و سایز آن بزرگ باشد این مشکل به وجود میآید. کاربرانی هستند که به همه اقلام امتیاز ندادهاند و تنها به تعداد کمی از آنها امتیاز دادهاند. بنابراین اقلامی وجود دارند که به اندازه کافی امتیازدهی نشدهاند. در این حالت اندازهگیری شباهت روی تعداد امتیازهای ابراز شده اندکی صورت میپذیرد که قابل اعتماد نمیباشد. یکی از مشکلاتی که به دلیل پراکنده بودن داده به وجود میآید شروع سرد است. یعنی برای کاربری که به تازگی وارد سیستم شده و به اندازه کافی امتیازی به اقلام نداده است نمیتوان پیشنهاد قابل اعتمادی ارائه کرد. همچنین قلم جدیدی که وارد سیستم میشود نیز همین مشکل را دارد. اقلامی که به اندازه کافی امتیاز دریافت نکردهاند برای پیشنهاد قابل اعتماد نمیباشند. به عنوان مثال Movielens برای اجتناب از بروز چنین مشکلی برای کاربران جدید شرط امتیاز دهی به حداقل 15 قلم را در نظر گرفته است.
مقالههای زیادی برای رفع این مشکل انجام شده است. که بسیاری از آنها از روشهای موجود در مدل محتوا محور برای پر کردن خانههای بدون رتبه ماتریس امتیازدهی استفاده میکنند .[39,40,41,42,43]
2-10-2- مقیاس پذیری
با زیاد شدن تعداد کاربران و اقلام منابع محاسباتی برای برطرف کردن درخواستهای جدید با کمبود مواجه میشود.

2-10-3- اقلام مشابه
بعضی اقلام شبیه به هم هستند ولی به دلیل تفاوت در نامشان سیستم پیشنهادگر یکسان بودن آنها را نمیتواند تشخیص دهد. بنابراین با آنها به طور متفاوت برخورد میکند.
2-10-4- گری شیپ
کاربرانی هستند که سلیقهشان موافق یا مخالف با هیچ گروه از کاربران نمیباشد. بنابراین سیستم پیشنهادگر فیلترینگ اشتراکی نمیتواند هیچ منفعتی به آنها برساند.
2-11- بررسی چگونگی کارکرد و تولید پیشنهاد سایت آمازون
سایت آمازون یکی از معروفترین سایتهای تجارت الکتونیک میباشد که در سال 1995 فعالیت خود را با فروش بر خط کتاب شروع کرد و اکنون در آن محصولاتی مانند ساعت، کتاب، سی دی، تلویزیون و... به فروش میرسد.
آمازون از متد فیلترینگ اشتراکی استفاده میکند و پیشنهادات را بر اساس اقلام تولید میکند. زیرا تعداد اقلام از تعداد کاربران به نسبت کمتر است. روند کار آمازون به این صورت است که لیست اقلام دیده شده توسط هر کاربر در یک ماتریس ذخیره میشود. سپس با استفاده از معیار شباهت کسینوس میزان شبیه بودن بردارهای اقلام در این ماتریس محاسبه میگردد. بعد از آن شبیهترین اقلام به اقلامی که کاربر تا کنون دیده است به او پیشنهاد میشود. نسخه سادهای از چگونگی تولید پیشنهاد در (شکل شماره 8) قابل مشاهده میباشد.
شکل شماره 8: روند تولید پیشنهاد در آمازون [44]
همانطور که مشاهده میکنید کاربر 3 اخیرا به سیستم وارد شده و قلمA را مشاهده کرده است. سیستم میزان شباهت بردار قلم َA را با سایر اقلام BوC و D با استفاده از معیار کسینوس به دست میآورد و شبیهترین اقلام که در اینجا B و C میباشند را به او پیشنهاد میکند.
در (شکل شماره 9) صفحهای از سایت آمازون قابل مشاهده است. در این صفحه کاربر میتواند با کلیک روی لینک Your Recommendation وارد صفحهای شود که میتواند پیشنهاداتی که به او ارائه میشود را توسط موضوع و خط تولید مورد دلخواهش فیلتر کند. همچنین میتواند محصولاتی که قبلا خریداری نموده یا به او پیشنهاد شده است را امتیازدهی کند[45] .
شکل شماره 9 : نمونه صفحهای از سایت آمازون[45]
(شکل شماره 10) ارائه پیشنهاد بر اساس کارت خرید مشتری را نشان میدهد. یعنی بر اساس محصولاتی که تا کنون خریداری نموده است برای او پیشنهاد تولید میشود [45].

شکل شماره 10: ارائه پیشنهاد بر اساس کارت خرید مشتری [45]
فصل سوم
روش محتوا محور
3- روش محتوا محور
3-1-پیشگفتار
در این پایان نامه از روش محتوا محور جهت ارتقاء روش فیلترینگ اشتراکی استفاده شده است. روش محتوا محور بر اساس ویژگیهای اقلام تعریف میشود. این روش بررسی میکند که اقلام مورد علاقه کاربر دارای چه خصوصیاتی بودهاند، سپس اقلام دارای خصوصیات مشابه را به او پیشنهاد میکند. محتوای اقلام بر حسب نوع آنها میتواند متفاوت باشد. مثلا ژانر فیلم، نوع کتاب و مختصات جغرافیایی رستوران را به ترتیب به عنوان محتوای اقلام فیلم، کتاب یا رستوران در نظر گرفت. به عنوان مثال اگر اکثر فیلمهایی که کاربر دیده است متعلق به ژانر مستند باشند بدین معناست که او به این گونه فیلمها علاقهمند است.
سیستمهای محتوا محور نیاز به تکنیکی جهت نمایش خصوصیات اقلام، ایجاد نمایه از کاربر بر اساس علاقهمندیهایش و یک استراتژی جهت مقایسه نمایه کاربر با خصوصیات اقلام میباشد.
3-2- روند کار روش محتوا محور

روند کار سیستمهای محتوا محور به این صورت است که ابتدا براساس نحوه امتیازدهی کاربر به اقلام مختلف، نمایهای از علائق او ساخته میشود. سپس بر اساس میزان تطابق خصوصیات اقلام با نمایه ساخته شده از کاربر، پیشنهادها به کاربر ارائه میشود.
ساختار سیستمهای پیشنهادگر محتوا محور در شکل زیر نشان داده شده است.

شکل شماره 11: روند کار روش محتوا محور [24]
همانگونه که در شکل بالا قابل مشاهده است روند کار در متد محتوا محور متشکل از سه مرحله به شرح زیر می باشد [24]:
3-2-1- تحلیلگر محتوا (Content Analyzer)
در این مرحله محتوای اقلام نشان داده میشود. بدین منظور معمولا از تکنیکهای بازیابی اطلاعات استفاده میشود. اطلاعات توصیفی سازماندهی نشده مربوط به اقلام از قسمت منبع اطلاعات (Information Source) استخراج شده و در این مرحله سازماندهی میشود. یعنی هر قلم توسط اطلاعات سازماندهی شده نمایش داده میشود. مثلا اگر سیستم پیشنهادگر مربوط به فیلم باشد هر فیلم میتواند توسط ویژگیهای مربوط به بازیگران، کارگردانان و.... نمایش داده شود. یا اگر سیستم پیشنهادگر مربوط به صفحه وب باشد هر صفحه وب میتواند توسط برداری از کلمات کلیدی نمایش داده شود. به این صورت که ریشه کلمات به عنوان خصوصیات و مقدار tf/idf مربوط به هر ریشه به عنوان مقدار آن در نظر گرفته شود.
نتیجه حاصل شده از این مرحله در قسمت اقلام نمایش داده شده
(Represented I--s) ذخیره میشود.

3-2-2- یاد گیرنده نمایه (Profile Learner)
در این مرحله بر اساس عکس العملی که کاربر در برابر اقلام مختلف نشان داده و در قسمت بازخورد (Feedback) ذخیره شده است، نمایهای از علائق او ساخته میشود. این کار معمولا توسط تکنیکهای موجود در حوزه یادگیری ماشین انجام میشود.
عکس العملی که کاربر در مقابل اقلام از خود نشان میدهد به دو صورت صریح و ضمنی میباشد. عکس العمل صریح به این صوت است که کاربر علاقه یا عدم علاقه خود نسبت به اقلام را توسط امتیازدهی یا توصیفی کوتاه نشان دهد. در عکس العمل ضمنی کاربر هیچ دخالتی ندارد و خود سیستم توسط کنترل و تحلیل رفتار و فعالیتهای کاربر، علائق او را استخراج میکند.
با توجه به اینکه سلیقه افراد در طول زمان تغییر میکند، نمایه ساخته شده از کابر نیز باید با توجه به این تغییرات به روز شود. برای این منظور ابراز علاقه و یا عدم علاقه کاربر به اقلامی که در لیست به او پیشنهاد شدهاند به عنوان باز خورد ذخیره و برای به روز کردن نمایه او استفاده میشود.
درست است که سایت پیشنهادگر آمازون بر اساس روش فیلترینگ اشتراکی است. ولی همانطور که در شکل شماره 12 قابل مشاهده است در این نمونه صفحه از سایت آمازون گزینهای به نام Youre Favoites وجود دارد که با استفاده از این گزینه قسمتی از نمایه کاربر میتواند بر اساس روش محتوا محور ساخته شود. همانگونه که در شکل شماره 13 قابل مشاهده است در این صفحه انواع کتابهایی که مطابق با علائق کاربر است نمایش داده شده است. انواعی که در این قسمت قابل مشاهده است یا به صورت ضمنی بر گرفته شده، مانند بررسی اقلامی که کاربر تا کنون خریداری کرده است، یا به صورت دستی توسط خود کاربر وارد شده است. این قسمت توسط کاربر قابل ویرایش و تطبیق پذیر با سلایق و علائق او میباشد.

شکل شماره 12 : نمونه صفحهای از سایت آمازون

شکل شماره 13 : استفاده از روش محتوا محور در سایت آمازون
3-2-3- جزء فیلترینگ (filtering component )
در این مرحله میزان شباهت پروفایل ساخته شده از کاربر با اطلاعات توصیفی سازماندهی شده اقلام مورد نظر سنجیده میشود. این کار میتواند توسط یکی از معیارهای اندازه گیری شباهت مانند معیار اندازه گیری کسینوس صورت گیرد. بر این اساس مشخص میشود که کدام یک از این اقلام مورد علاقه کاربر است. نتیجه حاصل شده از این مرحله یک لیست پیشنهادی از اقلام میباشد که بر اساس علائق کاربر مرتب شده است.
3-3- مزایای روش محتوا محور
متد محتوا محور در مقایسه با متد فیلترینگ اشتراکی دارای مزایایی به شرح زیر است:
3-3-1- استقلال کاربر
متد محتوا محور به امتیازهای کاربر فعال برای ساختن نمایه از او احتیاج دارد. در حالی که متد فیلترینگ اشتراکی به امتیازهای کاربران همسایه برای تشکیل مجموعه همسایگی کاربر فعال نیاز دارد.

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *