تبعیض در موتورهای جستجو؛ چرا تنوع‌بخش در الگوریتم‌های جستجو مهم است؟

head-search-alg

بخش بزرگی از تعامل ما با جهان در سال‌های اخیر، نه از پشت ویترین مغازه‌ها یا راهروهای فروشگاه‌ها، بلکه از دلِ صفحه‌های کوچک موبایل و لپ‌تاپ انجام می‌شود. کافی‌ست دنبال کفش، کتاب تازه یا حتی شغلی جدید باشیم تا به‌جای پرسه‌زدن در مراکز خرید، چند واژه را در نوار جستجو تایپ کنیم و منتظر بمانیم تا نتایج ظاهر شوند. اما برخلاف دنیای واقعی که امکان دیدن صدها یا حتی هزارها انتخاب را در مراکز خرید داریم، در دنیای دیجیتال تنها چند گزینه‌ی اول دیده می‌شوند و باقی تقریباً ناپدید می‌شوند. در چنین فضایی، همه – از تأمین‌کننده و مشتری تا پلتفرم و متولیان زیرساخت‌های بازار  — به عملکرد یک بازیگر پنهان وابسته‌اند:

الگوریتم جستجو

search algorithms 2 | تبعیض در موتورهای جستجو؛ چرا تنوع‌بخش در الگوریتم‌های جستجو مهم است؟

فرض کنید صاحب یک کسب‌و‌کار اینترنتی هستید و کالاهای متخلفی برای فروش و تحویل در محل مشتریان ارائه می‌دهید. مشتری عبارت شیر را در موتور جستجوی سایت شما وارد می‌کند و شما در حال حاضر برندهای «الف»، «ب»، «ج» و «د» را برای فروش و ارائه دارید. کدام محصولات را به مشتری نمایش و با چه ترتیبی نشان می‌دهید؟

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

چرا انتخاب محبوب‌ترین‌ همیشه بهترین راه‌حل نیست؟

تمرکز روی محبوب‌ترین گزینه و نادیده گرفتن تنوع‌بخشی[1] در جستجو و استفاده از روش‌های متکی به قواعد از پیش تعیین‌شده[2]، باعث بی‌کیفیت شدنِ جستجو و تاثیرات منفی بلندمدت می‌شود.

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

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

به طور کلی نمایش ترکیبی متنوع از برندها، از نظر قیمت‌ و سبک‌ شانس «دیدنِ» کالاهای مستقر در دم‌درازِ توزیع را بالا می‌برد و میانگین سبد خرید را افزایش می‌دهد. کالای دم‌دراز[3] به کالاهایی می‌گویند که تعداد تقاضا برایشان کم ولی ارزششان در مجموع زیاد است. به همین دلیل در مجموع کالاهای مهم و استراتژیکی به شمار می‌روند. نادیده گرفتن کالاهای دم‌دراز یکی دیگر از آسیب‌هایی است که به‌کارگیری رویکردهای ساده‌انگارانه در طراحی الگوریتم‌های جستجو به وجود می‌آورد.

کالاهای دم‌دراز (خاص‌پسند)

searchdistrb | تبعیض در موتورهای جستجو؛ چرا تنوع‌بخش در الگوریتم‌های جستجو مهم است؟

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

  • سرِ فربه (Fat Head): کالاهای محبوب و پرتکرار با سهم اندک از تنوع کلی کالاها (کالاهای پرجستجو)
  • میانه پرطرفدار (Chunky Middle): کالاهای معمول (کالاهای نسبتا پرطرفدار)
  • دم‌دراز (Long Tail): مجموعه متنوعی از کالاهای دارای مخاطب پیگیر و اندک (کالاهای خاص‌پسند)

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

مضرات راه‌حل‌های تک‌عاملی در جستجو؛ اثر متیو و انباشتگی

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

مثلاً این سناریو که محصولات محبوب را همیشه در بالای لیست جستجو قرار دهیم، ممکن است ما را گرفتار اثر متیو[4] کند. احتمالا این گزاره را شنیدید که ثروتمندان ثروتمندتر می‌شوند و فقرا فقیرتر. در مورد این سناریو هم مسئله دقیقا همین است! محصولات برند «الف» به دلیل اعتبار، محبوبیت و حجم تقاضایی که دریافت می‌کنند، احتمالا از یک چرخه بازخورد مثبت بهره‌مند خواهند شد و محبوبیتشان تقویت می‌شود. در این صورت به مرور زمان شکاف بین برند «الف» و سایر محصولات و برندها تقویت می‌شود و محصولات دیگر حتی در صورت ارائه کیفیت بالاتر، باز هم به دلیل فرصت نابرابر کمتر دیده می‌شوند.

