یادگیری متضاد گراف در سطح گره
شبکههای عصبی گراف بسیار محبوب شدهاند و اغلب به بازنماییهای یادگیری برای کارهای پایین دستی متکی هستند. این پست وبلاگ در مورد یادگیری متضاد گراف، یک تکنیک یادگیری بدون نظارت برای ساختن بازنماییهایی از دادههای بدون برچسب بحث خواهد کرد. این ایده مبتنی بر تغییر اندکی گرافها است تا مدل بتواند مفهوم شباهت را بیاموزد. ما ایدههای اصلی را در پشت یادگیری متضاد گراف ارائه خواهیم داد و به ادبیات زیربنایی ارجاع خواهیم داد. با این حال، برای معرفی کاملتر، ما بررسیهای لیو و همکاران[1] و زی و همکاران[2] را توصیه میکنیم، که موضوع را به طور عمیق پوشش میدهد و الهام بخش این پست است.
مقدمه
اگرچه مقدار دادههای موجود به طور پیوسته افزایش یافته است، بسیاری از آنها نه پردازش میشوند و نه حاشیهنویسی میشوند. در حالی که برچسبزدن دستی ممکن است گزینهای برای تعداد نسبتاً کمی از نمونهها باشد، معمولاً در سناریوهای دنیای واقعی غیرممکن است. یادگیری خود نظارت راهی برای استفاده از مقادیر زیادی از دادههای بدون برچسب برای یادگیری بازنماییهای معنادار با بهرهبرداری از ساختار ضمنی است. بازنماییها روشی فشرده برای توصیف مهمترین جنبههای داده در بسیاری از حوزههای مختلف هستند. به عنوان مثال، بازنماییها میتوانند ماهیت کلمات را به تصویر بکشند[3]، پروتئینها[4] یا نشان دهنده گرههای یک گراف است[5]،[6]. این بازنماییها میتوانند بعداً بهعنوان ورودی یک شبکه عصبی استفاده شوند که یک برچسب برای هر گره پیشبینی میکند[7]،[8]، که فقط به چند نمونه حاشیهنویسی برای تنظیم دقیق نیاز دارد.
یادگیری خود نظارتی بیشتر در کارهای بینایی کامپیوتری مانند حذف نویز تصویر[9]،[10] و همچنین در پردازش زبان طبیعی[11] استفاده میشود. یادگیری متضاد یک روش مشخص از یادگیری خود نظارت است که بازنماییها را میآموزد تا ساختارهای مشابه در دادهها بازنماییهای مشابهی را به اشتراک بگذارند[12]،[13].
ایده یادگیری متضاد (تصویر). بازنمایی نسخههای مختلف تصاویر مشابه باید با یکدیگر همخوانی داشته باشد (آبی)، در حالی که آنها باید از سایر تصاویر (قرمز) متمایز باشند.
یک مثال ساده ایده یادگیری متضاد را به بهترین شکل توضیح میدهد. همانطور که در شکل بالا دیده میشود، تصاویر گربهها و سگها را در نظر بگیرید. ما تکنیکهای تقویت تصویر (جزئی[14]) را روی تصاویر اصلی انجام میدهیم، مانند تغییر کنتراست یا چرخش و برش تصویر. اگرچه تصاویر تغییر کردهاند، اما معنای معنایی زیربنایی تغییر نمیکند. همه عکسهای گربه هنوز هم عکسهای یک گربه هستند و همه عکسهای سگ هنوز همان سگ را نشان میدهند. ایده پشت یادگیری متضاد این است که تقویتهای یک تصویر باید بازنمایی مشابهی داشته باشند. از سوی دیگر، تفاوت در بازنمایی با تمام تصاویر دیگر (مانند تصاویر سگ یا گربههای دیگر) باید تا حد امکان بزرگ باشد.
اگرچه یادگیری متضاد در ابتدا برای تصاویر معرفی شده است، اما میتوان آن را برای انواع دادههای مختلف مانند گرافها نیز اعمال کرد[15]. گرافها به روشی محبوب برای بازنمایی دادهها در زمینههای مختلف به عنوان مثال، گرافهای مولکولی تبدیل شدهاند[16]،[17].
معمولاً بسیار بزرگ هستند و فاقد برچسب هستند و آنها را کاندیدای ایدهآل برای یادگیری متضاد میکند. یادگیری متضاد گراف(GCL) شبیه به یادگیری متضاد تصویر است: هدف نهایی یادگیری بازنمایی است، اما بازنمایی گرههای مشابه باید تا حد امکان در فضای نهفته نزدیک باشد [۱].
خط لوله یادگیری متضاد گراف. ما چندین نما را با افزودن یک گراف اولیه (سمت چپ) ایجاد میکنیم. همان گرهها در نماهای مختلف (زرد) جفتهای مثبت (آبی) را تشکیل میدهند، در حالی که همه گرههای دیگر به عنوان جفت متضاد (قرمز) عمل میکنند. یک رمزگذار (معمولاً یک شبکه عصبی) و یک سر پروجکشن نمایشها را تولید میکنند.
شکل بالا نحوه عملکرد GCL را نشان میدهد و خط لولهای است که در طول این پست دنبال خواهیم کرد. به جای افزودن تصاویر، یک گراف تغییر مییابد (لبهها یا گرهها حذف میشوند، ویژگیها تغییر میکنند و غیره) تا نسخههای متفاوتی از همان گراف ایجاد شود. با این حال، مانند تصاویر، گرهها باید همان معنای معنایی را داشته باشند. سپس یک شبکه عصبی گراف (رمزگذار) بازنماییهایی را بر اساس از دست دادن تعیین میکند که توافق گرههای مشابه را به حداکثر میرساند. این از دست دادن به گونهای تعریف میشود که بازنمایی گرههای یکسان در نماهای گراف مختلف باید با هم جمع شوند. در ادامه این مراحل را با جزئیات بیشتری بررسی خواهیم کرد.
در یادگیری متضاد، هدف این است که بهطور خودکار بازنماییها را با استفاده از حجم زیادی از دادههای بدون برچسب با ایجاد نماهای متضاد، پیدا کنیم. در یادگیری متضاد تصویر، این نماها با تقویتهایی ایجاد میشوند که معمولاً ساده هستند. برای نام بردن از چند مورد، میتوان تصاویر را برش داد، چرخاند یا کنتراست را تغییر داد. با این حال، ساختار گرافها اساساً متفاوت از تصاویر است و عملیاتی که روی تصاویر کار میکنند، معمولاً به گرافها منتقل نمیشوند. بسته به دادههای ذخیره شده در گرهها یا لبههای یک گراف، تنها چند تکنیک افزایش قابل استفاده است.
تقویت گراف اساس یادگیری متضاد را تشکیل میدهد، زیرا آنها نقطه مرجع را در طول: تعیین میکنند که کدام گرهها مشابه هستند و بنابراین، کدام بازنماییها باید در فضای پنهان با هم جمع شوند.
1. تبدیل توپولوژی گراف
اصلاح توپولوژی زیربنایی سادهترین و شهودیترین راه برای تقویت یک گراف است. تغییر توپولوژی به این معنی است که لبهها و رئوس را حذف یا اضافه میکنیم اما دادههای ذخیره شده را تغییر نمیدهیم [۲۰]. یک پیادهسازی بسیار ابتدایی از تبدیل تغییر توپولوژی، تعیین نسبتی است که تعیین میکند احتمال حذف گرهها یا لبهها چقدر است. بسیاری از الگوریتمهای GCL بر تبدیل ساختار گراف (ساده) تکیه دارند [۵،۲۱،۲۲]. انتشار گراف [۲۳] یک رویکرد پیچیدهتر است که از یک راه رفتن تصادفی و بنابراین از اطلاعات یک محله بزرگتر برای تصمیمگیری در مورد گرهها یا لبهها استفاده میکند [۱،۲،۲۴]. در پایان، همه آن رویکردها عمدتاً ماتریس مجاورت A را تغییر میدهند.
2. تبدیل ویژگی گره
دومین راه اصلی برای تقویت یک گراف، augmentationهای اصلاح کننده ویژگی است که ماتریس ویژگی X را اصلاح میکند و با آن دادههای واقعی ذخیره شده است. یک تکنیک بسیار رایج و ساده برای augmentation ویژگیها، پوشش ویژگی گره است [5، 20، 25]، که در آن مقادیر ماتریس ویژگی X به طور تصادفی با یک مقدار متفاوت (معمولاً صفر) جایگزین میشوند. یکی دیگر از تکنیکهای پرکاربرد، درهم ریختن ویژگی گره است [26، 27]، که در آن ویژگیهای گرهها به طور تصادفی تعویض میشوند.
بسته به دادههای بتن ذخیره شده برای هر گره، تطبیق ویژگیها قابلیتهای بسیار متفاوتی دارد. به عنوان مثال، گرافی را در نظر بگیرید که در آن هر گره یک تصویر را ذخیره میکند. در چنین شرایطی، تکنیکهای یادگیری متضاد کلاسیک، که در آن تصاویر چرخانده میشوند یا فضای رنگی تغییر میکند، ممکن است و احتمالاً منجر به نتایج بهتری نسبت به تغییر ویژگیهای اولیه میشود.
3. روشهای دیگر
ترکیب تقویتهایی که توپولوژی و ویژگیها را تغییر میدهند بهتر از تکیه بر یکی از آن انواع است [28]. روشهای به اصطلاح تکنیکهای ترکیبی افزایش چندگانه را با هم ترکیب میکنند و به طور گسترده مورد استفاده قرار میگیرند. به عنوان مثال، میتوان لبهها را رها کرد و ویژگیها را همزمان پوشاند [5] یا حتی رویکردهای متفاوتتری را با هم ترکیب کنید [20]. به جای حذف عناصر، نمونهگیری زیرگراف نیز وجود دارد، که در آن تنها بخش خاصی از گراف به طور تصادفی انتخاب و استفاده میشود. در سادهترین شکل، گرهها و یالها بهطور یکنواخت از گراف اصلی نمونهبرداری میشوند، اما باز هم رویکردهایی مبتنی بر پیادهرویهای تصادفی وجود دارد که به ما امکان میدهد محله را انتخابیتر کاوش کنیم [21].
augmentations در گرافها باید دستچین شده و بهخوبی تنظیم شوند. برای هر گراف، تقویتهای مختلف بهتر عمل میکنند. تقویتهای تطبیقی [29] این فرآیند را با شناسایی و حفظ ویژگیهای ضروری و در عین حال اعمال نویز بیشتر در قسمتهای کمتر بحرانی آسانتر میکند. شما و همکاران [30] از سوی دیگر، رویکردی را پیشنهاد میکند که به طور کلی افزایش را خودکار میکند. آنها یک تکنیک بهینهسازی دو سطحی را معرفی میکنند که در آن augmentations که منجر به بیشترین ضرر میشود در هر مرحله آموزشی انتخاب میشود. هنگامی که این را با یک سر طرح متفاوت برای هر تقویت ترکیب میکنند، روش آنها میتواند از الگوریتمهای موجود بهتر عمل کند.
4. روشهای "رایگان" augmentations
برخی از روشها نیاز به افزایش را به طور کلی از بین میبرند، مانند یادگیری نرم-کنتراست گراف [31]، که بر هموفیلی بودن گرافها متکی است. در گرافهای هوموفیل، تعداد پرشهای بین دو گره شباهت آنها را تعیین میکند. به عنوان مثال، گرافهای تحقیق معمولاً همجنسگرا هستند، زیرا مقالاتی که به یکدیگر استناد میکنند معمولاً مشابه هستند. نویسندگان یادگیری متضاد نرم استدلال میکنند که تکنیکهای augmentation کلاسیک با گرافهای هموفیلیک مسئله دارند، زیرا همسایگان نزدیک قبلاً به عنوان جفت متضاد دیده میشوند. آنها تلفات را به گونهای تغییر میدهند که فاصله بین گرهها تشابه را تعیین میکند. این منجر به بازنمایی بهتر در گرافهای هموفیل میشود.
به طور مشابه، وانگ و همکاران [32] استدلال میکنند که augmentationها نیز در مورد مخالف، زمانی که همسایگان مشابه نیستند، ناقص هستند. آنها الگوریتمی را معرفی میکنند که ویژگیهای گره را جمع میکند و فضای بازنمایی را مستقیماً برای حل این مسئله بهینه میکند.
بازنماییهای یادگیری
در بخش قبل، نحوه ساخت نماهای متضاد با تکنیکهای مختلف augmentation را مورد بحث قرار دادیم. با این طیف گسترده از راههای مختلف برای ایجاد دیدگاههای متضاد، میتوانیم نحوه یادگیری بازنماییها را مورد بحث قرار دهیم. در ادامه به قسمتهای باقی مانده خط لوله میپردازیم: مدلهای واقعی و نحوه آموزش آنها. اکنون زمان خوبی است که دوباره به خط لوله GCL از قبل نگاه کنیم تا این موضوع را در چارچوب قرار دهیم.
رمزگذار و راسهای طرحریزی
رمزگذار fθ: