از الکام‌ستارز تا CeBIT

در نمایشگاه الکامپ ۱۳۹۵ به همت صنف یک بوت کوچک در اختیار داشتیم. مثل دیگر استارتاپ‌های حاضر در سالن الکام‌ستارز به معرفی خدمات پرداخته و همچنان از ایده‌های کم نظیر مراجعین و دیگراستارتاپ‌ها استفاده کردیم. مشتریان و مراجعین الهام بخش ایده‌های ما هستند. بدون شک بدون ایده‌ها، پیشنهاد‌ها و راهنمایی‌های مشتریان و شما دوستان حرفی برای گفتن نداشتیم.

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

در طول الکامپ استارتاپ‌ها یک به یک به معرفی خدمات خود پرداختند (پیج کردند). سحر از تیم ما پیچ کرد و طی زمانی کوتاه توانست به بهترین نحو استارتاپ ما و خدمات را به خوبی معرفی کند. در پایان به همراه کی‌کجاس و پوشه جزو سه استارتاپ برگزیده انتخاب شدیم. جایزه این سه استارتاپ سفر به CeBIT بود.
امروز ویزا گرفتم. تمامی هزینه‌های رفت و برگشت، اجاره غرفه و محل اقامت (که بسیار گران است) را صنف متقبل شده است. این برای استارتاپ کوچک ما فرصتی کم نظیر است. همواره دوست داشتیم سرویس‌های recommender.ir را در فضایی جهانی معرفی و مقایسه کنیم و بتوانیم پاسخی برای این سوال بیابیم که ما کجای داستان شخصی‌سازی هستیم.

از شما دوست عزیز که به 2017 CeBIT می‌آیید دعوت می‌کنیم از غرفه کوچک ما دیدن نموده و همچنین استارتاپ و خدمات ما را به دوستان خود که در کسب‌و‌کار خود نیازمند شخصی‌سازی (Personalization) هستند معرفی کنید. آدرس سالن و غرفه در تصویر زیر آمده است:

Screen Shot 2017-03-16 at 10.12.52 PM

فناوری در نقش مزیت رقابتی پایدار

Fighting-fakes-about-patients-not-competitive-advantage-says-Rx-360

(تصویر از سایت tinobusiness.com آمده است)

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

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

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

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

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

خدمات ما بر پایه فناوری‌های مدرن یادگیریِ ماشین (Machine Learning) و داده‌های-بزرگ (Big-Data) توسعه می‌یابند.

چه کسب‌و‌کار‌هایی (مشتریانی) از خدمات ما بهره می‌برند؟

طیف متنوعی از کسب‌و‌کارهای دیجیتال که تعداد زیادی کاربر/محتوا/محصول دارند می‌توانند به سادگی از خدمات ما بهره‌گیری کنند.

چه مزایایی برای مشتریان ایجاد می‌کنیم؟

مهمترین مزایایی که برای مشتریان ایجاد می‌کنیم عبارتند از:

  • افزایش فروش و سود‌آوری
  • افزایش میزان ماندگاری کاربر در سایت/اپلیکیشن مشتری
  • کاهش نرخ جهش کاربر از سایت/اپلیکیشن
  • افزایش وفاداری کاربران به سایت/اپلیکیشن و خدمات مشتری

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

چه دپارتمان‌هایی از سرویس‌ها و خدمات ما بهره‌مند می‌گردند؟

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

  • بازاریابی (Marketing)
  • فروش (Sales)
  • تجربه کاربر (User Experience)

چه کسب‌و‌کارهایی قادر به بهره‌گیری از فناوری ما هستند؟

یکپارچه‌سازی (اینتگرشن) خدمات ما با کسب‌و‌کارهای گوناگون بسادگی امکان پذیر است.

در حال حاضر سایت‌هایی که بر پایه وردپرس یا ووکامرس هستند طی چند دقیقه می‌توانند با سرویس‌های ما اینتگریت شوند. چرا که برای وردپرس پلاگینی ویژه توسعه داده‌ایم.

