معرفی سیستم های توصیه گر ؟
پیشنهاد دادن به صورتی مطابق سلایق کاربر باشد، بر عهده سیستمهای توصیه گر است. این سیستمها که امروز ما کاربر بسیاری از آنها هستیم، سعی میکنند از روی علاقهمندیهای ما و دیگران، پیشنهاد مناسبی به ما بدهند. سیستمهای توصیه گر در پیدا کردن و انتخاب نمودن آیتمهای موردنظر کاربران به آنها کمک میکنند. طبیعی است که این سیستمها بدون در اختیار داشتن اطلاعات کافی و صحیح در مورد کاربران و آیتمهای موردنظر آنها قادر به پیشنهاد دادن نمیباشند؛ بنابراین یکی از اساسیترین اهداف آنها جمعآوری اطلاعات گوناگون در رابطه با سلایق کاربران و آیتمهای موجود در سیستم است. منابع و روش های گوناگونی برای جمعآوری چنین اطلاعاتی وجود دارد. یک روش جمعآوری اطلاعات بهصورت صریح که در آن کاربر صراحتاً اعلام میکند که به چه چیزهایی علاقه دارد. روش دیگر روش ضمنی است که کمی دشوارتر است و در آن سیستم باید سلایق کاربر را با کنترل و دنبال کردن رفتارها و فعالیتهای او بیابد (بهعنوان مثال باید ببینید کاربر به چه آهنگهایی بیشتر گوش میدهد، چه صفحاتی را بازدید میکند، با چه کسانی در ارتباط است و …). معمولاً سیستمهای توصیه گر در ابتدای کار از کاربر میخواهند درجه علاقهمندی خود به هر یک از آیتمها را بهوسیله یک رتبه مشخص کنند. این امتیازها با استفاده از ماتریس کاربر-آیتم نمایش داده میشود. مثلاً همانطور که در جدول 2‑1 مشخص است کاربر A به آیتم اول امتیاز 1 داده است یا کاربر B به آیتم دوم امتیاز 4 را داده است. این امتیازها معمولاً در بازه 1 تا 5 هستند. همانطور که در جدول 2‑1 مشخص است، تعدادی از عناصر با امتیاز 0 وجود دارد. بدین معنی که کاربر به این آیتمها امتیاز نداده است؛ بنابراین وظیفه سیستم توصیه گر تخمین این امتیازات مجهول است. اگر این رتبهها با رتبه بالا پیشبینی شوند به کاربر پیشنهاد میشوند.
اطلاعات ورودی در سیستمهای توصیه گر ؟
یک سیستم توصیه گر ممکن است از یک یا چندین نوع مختلف از دادهها و اطلاعات استفاده کند که در زیر به موارد مهمی از این دادهها اشاره شده است:یک سیستم توصیه گر بر اساس دادههای ورودی به آن عمل میکند و هر چه تعداد و تنوع این دادهها بیشتر باشد، مسلماً کیفیت و دقت سیستم نیز بالاتر خواهد بود. لذا آنچه اهمیت دارد، نحوه استفاده و بهکارگیری این دادهها برای ساخت یک مدل مناسب است تا بتوانیم بر اساس این مدل یک توصیه خیلی مناسب به کاربر موردنظر داشته باشیم. روش ضمنی است که کمی دشوارتر است و در آن سیستم باید سلایق کاربر را با کنترل و دنبال کردن رفتارها و فعالیتهای او بیابد، بهعنوان مثال باید ببینید کاربر به چه آهنگهایی بیشتر گوش میدهد، چه صفحاتی را بازدید میکند، با چه کسانی در ارتباط است. یک روش جمعآوری اطلاعات بهصورت صریح که در آن کاربر صراحتاً اعلام میکند که به چه چیزهایی علاقه دارد، بهعنوان نمونه با امتیاز دادن به یک آهنگ. اطلاعاتی نظیر سن، جنسیت، ملیت و … در گروه اطلاعات دموگرافیک قرار میگیرند. سیستمهایی که از این روش استفاده میکنند بر این اساس عمل میکنند که کاربرانی که صفات دموگرافیک مشابهی دارند (مثلاً در یک بازه سنی قرار میگیرند) احتمالاً سلایق و خواستهها مشابهی نیز دارند. با ظهور و گسترش شبکههای اجتماعی در سالهای اخیر محققین به منبع اطلاعاتی دیگری برای بهبود کیفیت پیشنهادها پی بردند که همان اطلاعات موجود در شبکههای اجتماعی بود و بر همین اساس کارهای تحقیقاتی زیادی در این حوزه شکل ریزی گردید. توجه داشته باشید که این اطلاعات ممکن است بهصورت صریح و یا ضمنی جمعآوری شوند.
انواع الگوریتم های توصیه ؟
بر اساس نوع اطلاعات در سیستمهای توصیهگر، روشهای توصیه میتواند در سه دسته طبقهبندی شوند: مبتنی بر محتوی، پالایش مشارکتی و ترکیبی.
مبتنی بر محتوی
سیستمهای توصیهگر مبتنی بر محتوا بر اساس ویژگیهای آیتم و علایق کاربران که در پروفایل آنها مشخصشده است، پیشنهاد مناسب را ارائه میدهند.سیستمهای توصیهگر مبتنی بر محتوا بر اساس علاقه کاربر و شرح محتوا، آیتمها را به کاربر پیشنهاد میدهد. این روش بر اساس خصوصیات کالاها و محصولات و شباهت بین آنها و نیز سلایق کاربر، توصیههایی به کاربر ارائه میکند. در این روش تکیهبر اطلاعات و سلایق کاربر جاری است، بدین شکل که برای ارائه پیشنهاد، به انتخابها و تجربیات وی درگذشته توجه میشود.
پالایش مشارکتی
در این روش نیازی نیست تا محتوای آیتمها بررسی شود. در عوض به رابطهی بین کاربران تکیه میکند که بهطور معمول در یک ماتریس بازخورد رتبه رمزگذاری شده است، در ماتریس رتبهبندی تنها درصد کمی از آیتمها رتبهبندی شدهاند. حتی ممکن است مشهورترین آیتمها رتبه کمی داشته باشند. با داشتن ماتریس رتبهبندی پراکنده ارزیابی کردن روابط میان آیتمها و کاربران و ایجاد پیشنهاد موثرکاری بسیار چالشانگیز است و روشهای مبتنی بر پالایش مشارکتی به دلیل استفاده از رتبهبندی دوستان کاربر، برای ارائه پیشنهاد به او، دارای کارایی بالایی در توصیه کردن به کاربر روی ماتریسهای پراکنده هستند.
روشهای ترکیبی
روشهای مبتنی بر محتوی و پالایش مشارکتی را ترکیب میکند و تلاش میکند تا معایب آنها را کم کرده و نتیجهی مؤثرتری را ایجاد کند. روشهای ترکیبی، ترکیبات مختلفی از روشهای محتوا محور و مشارکتی را ارائه میدهد؛ یعنی این روشها از مزایای روشهای قبلی، استفاده میکنند تا کارایی سیستم را تا حد مناسبی افزایش دهند.
مشکلات سیستم های توصیه گر ؟
سیستمهای توصیهگر باوجود کاربردها و مزایای زیاد، از یکسری چالشهای اساسی رنج میبرند که هدف الگوریتمهای ارائهشده تاکنون، رفع یک یا چند مورد از این چالشها است؛ که در زیر به چهار مورد از مهمترین آنها اشاره خواهیم کرد.
مشکل تنکی داده
این مشکل یکی از مهمترین چالشها در سیستمهای توصیهگر است که عملکرد سیستم را بهشدت تحت تأثیر قرار میدهد. این مشکل اشاره به حالتی دارد که در آن کاربران به تعداد کمی از آیتمها، رتبه میدهند، یعنی از آیتمهای زیادی که در سیستم وجود دارد، فقط تعداد اندکی از آنها توسط کاربران، رتبه دهی شدهاند. لذا زمانی که سیستم تنها به تعداد اندکی از رکوردهای مربوط به تراکنشهای سابق دسترسی داشته باشند، تشخیص اینکه کدامیک از مشتریان شبیه به یکدیگر بوده و علایق آنها چیست، اساساً مشکل خواهد بود.
مشکل ویژهکاری
در طول حیات سیستم، تلاش بر این است که آیتمهایی به کاربر پیشنهاد داده شوند که شباهت بیشتری به آیتمهای انتخابشده توسط او درگذشته داشته باشند. این باعث میشود که آیتمهایی که ممکن است موردپسند کاربر باشند ولی شباهتی به آیتمهای انتخابشده درگذشته ندارند، به کاربر هر گز پیشنهاد داده نشوند و از دید وی مخفی بمانند.
مشکل شروع سرد
مشکل شروع سرد تقریباً در همه سیستمهای توصیهگر وجود دارد که کارایی سیستم را خیلی کاهش میدهد. به زبانی ساده میتوان گفت مشکل شروع سرد هنگامی رخ میدهد که یک کاربر یا آیتم جدید وارد سیستم شود و سیستم در مورد آنها اطلاعات یا دانش خاصی نداشته باشد، لذا در هنگام توصیه دچار مشکل میشود.
ابهام در اطلاعات
در سیستمهای توصیهگر هدف پیدا نمودن شباهت بین آیتمهای مختلف و کاربران بر اساس صفات و محتویات آنهاست که در برخی از کاربردها و حوزهها این کار بسیار پیچیده و دشوار است. لذا نیاز به راهکارهایی برای استخراج صفات و اطلاعات کاربران و آیتمها بهصورت خودکار میباشد.
کمبود داده
یک سیستم توصیهگر مؤثر و کارا، باید دادههای زیادی برای ارائهی پیشنهاد داشته باشد که معمولاً دادههای موردنیاز در سیستم خیلی کم است و لذا باید بهصورت مناسبی این چالش رو هم پر کرد.
هدف از این آموزش ؟
هدف اصلی از این آموزش معرفی سیستم های توصیه گر و نحوه عملکرد انها می باشد. این آموزش به زبانی ساده و روان و کاربردی آماده شده است که خواننده می تواند در مدت زمان کوتاهی مفاهیم اصلی را درک کرده و بتواند کارهای علمی پژوهشی یا کاربردی خوبی را بر پایه این آموزش ها انجام داد. در بخش اول تئوری کامل سیستم های توصیه گر بحث و بررسی می شود و تمامی آنجه برای توصیه گری لازم دارید به شما آموزش داده می شود. در بخش دوم آموزش پیاده سازی کامل سیستم های توصیه گر با پایتون را یاد خواهید گرفت. جزئیات این دوره آموزشی در زیر لیست شده است. بدون شک بهترین دوره سیستم های توصیه گر با زبان فارسی می باشد که با زبان فارسی و ساده و روان توضیح داده شده است. امیدواریم که این آموزش از “بیگ لرن” هم مثل سایر آموزش ها مورد تایید و رضایت شما مخاطبان گرامی قرار گیرد.
بخش اول: مرور کامل روی پایتون
بخش دوم: مرور کامل روی یادگیری ماشین/عمیق
بخش سوم: تئوری کامل سیستم های توصیه گر
بخش چهارم: پیاده سازی عملی سیستم های توصیه گر
بخش پنجم: کتابخانه librec برای پیاده سازی سیستم های توصیه گر
نظرات
5 دیدگاه برای آموزش سیستم های توصیه گر
برای فرستادن دیدگاه، باید وارد شده باشید.
شاهین خان
دوره کاملی بود، توضیحات ساده و قابل فهم بود. خیییییییلی ممنون
بهنام
امکان مشاهده بخشی از ویدئو های دوره جهت بررسی کیفیت آموزش وجود دارد؟
biglearn
سلام
پیش نمایش دوره در حال آماده سازی است
کاظم
ممنون بابت آموزش خیلی مفید سایت شما
دانشجو(خریدار محصول)
ممنون خوب بود.
ملایر مسعود سمیعی(خریدار محصول)
من متوجه نشدم الان شما بااستفاده از يادگيري عميق دقيقا چه نوع سيستم توصيه گري پياده سازي کرديد اين سيستم توصيه گري که ساختيد چه کار ميکنه چه چيزي رو توصيه ميکنه بر چه مبنايي؟
خواهشا اينو براي من توضيح بدين با تشکر
biglearn
سلام. در این دوره مقادیر ماتریس رتبه بندی پیش بینی می شوند و هر آیتمی که بیشترین امتیاز را بگیرید به کاربر توصیه می شود