کارایی سیستم در توصیهگرها در مقایسه با بهینهسازی دقت مدل خالص
کارایی سیستم در سیستمهای توصیهگر بر کاهش تأخیر، هزینه محاسباتی و استفاده از منابع در عین حفظ کیفیت توصیه قابل قبول تمرکز دارد. بهینهسازی دقیق مدل، معیارهای عملکرد پیشبینی مانند AUC، NDCG و فراخوانی را در اولویت قرار میدهد، که اغلب به قیمت سربار محاسباتی تمام میشود. انتخاب بین آنها بستگی به این دارد که آیا استقرار شما برای مقیاسپذیری و هزینه ارزش قائل است یا کیفیت رتبهبندی خام.
برجستهها
بهرهوری، تأخیر و هزینه را به عنوان معیارهای موفقیت درجه یک در نظر میگیرد، نه به عنوان ملاحظات ثانویه.
بهینهسازی دقیق میتواند مدلهایی تولید کند که از نظر اقتصادی ارائه آنها در مقیاس بزرگ غیرممکن است.
معماریهای دو برجی و جستجوی ANN از ویژگیهای بارز بهرهوری هستند، در حالی که شبکههای متقاطع و ترانسفورماتورها بر دقت سیگنال تمرکز دارند.
بیشتر سیستمهای تولیدی هر دو را با هم ترکیب میکنند، و از تولید کاندیدای ارزان و به دنبال آن رتبهبندی مجدد پرهزینه استفاده میکنند.
کارایی سیستم در توصیهگرها چیست؟
یک رویکرد مهندسی که تأخیر، توان عملیاتی، حافظه و مصرف انرژی را در کل خط لوله توصیه بهینه میکند.
تیم یوتیوب گوگل گزارش داد که حتی کاهش ۱۰ درصدی تأخیر در ارائه خدمات منجر به افزایش قابل توجه تعامل میشود و کارایی را به یک اهرم درآمد مستقیم تبدیل میکند.
توصیهگرهای کارآمد معمولاً از تکنیکهایی مانند مدلهای دو برجی، جستجوی تقریبی نزدیکترین همسایه و کوانتیزاسیون تعبیهشده برای مقیاسبندی به میلیاردها مورد استفاده میکنند.
DLRM متا و کارهای بعدی روی جاسازیهای فشرده نشان داد که کوانتیزاسیون ۴ بیتی میتواند حافظه مدل را تا ۱۶ برابر با حداقل کاهش دقت کاهش دهد.
کارایی سیستم، کل پشته شامل بازیابی ویژگی، استنتاج مدل و مرتبسازی مجدد پس از رتبهبندی را در نظر میگیرد، نه فقط خود شبکه عصبی.
شرکتهایی مانند پینترست و تیکتاک مقالاتی منتشر کردهاند که نشان میدهد استراتژیهای ذخیرهسازی و پیشمحاسبات میتوانند هزینههای ارائه خدمات را 30 تا 50 درصد کاهش دهند.
بهینهسازی دقیق مدل چیست؟
یک رویکرد مبتنی بر تحقیق که معیارهای دقت آفلاین و آنلاین را بدون نگرانی اصلی در مورد هزینه محاسباتی به حداکثر میرساند.
توصیهگرهای متمرکز بر دقت، معیارهایی مانند AUC، log-loss، NDCG@K، MAP@K و recall@K را به عنوان معیارهای اصلی موفقیت دنبال میکنند.
مدلهای عمیق مانند ترانسفورماتورها، شبکههای متقاطع بزرگ و شبکههای عصبی گراف اغلب دقت بالاتری ارائه میدهند اما به محاسبات بسیار بیشتری نیاز دارند.
جامعه دانشگاهی RecSys از لحاظ تاریخی معیارهای دقت مانند MovieLens، Amazon Reviews و مجموعه دادههای Yelp را در اولویت قرار داده است.
مدلهایی مانند SASRec، BERT4Rec و LightFM در درجه اول با بهبود دقت به عنوان نتیجه اصلی منتشر شدهاند.
بهینهسازی دقیق میتواند منجر به مدلهایی شود که برای هر پرسوجو صدها میلیثانیه طول میکشند و این امر آنها را برای ارائه خدمات در مقیاس بزرگ در زمان واقعی غیرعملی میکند.
جدول مقایسه
ویژگی
کارایی سیستم در توصیهگرها
بهینهسازی دقیق مدل
هدف اصلی
به حداقل رساندن تأخیر، هزینه و استفاده از منابع
معیارهای دقت پیشبینی را به حداکثر برسانید
معیارهای کلیدی
تأخیر P99، QPS، هزینه به ازای هر درخواست ۱۰۰۰ تایی، میزان اشغال فضای حافظه
AUC، NDCG@K، فراخوانی@K، از دست دادن لگاریتم، MAP
تکنیکهای معمول
کوانتیزاسیون، جستجوی شبکه عصبی مصنوعی، ذخیرهسازی، مدلهای دو برجی، تقطیر
صرفهجویی مستقیم در هزینه و تجربه کاربری از طریق سرعت
توصیههای بهتر اگر در محدوده بودجه ارائه شوند
خطر بیشبرازش
پایینتر، زیرا مدلهای سادهتر اغلب استفاده میشوند
بالاتر، زیرا مدلهای پیچیده میتوانند الگوها را به خاطر بسپارند
حساسیت سختافزار
تنظیم بالا برای شتابدهندههای خاص
پایینتر - هر جا که محاسبات در دسترس باشد، اجرا میشود
مقایسه دقیق
فلسفه اصلی و بدهبستانها
بهرهوری سیستم، کیفیت توصیه را به عنوان یک متغیر در میان متغیرهای بسیار دیگر در نظر میگیرد و آن را در برابر تأخیر، هزینه و قابلیت اطمینان متعادل میکند. بهینهسازی دقت محض، کیفیت را به عنوان متغیر غالب در نظر میگیرد و فرض میکند که محاسبات را میتوان برای مطابقت با آن آماده کرد. در عمل، این دو رویکرد در دو انتهای یک طیف قرار میگیرند و اکثر تیمهای تولید در نهایت در جایی در وسط قرار میگیرند و مقدار کمی از دقت را با افزایش قابل توجه بهرهوری مبادله میکنند.
گزینههای معماری مدل
تیمهای متمرکز بر کارایی به سمت معماریهایی گرایش دارند که تولید کاندیدا را از رتبهبندی جدا میکنند، مانند مدلهای دو برجی که در آنها جاسازیهای کاربر و آیتم به طور مستقل از قبل محاسبه میشوند. تیمهای متمرکز بر دقت اغلب تعاملات بین ویژگیها، مکانیسمهای توجه و انباشت عمیق را ترجیح میدهند که سیگنالهای غنیتری را ثبت میکنند اما در زمان ارائه خدمات به محاسبات مشترک نیاز دارند. انتخاب معماری به همه چیز از فروشگاههای ویژگی گرفته تا زیرساختهای ارائه خدمات سرایت میکند.
معیارهای ارزیابی و موفقیت
وقتی کارایی در اولویت باشد، موفقیت با معیارهایی مانند تأخیر در دنباله، توان عملیاتی به ازای هر پردازنده گرافیکی و هزینه کل مالکیت سنجیده میشود. تیمهای دقت محور با امتیازات جدول امتیازات آفلاین و افزایش تعامل یا درآمد در تستهای آنلاین A/B زنده میمانند و میمیرند. مدلی که در NDCG برنده میشود اما بودجه تأخیر را از دست میدهد، در فرهنگ کارایی محور شکست خورده است و مدلی که در 5 میلیثانیه سرویس میدهد اما رتبه ضعیفی دارد، در فرهنگ دقت محور شکست خورده است.
واقعیت استقرار در دنیای واقعی
در شرکتهایی مانند متا، گوگل و تیکتاک، سیستمهای توصیهگر تریلیونها درخواست را مدیریت میکنند، بنابراین حتی بهبودهای کوچک در بهرهوری به میلیونها صرفهجویی در زیرساختها منجر میشود. محیطهای دانشگاهی و استارتاپی اغلب فاقد این محدودیتهای مقیاس هستند و به آنها اجازه میدهد بدون نگرانی در مورد هزینه ارائه خدمات، دقت را بیشتر کنند. نتیجه این است که معیارهای دقت منتشر شده اغلب از مدلهایی استفاده میکنند که هرگز در یک بررسی تولید در یک ابرمقیاسساز دوام نمیآورند.
وقتی هر رویکردی برنده میشود
کارایی زمانی برنده میشود که هزینه ارائه خدمات بر بودجه غلبه کند، زمانی که تأخیر ادراکشده توسط کاربر مستقیماً بر تعامل تأثیر بگذارد، یا زمانی که سیستم باید به کاتالوگهای عظیم مقیاسپذیر شود. دقت محض زمانی برنده میشود که کاتالوگ کوچک باشد، زمانی که توصیهها از قبل به صورت آفلاین محاسبه شده باشند، یا زمانی که توجیه تجاری برای افزایش کیفیت حاشیهای، هزینه محاسبات را توجیه کند. رویکردهای ترکیبی مانند توصیهگرهای آبشاری، که در آن یک مدل ارزان، نامزدها را قبل از اینکه یک مدل گرانقیمت آنها را دوباره رتبهبندی کند، فیلتر میکند، به طور فزایندهای رایج شدهاند.
مزایا و معایب
کارایی سیستم در توصیهگرها
مزایا
+هزینههای سرو پایینتر
+تجربه کاربری بهتر
+مقیاسها تا میلیاردها مورد
+زیرساخت قابل پیشبینی
مصرف شده
−ممکن است دقت را فدا کند
−نیاز به تخصص عمیق در سیستمها دارد
−تکرار سریع آن دشوارتر است
−پیچیدگی محدود مدل
بهینهسازی دقیق مدل
مزایا
+کیفیت رتبه بالاتر
+تحقیق آسانتر
+بنچمارکهای قوی آفلاین
+الگوهای پیچیده را ثبت میکند
مصرف شده
−گران بودن سرویس دهی
−ریسک بالای تأخیر
−مقیاسپذیری دشوار
−اغلب در تولید غیرعملی است
تصورات نادرست رایج
افسانه
یک مدل دقیقتر، همیشه پس از استقرار، معیارهای کسبوکار را بهبود میبخشد.
واقعیت
اگر مدل، تأخیر یا هزینه سرویسدهی را اضافه کند، کاربران ممکن است جلسات را قبل از دیدن توصیهها ترک کنند. بسیاری از تستهای A/B نشان دادهاند که یک مدل کمی کمتر دقیق اما سریعتر، در معیارهای تعامل واقعی، از یک مدل کندتر و دقیقتر بهتر عمل میکند.
افسانه
توصیهگرهای متمرکز بر کارایی لزوماً سادهتر و کمقدرتتر هستند.
واقعیت
سیستمهای کارآمد مدرن از تکنیکهای پیچیدهای مانند شاخصهای آموختهشده، آموزش مبتنی بر کوانتیزاسیون و جستجوی تقریبی نزدیکترین همسایه استفاده میکنند. آنها ساده نیستند - آنها با دقت مهندسی شدهاند تا قدرت را در بودجههای محدود منابع ارائه دهند.
افسانه
معیارهای دقت آفلاین، عملکرد آنلاین را به طور قابل اعتمادی پیشبینی میکنند.
واقعیت
معیارهای آفلاین مانند AUC و NDCG با موفقیت آنلاین همبستگی دارند اما به هیچ وجه کامل نیستند. مدلی که در حالت آفلاین با 0.5٪ اختلاف در NDCG برنده میشود، اگر 20 میلیثانیه به تأخیر آن اضافه شود، میتواند در حالت آنلاین شکست بخورد، به همین دلیل است که تیمهای تولید، کارایی را به شدت مورد توجه قرار میدهند.
افسانه
شما باید بین دقت و کارایی یکی را انتخاب کنید.
واقعیت
این دو کاملاً در تضاد نیستند. تکنیکهایی مانند تقطیر دانش، هرس کردن و کوانتیزاسیون میتوانند بیشتر دقت یک مدل بزرگ را در یک بسته بسیار کوچکتر بازیابی کنند و هر دو را در اختیار شما قرار دهند.
افسانه
معیارهای آکادمیک نشان میدهند که چه چیزی در عمل جواب میدهد.
واقعیت
تحقیقات دانشگاهی در زمینه سیستمهای توصیهگر، به طور چشمگیری دقت را در مجموعه دادههای ایستا بهینه میکنند و محدودیتهای سرویسدهی را نادیده میگیرند. سیستمهای تولید در شرکتهایی مانند نتفلیکس و متا با معیارهای منتشر شده بسیار متفاوت به نظر میرسند.
سوالات متداول
کارایی سیستم در سیستمهای توصیهگر چیست؟
کارایی سیستم به این اشاره دارد که یک سیستم توصیهگر چقدر خوب از منابع محاسباتی، حافظه و شبکه برای ارائه پیشبینیها استفاده میکند. این شامل تأخیر در ارائه، توان عملیاتی، هزینه به ازای هر درخواست و مصرف انرژی میشود. یک سیستم کارآمد، کیفیت توصیه قابل قبولی را ارائه میدهد و در عین حال این هزینههای عملیاتی را به حداقل میرساند، که در مقیاس پلتفرمهایی مانند یوتیوب یا تیکتاک بسیار مهم است.
چرا بهینهسازی دقیق صرف اغلب در تولید غیرعملی است؟
مدلهای بسیار دقیق معمولاً بزرگ و کند هستند زیرا به شبکههای عمیق، ویژگیهای متقاطع یا ترانسفورماتورها متکی هستند. در میلیاردها درخواست روزانه، حتی افزایش ۵۰ میلیثانیهای در تأخیر میتواند میلیونها دلار در زیرساخت هزینه داشته باشد و به تعامل کاربر آسیب برساند. بنابراین، تیمهای تولید پیچیدگی مدل را محدود میکنند تا در محدوده تأخیر و محدودیتهای بودجه باقی بمانند.
مدلهای دو برجی چگونه کارایی را بهبود میبخشند؟
مدلهای دو برجی، کاربران و اقلام را به طور مستقل در جاسازیها کدگذاری میکنند، بنابراین جاسازی اقلام را میتوان به صورت آفلاین از قبل محاسبه و برای جستجوی سریع تقریبی نزدیکترین همسایه، فهرستبندی کرد. در زمان ارائه، فقط جاسازی کاربر باید محاسبه شود، سپس یک جستجوی سریع ANN، نامزدها را بازیابی میکند. این معماری در مقایسه با مدلهایی که هر جفت کاربر-آیتم را به طور مشترک امتیاز میدهند، محاسبات آنلاین را به طور چشمگیری کاهش میدهد.
آیا میتوانید هم دقت بالا و هم راندمان بالا را به دست آورید؟
بله، از طریق تکنیکهایی مانند تقطیر دانش که در آن یک مدل دانشآموز کوچک از یک معلم بزرگ یاد میگیرد، تعبیه کوانتیزاسیون که حافظه را بدون افت کیفیت عمده کوچک میکند، و رتبهبندی آبشاری که در آن یک مدل ارزان قبل از اینکه یک مدل گرانقیمت آنها را دوباره رتبهبندی کند، نامزدها را فیلتر میکند. بسیاری از سیستمهای تولیدی با کسری از هزینه به ۹۵٪ دقت یک مدل بزرگ دست مییابند.
چه معیارهایی برای توصیهگران کارآمد بیشترین اهمیت را دارند؟
تأخیر P50 و P99، پرسوجوها در هر ثانیه به ازای هر سرور، هزینه به ازای هر ۱۰۰۰ توصیه، میزان حافظه اشغال شده و انرژی به ازای هر درخواست، معیارهای اصلی هستند. معیارهای دقت هنوز هم مهم هستند اما در برابر این محدودیتهای عملیاتی متعادل میشوند. تیمها اغلب دقت تعدیلشده بر اساس کارایی را پیگیری میکنند که دستاوردهای کیفی را بر محاسبات صرفشده برای دستیابی به آنها تقسیم میکند.
جستجوی تقریبی نزدیکترین همسایه چگونه کمک میکند؟
الگوریتمهای ANN مانند HNSW و IVF-PQ بدون مقایسه کامل با هر مورد، تطابقهای نزدیک را در فضای جاسازی پیدا میکنند. به جای امتیازدهی به میلیونها نامزد، سیستم چند صد مورد برتر را در عرض چند میلیثانیه بازیابی میکند. این همان چیزی است که توصیهگرهای فهرست بزرگ را اصلاً امکانپذیر میکند، زیرا جستجوی دقیق بسیار کند خواهد بود.
آیا کوانتیزاسیون برای مدلهای توصیهگر ایمن است؟
تکنیکهای مدرن کوانتیزاسیون، به ویژه آموزش آگاه از کوانتیزاسیون، دقت را به طرز چشمگیری حفظ میکنند. متا و گوگل نتایجی را منتشر کردهاند که نشان میدهد جاسازیهای ۴ بیتی و حتی ۲ بیتی با حداقل افت کیفیت انجام میشوند. خطر اصلی زمانی است که مدلها به تغییرات کوچک جاسازی بسیار حساس هستند، که در این صورت رویکردهای با دقت مختلط یا کوانتیزاسیون انتخابی بهتر عمل میکنند.
حافظه پنهان چه نقشی در کارایی توصیهگرها دارد؟
ذخیرهسازی اطلاعات بسیار مهم است. جاسازی موارد محبوب، ویژگیهای پرکاربرد کاربران و حتی لیستهای پیشنهادی از پیش محاسبهشده را میتوان برای جلوگیری از محاسبات اضافی، ذخیرهسازی کرد. پینترست و تیکتاک گزارش دادهاند که استراتژیهای ذخیرهسازی تهاجمی، محاسبات ارائه شده را 30 تا 50 درصد کاهش میدهند. ترفند، نامعتبرسازی است - دانستن اینکه چه زمانی نتایج ذخیرهسازی شده قدیمی هستند - که نیاز به طراحی دقیق خط لوله دارد.
چگونه بین سرمایهگذاری روی دقت در مقابل کارایی، یکی را انتخاب میکنید؟
با اندازهگیری محل گلوگاه خود شروع کنید. اگر هزینههای سرویسدهی بر هزینههای زیرساخت شما غالب است یا تأخیر به تعامل آسیب میرساند، روی بهرهوری سرمایهگذاری کنید. اگر فضای کافی برای محاسبات دارید اما توصیهها ضعیف به نظر میرسند، روی دقت سرمایهگذاری کنید. اکثر تیمهای بالغ رویکرد پرتفوی را اجرا میکنند و بودجه دقت را فقط در جایی خرج میکنند که سود حاشیهای، هزینه حاشیهای را توجیه کند.
آیا ترانسفورماتورها همیشه در توصیهها، مدلهای سادهتر را شکست میدهند؟
نه لزوماً. ترانسفورماتورها در مدلسازی توالی عملکرد فوقالعادهای دارند و میتوانند تاریخچههای طولانی کاربر را ثبت کنند، اما ارائه خدمات به آنها پرهزینه است. برای بسیاری از کاتالوگها و الگوهای ترافیکی، مدلهای دو برجی یا بین شبکهای که به خوبی تنظیم شدهاند، با کسری از هزینه، دقت ترانسفورماتور را برآورده میکنند. مزیت ترانسفورماتور زمانی بیشتر خود را نشان میدهد که توالیهای رفتار کاربر طولانی و غنی باشند.
سیستم توصیهگر آبشاری چیست؟
یک سیستم آبشاری از چندین مدل به ترتیب استفاده میکند: یک مدل ارزان و سریع، کاندیداها را تولید میکند، سپس مدلهای گرانتر و دقیقتر، آنها را دوباره رتبهبندی میکنند. این به شما امکان میدهد محاسبات سنگین را فقط روی چند صد مورد برتر اعمال کنید، نه کل کاتالوگ. این معماری غالب در شرکتهایی مانند یوتیوب، متا و اسپاتیفای است.
انتخاب سختافزار چگونه بر بدهبستان کارایی در مقابل دقت تأثیر میگذارد؟
پردازندههای گرافیکی (GPU) عملیات ماتریسی بزرگ را ترجیح میدهند و از مدلهای متمرکز بر دقت بهره میبرند، در حالی که پردازندههای مرکزی (CPU) و شتابدهندههای تخصصی مانند TPUها را میتوان برای الگوهای سرویسدهی خاص تنظیم کرد. انتخاب سختافزاری که با معماری مدل شما مطابقت داشته باشد، میتواند به طور قابل توجهی این بده بستان را تغییر دهد. مدلی که روی CPU بسیار گران است، ممکن است روی سختافزار استنتاج بهینهشده مقرون به صرفه باشد، به همین دلیل است که طراحی مدل آگاه از سختافزار به طور فزایندهای اهمیت پیدا میکند.
حکم
وقتی در مقیاس وسیع کار میکنید و هزینه یا تأخیر سرویسدهی مستقیماً بر سود خالص شما تأثیر میگذارد، که واقعیت اکثر پلتفرمهای بزرگ است، بهرهوری سیستم را انتخاب کنید. وقتی در یک محیط تحقیقاتی هستید، کاتالوگ کوچکی دارید یا میتوانید از عهده محاسبات سنگین برآیید و به هر بخش از یک بالابر کیفیت نیاز دارید، بهینهسازی دقیق را انتخاب کنید. در تولید، باهوشترین تیمها ابتدا برای بهرهوری طراحی میکنند و سپس بودجه دقت را در جایی که بیشترین اهمیت را دارد، خرج میکنند.