سیستمهای پیشنهاد دهنده

سیستم‌های توصیه‌گر

هوش مصنوعی/ تکنولوژی‌‌های مربوطه سه شنبه, 22 مهر 1399 مهران زیدی

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

جالب بنظر می‌آید، نه؟ آیا می‌دانید این کار چطور امکان‌پذیر است و وبسایت‌ها و اپلیکیشن‌ها و سرویس‌های مختلف چطور چنین کاری انجام می‌دهند؟ مثلا یوتیوب چطور می‌داند شما چه ویدیوهایی تماشا می‌کنید یا گوگل چطور می‌داند شما چه اخباری دنبال می‌کنید؟

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

سیستم‌های توصیه‌گر (Recommender Systems):

سیستم‌های توصیه‌گر یکی از مهم‌ترین دسته‌های الگوریتم‌های ماشین لرنینگ می‌باشند که "پیشنهادهای مرتبط" به کاربر می‌دهد. به این معنا که از برداشتی که از رفتار شما دارند تلاش می‌کنند آیتم‌هایی (محصولات، ویدیوها، اخبار و...) را به شما معرفی کنند که بیشتر به آیتم‌های موردنظر شما نزدیک هستند.

در واقع سیستم‌های توصیه‌گر شامل یک‌سری تکنیک‌ها و الگوریتم‌هایی می‌شوند که قادر هستند آیتم‌های مشابه را به کاربران پیشنهاد بدهند.

در حالت ایده‌آل، پیشنهادها تا حد ممکن باید مشابه و مرتبط با آیتم‌هایی باشد که کاربر می‌بیند، در اینصورت کاربر با آن آیتم ارتباط برقرار می‌کند و مشغول آن می‌شود و بیشتر مواقع کارش نیز راحت‌تر می‌شود. 

یادگیری تقویتی چیست؟

شاید برایتان سوال باشد که این آیتم‌ها چگونه انتخاب می‌شوند؟ پاسخ این است که آیتم‌ها براساس ربطشان به یکدیگر رتبه‌بندی می‌شوند و مرتبط‌ترین آیتم‌‌ها به کاربر نشان داده می‌شوند.

شباهت یا ارتباط مقوله‌ای است که یک سیستم توصیه‌گر باید متوجه آن بشود که این ارتباط و شباهت براساس داده‌های گذشته می‌باشند. برای مثال اگر اخیراً ویدیوهایی راجع به فیل‌ها در یوتیوب دیده باشید، یوتیوب شروع می‌کند ویدیوهای دیگری که راجع به فیل‌ها هستند را به شما پیشنهاد می‌دهد.

این سیستم‌ها به دو دسته‌‌ی زیر تقسیم می‌شوند:

  1. سیستم فیلتر مشترک (Colaborative filtering system)
  2. سیستم محتوا محور (Content-based system)

 

انواع سیستم توصیه‌گر

شکل 1:انواع مختلف سیستم‌های توصیه‌گر

 

سیستم‌های فیلتر مشترک (Colaborative filtering system):

فیلتر مشترک برای سیستم‌های توصیه‌‌گر به روش‌هایی اطلاق می‌شود که صرفاً براساس تعاملات گذشته بین کاربران و آیتم‌های موردنظر می‌باشند (به این معنا که ما به چیزی به غیر از اطلاعات گذشته‌ی کاربران احتیاجی نداریم). بنابراین ورودی سیستم تمام داده‌های گذشته از تعاملات کاربر و آیتم هدف خواهد بود. این داده‌ها معمولا در یک ماتریس ذخیره می‌شوند که ردیف‌های آن را کاربران تشکیل می‌دهند و ستون‌های آن را آیتم‌ها.

ایده‌ی اصلی‌‌ای که پشت چنین سیستم‌هایی نهفته است این است که داده‌های گذشته کاربران باید بقدر کافی موجود باشد که سیستم بتواند پیش‌بینی خوبی انجام دهد.

 

عملکرد سیستم‌ توصیه‌گر

شکل 2: تصویری از نحوه فیلتر کردن مشارکتی برای پیش بینی رتبه‌بندی 4 آیتم برای کاربر: یک تصویر ، یک کتاب ، یک ویدیو و یک بازی ویدیویی. براساس داده‌های گذشته‌ی کاربران ، یعنی موردعلاقه بودن یا نبودن هر آیتم، سیستم سعی می کند پیش بینی کند که کاربر چگونه مورد جدیدی را ارزیابی می کند که تابحال آن را رتبه‌بندی نکرده است. خود پیش‌بینی‌ها بر‌اساس رتبه‌بندی گذشته دیگر کاربرانی است که رفتار آن‌ها تقریبا مشابه کاربر فعال است. در این حالت، سیستم پیش بینی / توصیه کرده است که کاربر فعال ویدیو را دوست ندارد.

 

گفتنی است که خود روش‌های فیلتر مشترک نیز به دو زیرگروه تقسیم می‌شوند:

  1. روش‌های مبتنی بر حافظه
  2. روش‌های مبتنی بر مدل