به این حالت انباشتگی[5] یا تلنبار مشابه نتایج از یک برند خاص می‌گویند. مثلا شرکت Etsy (یک کسب‌و‌کار آمریکایی در زمینه فروش صنایع دستی و عتیقه‌جات) را در نظر بگیرید. این شرکت متوجه یک انباشتگی عظیم شد که شروع مشکل آن به ده سال پیش برمی‌گشت. شرکت متوجه شد که عدم توجه به تنوع‌بخشی در جستجو باعث شده که فروشگاه‌های قدیمی و حتی  کوچک که ده سال پیش تسلط اولیه روی بازار داشتند، تمام نتایج اولیه را هنگام جستجو تا به امروز اشغال کنند. بعد از اصلاح موتور جستجو و الگوریتم‌ها، حدود 70% از فروشگاه‌ّها بیشتر دیده شدند و جالب‌تر از آن، اینکه بعد این اصلاحات، تعداد نظرات چهارستاره و پنج ستاره افزایش یافت و درخواست‌های برگشت کالا کاهش یافت[6]. عدم توجه به تنوع‌بخشی در اینجا باعث استمرار ده ساله‌ی این انحصار معیوب شد که نتیجه آن مغفول ماندن فروشگاه‌های باکیفیت در یک بازه زمانی طولانی و خسارات ناشی از آن است.

سناریوی فروش موبایل؛ سایر تله‌های مرتب‌سازی

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

 شرکت Alibaba با بررسی موتور جستجوی یکی از فروشگاه‌هایش متوجه شد که کالاها می‌توانند یکدیگر گران یا ارزان جلوه دهند. یعنی اگر دو محصول شبیه به هم باشند ولی یکی از آن‌ها قیمت پایین‌تری داشته باشد، حضور هر دوی آن‌ها در کنار هم باعث می‌شود که محصول گران‌تر، کم ارزش‌تر به نظر برسد و برعکس. این تعاملات نشان می‌دهد که احتمال خرید یک کالا، فقط به ویژگی‌های کالا بستگی ندارد. بلکه به ترکیب و ترتیب لیست نمایش‌داده به کاربر نیز وابسته است[7].

 قواعد ساده مثل FIFO[8] و LIFO[9] را برای نمایش نتایج جستجوی کالاها در نظر بگیرید. مطابق این قاعده هر کالایی که اول به پایگاه داده وارد شده همان هم اول لیست جستجو نمایش داده می‌شود. به عنوان نمونه فرض کنید آخرین کالای وارد شده را با عنوان «تازه‌ترین و جدیدترین» راهی صدر لیست جستجویتان بکنید. در این حالات نیز مشتری سوگیری نادرستی راجع به کسب‌وکار شما خواهد داشت. احتمالا اگر کالاهای قدیمی را نمایش دهید، مشتری به مرور فرض خواهد کرد که کسب‌وکار شما به روز نیست و کالای جدیدی برای ارائه ندارد. از طرفی میل بیش از حد به نشان دادن ترندها و موارد جدید باعث می‌شود مشتریان کالاهای باثبات و تضمین‌شده قبلی را در جستجویشان نبینند و با حجم زیادی از کالاهای تازه اما بدون نظر و بازخورد مواجه شوند. در تمام این حالات امکان «دیدن تنوع» در موتور جستجو توسط مشتری از بین می‌رود.

چرا «همون همیشگی» در موتورهای جستجو کاربر را دل‌زده می‌کند؟

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

این مسئله برای موتورهای جستجوی بزرگی مثل گوگل یا ابزارهای هوش مصنوعی جدید نیز صادق است. فرض کنید به عنوان یک کاربر دنبال محتوای منحصربه فرد و نوشته‌های دست اول کاربران هستید اما با جستجوی انواع کلیدواژه‌ها در بلندمدت، همچنان به سایت‌های تکراری و بزرگی برمی‌خورید که اسم و رسم بهتری دارند. به عبارت دیگر، تنوع‌بخشی علاوه بر کارکردهایی که در جستجو دارد، نیاز برآمده از علاقه ماهوی کاربران است که دنبال محتوای متنوع و غیرتکراری هستند. مثلا eBay ده سال پیش متوجه شد که الگوریتم‌های سنتی موتور جستجویش، به طرز معناداری در بعضی بخش‌ها فقط محصولات sony را به عنوان نتایج اول به کاربر نشان می‌داده و مخاطب فکر می‌کرده که  تنها، برند سونی وجود دارد و فروشنده دیگری در بازار نیست که باعث می‌شده درک نادرستی از تنوع بازار به مخاطب القا شود. eBay از اینجا متوجه شد که باید الگوریتم‌های جستجویش را اصلاح کند[10].

