دستیابی به مقیاس پذیری و کیفیت در خوشه بندی متن – وبلاگ تحقیقاتی گوگل

دستیابی به مقیاس پذیری و کیفیت در خوشه بندی متن – وبلاگ تحقیقاتی گوگل

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

انتخاب روش خوشه‌بندی متن معمولاً یک معضل ایجاد می‌کند. یک رویکرد استفاده از مدل‌های تعبیه‌شده، مانند BERT یا RoBERTa، برای تعریف یک مشکل خوشه‌بندی متریک است. مورد دیگر استفاده از مدل‌های توجه متقابل (CA) مانند PalM یا GPT برای تعریف مشکل خوشه‌بندی نمودار است. مدل‌های CA می‌توانند نمرات شباهت بسیار دقیقی ارائه دهند، اما ساخت نمودار ورودی ممکن است به تعداد درجه دوم فراخوان استنتاج به مدل نیاز داشته باشد. از سوی دیگر، یک فضای متریک را می توان به طور موثر با فواصل تعبیه های تولید شده توسط مدل های تعبیه تعریف کرد. با این حال، این فاصله‌های شباهت معمولاً در مقایسه با سیگنال‌های شباهت مدل‌های CA کیفیت بسیار پایین‌تری دارند و از این رو خوشه‌بندی تولید شده می‌تواند کیفیت بسیار پایین‌تری داشته باشد.

مروری بر توابع امتیازدهی شباهت مبتنی بر جاسازی و مبتنی بر توجه متقابل و مقیاس پذیری آنها در مقابل معضل کیفیت.

با انگیزه این موضوع، در «KwikBucks: خوشه‌بندی همبستگی با سیگنال‌های ارزان-ضعیف و گران‌قیمت» که در ICLR 2023 ارائه شد، یک الگوریتم خوشه‌بندی جدید را توصیف می‌کنیم که به طور موثر مزایای مقیاس‌پذیری از مدل‌های جاسازی و کیفیت مدل‌های CA را ترکیب می‌کند. این الگوریتم خوشه‌بندی گراف به هر دو مدل CA و مدل تعبیه شده دسترسی پرس و جو دارد، با این حال، ما بودجه‌ای را بر روی تعداد پرس‌و‌جوهای انجام‌شده به مدل CA اعمال می‌کنیم. این الگوریتم از مدل CA برای پاسخگویی به پرسش‌های لبه استفاده می‌کند و از دسترسی نامحدود به امتیازهای شباهت از مدل تعبیه‌سازی سود می‌برد. ما توضیح می‌دهیم که چگونه این تنظیم پیشنهادی طراحی الگوریتم و ملاحظات عملی را پل می‌کند، و می‌تواند برای سایر مسائل خوشه‌بندی با توابع امتیازدهی مشابه، مانند مشکلات خوشه‌بندی روی تصاویر و رسانه‌ها، اعمال شود. ما نشان می‌دهیم که چگونه این الگوریتم خوشه‌هایی با کیفیت بالا با تقریباً تعداد خطی فراخوانی‌های پرس و جو به مدل CA ارائه می‌دهد. ما همچنین داده های مورد استفاده در آزمایش های خود را منبع باز کرده ایم.

الگوریتم خوشه بندی

الگوریتم KwikBucks توسعه ای از الگوریتم معروف KwikCluster (الگوریتم Pivot) است. ایده سطح بالا این است که ابتدا مجموعه ای از اسناد (به عنوان مثال، مراکز) را انتخاب کنید که هیچ شباهتی بین آنها وجود نداشته باشد و سپس خوشه هایی در اطراف این مراکز تشکیل شود. برای به دست آوردن کیفیت از مدل‌های CA و راندمان زمان اجرا از مدل‌های تعبیه‌شده، این رمان را معرفی می‌کنیم. اوراکل شباهت ترکیبی سازوکار. در این رویکرد، ما از مدل جاسازی برای هدایت انتخاب کوئری‌هایی که به مدل CA ارسال می‌شوند، استفاده می‌کنیم. هنگامی که مجموعه‌ای از اسناد مرکزی و یک سند هدف داده می‌شود، مکانیزم اوراکل شباهت ترکیبی مرکزی را از مجموعه‌ای که مشابه سند هدف است، در صورت وجود، خروجی می‌دهد. اوراکل تشابه ترکیبی ما را قادر می‌سازد با محدود کردن تعداد تماس‌های پرس و جو به مدل CA هنگام انتخاب مراکز و تشکیل خوشه‌ها، در بودجه صرفه‌جویی کنیم. این کار را ابتدا با رتبه بندی مراکز بر اساس شباهت تعبیه شده آنها به سند هدف انجام می دهد و سپس مدل CA را برای جفت (یعنی سند هدف و مرکز رتبه بندی شده) جستجو می کند، همانطور که در زیر نشان داده شده است.

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

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

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

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

نتایج

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

برای ارزیابی کیفیت خوشه بندی، از دقت و یادآوری استفاده می کنیم. دقت برای محاسبه درصد جفت‌های مشابه از همه جفت‌های هم‌خوشه‌شده استفاده می‌شود و یادآوری درصد جفت‌های مشابه هم‌خوشه‌شده از همه جفت‌های مشابه است. برای اندازه‌گیری کیفیت راه‌حل‌های به‌دست‌آمده از آزمایش‌هایمان، از امتیاز F1 استفاده می‌کنیم که میانگین هارمونیک دقت و فراخوان است، که در آن 1.0 بالاترین مقدار ممکن است که نشان‌دهنده دقت و فراخوان کامل و 0 کمترین مقدار ممکن است. مقداری که نشان می دهد دقت یا فراخوان صفر است یا خیر. جدول زیر امتیاز F1 را برای Kwikbucks و خطوط پایه مختلف را گزارش می‌کند، در صورتی که ما فقط تعداد خطی پرس‌و‌جوها را به مدل CA اجازه می‌دهیم. ما نشان می‌دهیم که Kwikbucks افزایش قابل توجهی در عملکرد با 45٪ بهبود نسبی در مقایسه با بهترین خط پایه هنگام میانگین‌گیری در تمام مجموعه‌های داده ارائه می‌دهد.

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

مقایسه KwikBucks با 2 خط پایه زمانی که بودجه های متفاوتی برای پرس و جو از مدل توجه متقابل مجاز است.

نتیجه

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

سپاسگزاریها

این پروژه در طول دوره کارآموزی تابستانی Sandeep Silwal در Google در سال 2022 آغاز شد. ما می‌خواهیم قدردانی خود را از نویسندگان همکار خود، Andrew McCallum، Andrew Nystrom، Deepak Ramachandran، و Sandeep Silwal به خاطر مشارکت ارزشمندشان در این کار ابراز کنیم. ما همچنین از راوی کومار و جان گیلارد برای کمک به این پست وبلاگ تشکر می کنیم.