همچنین در حال پیاده سازی پلاگین‌هایی برای مجنتو و اپن‌کارت هستیم. در عین حال سایت‌های دیگر می‌توانند بسادگی API ما را فراخوانی کنند.

recommender.ir در نقش یک مزیت رقابتی پایدار

خدمات ما در کسب‌و‌کار شما نقش یک مزیت رقابتی پایدار را بازی می‌کنند. مزیت رقابتی که ارزش آفرینی را با جلب رضایت کاربران شما آغاز نموده و فناوری روز دنیا در پردازش داده‌های بزرگ را به سادگی فراخوانی یک API ساده، در اختیار شما قرار می‌دهد.

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

اینجا سفارش بدهید.

پیش‌بینی بهترین زمان برای ارسال خبرنامه/نوتیفیکیشن

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

طبیعت و آدم‌ها الهام بخش بهترین ایده‌های مهندسی هستند. تیم ما مدت‌هاست که بهترین ایده‌های خود را از بهترین‌ کسب‌و‌کار‌های آنلاین ایرانی در قالب صورت مسئله، انتقاد، ایده یا نیازمندی دریافت می‌کند.

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

برای انتخاب محتوای شخصی‌سازی شده که اندپوینت‌های (Endpoint) متعددی را در قالب ویجت در اختیار کسب‌و‌کارها مشتری قرار می‌دادیم. مشکلی در حوزه انتخاب محتوای شخصی برای هر کاربر نداشتیم. ولی در زمانبندی ارسال نیازمند توسعه سرویس بودیم.

مسئله

مشتری از ما خواسته بود: فرض کن می‌خواهیم برای یک میلیون کاربر طی ۲۴ ساعت آینده تونتیفیکشن ارسال کنیم، بهترین زمان برای ارسال به هریک چه ساعتی‌ست؟

راه‌حل

به دنبال دریافت نیاز از مشتری، زمان بسیاری صرف تحقیق و توسعه در حوزه پیش‌بینی سطح تعامل کاربر انجام دادیم. آنچه تا آن‌زمان پیش‌بینی می‌کردیم عبارت بود از آيتم‌هایی که کاربر ندیده است و به آن‌ها علاقمند است، جنسیت کاربر، سن، اولویت‌ها و …

در حوزه پیش‌بینی زمان‌های مناسب برای تعامل با کاربر کاری نکرده بودیم. در نهایت پس از سعی‌و‌خطای بسیار زیاد (بسیار زیاد) به روشی کارامد و ترکیبی از تکنیک‌های آماری و احتمالاتی و پردازش سری‌های زمانی دست یافتیم که سرویس را قادر به ارائه پیشبینی بر روی سطح تعامل کاربر با کسب‌و‌کار آنلاین شما می‌کند.

timeBasedForecast

پیاده سازی

در سرویس ما پیام‌های دریافتی به سری‌های زمانی (Time-series) تبدیل می‌شوند. به کمک الگوریتم و ساختمان‌داده‌های مناسب و گاه ابتکاری توانستیم گذشته تعامل کاربران را در حجم محدودی از حافظه با کارایی فراخوانی مطلوب نگهداری کنیم. سپس به کمک الگوریتم‌های ویژه پردازش سری‌های زمانی به حذف استثنا‌های (Anomaly) در زندگی کاربر پرداختیم. فصل‌های تکرار (Seasonality) هر کاربر را جداگانه شناسایی کردیم. برای برخی کابران تکرار در بازه‌های ۲۴ ساعت، برای برخی در بازه‌های هفتگی است. این فصل‌ها متاثر از سبک‌زندگی، شغل، طبقه اقتصادی و … برای هر فرد متفاوت و یکتاست.

فراخوانی