یک راه‌حل یادگیرانه برای تنوع‌بخشی؛ تعادل بین اکتشاف و بهره‌برداری

اولین راه‌حل‌هایی که برای تنوع‌بخشی به ذهن می‌رسد، الگوریتم‌های تصادفی است. یکی از این الگوریتم‌ها Lightweight Shuffle است که در آن به‌جای اینکه کاملا تصادفی نتایج جستجو را نمایش دهیم-که باعث تجربه ناخوشایند مشتری می‌شود-بین کالاهای مشابه جابجایی تصادفی انجام می‌دهیم یا گاهی اوقات به صورت محدود و البته تصادفی نتایج را جابجا می‌کنیم. در این وضعیت نتایجِ شخصی‌سازی شده و محبوب همچنان قابل مشاهده هستند اما دید کاربر محدود نمی‌شود. اما الگوریتم تصادفی به تنهایی کافی نیست. این الگوریتم‌ها می‌توانند کمک کنند که اکتشاف اولیه شکل بگیرد ولی برای تداوم تنوع‌بخشی باید مفاهیمی مانند سراغ Explore/Exploit رفت و بین استفاده از تجربه قبلی (exploit) و امتحان ایده‌های تازه(explore)  تعادل برقرار کرد.

برای درک بهتر ایده فرض کنید شما مربی فوتبال یک باشگاه در تیم‌های پایه هستید. برای گرفتن بهترین نتیجه، گاهی اوقات به بازیکنان جدید فرصت می‌دهید تا ببینید آیا استعداد لازم برای انتخاب شدن در تیم اصلی را دارند یا نه. از طرفی با توجه به ریسک بالای این کار و عدم شناخت از بازیکنان جدید، همیشه این کار را انجام نمی‌دهید و معمولا از بازیکنانی که خودشان را ثابت کرده‌اند استفاده می‌کنید. در موتور جستجو نیز الگوریتم Bandit به این شکل عمل ‌می‌کند. یعنی شما به طور یادگیرانه و از طریق بازخوردها سعی می‌کنید این فرایند را مدام تقویت کنید. در موتور جستجو علاوه بر نشان دادن نتایج Rule-Based که معمولا متکی بر محبوب‌ترین کالاهاست، هر از گاهی (بسته به ضریب explore) کالاهای کمتر دیده شده را نیز به مخاطب نشان می‌دهید ( مثلا با احتمال ε) و اگر بازخورد مثبت بود، مدل را به روز می‌کنید و دفعات بعد نیز بیشتر این کالا را نمایش می‌دهید.

ddsst | تبعیض در موتورهای جستجو؛ چرا تنوع‌بخش در الگوریتم‌های جستجو مهم است؟

ارجاع و پانویس

ایده اصلی متن حاضر از پست میرامید حاجی‌میرصادقی عضو هیئت علمی دانشکده علوم ریاضی دانشگاه صنعتی شریف و مدیر عامل شرکت سرچ‌وایز در لینکدین گرفته شده است:

 Haji-Mirsadeghi, M.-O. (2024, May). چرا سرچ بدون دیتا ساینس کشنده است؟(قسمت سوم) [LinkedIn post].


[1] Diversification

[2] Rule-Based

[3] Long-Tail

[4] Matthew effect

[5] Clumping

[6] Steiner, I. (2024, August 28). Etsy search to become more diverse, favor low-cost shipping. EcommerceBytes.

[7]  Zhuang, T., Ou, W., & Wang, Z. (2018). Globally optimized mutual influence aware ranking in e-commerce

[8] First in First out

[9] Last in First out

[10] Goldberg, D. (2014, November 26). Diversity in search. eBay Inc.

یکی از الگوریتم‌های معروف اکتشاف/ بهره‌برداری الگوریتم Upper Confidence Bound است:

image | تبعیض در موتورهای جستجو؛ چرا تنوع‌بخش در الگوریتم‌های جستجو مهم است؟

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

دیدگاه‌ها

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors