داستان نبرد با حملات عجیب به طبقه‌بندهای سه‌بعدی؛ یا: چطور جلوی خرابی‌های هوشمندانه رو تو داده‌های سه‌بعدی بگیریم!

اگه تا حالا با طبقه‌بندی اشیای سه‌بعدی (یا همون سه‌بعدی‌سازی محیط و اشیا) سر و کار داشتی، می‌دونی که این مدل‌ها خیلی قوی‌ان ولی یه جای کارشون حسابی می‌لنگه: خیلی راحت می‌تونن گول بخورن! مخصوصاً جلوی یه چیزایی به اسم Universal Adversarial Perturbations یا به اختصار UAPs. بذار یکم ساده‌تر بگم:

UAPها یه جور تقلب هوش مصنوعی‌ان که شیطنتشون اینه که فرقی نمی‌کنه چی به مدل بدی، تو اکثر مواقع باعث می‌شن مدل جواب اشتباه بده. این یعنی فقط به اندازه یه ذره تغییر کوچیک تو داده‌های ورودی کافیه که مدل کلاً خرابکاری کنه!

مشکل کجاست؟ حقیقتش اینه که بیشتر راه‌هایی که برای جلوگیری یا تصحیح این تقلب‌ها وجود داره، اصلاً حواسشون به شکل و ساختار کلی این حملات تو فضای سه‌بعدی نیست. این روشای سنتی فقط هر پوینت (یا همون نقطه) رو جدا جدا بررسی می‌کنن، ولی واقعیت اینه که UAPها بیشتر شبیه یه قطعه یا بخش با شکل و خمیدگی خاص خودشون هستن تا صرفاً یک سری نقاط تصادفی تو فضا.

خب حالا بیایید ببینیم این مقاله (یا بهتر بگم، این ایده جالب) چه کار کرده. نویسنده‌ها اومدن یه روش تازه پیش گرفتن که خیلی باحال و منطقیه: گفتن چرا از ابزارهایی که باعث میشه مدل قابل فهم‌تر بشه (که بهش میگن model interpretability)، کمک نگیریم تا این قطعه‌های مشکوک رو پیدا کنیم و نابود کنیم؟

اولین قدمشون این بوده که بفهمن کدوم قسمت‌های نمونه‌های آلوده بیشترین تأثیر رو تو تصمیم مدل میذارن. چون UAPها معمولاً به صورت یه بخش با انحنا یا خمیدگی منظم ظاهر می‌شن، پس میشه با ابزارهایی مثل graph wavelet transform (که یه روش پیشرفته برای تشخیص ساختارهای خاص تو داده‌های ساختاریافته‌ست) این قسمت‌ها رو جدا کرد.

بعد، یه کار جالب دیگه کردن به اسم transplantation test یعنی آزمون پیوند! یعنی چی؟ یعنی اون قطعه مشکوک رو برمی‌دارن و می‌چسبوننش به یه نمونه سالم. اگه باعث شد مدل اشتباه کنه، خب بله! این همون خرابکار موردنظر ماست و باید پاکسازی بشه.

وقتی این قسمت‌های سروقت بعنوان خرابکار مشخص شدن، دیگه زمان پاک‌سازی می‌رسه: اون بخش‌ها رو حذف می‌کنن و نتیجه این میشه که ابر نقاط سه‌بعدی (یا همون point cloud) دوباره تمیز و قابل اعتماد میشه. خلاصه این روش جدید نه تنها هوشمندتر و ساختارمحور عمل میکنه، بلکه واقعاً کاری میکنه که UAPها مثل قبل نتونن مدل رو دست بندازن.

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

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

خلاصه، این یه آینده جذاب و مهیج برای کساییه که دنبال امن‌سازی مدل‌های یادگیری ژئومتریک (یعنی مدل‌هایی که با داده‌های هندسی مثل ابر نقاط و مدل‌های سه‌بعدی کار میکنن) هستن!

منبع: +