فراخوانی سرویس پیش‌بینی زمانی، مثل بقیه اندپوینت‌های سرویس ما بسادگی آب خوردن است. تصویر زیر یک نمونه فراخوانی و پاسخ سرویس را نمایش می‌دهد. در صورتی که بازه زمانی ذکر نشود، به صورت پیش فرض برای ۲۴ ساعت پیش رو در قاب‌های ۱ ساعته، پیش‌بینی ارائه می‌شود:

Screen Shot 2017-03-05 at 6.46.39 PM

این اندپوینت نیز بلادرنگ (Real-Time) است. x زمان پیش رو از اکنون بر حسب ساعت و y سطح تعامل کاربر با کسب‌و‌کار شماست.

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

Screen Shot 2017-03-05 at 6.46.32 PM

و تصویر زیر چارتی تنظیم شده بر اساس داده‌های جدول فوق است:

Screen Shot 2017-03-05 at 6.46.18 PM

آنچه در محاسبه نتایج اثر گذار است، رفتار گذشته کاربر (افرادی) رفتار جمعی کاربران نزدیک (در خوشه) و پیش‌بینی برای ساعات آینده (انفرادی).

نمونه‌هایی از پرسش‌ها:

  • ساعت ۱۰ صبح فردا برای کدام ۱۰۰ کابر نوتیفیکشن ارسال کنم که مشاهده کند؟ (بلاک نکند)
  • در ۲۴ ساعت آینده برای این ۱۰۰ کاربر چه زمان‌هایی مناسب ارسال نوتیفیکیشن است؟
  • طی ۱۲ ساعت آینده بهترین ساعت برای ارسال نوتیفیکیشن با حداکثر اثر گذاری کدام است؟

 

با ما در تماس باشید

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

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

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

طراحان و مدیران سایت از این پس می‌توانند کارایی تک تک ویجت‌های سرویس را زیر نظر گرفته و اثر بخشی تغییرات را در خروجی سرویس مشاهده کنند.

ConversionRate

کیفیت کارکرد ویجت‌ها در اندپوینت metrics/ به نمایش در می‌آید:

{
 “serverPort”:”3100″,
   “serverClass”:”Gold”,
   “serverVersion”:”2.9″,
   “percentUsedMemory”:8,
   “usedMemoryMB”:507,
   “usedMemory”:107941392,
   “maxMemoryMB”:4096,
   “freeDiskSpace”:31595282432,
   “freeDiskSpaceMB”:30131,
   “freeDiskSpaceGB”:29,
   “totalUsers”:15304932,
   “totalItems”:9361,
   “numProcessors”:4,
   “hostName”:”recommenderir.dev.local”,
   “isReady”:true,
   “totalRequests”:2423431,
   “lastHourRequests”:51767,
   “totalClientErrors”:52,
   “totalServerErrors”:1719,
   “allThreadsCpuTime”:33425162000,
   “avgErr”:0.0,
   “uptimeVerbose”:”0:01:22:45″,
   “threadCount”:230,
   “loadAvg”:3.0775390625,
   “osName”:”Mac OS X”,
   “osVersion”:”10.x”,
   “osArch”:”x86_64″,
   “statsAndMetrics”:[

{
“endpointName”:”SimilarityServlet”,
“totalRequests”:”233933″,
“lastHourRequests”:”5149″,
“averageMicroSecond”:”511″,
“lastHourAverageMicroSecond”:”511″,
“maxMicroSecond”:”6276″,
“lastHourMaxMicroSecond”:”2103″,
“totalClientErrors”:”38″,
“totalServerErrors”:”751″
},
{
“endpointName”:”TrendDetectionMidTimeServlet”,
“totalRequests”:”102692″,
“lastHourRequests”:”2697″,
“averageMicroSecond”:”491″,
“lastHourAverageMicroSecond”:”537″,
“maxMicroSecond”:”5709″,
“lastHourMaxMicroSecond”:”2314″,
“totalClientErrors”:”0″,
“totalServerErrors”:”0″
},
{
“endpointName”:”MostPopularItemsServlet”,
“totalRequests”:”534208″,
“lastHourRequests”:”1300″,
“averageMicroSecond”:”510″,
“lastHourAverageMicroSecond”:”560″,
“maxMicroSecond”:”6833″,
“lastHourMaxMicroSecond”:”1493″,
“totalClientErrors”:”0″,
“totalServerErrors”:”240″
},
{
“endpointName”:”RecommendServlet”,
“totalRequests”:”5493975″,
“lastHourRequests”:”13935″,
“averageMicroSecond”:”385″,
“lastHourAverageMicroSecond”:”494″,
“maxMicroSecond”:”9454″,
“lastHourMaxMicroSecond”:”521″,
“totalClientErrors”:”14″,
“totalServerErrors”:”728″
},


],
“hitRates”:{
      “recommendHitRate”:0.3770491803278688,
      “similarityHitRate”:0.29213483146067415,
      “trendHitRate”:0.27749576988155666,
      “mostPopularHitRate”:0.21428571428571427

      
   }
}

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

