چه زمانی باید از MinDiff استفاده کنم؟
MinDiff را در مواردی اعمال کنید که مدل شما به طور کلی عملکرد خوبی دارد، اما خطاهای مضر را بیشتر در نمونههای متعلق به یک گروه حساس ایجاد میکند، و میخواهید شکاف عملکرد را ببندید. گروه های حساس مورد علاقه ممکن است بسته به مورد استفاده شما متفاوت باشد، اما اغلب شامل طبقات محافظت شده مانند نژاد، مذهب، جنسیت، گرایش جنسی و موارد دیگر می شود. در سراسر این سند، از "گروه حساس" برای اشاره به هر مجموعه ای از نمونه های متعلق به یک کلاس محافظت شده استفاده خواهیم کرد.
دو شرط اصلی برای استفاده از MinDiff برای رسیدگی به بخشهایی از دادهها وجود دارد که عملکرد ضعیفی دارند:
- شما قبلاً مدل خود را تنظیم و ارزیابی کردهاید و معیارهایی را شناسایی کردهاید که برشهایی از دادهها را ضعیف نشان میدهند. این باید قبل از اعمال اصلاح مدل انجام شود.
- تعداد کافی نمونه برچسب مرتبط متعلق به گروه کم عملکرد را دارید یا می توانید به دست آورید (جزئیات بیشتر در زیر).
MinDiff یکی از چندین تکنیک برای اصلاح رفتار نابرابر است. به ویژه، زمانی که میخواهید مستقیماً عملکرد بین گروهها را برابر کنید، ممکن است انتخاب خوبی باشد. MinDiff را میتوان همراه با روشهای دیگر، مانند افزایش دادهها و سایر روشها، استفاده کرد که ممکن است به نتایج بهتری منجر شود. با این حال، اگر باید اولویت بندی کنید که روی کدام تکنیک سرمایه گذاری کنید، باید این کار را با توجه به نیاز محصول خود انجام دهید.
هنگام استفاده از MinDiff، ممکن است شاهد کاهش یا تغییر اندکی عملکرد برای گروههایی باشید که بهترین عملکرد را دارند، زیرا گروههای با عملکرد ضعیف شما بهبود مییابند. این مبادله مورد انتظار است و باید در چارچوب نیازهای محصول شما ارزیابی شود. در عمل، ما اغلب دیدهایم که MinDiff باعث نمیشود که برشهای با عملکرد برتر به زیر سطح قابل قبول کاهش پیدا کنند، اما این یک برنامه خاص است و تصمیمی است که باید توسط مالک محصول گرفته شود.
در چه مدل هایی می توانم MinDiff را اعمال کنم؟
نشان داده شده است که MinDiff زمانی که برای طبقهبندیکنندههای باینری اعمال میشود، بهطور مداوم مؤثر است. تطبیق روش برای سایر برنامه ها امکان پذیر است، اما به طور کامل آزمایش نشده است. برخی کارها برای نشان دادن موفقیت در کارهای چند طبقهبندی و رتبهبندی 1 انجام شده است، اما هرگونه استفاده از MinDiff در این یا انواع دیگر مدلها باید تجربی در نظر گرفته شود.
بر اساس چه معیارهایی می توانم MinDiff را اعمال کنم؟
هنگامی که معیاری که میخواهید بین گروهها برابر کنید ، MinDiff ممکن است راهحل خوبی باشد، اما ممکن است برای معیارهای دیگر کارساز باشد. به عنوان یک قاعده کلی، MinDiff ممکن است زمانی کار کند که معیار مورد نظر شما نتیجه تفاوت در توزیع امتیاز بین نمونه های متعلق به یک گروه حساس و نمونه هایی باشد که به یک گروه حساس تعلق ندارند.
ساخت مجموعه داده MinDiff شما
هنگام آماده شدن برای آموزش با MinDiff، باید سه مجموعه داده جداگانه تهیه کنید. مانند آموزش معمولی، مجموعه داده های MinDiff شما باید نماینده کاربرانی باشد که مدل شما به آنها خدمت می کند. MinDiff ممکن است بدون این کار کند، اما در چنین مواردی باید احتیاط بیشتری کنید.
با فرض اینکه سعی می کنید FPR مدل خود را برای نمونه هایی که متعلق به یک کلاس حساس هستند بهبود دهید، به موارد زیر نیاز دارید:
- مجموعه آموزشی اصلی - مجموعه داده اصلی که برای آموزش مدل پایه شما استفاده شده است
- مجموعه حساس MinDiff - مجموعه دادهای از نمونههای متعلق به کلاس حساس با برچسبهای حقیقت پایه منفی . از این مثال ها فقط برای محاسبه ضرر MinDiff استفاده می شود.
- مجموعه غیر حساس MinDiff - مجموعهای از نمونههایی که به کلاس حساس تعلق ندارند و فقط برچسبهای حقیقت پایه منفی دارند. از این مثال ها فقط برای محاسبه ضرر MinDiff استفاده می شود.
هنگام استفاده از کتابخانه، هر سه مجموعه داده را در یک مجموعه داده واحد ترکیب میکنید که به عنوان مجموعه آموزشی جدید شما عمل میکند.
انتخاب نمونه هایی برای MinDiff
اگر در درجه اول نگران تفاوت در نرخ مثبت کاذب هستید، ممکن است در مثال بالا بیمعنا به نظر برسد که مجموعههایی از نمونههای دارای برچسب منفی را ایجاد کنید. با این حال، به یاد داشته باشید که یک پیشبینی مثبت نادرست از یک مثال با برچسب منفی که به اشتباه به عنوان مثبت طبقهبندی شده است، میآید.
هنگام جمعآوری دادههای خود برای MinDiff، باید نمونههایی را انتخاب کنید که در آن تفاوت در عملکرد مشهود است. در مثال بالا، این به معنای انتخاب نمونه هایی با برچسب منفی برای پرداختن به FPR بود. اگر ما علاقه مند به هدف قرار دادن FNR بودیم، باید نمونه هایی با برچسب مثبت را انتخاب می کردیم.
چه مقدار داده نیاز دارم؟
سوال خوبی است - این بستگی به مورد استفاده شما دارد! بر اساس معماری مدل، توزیع داده ها و پیکربندی MinDiff، مقدار داده مورد نیاز می تواند به طور قابل توجهی متفاوت باشد. در برنامه های گذشته، ما شاهد عملکرد خوب MinDiff با 5000 مثال در هر مجموعه آموزشی MinDiff بودیم (مجموعه های 2 و 3 در بخش قبل). با داده های کمتر، خطر کاهش عملکرد افزایش می یابد، اما این ممکن است در محدوده محدودیت های تولید شما حداقل یا قابل قبول باشد. پس از اعمال MinDiff، باید نتایج خود را به طور کامل ارزیابی کنید تا از عملکرد قابل قبول اطمینان حاصل کنید. اگر آنها غیرقابل اعتماد هستند یا انتظارات عملکرد را برآورده نمی کنند، ممکن است همچنان بخواهید جمع آوری داده های بیشتری را در نظر بگیرید.
چه زمانی MinDiff برای من مناسب نیست ؟
MinDiff یک تکنیک قدرتمند است که می تواند نتایج چشمگیری ارائه دهد، اما این بدان معنا نیست که روش مناسبی برای همه شرایط است. به کار بردن تصادفی آن تضمین نمی کند که به یک راه حل مناسب دست یابید.
فراتر از الزامات مورد بحث در بالا، مواردی وجود دارد که MinDiff ممکن است از نظر فنی امکان پذیر باشد، اما مناسب نباشد. شما همیشه باید گردش کار ML خود را بر اساس شیوه های توصیه شده شناخته شده طراحی کنید. به عنوان مثال، اگر وظیفه مدل شما به درستی تعریف نشده است، محصول باید نامشخص باشد، یا برچسب های نمونه شما بیش از حد کج است، باید رسیدگی به این مسائل را در اولویت قرار دهید. به طور مشابه، اگر تعریف روشنی از گروه حساس نداشته باشید، یا نتوانید به طور قابل اعتماد تعیین کنید که آیا نمونه ها متعلق به گروه حساس هستند، نمی توانید MinDiff را به طور موثر اعمال کنید.
در سطح بالاتر، همیشه باید در نظر داشته باشید که آیا محصول شما اصلاً کاربرد مناسبی برای ML دارد یا خیر. اگر چنین است، بردارهای بالقوه ای را برای آسیب کاربر که ایجاد می کند در نظر بگیرید. پیگیری ML مسئول یک تلاش چند وجهی است که هدف آن پیشبینی طیف وسیعی از آسیبهای احتمالی است. MinDiff می تواند به کاهش برخی از این موارد کمک کند، اما همه نتایج مستحق بررسی دقیق هستند.
1 Beutel A., Chen, J., Doshi, T., Qian, H., Wei, L., Wu, Y., Heldt, L., Zhao, Z., Hong, L., Chi, E., گودرو، سی (2019). انصاف در رتبه بندی توصیه ها از طریق مقایسه های زوجی.