عدم پاسخگویی در برخی شرایط خاص، خصوصا در مورد کاربران تازه وارد یا مشتریان جدید (در فصل آینده در خصوص این مورد توضیحات کاملتری ارائه میگردد)
مشکلات فنی و موانع عدیدهای نیز در خصوص پیادهسازی و ارائه الگوریتم برای سیستمهای توصیهگر وجود دارد که پارهای از آنها عبارتند از:
(( اینجا فقط تکه ای از متن درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. ))
پیادهسازی این سیستمها به دلیل وجود فاکتورهای بسیار متعدد و تاثیرگذار بر روی روند تصمیم گیری مکانیزه، بسیار پیچیده میباشد.
وجود امکان نفوذ متجاوزان و کلاهبرداران به اینگونه سیستمها و ایجاد داده های غیرصحیح در سیستم، که ممکن است نتیجه خروجی سیستم را به نحوی تغییر یا منحرف نمایند.
پیچیدگی زمانی الگوریتمهای موجود و سرعت پاسخگویی کند این سیستمها خصوصا در ارائه پیشنهادات برخط[۲۰]
پیچیدگی پیادهسازی الگوریتمهای موجود در این زمینه به لحاظ برنامهنویسی و مباحث نرمافزاری
وجود مشکلات عدیده در خصوص مدیریت داده های بسیار سنگین و گاها به صورت توزیعشده[۲۱]
پیچیدگیهای ناشی از وجود یک شبکه گرافی بسیار حجیم و درهم با تعداد گرههای بسیار زیاد خصوصا در مورد شبکه های اجتماعی
عدم وجود امکانات زمانی و سختافزاری در زمینه بررسی کل شبکه های مبتنی بر اعتماد برای یافتن بهترین جواب و با بالاترین دقت ممکن(به عنوان مثال اجرای برخی از الگوریتمها ممکن است چندین روز به طول بیانجامد)
۱-۶- انواع رویکردها و مدلهای موجود در زمینه پیادهسازی سیستمهای توصیهگر
در سالهای اخیر شیوه ها، رویکردها، الگوریتمها و مدلهای متنوع و گوناگونی در زمینه توسعه انواع سیستمهای توصیه گر مطرح گردیده است که از ابعاد مختلف و با نگاههای متفاوتی به مسئله ارائه پاسخ و پیشنهاد مناسب به کاربران پرداختهاند که در این میان، پارهای از مهمترین و معروفترین روش های موجود به اختصار معرفی میگردند.
یکی از متداولترین شیوه های مطرح”پالایش گروهی”میباشد[۶]. این شیوه با جمعآوری و آنالیز داده های موجود در مورد رفتار گذشته کاربران، فعالیتهای ایشان، سلایق آنها و امتیازاتی که به آیتمهای مختلف توسط ایشان داده شده است و همچنین بر اساس تشابه کاربران یا موضوعات با یکدیگر، مدلی ایجاد مینماید و سپس از آن مدل برای پیش بینی آیتمهای مورد علاقه کاربر یا پیش بینی امتیازدهی یک کاربر به یک آیتم خاص استفاده مینماید[۷]. یکی دیگر از شیوه های موجود در این زمینه “پالایش محتوایی[۲۲]” میباشد که در این شیوه، مجموعه ای از خصوصیات یک آیتم، برای پیشنهاد آیتمهای جدید با خصوصیات مشابه با آن مورد استفاده قرار میگیرد[۸]. از هر دو روش فوق نسخههایی نیز به صورت تجاری پیادهسازی شده است که به عنوان مثال سیستم توصیهگر موسیقی بکار رفته در سایت Last.fm[23] بر اساس شیوه پالایش محتوایی پیادهسازی شده است در حالیکه در سایت [۲۴]PandoraRadio از شیوه پالایش گروهی استفاده شده است.
یکی دیگر از شیوه های موجود درخصوص تولید سیستمهای توصیهگر، ترکیب هر دو رویکرد فوق تحت عنوان “سیستمهای توصیهگر ترکیبی” میباشد[۴]. مطالعات اخیر نشان داده است که در برخی موارد استفاده از ترکیب هر دو شیوه می تواند نتایج موثرتری را ایجاد نماید. این ترکیب می تواند در اشکال و انواع مختلفی صورت گیرد که هر کدام نتایج خاصی را تولید مینمایند[۹]. تحقیقات نشان داده است که ترکیب این دو شیوه می تواند برخی از مشکلات هر کدام از روشها را برطرف نموده و نتایج با دقت بالاتری ایجاد نماید، به عنوان مثال، سیستم توصیهگر ایجاد شده در سایتNetflix[25] از یک سیستم ترکیبی بهره میبرد که در آن عادات مشاهده فیلم، توسط کاربران مشابه (شیوه پالایش گروهی)، در کنار ارائه فیلمهایی که به لحاظ مشخصات، مشابه فیلمهایی هستند که توسط کاربر امتیاز بالاتری اخذ نموده اند (شیوه پالایش محتوایی) در نظر گرفته شده است.
با ظهور شبکه های اجتماعی و شبکه های مبتنی بر اعتماد، رویکردها و ایدههای جدیدی در خصوص ایجاد و بهبود سیستمهای توصیهگر، با توجه به ارتباطات میان کاربران و به صورت خاص، وجود رابطه اعتماد میان آنها مطرح گردیدکه منجر به تولید سیستمهای توصیه گر مبتنی بر اعتماد شده است[۱۰].
یک شبکه اجتماعی در واقع یک ساختار اجتماعی متشکل از مجموعه ای از بازیگران (شامل کاربران و سازمان آنها) و ارتباطات دوتایی میان این عناصر میباشد[۱۱] که به عنوان نمونه برجستهای از آن می تواند به شبکه اجتماعی facebook اشاره نمود. این ارتباطات می تواند در قالب انواع گوناگون یا بر اساس معیارهای مختلفی مانند: قیمتها، تبادلات مالی، دوستی، خویشاوندی، تجارت، سرایت بیماری یا مسیرهای هواپیمایی و غیره بیان گردند[۱۲]. بررسی ابعاد و زوایای مختلف یک شبکه اجتماعی روش مشخصی برای آنالیز و تحلیل ساختار کلیه عناصر تشکیل دهنده آنرا فراهم می کند. مطالعه این ساختارها از روش “آنالیز شبکه اجتماعی” برای شناسایی الگوهای محلی و سراسری ، یافتن عناصر و موجودیتهای تاثیرگذار در شبکه و بررسی دینامیک شبکه استفاده مینماید[۱۳]. شبکه های اجتماعی و تحلیل آنها یکی از موضوعات میان رشتهای است که به صورت آکادمیک در حوزه های روانشناسی اجتماعی، جامعه شناسی، آمار و تئوری گراف مطرح میباشد.
از دیدگاه تئوری گراف[۱۴] یک شبکه اجتماعی متشکل از تعدادی گره و یال میباشد که گرهها در واقع همان افراد، سازمانها و گروه ها میباشند و یالها نیز بیانگر رابطه میان هر دو گره موجود در این گراف میباشند. نکته حائذ اهمیت، پیچیدگی این گرافها به لحاظ تعداد بسیار زیاد گرهها و همچنین یالهای میان آنها میباشد.
یکی از انواع خاص شبکه های اجتماعی وجود یک شبکه مبتنی بر اعتماد میان کاربران میباشد که در آن کاربران عقیده و نظر خود در خصوص اعتماد به دیگران را صراحتا و آشکارا بیان می نمایند و این اعتماد را در قالب امتیازی که به افراد مختلف می دهند بیان می کنند[۱۵]. یک شبکه مبتنی بر اعتماد در واقع یک گراف جهتدار است که می تواند متمایز کننده آن از یک شبکه اجتماعی گردد. گرهها کاربران میباشند و یالهای گراف بیانکننده وجود رابطه اعتماد میان دو کاربر میباشند[۱۶]. به عنوان مثال می توان به سایت Epinions[26] اشاره نمود. این سایت تجارت الکترونیک[۲۷] مثال بارزی از شبکه مبتنی بر اعتماد می باشد که در آن کاربران در خصوص محصولات، نظرات خود را مطرح می نمایند و می توانند برای محصولات یا نظر سایر کاربران امتیازی در محدوده ۱ تا ۵ را انتخاب نمایند. نکته مهم در خصوص این سایت این است که کاربران می توانند بر اساس کیفیت و تشابه نظر سایر افراد با خودشان، ایشان را به شبکه اعتماد خود اضافه نمایند و شبکه ای از افراد مورد اعتماد خود را تشکیل دهند و یا افراد ناشناس را که نظرات آنها مورد تایید نمی باشد را در لیست سیاه[۲۸] خود قرار دهند.
سیستم توصیهگری نیز که بر اساس شبکه اعتماد ایجاد میگردد به کاربران بر اساس نظرات افراد موجود در شبکه اعتماد[۲۹] ایشان و یا بر اساس نظرات افرادی که مورد اعتماد اعضای شبکه اعتماد باشند پیشنهاداتی را ارائه مینماید.
یکی از مباحث مهم و مطرح در اینگونه شبکه ها نحوه بیان و ارزیابی معیار اعتماد میان کاربران میباشد که روش های بسیار متنوع و مختلفی در این خصوص موجود است که طبیعتا منتج به نتایج متفاوتی میگردند[۱۷]. به عنوان مثال تعداد ارتباطات مستقیم و غیرمستقیم میان یک کاربر با کاربر دیگر می تواند بیان کننده میزان اعتماد میان ایشان باشدکه این امر به صورت کلی باعث ارائه جوابهای قابل قبولتری میگردد[۱۸]. نحوه بیان معیار اعتماد و اندازه گیری آن، خود یکی از موضوعات قابل تحقیق و بررسی است که از محدوده این تحقیق خارج بوده و در این تحقیق وجود یک شبکه مبتنی بر اعتماد میان کاربران به عنوان یکی از فرضیه های تحقیق در نظر گرفته می شود و به منظور محاسبه اندازه و مقدار اعتماد میان کاربران از نتایج تحقیق صورت گرفته در این خصوص بهره برداری میگردد[۱۹].
۱-۷- تشریح و بیان مسئله
در یک سیستم توصیهگر بطور معمول مجموعه ای از کاربران[۳۰] وجود دارد که به صورت مجموعهU={u1,u2,…,uN} نمایش داده می شود و مجموعه ای از موضوعات و اشیا[۳۱] موجود میباشد که به صورت مجموعهI={i1,i2,…,iM} نمایش داده میشود بطوریکه هر کاربر به تعدادی از اشیا یا موضوعات امتیازی تخصیص میدهد که به صورت مجموعه RIu={iu1,iu2,…,iuk} نمایش داده می شود و امتیاز کاربر u به آیتمi به صورت ru,i بیان میگردد. ru,i می تواند یک عدد اعشاری باشد ولی در اکثر مواقع این عدد به صورت صحیح و در بازه ]۵,۱[ بیان میگردد.
در یک سیستم توصیهگر مبتنی بر شبکه اعتماد، علاوه بر مطالب فوق رابطه اعتماد میان دو کاربر u و v، با متغیر tu,v نمایش داده می شود و مقدار آن عددی اعشاری در بازه ]۱,۰[ میباشد. مقدار صفر برای متغیر tu,v نشان دهنده عدم وجود اعتماد میان دو کاربر و مقدار یک بیانگر وجود رابطه اعتماد کامل میان دو کاربر میباشد. در اکثر شبکه های اعتماد همچون[۳۲]eBay، مقدار رابطه اعتماد به صورت مقدار دوتایی صفر و یک در نظر گرفته می شود. مجموعه TUu نشان دهنده مجموعه کاربرانی میباشد که به صورت مستقیم مورد اعتماد کاربر u میباشند و به صورتTUu={v ϵU | tu,v =۱} تعریف میگردد.
با توجه به تعاریف فوق، شبکه اعتماد را می توان به صورت یک گرافG=<U,TU> تعریف نمود که در آنTU={(u,v)| u ϵ U , v ϵ TUu}میباشد و در واقع هر گره در این گراف بیانگر یک کاربر و یال میان هر دو گره بیانگر رابطه اعتماد میان ایشان میباشد و مقدار یال بیانگر اندازه اعتماد میان دو فرد خواهد بود. وظیفه سیستم توصیهگر با توجه به تعاریف و مفاهیم فوق به صورت زیر بیان می شود:
“در صورتیکه کاربر u عضو مجموعه U و آیتمi عضو مجموعه I باشد به صورتیکه ru,i نامشخص باشد، پیش بینی امتیازدهی کاربر u به آیتمi وظیفه سیستم توصیهگر میباشد. به کاربر u کاربر مبدا[۳۳] و به آیتم i آیتم مقصد[۳۴] اطلاق میگردد و امتیاز پیش بینی شده توسط سیستم با نمایش داده می شود“[۲۰].
در اکثر مواقع، کاربران به درصد اندکی از آیتم ها امتیاز می دهند و در خصوص آنها نظرات خود را بیان می کنند که این امر باعث می گردد برای اکثر زوجهای <u,i>مقدار ru,i نامشخص باشد که این مسئله یکی از مسائل قابل تامل و مهم در خصوص طراحی مدل سیستم توصیهگر میباشد.
۱-۸- اهداف تحقیق
با توجه به مطالعات انجام شده و همچنین بررسی روشها، الگوریتمها، مقالات ژورنالها و کنفرانسهای معتبر در زمینه سیستمهای توصیهگر و با توجه به زمینه اصلی موضوع پایان نامه در رابطه با بهبود و پیادهسازی یک سیستم ترکیبی مبتنی بر شبکه اعتماد، مهمترین اهداف و دستاوردهای این تحقیق عبارتند از:
بررسی نقاط ضعف و قوت مدلهای ترکیبی موجود
ترکیب روش مبتنی بر اعتماد با یکی از روش های موجود در زمینه پالایش گروهی
پیاده سازی و بهبود مدل TrustWalker[20] به عنوان یک مدل ترکیبی نوین و برتر از طریق ایجاد تغییر در نحوه پیمایش شبکه اعتماد میان کاربران
بهبود دقت پیش بینی امتیازات کاربران به آیتمهای مختلف به کمک پیادهسازی و بکارگیری مکانیزمی جهت تفسیر و تعدیل نظر کاربران
کاهش خطا و افزایش درصد پوشش در زمان ارائه پیشنهاد به کاربران تازه وارد
محاسبه میزان دقیق اعتماد میان کاربران عضو شبکه اعتماد به صورت اعشاری با بکارگیری روشها و دیدگاه های مختلف در این زمینه[۱۹] به جهت افزایش و بهبود دقت و در نظر گرفتن مقدار محاسبه شده بجای مقدار صفر یا یک
پالایش شبکه اعتماد گسترده میان کاربران به نحوی که مدل پیشنهاد شده بر روی داده های کمتری اجرا گردد.
۱-۹- سوالات و فرضیه های تحقیق
فرضیه های موجود در این تحقیق عبارتند از:
وجود یک شبکه مبتنی بر اعتماد میان کاربران
بیان اعتماد میان کاربران در قالب یک عدد صحیح یا اعشاری در بازه ]۱,۰[
مبنا و اساس قراردادن پیاده سازی شخصی انجام گرفته از مدل TrustWalker به عنوان یکی از مدلهای برتر در زمینه موضوع تحقیق
اعتماد و تکیه بر نتایج تحقیقات و مقالات معتبر مورد ارجاع قرار گرفته در زمینه سیستمهای توصیهگر مبتنی بر شبکه اعتماد میان کاربران
وجود داده ها و نتایج تحقیقات قبلی صورت گرفته بر روی مجموعه داده Epinions[35]
سوالات مطرح نیز عبارتند از:
آیا ترکیب روش پالایش گروهی و روش مبتنی بر اعتماد باعث بهبود عملکرد سیستم توصیهگر میگردد؟
آیا عمق پیمایش شبکه اعتماد میان کاربران تاثیری بر روی نتایج دارد؟
آیا بکارگیری روش مبتنی بر آیتم در مقابل روش مبتنی بر کاربر باعث بهبود نتایج میگردد؟
آیا تعدیل و تفسیر نظرات کاربران باعث افزایش دقت و بهبود نتایج میگردد؟
از میان انواع روش های محاسبه اندازه اعتماد میان کاربران کدام روش نتایج قابل قبولتری را ارائه مینماید؟
ترکیب روش های موجود چه تاثیری بر روی درصد پوشش خواهد گذاشت؟
وجود شبکه اعتماد میان کاربران تا چه حد به حل مشکل ارائه توصیه به کاربران تازه وارد کمک مینماید؟
چه معیارهایی برای محاسبه تشابه دو کاربر یا دو آیتم مد نظر قرار گیرند؟
ترکیب روش مبتنی بر اعتماد با کدامیک از سایر روش های موجود در زمینه سیستمهای توصیهگر می تواند باعث بهبود نتایج گردد؟