افزوده شدن بخش HitRate به سرویس در شناسایی مناسب‌ترین ویجت در هر صفحه از سایت و اپلیکیشن نیز کمک شایانی می‌کند. به کمک این داده‌ها می‌توان سایت/اپ را برای کسب بالاترین میزان نرخ تبدیل پیکربندی نمود.

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

در تولید خروجی بالا از دیتاست آزمایشی با تولید رفتار کاربر به صورت اتفاقی استفاده شده است.

شخصی‌سازی چیدمان محتوا

در اغلب سایت‌های مدرن چید‌مان آیتم‌ها و محتوا بر اساس علاقمندی کاربر یا دیگر پارامتر‌ها محاسبه می‌شود. دوران نمایش محتوا به شکل یکسان به تمام کاربران، مدت‌هاست که سپری شده است. هر کاربر باید بر اساس سلیقه و اولویت‌های خود محتوا را مشاهده نماید.

در راستای پاسخگویی به این نیازمندی کسب‌وکار‌های آنلاین به توسعه چند سرویس (ٍEnd-point) جدید نمودیم.
تصویر زیر را ملاحظه کنید. در سمت راست سایتی/اپلیکیشنی را نمایش می‌دهد که فارغ از سلیقه کاربران به آن‌ها آیتم‌هایی را نمایش می‌دهد. در این مدل چیدمان آیتم‌ها به صورت پیش‌فرض تعیین شده و به ازای تک تک کاربران تغییری مشاهده نمی‌شود.

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

ToBeArrangedItems

 

فراخوانی چنین خدمتی بر روی سرویس ما (recommender.ir) بسیار آسان است. تصویر زیر چگونگی بکارگیری این خدمت جدید را نمایش می‌دهد:

 

ToBeArrangedItems2

کاربرد‌های این خدمت جدید موارد زیر است:

  • مرتب‌سازی چیدمان محتوا در باکس‌های کناری سایت (اخبار و …)
  • مرتب‌سازی چیدمان محتوا در صفحه اصلی
  • مرتب‌سازی چیدمان محتوا در صفحه محتوا (صفحه کالا)
  • مرتب‌سازی چیدمان محتوا در اسکرین محدود موبایل
  • مرتب‌سازی و اولویت‌بندی نمایش نوتیفیکشن به کاربر
  • مرتب‌سازی محتوا در خبر‌نامه
  • و موارد بسیار دیگر…

شخصی‌سازی بلادرنگ در ابعاد بزرگ

