پایان نامه ارشد با موضوع بازیابی اطلاعات، یادگیری ماشین، تجارت الکترونیک، ایجاد و توسعه

دیگر از شاخههای علوم کامپیوتری موردتوجه قرارگرفتهاند.
در این فصل مروری بر تعاریف موجود از زمینه ارائهشد. تعاریف به دو دسته کلی تعاریف پارامتریک و تعاریف کلی تقسیم شدند. تعاریف پارامتریک، تعاریفی هستند که زمینه را بهصورت مجموعهای از پارامترها ارائه میکنند و بررسی آنها و آشنایی با آنها در جهت شناخت و بهکارگیری صحیح مفهوم زمینه، کاربرد دارد. در میان تعاریف کلی ارائهشده برای زمینه و تعاریفی که برای آگاهی از زمینه ارائه شدهاند، در این تحقیق از تعاریف ارائهشده توسط دِی و اِیبود[۲۸] استفاده شدهاست، زیرا این تعریف یکی از کاملترین و پراستنادترین تعاریف در این حوزه بوده است که توسط تحقیقات زیادی مورد استناد قرار گرفتهاست. در ادامه مهمترین دستهبندیهای موجود از تعاریف زمینه ارائهشدند. سپس مفهوم آگاهی از زمینه تعریفشده و در پایان موضوع طراحی زمینه تشریحشد.
فصل چهارم: سیستمهای پیشنهاددهنده
۴-۱ مقدمه
از جمله روشهای فیلتر کردن اطلاعات، استفاده از شخصیسازی۸۰ است. هدف شخصیسازی، ارائه اطلاعات مورد نیاز کاربر بدون پرسش صریح از اوست. تکنیکهای هوشمند از اطلاعات در مورد کاربر وب استفاده میکنند تا بتوانند علایق شخصیشده را تحویل دهند. سیستمهای پیشنهاددهنده۸۱ نوع خاصی از سیستمهای شخصیسازی اطلاعات هستند که اقلام را بر اساس میزان جذابیت آنها برای کاربران، از یک مجموعه بزرگ از اقلام و کاربران فیلتر میکنند. موضوع سیستمهای پیشنهاددهنده از اواسط سالهای ۱۹۹۰ و همزمان با پیدایش اولین مقالات در زمینه فیلترسازی مشارکتی۸۲ به یکی از زمینههای تحقیقاتی مهم و موردتوجه در تجارت الکترونیک تبدیل شد و از آن زمان بهبعد کارهای زیادی هم در صنعت و هم در مراکز علمی در جهت ایجاد و توسعه روشهای جدید پیشنهاددهی انجامگرفتهاست. توجه به این عرصه درحال حاضر نیز بهدلیل وجود مسائل حلنشده بسیار، به عنوان یک زمینه تحقیقاتی همچنان وجوددارد و هنوزهم به روشهای پیشنهاددهی کاراتر و مطابق با محدوده وسیعتری از کاربردها نیاز است.
عملکرد این سیستمها بهعنوان بهعنوان شاخه تحقیقاتی مستقلی که مبتنی بر یک ساختار امتیازگذاری۸۳ است، مطرح میباشد. معمولترین شکل مساله پیشنهاددهی، حالت محدودشدهای از آن است که شامل تخمین امتیاز اقلامی میباشد که توسط کاربر مشاهده نشدهاند. پس از برآورد و تخمین امتیازات تعییننشده، اقلام با بالاترین امتیاز تخمینی به کاربر توصیه میشوند. عملیات تخمین امتیازات برپایه وجود اطلاعاتی انجام میشود که در ادامه به آن پرداخته خواهدشد[۷].
در این فصل، ابتدا به عملکرد سیستمهای پیشنهاددهنده پرداخته شده و دستهبندیهای موجود ارائه میشود. پس از آن روشها و شاخصهای ارزیابی این سیستمها ارئهشده و در پایان به روشهای بسط قابلیتهای سیستمهای پیشنهاددهنده پرداخته خواهدشد.
۴-۲ بررسی عملکرد سیستمهای پیشنهاددهنده
عملکرد سیستمهای پیشنهاددهنده معرفی منابع مورد نیاز کاربران به آنهاست. این منابع میتوانند مواردی مانند اطلاعات خاص مورد نیاز کاربر و یا کالاهایی مانند کتاب یا فیلم مورد علاقه یک کاربر را از میان انبوه کالاهایی که کاربر با اطلاعات آنها روبروست، دربرگیرند[۷,۸,۹]. درسیستمهای پیشنهاددهنده، سه مجموعه داده اصلی یعنی مجموعه کاربران (C)، مجموعه اقلام قابل توصیه (S) (مانند کتاب، فیلم، موسیقی و غیره) و مجموعه دادههایی که رابطه میان دو مجموعه قبلی را تعریف میکنند، وجوددارند. مجموعهS میتواند شامل صدها، هزارها و حتی میلیونها کالا در کاربردهای مختلف بوده و بهطور مشابه مجموعه C نیز میتواند چنین وضعیتی را داشته باشد. ارتباط میان دو مجموعهC و S مبتنی بر ساختار امتیازگذاری است که میزان مفید بودن یا مورد علاقه بودن کالا را برای کاربر مشخص می کند. این ارتباط با تابعی تحتعنوان تابع سودمندی، u، به صورت رابطه (۴-۱) تعریف میشود.[۷]
(۴-۲)
که در آن Ratings، مجموعه مرتبی مانند اعداد صحیح غیرمنفی یا مجموعه اعداد حقیقی در بازهای معین میباشد.
درواقع برای هر کاربر ، مایل به انتخاب اقلام هستیم که تابع سودمندی برای کاربر را حداکثر میسازد. درسیستمهای توصیهکننده، میزان سودمندی یک قلم کالا معمولاً توسط امتیازی مشخص میشود که میزان علاقهمندی کاربری خاص را به کالایی خاص مشخص میکند. بهعنوان مثال، جان به فیلم هری پاتر، امتیاز ۷ ( از ۱۰) میدهد.
هر کاربر بهصورت مجموعهای از خصوصیات (مانند شناسه، سن، جنسیت، میزان درآمد و غیره) که پروفایل کاربر نامیده میشود، مشخص میشوند. بهطور مشابه، اقلام نیز از مجموعهای از خصوصیات، پروفایل اقلام، تشکیل شدهاند. مثلاً در مورد یک سیستم پیشنهاددهنده برای فیلم، این خصوصیات عبارتخواهندبود از شناسه، عنوان، ژانر، کارگردان، بازیگران اصلی وغیره.
در سیستمهای پیشنهاددهنده مقادیر u معمولاً فقط بر روی زیر مجموعهای از دامنه C×S تعریفشدهاست و نه بر تمام آن و قسمت های نامشخص این دامنه را باید با استفاده از دادههای موجود بهصورت تخمینی مشخص نمود. دامنه ذکرشده را میتوان بهصورت یک ماتریس کاربر- اقلام در نظر گرفت که هر ستون آن به یک قلم کالا و هر سطر آن به یک کاربر اختصاص داده میشود. میزان علاقهمندی یک کاربر به محصولی خاص در یک سلول این ماتریس ذخیره میشود و در خانههای نامشخص آن مقدار تهی (-) قرار گرفتهاست. کار سیستم پیشنهاددهنده تخمین این امتیازات نامشخص و اعمال توصیههای مناسب براساس برآوردهای بهعملآمدهاست. بهعنوان مثال ، نمونهای از یک ماتریس کاربر- اقلام برای یک سیستم پیشنهاددهنده فیلم که امتیازات در بازه ۱ تا ۵ قرار دارند را در جدول ۴-۱ ملاحظه میکنید.
جدول ۴-۱: نمونهای از ماتریس کاربر- اقلام برای یک سیستم پیشنهاددهنده فیلم[۷]
البته همانطور که قبلا هم اشاره شد، مجموعهS میتواند شامل صدها، هزارها و حتی میلیونها کالا در کاربردهای مختلف بوده و بهطور مشابه مجموعه C نیز میتواند چنین وضعیتی را داشته باشد. در حالت کلی، حجم این ماتریس n×m میباشد که n تعداد کاربران و m تعداد محصولات است. عملیات تخمین به شیوههای مختلفی چون استفاده از روشهای یادگیری ماشین، استفاده از تئوری تقریب۸۴ و یا فرمولهای مکاشفهای۸۵ قابل انجام است.
هدف نهایی سیستمهای توصیهکننده با ارائه پیشنهاد N قلم کالا با بالاترین امتیازات تخمینی به کاربران محقق میشود بهطوریکه برای هر کاربر ، اقلام با حداکثر میزان سودمندی انتخاب و معرفی میگردد[۷]. در مواردی عملیات پیشنهاد، مجموعهای از کاربران را با در نظر گرفتن حداکثر میزان سودمندی به یک قلم کالا مرتبط میکند.
تا به امروز روشهای پیشنهاددهی زیادی ارائه شدهاست که این روشها و متدولوژیها در سه دستهبندی اصلی روشهای مبتنی بر محتوا، فیلترسازی مشارکتی و روشهای ترکیبی۸۶ قرار میگیرند[۷,۹]. در ادامه به هر کدام از این روشها در قالب یک بخش پرداخته میشود. در نگاهی دیگر روشهای پیشنهادهی، اعم از مبتنی بر محتوا، فیلترسازی مشارکتی و روشهای ترکیبی به دو دسته روشهای مبتنی بر حافظه و مبتنی بر مدل تقسیم میشوند. درمقایسه با الگوریتمهای مبتنی بر حافظه، الگوریتمهای مبتنی بر مدل، با استفاده از روشهای یادگیری ماشین مدلی را با استفاده از مجموعه امتیازات موجود ایجاد کرده و از آن بهمنظور پیشگویی امتیازات استفاده میکنند[۷,۱۱].
۴-۲-۱ روشهای مبتنی بر محتوا
در این گروه از روشها، عمل پیشنهاددهی با استفاده از یافتن اقلامی انجام میگیرد که بیشترین تشابه را با اقلامی داشته باشند که درگذشته موردعلاقه کاربر بودهاند. به عبارت دیگر u(c,s)، سودمندی کالای s برای کاربر c، بر اساس کلیه مقادیر موجود u(c,si) هایی که si مشابه به s بوده و si جزء کالاهای مورد علاقه کاربر هستند، برآورد میشود.
بهعنوان مثال در یک سیستم پیشنهاددهنده فیلم، یک روش مبتنیبرمحتوا، ابتدا سعی میکند کلیه مشترکات میان فیلمهایی که کاربر c در گذشته به آنها امتیاز بالایی دادهاست (هنرپیشگان اصلی، کارگردانها، ژانرهای سینمایی، موضوعیت فیلم و غیره) را شناسایی کند. سپس بر اساس مشترکات بدست آمده تنها فیلمهایی را به کاربران توصیه میکند که شباهت زیادی دارند به آنچه که در گذشته مورد علاقه کاربر بوده است.
ریشههای این روش به شاخههایی چون بازیابی اطلاعات۸۷ و فیلترسازی اطلاعات۸۸ بازمیگردد. بههمین دلیل و همچنین به دلیل اهمیت بسیاری از کاربردهای متنی۸۹ موجود، در حال حاضر بسیاری از سیستمهای پیشنهاددهنده مبتنی بر محتوا، بهمنظور توصیه اقلام دارای اطلاعات متنی مانند متون و اسناد، صفحات وب و آدرس آنها و همچنین پیامهای خبری یوزنتها، یعنی بهطور کلی سیستمهایی که میتوان در آنها خصوصیات اقلام را با مجموعهای از کلمات کلیدی۹۰ مشخصکرد، استفاده میشوند.
مهمترین مساله در این حوزه، ارائه الگوریتمی مناسب برای تعیین میزان تشابه بین اقلام است. این الگوریتمها در دو دسته مبتنی بر حافظه و مبتنی برمدل، قرار میگیرند. روشهای مبتنی بر حافظه، فرمولهای مکاشفهای بوده و از متدهای سنتی بازیابی اطلاعات استفاده میکنند. یکی از مهمترین این روشها معیار کسینوسی درجه شباهت است. روشهای مبتنی بر مدل، مدلی را با استفاده از مجموعه داده موجود ایجاد کرده و بر اساس آن پیشبینیهای لازم را انجام میدهد. ایجاد مدل با استفاده از روشهای یادگیری آماری۹۱ مانند کلاسبندی بیزین۹۲ و یا تکنیکهای یادگیری ماشین چون خوشهبندی۹۳، درخت تصمیمگیری و شبکههای عصبی انجام میشود. تفاوت این تکنیکها با روشهای مبتنیبر حافظه، در روش بازیابی اطلاعات و یا محاسبه تابع سودمندیاست. نمونهای از این روشها درمنابعی چون [۴۷,۴۸] ارائهشدهاست.
در ادامه و بهعنوان نمونه به توضیح روش معیار کسینوسی درجه شباهت پرداختهشدهاست. همانطور که قبلا اشارهشد، در روشهای مبتنی بر محتوا، خصوصیات اقلام با مجموعهای از کلمات کلیدی مشخص میشود. میزان اهمیت یک کلمه کلیدی مانند ki در یک سند dj با یک مقدار وزندار، wi,j، نمایشداده میشود که این وزن را به روشهای مختلفی میتوان تعریفکرد. یکی از بهترین روشهای اندازهگیری وزن کلمات کلیدی در بازیابی اطلاعات، معیار TF-IDF ( فراوانی واژه۹۴ تقسیم بر معکوس فراوانی سند۹۵)میباشد. این معیار به این صورت تعریف میشود: در نظر بگیرید که تعداد کل سندهای قابل پیشنهاد به کاربر، N باشد و کلمه کلیدی kj در ni تا از این سندها وجود داشته باشد. همچنین فرض کنید که fi,j تعداد دفعات تکرار کلمه کلیدی ki در سند dj است. در اینصورت، TFi,j، فراوانی (یا فراوانی نرمال) واژه کلیدی ki در متن dj است که به صورت زیر تعریف میشود:
(۴-۲)
که در این