سامانه توصیهگر به کمک هوشمصنوعی و دادههای بزرگ به تشکیل پرسونای تک تک کاربران میپردازد. سلیقه کاربران را بدون سوال و جواب کشف کرده و آنها را به سمت آنچه میجویند راهنمایی میکند. # مقدمه با توجه به گسترش فضای اینترنت، مطالب، محصولات فروشگاه ها که درنتیجه باعث افزایش قابل توجه حقانتخاب کاربر میشود، نیاز به طبقهبندی و کوچککردن فضای جستجو برای رسیدن به نتیجه بسیار حس میشود. چهبسا بسیاری از کاربران به دلیل این گستردگی قادر به یافتن نتیجهی خود نبوده و از ادامهی جستجو صرفنظر میکنند. سامانهی توصیهگر با کوچککردن فضای جستجویکاربران اینمشکل را حل میکند. این سامانه با روشهای متفاوت محتوای شخصیسازی شدهی هر کاربر را باتوجه به مشخصات، پیشینه جستجو و علایق به او پیشنهاد میدهد[1].در اینمقاله به بررسی روشهای موجود، نقاط ضعف و قوت و پیادهسازی آن(ها) میپردازیم. # کارهای مرتبط ![تصویر ۱](https://boute.s3.amazonaws.com/304-basic_types.png) سامانههای توصیهگر برای کمک به تصمیمگیری و ارائهی رهنمود برای انتخاب محتوای مناسب هرشخص تعریف شدهاند و در راستای اینهدف از روشهای متفاوتی استفاده میکنند. در ابتدا به توضیح اجمالی هریک از این روشها اکتفا میکنیم(تصویر ۱) و در آینده به صورت تخصصیتر و جزئیتر به آنها میپردازیم. سعی داریم در این مقاله از روش مارپیچ برای توضیح روشهای پیادهسازی سامانهی توصیهگر استفاده کنیم.[2] یکی از روشهای پیادهسازی توصیهگر تکنیک Collaborative filtering [3] نام دارد. به طور خلاصه این روش با شناسایی کاربران دیگر با ذائقه یکسان شما، محتوای مناسب را پیشنهاد میدهد[4] (تصویر ۲). ![تصویر ۲ [5] ](https://upload.wikimedia.org/wikipedia/commons/5/52/Collaborative_filtering.gif) پیادهسازی این تکنیک به شیوههای متفاوتی انجام میشود که در آینده به طور کامل به آن اشاره میکنیم. از نمونههای استفادهکننده از این تکنیک میتوان به RINGO[6] اشاره کرد که البته سامانهای قدیمی در اینحوزه است. پس از آن میتوان به Amazon [7] اشاره کرد. آمازون از روش item-to-item که یکی از زیرمجموعههای تکنیک Collaborative filtering است استفاده میکند [8] . علاوه بر آن میتوان به سامانهی توصیهگر last.fm[9] اشاره کرد.این سایت موزیک هارا با توجه سلیقهی کاربر دستهبندی و به او پیشنهاد میدهد. لازم به ذکر است این سایت، توصیهگر خود را Audioscrobbler نامگذاری کرده است [10]. ![تصویر ۳ [11] ](https://www.ntt-review.jp/archive_html/200804/images/le1_fig02.gif) روش دیگر پیادهسازی توصیهگر تکنیک Content-base filtering نام دارد [12] . در اینروش ذائقهی کاربر باتوجه به مشخصات خود شخص و تشابه محتوای انتخابشدهی قبلی با نمونههای مشابه انتخابنشده تشخیص دادهمیشود و محتوای مشابه پیشنهاد میگردد(تصویر ۳). در اینروش تعامل و تشابه ذائقه بین کاربران مختلف نادیده گرفته میشود و تشابهات براساس تشابهات بین محتوا و محصولات بررسی میشود که تفاوت اصلی این تکنیک با تکنیک Collaborative filtering است [13]. از نمونههای استفادهکننده از این تکنیک میتوان به سامانهتوصیهگر Pandora [14] اشاره کرد. اینسامانه با بررسی مشخصات موزیک و هنرمند، موزیکهای مشابه را پیدا و به کاربر پیشنهاد میدهد [15]. برای مقایسهی ایندو روش اصلی میتوان به مقایسه last.fm و Pandora پرداخت. last.fm و دیگرسامانههای استفادهکننده از Collaborative filtering از مشکل شروع سرد(cold start [16]) رنج میبرند. برای شناخت موزیکهای مشابه ، یک موزیک برای قابل پیشنهاد شدن باید به سطح حداقلی از محبوبیت برسد تا از آستانهی( [17] threshold) صافی موزیکها عبور کند. البته Pandora نیز از معایبی مشابه رنج میبرد. برای اضافه شدن یک موزیک جدید لازم است تا کارمندان Pandora آنرا از تنگنای کلاسهبندی([18] classification) توصیهگرشان عبور دهند تا مشخصات موزیک و هنرمند بهدرستی بررسی و ثبتگردد. مقاله nature vs nurture به صورت جزئی به اختلافات و نقاط ضعف و قوت هریک از این سامانهها میپردازد [19]. ![تصویر ۴](http://dataconomy.com/wp-content/uploads/2015/03/Introduction-What-is-a-Recommendation-Engine-Hybrid-Recommender-Systems.jpg) باتوجه به ضعفها و نقاط قوت ذکرشده در هرروش، روشی تلفیقی به نام تکنیک Hybrid filtering بهوجود آمد. باتوجه به قدرت Collaborative filtering و سرعت ابتدایی Content-base filtering با ترکیب نقاط قوت ایندوتکنیک، تکنیکی قویتر و کارآمدتر بهوجود میآید . این ترکیب میتواند شامل عبوردادن خروجی نتیجه CF به Content-base filtering باشد یا برعکس یا از تلفیق نتیجه مستقل هریک بهوجودآید(تصویر ۴).[20,21] از مثالهای استفادهکننده از این تکنیک میتوان به Netflix [22] اشاره کرد. Netflix با ترکیب قدرت بالای CF و کاهش هزینهی محاسباتی باتوجه به نیازمندیهای کم Content-base filtering سامانهی توصیهگر خود را پیادهسازی کردهاست[23, 24] در آینده به بررسی جزئی تر هریک از این تکنیک ها در فاز پیادهسازی میپردازیم. # مراجع [1] http://www.sciencedirect.com/science/article/pii/S1110866515000341 (abstracts) [2] https://en.wikipedia.org/wiki/Spiral_model [3] http://recommender-systems.org/collaborative-filtering/ [4] http://www.sciencedirect.com/science/article/pii/S1110866515000341 (related works) [5] https://en.wikipedia.org/wiki/Collaborative_filtering#/media/File:Collaborative_filtering.gif [6] http://jolomo.net/ringo.html [7] https://www.amazon.com/ [8] https://www.cs.umd.edu/~samir/498/Amazon-Recommendations.pdf [9] https://www.last.fm/ [10] https://en.wikipedia.org/wiki/Last.fm [11] http://findoutyourfavorite.blogspot.com/2012/04/content-based-filtering.html [12] http://recommender-systems.org/content-based-filtering/ [13] http://www.sciencedirect.com/science/article/pii/S1110866515000341 (related works) [14] https://www.pandora.com/ [15] https://en.wikipedia.org/wiki/Recommender_system [16] https://en.wikipedia.org/wiki/Cold_start [17] https://en.wikipedia.org/wiki/Threshold_model [18] https://en.wikipedia.org/wiki/Statistical_classification [19] http://blog.stevekrause.org/2006/01/pandora-and-lastfm-nature-vs-nurture-in.html [20] http://www.sciencedirect.com/science/article/pii/S1110866515000341 (Hybrid filtering) [21] https://en.wikipedia.org/wiki/Recommender_system ( Hybrid recommender systems) [22] https://www.netflix.com/ [23] https://rpubs.com/kismetk/Netflix-recommendation [24] https://dl.acm.org/citation.cfm?id=2843948 # پیوندهای مفید + [مجموعه داده](http://shuaizhang.tech/2017/03/15/Datasets-For-Recommender-System/)