پیرو پاسخگویی به نیاز‌های متعالی مشتریان recommender.ir که از بهترین کسب‌و‌کار‌های آنلاین ایران هستند،‌ به سمت توسعه سرویس‌های جانبی و تکمیلی و اصلاحاتی بر معماری پیش رفتیم.  API خدمات ما، در ساعات پیک بازدید چند‌میلیون فراخوانی در ساعت را پاسخگویی می‌کند. تمام این مدت زمان پاسخگویی سرویس‌های ما می‌بایست کمتر از ۱۰۰ میلی‌ثانیه باقی بماند. کنترل چنین بار کاری متغیری نیازمند توسعه ابزار‌هایی قابل اعتماد و سازگار با اکوسیستم خدمات ما بود.
از سویی خرابی در تجهیزات سخت‌افزاری، شبکه و زیرساخت نرم‌افزاری امری غیر قابل اجتناب است. لذا می‌بایست برای بازیابی از خطا روش‌هایی منطبق با استاندارد‌های بالای ارائه دهندگان خدمات ارائه می‌کردیم.

همچنین از آنجا که هر ماه ریلیز جدید ارائه می‌کنیم (recommender.ir هر سال ۱۲ نسخه جدید در پایان هر ماه شمسی ارائه می‌کند) می‌بایست به روزآوری‌ مکرر سرویس‌های متعدد مشتریان را بدون توقف و به صورت پیوسته و آرام انجام می‌دادیم. و چنین نیازمندی‌هایی ما را به سمت طراحی و توسعه معماری جدید و توسعه ابزار‌هایی تکمیلی جدید راهنمایی کرد.

توزیع‌شدگی (Distribution) و مقیاس‌پذیری خطی (Linear Scalability) راهکاری مدرن و متداول در پاسخگویی به چنین نیاز‌هایی‌ست.

recommender.ir از ابتدا (سال ۱۳۹۱) مبتنی بر معماری ریزسرویس (Microservices) توسعه یافته است. در آخرین نسخه‌های recommender.ir نیز از طیف متنوعی از ریز‌سرویس‌ها برای برپایی ارکستری بزرگ متشکل از ده‌ها(بدون محدودیت) ماشین و مقادیر بیشتری ریزسرویس‌های متنوع بهره می‌بریم.

انواع ریزسرویس‌هایی که توسط تیم توسعه recommender.ir توسعه یافته‌ عبارتند از:

  1. ریزسرویس‌های رکامندر (‌recommender.ir) در سه کلاس طلایی، نقره‌ای و برنزی، و دو گروه کلی تجارت‌الکترونیک و ارائه محتوا که هر دو گروه از API خارجی یکسان بهره‌ می‌برند
  2. ریزسرویس‌های کامنتوم (commentum.ir) که وظیفه تحلیل بلادرنگ متن کامنت‌های محاوره‌ای کاربران فارسی زبان و همچنین اسختراج کلید‌واژه ها را بر عهده دارد
  3. ریز‌سرویس‌های هلیو (helio.ir) که قادر به شناسایی شکل‌گیری پدیده‌های گوناگون و آنومالی در انبوه داده‌های دیگر سرویس‌ها هستند
  4. ریز‌سرویس‌ هایپراسپیس (hyperspace.ir) که وظیفه نمایه‌سازی(Data Visualization) از داده‌های دیگر سرویس‌ها را بر عهده دارد
  5. ریزسرویس‌های پراکسی (Proxy) ، و کش (API-Cache)
  6. ریز‌سرویس تنظیم بار (Load Balancer) که به برقراری توازن و کشسانی کمک می‌کند
  7. ریزسرویس تکثیر (Replicator) برای کپی داده‌ها و انتقال به سامانه‌های ذخیره‌سازی یا ساخت مدل رپلیکیشن
  8. ریز سرویس کانوکس (convex.ir) که در حال توسعه است و به کمک موارد ۱و ۲ به ارائه برخی تحلیل‌های شخصی از محتوا می‌پردازد

تمامی ریزسرویس‌های یاد شده به تناسب نیاز مشتری همچون قطعات لگو (Lego) در یکدیگر پلاگ شده و سرویس مورد نیاز مشتری در حوزه شخصی‌سازی تامین می‌گردد.

