بخشی از مقاله
*** این فایل شامل تعدادی فرمول می باشد و در سایت قابل نمایش نیست ***
بررسی سیستم های توصیه گر اجتماعی
چکیده
سیستم توصیه گر علائق کاربران را نسبت به مجموعه ای از اقلام جمع آوری می کند. این اطلاعات به صورت صریح یا ضمنی بدست می ایند. سیستم های توصیه گر تلاش می کنند که به وسیله پیشنهاد اطلاعاتی که مورد علاقه کاربران باشد بر مشکل سرریز اطلاعات غلبه کنند. با رشد وب 2 بهرهگیری از اطلاعات شبکه های اجتماعی در سیستم های توصیه گر افزایش پیدا کرده است. سیستم های توصیه گر اجتماعی با بهره گیری از تعاملات اجتماعی نقاط ضعف سیستم های توصیه گر سنتی را مرتفع می کنند. در این مطالعه سیستم های توصیه گر اجتماعی و نقش شبکه اجتماعی در بهبود سیستم های توصیه گر سنتی مورد بررسی قرار گرفته است. سیستم های توصیه گر اجتماعی در این مقاله به دو دسته مبتنی بر حافظه و مبتنی بر مدل تقسیم میشوند و مورد مطالعه و نقد قرار میگیرند.
واژه ای کلیدی: سیستم توصیه گر، شبکه اجتماعی، اعتماد
مقدمه
با گسترش فضای وب، اطلاعات با یک نرخ بی سابقه در حال افزایش است که این رویداد باعث شده است که کاربران در فضای وب با انبوهی از اطلاعات مواجه شوند . به طور مثال با جست وجو کلمه تلفن همراه در سایت دیجی کالا3 کاربر با 1000 قلم کالا مواجه می شود. سیستم توصیه گر به وجود آمد تا بتواند با وجود حجم عظیم اطلاعات فقط اطلاعات مورد نیاز کاربر را به او ارائه دهد. سیستم توصیه گر ابزار مناسبی برای کمک به تصمیم گیری مؤثر کاربران بر اساس ترجیحات و علائق ان ها می باشد((Christensen & Schiaffino, 2013تقریباً. در اواسط دهه 90 بود که مطالعه بر روی سیستمهای توصیهگر به عنوان یک شاخه مستقل در تحقیقات مطرح شد، از آن موقع تا به حال سیستم توصیه گر یکی از موضوعات مهم در فضای تحقیقاتی وب بوده است. سیستم توصیه گر توجه بخش های مختلف علوم را به خود جلب کرده است. به طور مثال برندگان مسابقه جایزه Netflix4 شامل متخصصانی در حوزه روانشناسی، کامپیوتر و ریاضیات بوده اند.
سیتم توصیه گر علائق کاربران را نسبت به مجموعه ای از ایتم ها ( مثل: کتاب، فیلم، موزیک، نرم افزار و ... ) جمع اوری می کند. این اطلاعات به صورت صریح ( معمولا به صورت جمع اوری امتیاز کاربران ) و یا ضمنی ( به وسیله رصد فعالیت های کاربران از قبیل: اهنگ های گوش داده، نرم افزارهای دانلود شده، صفحات وب بازدید شده،و ... ) بدست می ایند. سیستم های توصیه گر تلاش می کند که به وسیله پیشنهاد اطلاعاتی که مورد علاقه کاربر باشد بر مشکل سرریز اطلاعات غلبه کند. برای کاربران توصیه خوب توصیه ای است که از انبوه اطﻻعات، اطلاعات مورد نظر کاربر توصیه شود((Tang, Hu, & Liu, 2013
انواع سیستم توصیهگر
به طور معمول سیستم های توصیه گر را به سه دسته تقسیم می کنند. -1 فیلترینگ مشارکتی- 2 5 مبتنی بر محتوا- 3 6ترکیبی7
فیلترینگ مشارکتی
ایده اصلی این روش استفاده از اطلاعات گذشته کاربران برای پیش بینی آیتم های مورد علاقه کاربر هدف است. در این روش به کاربر هدف آیتم های مورد علاقه کاربران با سلیقه مشابه به کاربر هدف پیشنهاد می شود. این روش به صورت گسترده در دنیای واقعی مورد استفاده قرار می گیرد. مزایا و نقاط ضعف روش فیلترینگ مشارکتی برای محققان مشخص شده است. الگوریتم ها و تکنیک های مختلفی بر اساس این روش ارائه شده است، که هم در دنیای واقعی و هم در آزمایشات عملکرد مناسبی داشته است.
اطلاعات ورودی روش فیلترینگ مشارکتی شامل این موارد است :
· مجموعه کاربران U={u1 , …,u N }
· مجموعه ایتم ها I={ i1 , …, i M }
• ماتریس امتیاز R ru ,i M N
شکل :1 ماتریس امتیاز
خروجی: -1 پیش بینی امتیازات نامشخص کاربر به ایتم در ماتریس امتیاز -2 توصیه N ایتم برتر8 به کاربر ( پیشنهاد ایتم هایی که مورد علاقه کاربر می باشد)
انواع روش های فیلترینگ مشارکتی
روش های فیلترینگ مشارکتی به دو گروه تقسیم می شوند: روش مبتنی بر حافظه9 و روش مبتنی بر مدل10
روش مبتنی بر حافظه
در این روش ماتریس امتیاز برای پیش بینی امتیاز کاربر ذخیره می شود. برای پیش بینی امتیاز کاربر u با استفاده از روش ضریب همبستگی پیرسون11 یا شباهت کسینوسی12 کاربران مشابه با کاربر u با استفاده از فرمول های 1 و 2 تعیین می شوند.
در فرمول Ru (1) برابر است با میانگین امتیاز کاربر u به تمامی ایتم ها، برای پیش بینی امتیاز کاربر u به آیتم i از فرمول (3) استفاده می شود.
در فرمول (3)، N کاربران شبیه به کاربر u می باشند.
روش مبتنی بر مدل
در روش مبتنی بر مدل با استفاده از تکنیک های داده کاوی13 و یادگیری ماشینی14، الگوی نهفته 15در ماتریس امتیاز برای پیش بینی امتیازات نامعلوم کشف می شود. در این روش مدل با استفاده از ماتریس امتیاز آموزش داده می شود. روش مبتنی بر حافظه به دلیل ذخیره تمام اطلاعات از لحاظ تئوریک دقیق تر از روش مبتنی بر مدل است، اما روش مبتنی بر مدل برای پایگاه داده های16 با میلیون ها کاربر و آیتم مناسب تر است((Dietmar Jannach, 2011
روش تجزیه ماتریس17
این روش از تجزیه ماتریس استفاده می کند، به طور مثال به دست آوردن دو ماتریس (یا بیشتر) به طوری که حاصلضرب آن ها معادل ماتریس اصلی باشد. از این روش می توان برای کشف ویژگیهای نهفته به منظور پیش بینی امتیاز های نا مشخص در ماتریس امتیاز استفاده کرد. بنابراین اگر بتوان ویژگیهای نهفته را کشف کرد، می توان امتیازات را با توجه به یک کاربر و آیتم خاص پیش بینی نمود. چون ویژگیهای کاربر باید با ویژگیهای آیتم تطبیق پیدا کند.
در روش تجزیه ماتریس، ماتریس امتیاز Ru ,i به دو ماتریس ویژگیهای نهفته کاربر Qu ,k و ویژگی های نهفته آیتم Pi ,k تجزیه می شود. k تعداد ویژگیهای نهفته ای است که کشف شده است. سطرهای ماتریس Q نشان دهنده میزان وابستگی کاربر با ویژگیها و سطر های ماتریس P نشان دهنده میزان وابستگی آیتم با ویژگیها می باشد.
هدف روش تجزیه ماتریس پیدا کردن دو ماتریس P و Q می باشد. یکی از روش های مرسوم برای پیدا کردن ماتریس P و Q
روش کاهش گرادیان18 میباشد. در این روش دو ماتریس P و Q در فرمول بهینه سازی زیر با استفاده از مقادیر تصادفی
مقداردهی اولیه میشوند، سپس در تکرارهای بعدی با
اصلاح ماتریس P و Q خطا مینیمم می شود.
در فرمول بالا λ دو ماتریس P و Q را به منظور جلوگیری از بیش برازش19 تنظیم میکند.
سیستم توصیهگر اجتماعی
سیستمهای توصیهگر سنتی اطلاعات شبکههای اجتماعی را در نظر نمیگیرند، اما در جهان واقعی افراد از توصیه دوستان مورد اعتماد خود بهره میبرند(.(I. K. Hao Ma, Michael R. Lyu, 2009 با رشد وب 2 اطﻻعات شبکه های اجتماعی در سیستم های توصیه گر افزایش پیدا کرده است ( به طور مثال کاربران مورد اعتماد، لیست دوستان، دنبال کنندگان20، بلاگها21 و تگ.( 22 این نوع اطلاعات دقت سیستمهای توصیهگر را بهبود میبخشد. در سیستم توصیهگر سنتی به دلیل بزرگ بودن مجموعه آیتمها و کمپشت23 بودن ماتریس امتیاز پیدا کردن کاربران مشابه سخت میباشد(.(Chen, Zeng, Zheng, & Chen, 2013 سیستم توصیهگر اجتماعی با استفاده از مؤلفههای شبکه اجتماعی مشکل سیستمهای توصیهگر سنتی را برطرف می
کند(.(Mohsen Jamali, 2010 محققان از شبکه های اجتماعی در سیستم توصیه گر برای سه هدف اساسی استفاده کرده اند: (1 بهبود کیفیت پیش بینی و توصیه (2 ارائه یک سیستم توصیه گر جدید (3 اثبات ارتباط بین اطلاعات شبکه اجتماعی و فرایندهای مشارکتی((Bobadilla, Ortega, Hernando, & Gutiérrez, 2013 .ترکیب سیستم توصیه گر و اطلاعات شبکه اجتماعی منفعت دوجانبه برای دو بخش دارد. استفاده از شبکه اجتماعی در سیستم توصیهگر مؤثر است، چون که تاثیر نفوذ اجتماعی در یک دوره طولانی به وسیله جامعهشناسان اثبات شده است. با افزایش اطلاعات شبکههای اجتماعی فرصت تایید مدل جامعهشناسان در مورد نفوذ اجتماعی به وجود آمد. نتایج آزمایشات در (David Crandall , 2008) و دیگرهای کارهای مشابه نشان میدهد که شبکه های اجتماعی یک منبع مستقل اطلاعاتی برای بهبود کیفیت سیستمهای توصیهگر میباشند.
با افزایش محبوبیت شبکههای اجتماعی، اطلاعات شبکه اجتماعی رشد سریعی داشته است و باعث شده است که کاربران با سرریز اطلاعات مواجه شوند. سیستم توصیه گر در شبکه اجتماعی کاربران را در انبوه اطلاعات کمک میکند و اطلاعات مورد علاقه کاربران را در اختیار آنها قرار می دهد. به سیستم توصیهگری که از تعاملات اجتماعی به عنوان اطلاعات ورودی برای افزایش
دقت و کارایی سیستم استفاده میکند، سیستم توصیهگر اجتماعی گفته میشود ; Yang, Guo, Liu, Tang et al., 2013 ) .(& Steck, 2014
اعتماد در سیستم توصیهگر اجتماعی
با گسترش شبکههای اجتماعی، استفاده از مفهوم اعتماد در سیستم توصیهگر بسیار مفید میباشد. افراد برای خرید یک آیتم تمایل دارند از نظرات دوستان مورد اعتماد خود استفاده کنند. سیستم توصیهگر سنتی تنها از ماتریس امتیاز برای پیشبینی امتیاز استفاده میکند. اما در سیستم توصیهگر اجتماعی با استفاده از شبکه اعتماد میان افراد دقت سیستم توصیهگر ارتقاء پیدا میکند. در شبکه اعتماد اگر فرد u به v اعتماد داشته باشد مقدار Tu ,v برابر یک و اگر فرد u به v اعتماد نداشته باشد مقدار Tu ,v برابر با صفر است. در گراف شکل 2 گرهها نشاندهنده کاربران و یالها اعتماد میان کاربران را مشخص میکند
(a ماتریس اعتماد
(b گراف اعتماد
شکل :2 مثال بهرهگیری از اعتماد در سیستم توصیهگر
اهداف این مطالعه
· در سیستمهای توصیهگر اجتماعی اغلب از روش فیلترینگ مشارکتی استفاده میشود. به همین دلیل در این مطالعه کارهای انجام شده در سیستم توصیهگر اجتماعی به دو دسته مبتنی بر حافظه و مبتنی بر مدل تقسیم میشوند.
· تقسیمبندی مقالات بر اساس نوع اعتماد و روش محاسبه اعتماد
· مقایسه روش مبتنی برمدل با روش مبتنی بر حافظه
مبتنی بر حافظه
در این روش بهوسیله شبکه اجتماعی افراد نزدیک به کاربر هدف مشخص میشوند، سپس با تجمیع نظرات افراد نزدیک، امتیاز کاربر هدف به آیتم مورد نظر پیشبینی میشود. در این روش به وسیله روشهای هیورستیک24 و با ذخیره تمامی اطلاعات ماتریس امتیاز، مکانیزم توصیه انجام میگیرد.
الگوریتم (Golbeck, 2005) Tidal Trust از شبکه اعتماد میان کاربران استفاده میکند. این مدل دارای دو معیار است: (1 مسیر کوتاهتر میان کاربر هدف و افراد شبکه اعتماد دقت توصیه را بالا میبرد. (2 اعتماد بالا در شبکه اعتماد دقت توصیه را بالا میبرد. در این روش از این دو معیار برای تعیین کاربران مورد اعتماد کاربر هدف استفاده میشود.
این الگوریتم با استفاده از جست و جوی اول عمق از کاربر هدف به دنبال گره امتیاز دهنده میباشد، اگر گره همسایه به آیتم مورد نظر امتیاز داده باشد امتیاز به کاربر هدف اختصاص داده میشود. در غیر این صورت گره همسایه کاربر هدف از همسایگان خود امتیاز آیتم را دریافت میکند. به همین صورت این عملیات ادامه پیدا میکند تا گره امتیاز دهنده مشخص شود. جست و جوی اول عمق مینیمم عمق شبکه را برای کاربر هدف تعیین می کند و امتیازدهندگان با کمترین فاصله از کاربر هدف مشخص میشوند (معیار . (1 در این روش اطلاعات کاربران با اعتماد بالا درنظر گرفته می شوند و کاربران با اعتماد پایین درنظر گرفته نمیشوند. برای این امر یک حداقل اعتماد برای شبکه اعتماد درنظر گرفته میشود.کاربرانی که داری اعتماد بالاتر از آستانه T هستند برای پیش بینی امتیاز کاربر هدف مشارکت داده میشوند (معیار.(2 اعتماد میان کاربر غیر مستقیم u و v از طریق فرمول 6 محاسبه میشود.
در فرمول بالا k همسایه مستقیم کاربر u و v میباشد. برای پیش بینی امتیاز کاربر u به آیتم i از نظر کاربران مورد اعتماد کاربر u با ضریب اعتماد Tu ,v استفاده میشود. در فرمول زیر v کاربران مورد اعتماد کاربر u میباشند.
الگوریتم (Paolo Massa, 2007) Mole Trust شبیه به الگوریتم Tidal Trust میباشد. این روش دو گام اساسی دارد، یک حلقهها از شبکه اعتماد حذف میشوند. با این کار سرعت الگوریتم بالا میرود، چون که هر کاربر برای تعیین اعتماد نیاز به یک بار