رویکردهای مبتنی بر حافظه ساده‌ترین روش‌ هستند زیرا از هیچ مدلی استفاده نمی‌کنند . آنها فرض می‌کنند که می‌توان برروی حافظه خالص داده‌های گذشته پیش‌بینی کرد و معمولا فقط از یک روش ساده اندازه‌گیری فاصله مانند نزدیک‌ترین همسایه (Nearest Neighbour) استفاده می‌کنند.

در مقابل، رویکردهای مبتنی بر مدل همیشه یک مدل زیربنایی را فرض می‌کنند و اساساً سعی می‌کنند مطمئن شوند چه پیش‌بینی‌هایی منجر به ساخت بهترین مدل می‌شوند.

به عنوان مثال بیایید فرض کنیم ماتریسی داریم از غذای موردعلاقه‌ی کاربران ایرانی که به قرمه‌سبزی علاقه دارند. یک روش مبتنی بر حافظه تنها به آنچه که کاربر در ماه گذشته خورده است توجه می‌کند و اهمیتی نمی‌دهد که‌ آيا در کل، این کاربر قرمه‌سبزی دوست دارد یا خیر؟ از طرفی دیگر روش مبتنی بر مدل به این دلیل که فرض اصلی مسئله این است که کاربران موردنظر قرمه‌سبزی دوست دارند اطمینان حاصل می‌کند که پیش‌بینی‌هایی که می‌کند به سمت قرمه‌سبزی بودن متمایل باشند.

ماشین‌های خودران

 

سیستم‌های مبتنی بر محتوا:

در نقطه‌ی مقابل فیلتر مشترک، رویکردهای مبتنی بر محتوا از اطلاعات اضافی در مورد کاربر و/یا آیتم‌ها برای پیش‌بینی استفاده می‌کنند.

به عنوان مثال، در گیفی که در بالا مشاهده کردیم، یک سیستم مبتنی بر محتوا ممکن است شامل سن، جنسیت، شغل و دیگر فاکتورهای شخصی کاربر شود تا پیش‌بینی انجام گیرد. مثلا اگر بدانیم ویدیو درباره‌ی اسکیت‌بورد بازی کردن است ولی کاربر 87 سال سن دارد پیش‌بینی اینکه کاربر ویدیو را دوست ندارد بسیار آسان‌تر می‌شود.

 

پیشبینی سیستم توصیه‌گر
 

به همین دلیل است که هنگام ثبت‌نام در بسیاری از وب سایت‌ها و سرویس‌های آنلاین، از شما می‌خواهند اطلاعاتی از قبیل تاریخ تولد، جنسیت و قومیت خود را ذکر کنید(معمولا به صورت اختیاری)! این اطلاعات برای این است که داده‌های بیشتری برای سیستم‌شان مهیا شود که بتواند بهتر پیش‌بینی کند.

 

بنابراین، روش‌های مبتنی بر محتوا شباهت بیشتری به ماشین لرنینگ کلاسیک دارند. به این معنا که ما ویژگی‌هایی را براساس داده‌‌های کاربر و آیتم‌ها ایجاد می‌کنیم و از آن‌ها برای پیش‌بینی استفاده می‌کنیم. ورودی سیستم ما ویژگی‌های کاربران و ویژگی‌های آیتم‌ها است و خروجی سیستم، پیش‌بینی این است که کاربر آیتم را دوست دارد یا خیر.

 


ذخیره مقاله:

اشتراک گذاری:




...

مهران زیدی

هم-بنیان‌گذار و عضو ارشد CGC

Working on ML


مطالب پیشنهادی



              
                 انواع پردازنده
انواع پردازنده(CPU)

اگر به دنبال پردازنده مناسب برای کامپیوتر شخصی خود هستید و نمیتوانید تصمیم بگیرید چه پردازنده‌ای انتخاب کنید چون اطلاعات کافی درباره هر کدام از آنها ندارید این مقاله به شما کمک خواهد کرد تا انتخابی انجام دهید که مورد رضایت شما باشد.


              
                 امنیت شبکه لایه بندی شده
امنیت شبکه لایه بندی شده (قسمت دوم)

پیش از این در مورد امنیت شبکه لایه بندی صحبت کردیم. در این مطلب موارد باقی مانده را ذکر میکنیم و با تکنولوژی‌های IDS و IPS آشنا خواهیم شد. اگر به شبکه علاقه مند هستید این مطلب را پیشنهاد می‌کنیم.


              
                 نرم افزار ادیت عکس
پنج اپلیکیشن کاربردی ادیت و طراحی عکس ساده برای کاربران آماتور

در این مطلب از جامعه گیک‌های کامپیوتر 5 مورد از بهترین اپلیکیشن‌ها و نرم افزارها که برای ادیت تصاویر استفاده می‌شوند را معرفی می‌کنیم.


نظری برای نمایش وجود ندارد. شما اولین نظر باشید.


ارسال دیدگاه

برای ثبت دیدگاه باید ابتدا وارد شوید