این خدمات در بهترین ترکیب قادر به ارائه کیفیت مطلوب (فارغ از ابعاد بار) و فراهم ساختن نهایت قابلیت دسترسی (High Availability) هستند. همچنین به روز آوری بدون توقف کارکرد سرویس را برای فراهم ساختن سطحی بسیار متعالی از هوشمندی و شخصی‌سازی خدمات در ابعاد بزرگ، ممکن می‌سازند.

تصویر زیر به چگونگی تبادل اطلاعات بین برخی از ریز‌سرویس‌های یاد شده در مدل‌های ‌‌B2B و  B2C اشاره می‌کند‌(سرویس‌های زیرساخت داده و شبکه نمایش داده نشده‌اند):

allprojects

در یک نمای کلی پیکربندی سرویس‌های رکامندر در یک سناریوی واقعی شامل ریزسرویس‌های متعدد با قابلیت کشسانی است. تصویر زیر را ملاحظه کنید. بسته به ابعاد نیاز‌های کمی و کیفی مشتری به کمک کشسانی معماری و پیکربندی ریز‌سرویس‌ها قادر به پاسخگویی به نیاز‌های زیرساخت سرویس‌های مشتری به خدمات یادگیری‌ماشین و داده‌های بزرگ در حوزه شخصی‌سازی و تولید پیشنهاد هستیم:

screen-shot-2016-11-19-at-10-03-13-pm

 

در مجموع آنچه در معماری نوین recommender.ir برای کسب‌و‌کارهای آنلاین بسیار بزرگ (با الکسای زیر ده) طراحی نموده‌ایم (و آزموده شده است) در کنار تمامی قابلیت‌های شخصی‌سازی و یادگیری‌ماشین که به ارزش آفرینی در کسب‌و‌کار منتهی می‌شود، ویژگی‌های متعالی زیر را نیز در اختیار مشتریان قرار می‌دهد:

zerosecondupgradetime

خوشحالیم که توانسته‌ایم بخشی از نیاز‌های شخصی‌سازی بزرگان اینترنت ایران را در زیر سایه سنگین تحریم‌های فناوری تامین کنیم.

پیشنهاد‌های مبتنی بر مکان(داخل محدوده)

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

طی ماه گذشته فیچر جدیدی پیاده‌سازی کردیم که امکان Geo-Fencing را به recommender.ir افزود. توسط این فیچر شما می‌توانید به تغداد نامحدود فضاهایی همچون هایپرمارکت، محله، خیابان، کوچه، پاساژ، استادیوم و … را تعریف کنید. این فرایند توسط اعلام طول و عرض جغرافیایی رئوس مکان‌های یاد شده انجام می‌گیرد. سپس می‌توانید آیتم‌هایی را نیز به یک یا چند محدوده اختصاص دهید. هر آیتم می‌تواند به هیچ یا چندین محدوده (indoor) منتسب شود.

از این پس سرویس با توجه به موقعیت مکانی کاربر در صورتی که در درون یکی از این محدوده‌ها قرار گیرد (وارد یک مجتمع تجاری شود) کاربر را بر اساس سلیقه‌ و نزدیکی به آیتم‌ها با دقتی کم‌نظیر راهنمایی می‌کند.

تصویر زیر نمونه‌ای تمثیلی از نحوه کارکرد این فیچر است:

geofencing01

 

پنل نمایش داده‌ها

برای نمایش بهتر خروجی‌ سرویس‌ها به کمک سعید، یک دوست و همکار قدیمی مشغول توسعه یک پروژه به اسم هایپرسپیس (hyperspace.ir) شدیم. البته ۱۰۰ درصد کار اجرا رو سعید انجام می‌ده. چون نمایش‌ داده‌ها (Data Visualization) حوزه تخصصی اونه. به کمک بهترین فناوری‌ها مشغول توسعه است. پلیمر‌گوگل، d3.js و svg و همه چیزای خوبی که برای ساختن یک داشبورد حرفه‌ای نمایش‌داده‌ها انتظار میره رو به کار گرفته. نتیجه‌ اولین نمونه‌ها کاملا راضی کننده است.

این تصویر به بخشی از خروجی سرویس اشاره می‌کنه:

hyperspace-00

 

هایپرسپیس پنل مدریتی تمام سرویس‌های سوییت recommender.ir رو تشکیل می‌ده. همچنین نقطه اینتگرشن سناریو‌های کلان بیزنیس هم به شمار میاد.

تحلیل فارسی محاوره‌ای

قبلا هم از کامنتوم نوشتم. این سرویس به کمک recommender.ir میاد تا تحلیل کامنت‌های عجیب‌ و غریب کاربرای ایرانی در محیط‌های آنلاین رو ممکن کنه.
تصاویر زیر رو ملاحظه کنید:

نمونه اول:
samplecomments1

نمونه دوم:

samplecomments2

و طی آخرین بهبود‌های انجام شده حالا یک صفحه وب ساده هم برای تست سرویس توسعه دادیم:

photo_2016-11-16_15-17-18

در تصویر بالا بهبود‌های حاصل در شناسایی کلید‌واژه‌های چند سیلابی را نیز مشاهده می‌کنید.

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

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

سعی کردیم همچنان سرعت و کیفیت‌ رو در حد استاندارد‌های جهانی (۱۰۰ میلی‌ثانیه) حفظ کنیم. هر کامنت در زمانی کمتر از ۱۰۰ میلی‌ثانیه پردازش شده و نتایج در اختیار سایت فراخواننده قرار می‌گیره.

این سرویس مستقل از زیان است.

کامنتوم بخشی از سوییت recommender.ir است.

نسخه ۲.۷ رکامندر با قابلیت‌هایی کم‌نظیر آماده شد

با پایان شهریور نسخه ۲.۷ رکامندر آماده بهره برداری شد. در طول توسعه این نسخه از راهنمایی‌های متخصصین حوزه تجارت الکترونیک بهرمند بودیم. لذا این نسخه در حوزه تجارت الکترونیک، قابلیت‌هایی کم نظیر معرفی می‌کند.

فراز و نشیب‌های آیتم‌/ویژگی‌های معمولی(غیر داغ)

نسخه ۲.۷ قابلیت‌های کم نظیری در زمینه نظارت بر فراز و نشیب علایق کاربران و استفاده حداکثری از گرایشات حداقلی کاربران دارد. تا قبل از نسخه ۲.۷ قادر به معرفی داغ ترین آیتم‌های کسب‌و‌کار در بازه‌های زمانی گوناگون بودیم. از این پس می‌توانید آیتم‌های میانی (غیر محبوب) کسب و کار خود را نیز رصد و مقایسه کنید. این مقایسه در سطوح کالا و ویژگی‌های کالا صورت می‌پذیرد.

برای مثال مقایسه یک آب میوه‌گیری معمولی از برندی نه چندان مشهور، با آیتم‌های مشابه از نظر اقبال کاربران نسبت به این آیتم‌ها و ویژگی‌های آنها میسر شده است. این مقایسه‌های بلادرنگ امکان محدود کردن دامنه بررسی و رصد را به کالا‌هایی خاص میسر می‌کند. پس کسب و کار میتواند هر کالا را در کلاس مورد نظر مورد بررسی و رصد قرار دهد.

مثال:

دستور زیر آیتم‌های ۱۰ الی ۱۴ را به لیست آیتم‌های تحت نظارت می‌افزاید. این آیتم‌ها ممکن است از بین هزاران آیتم انتخاب شده باشند:

supervisedItemsAdd/item10/item11/item12/item13/item14/item25/item34/item46/item22/item29

سپس توسط فراخوانی متد‌های زیر می‌توان به صورت مقایسه‌ای فراز و نشیب رشد علاقمندی کاربران به این‌آیتم‌ها را محاسبه کرد:

supervisedTrendLongTime:
[[“item12”,136.0],[“item10”,120.0],[“item13”,117.0],[“item11”,116.0],[“item14”,110.0] ,[“item34”,58.0],[“item46”,47.0],[“item29”,37.0],[“item25”,36.0],[“item22”,24.0]]

supervisedTrendMidTime:
[[“item34”,15.0],[“item11”,14.0],[“item12”,14.0],[“item46”,12.0],[“item25”,10.0],
[“item10”,8.0],[“item14”,8.0],[“item22”,7.0],[“item13”,7.0],[“item29”,5.0]]

 

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

supervisedTermsAdd/White/Black

supervisedTermTrendLongTime:

[["White",1258.0],["Black",1027.0]]

supervisedTermTrendShortTime:

[["Black",56.0],["White",44.0]]

چند سطر بالا بیانگر این موضوع هستند که رنگ مشکی دربازه زمانی طولانی محبوب بوده ولی در کوتاه مدت گرایش کاربران به سمت رنگ سفید است…

تصویر زیر به حوزه تحت پوشش کاربرد‌های جدید می‌پردازد. در نسخه ۲.۷ تمامی کالا‌ها بدون اغماض تحت رصد بلادرنگ قرار می‌گیرند:

trenddetection-expanation-copy

پیشنهاد‌هایی جذاب برای آخرین ثانیه‌ها

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

فرصتی برای راهنمایی وی در جهت هر چه غنی تر ساختن سبد خرید که منجر به افزایش رضایت وی و همچنین افزایش سود‌آوری می‌شود.

برای این آخرین ثانیه‌ها کاربرد‌هایی کم‌نظیر توسعه داده‌ایم. این کاربرد بر اساس وابستگی‌کالاها به یکدیگر (از نظر تقدم و تاخر در خرید) و همبستگی (Correlation) آیتم‌های قبلا خریداری شده عمل ‌می‌کند.

 

complementaccesories

برای فراخوانی این کاربرد کافیست آيتم‌هایی که کاربر در کارت خرید خود قرار داده است، به سرویس اعلام‌ نموده و فهرستی از آیتم‌های تکمیلی دریافت کنید. بفرض اینکه مشتری آيتم‌های ۳۶، ۲۴، ۵۰ و ۶۸ را در کارت خرید خود قرار داده است، ۱۰ آیتم پیشنهاد شده، بالاترین شانس تکمیل کارت خرید وی را دارا هستند:

 

mostDependentItems/item36/item24/item50/item68

[["item43",1.0],["item55",1.0],["item21",1.0],["item12",1.0],["item14",1.0],["item35",1.0]
,["item69",0.42910236],["item09",0.42357954],["item11",0.40323222],["item45",0.3912821]]

 

افزایش پایداری و بروز‌رسانی های بدون توفف

از این پس قادریم سرویس مشتری را بدون حتی یک ثانیه قطعی، بروز آوری کنیم. همچنین حوادثی همچون قطع برق و خرابی سخت افزار، در کارکرد سرویس خللی وارد نمی ‌سازد.  این نسخه از بهبود‌هایی اساسی در زمینه توازن بار (Load Balancing) و قابلیت دسترسی (High Availability) پویا بهره می‌برد. مدیریت پیکربندی و تغییرات در سمت سرویس ما انجام می‌پذیرد. لذا کسب و کار شما تنها به فراخوانی پیوسته کاربرد‌ها می‌پردازد.

تصویر زیر چگونگی پیکربندی سرویس‌ها در هنگام بهره‌برداری از قابلیت جدید است:

lbha

ترجمه کامنت به علاقمندی/عدم علاقمندی

در بسیاری موارد کاربران اینترنتی با نوشتن کامنت علاقه/عدم‌علاقه خود نسبت به یک کالا یا محتوا را اعلام می‌کنند. با فراخوانی کارکرد جدید comment می‌توانید کامنت‌های کاربران را نیز به علاقمندی ترجمه کنید. به مثال زیر توجه کنید:

comment_analysis%db%b2

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

 

لطفا نظرات و پیشنهادات خود را با ما در میان بگذارید.