[AI/ML] شبکه های ترانسفورماتور فضایی (STN) – بررسی اجمالی، چالش ها و بهبودهای پیشنهادی


نویسنده(های): ششوات گوپتا

در ابتدا منتشر شد به سمت هوش مصنوعی.

اصلاح اطلاعات فضایی پویا از طریق شبکه‌های ترانسفورماتور فضایی (STNs) به مدل‌ها اجازه می‌دهد تا تغییراتی مانند مقیاس‌بندی و چرخش را برای کارهای بعدی مدیریت کنند. آنها دقت تشخیص را با امکان دادن به مدل ها برای تمرکز بر مناطق بصری ضروری با حداقل وابستگی به لایه های ادغام. این وبلاگ با وجود پوشش گسترده در مطالعات متعدد، مزایا و معایب عملکردی STN ها را بررسی می کند. ما همچنین P-STN را بررسی می‌کنیم، یک ارتقای بالقوه از سال 2020 شامل تغییرات پیشرفته و افزایش کارایی. ساخت و ساز سازگار تر و دقیق تر یادگیری ماشینی مدل‌ها بر درک STN و پیشرفت‌های آن‌ها تکیه دارند.

سلب مسئولیت: بسیاری از این بخش از مقاله اصلی در شبکه های ترانسفورماتور فضایی الهام گرفته شده است [1,2,3]

شبکه های ترانسفورماتور فضایی (STN):

STN ها (شبکه های ترانسفورماتور فضایی)، توسط Max Jaderberg و همکاران، ماژول هایی هستند که می توانند اطلاعات مکانی را در یک مدل تنظیم کنند و آن را در برابر تغییراتی مانند تاب برداشتن مقاوم تر کنند. قبل از STN ها، دستیابی به این نیاز به لایه های زیادی از Max-Pooling داشت. بر خلاف لایه های ادغامترانسفورماتورهای فضایی که دارای مناطق ثابت و کوچکی هستند، می توانند با اعمال تبدیل های مختلف برای هر ورودی، یک تصویر یا نقشه ویژگی را به صورت پویا تغییر دهند. این دگرگونی‌ها بر کل نقشه ویژگی تأثیر می‌گذارند و می‌توانند شامل مقیاس‌بندی، برش، چرخش و خمش باشند.

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

شکل 1: STN (منبع: https://arxiv.org/pdf/1612.03897.pdf)

STN از 3 بخش زیر تشکیل شده است:

  1. شبکه محلی سازی
  2. ژنراتور شبکه
  3. نمونه بردار

1. شبکه محلی سازی:

نقشه ویژگی ورودی U ∈ RH∗W∗C را می گیرد و پارامترهای تبدیل (θ = floc(U)) را خروجی می دهد. این می تواند هر شکلی داشته باشد اما باید شامل یک لایه رگرسیور نهایی برای تولید پارامترهای تبدیل θ باشد

2. نمونه گیری شبکه پارامتری:

پیکسل های خروجی با اعمال یک هسته نمونه گیری در مرکز هر مکان از نقشه ویژگی ورودی محاسبه می شوند. تنها محدودیت این است که تبدیل باید بر اساس پارامترها متفاوت باشد تا امکان انتشار مجدد فراهم شود. یک اکتشافی خوب این است که پارامتر تبدیل را به روشی با ابعاد کم پیش بینی کنیم تا پیچیدگی کار اختصاص داده شده به شبکه محلی سازی کاهش یابد و همچنین بتواند در مورد نمایش شبکه هدف یاد بگیرد. به عنوان مثال اگر τ_θ = M_θB، جایی که B نمایش هدف است. بنابراین، یادگیری θ و B نیز امکان پذیر است.

در مورد ما، تبدیل‌های دوبعدی را تحلیل می‌کنیم که معادله زیر می‌تواند به طور کلی آن‌ها را خلاصه کند:

3. نمونه برداری تصویر متمایز:

نمونه‌برداری تصویر متمایز برای انجام یک تبدیل فضایی نقشه ویژگی ورودی، یک نمونه‌گیر باید مجموعه نقاط نمونه‌برداری Tθ(G)، همراه با نقشه ویژگی ورودی U را بگیرد و نقشه ویژگی خروجی نمونه V را تولید کند. هر مختصات (xsi، ys i) در τθ(G) موقعیت مکانی را در ورودی تعریف می‌کند که در آن یک هسته نمونه‌گیری برای بدست آوردن مقدار یک پیکسل خاص در خروجی V اعمال می‌شود. این را می توان به صورت زیر نوشت:

که در آن Φₓ و Φᵧ پارامترهای یک هسته نمونه‌برداری عمومی k() هستند که درون یابی تصویر را تعریف می‌کند (مثلاً دوخطی)، U^c_{nm} مقدار در مکان (n, m) در کانال c ورودی است و V. ^c_i مقدار خروجی پیکسل i در مکان (x^t_i، y^t_i) در کانال c است. توجه داشته باشید که نمونه برداری برای هر کانال ورودی به طور یکسان انجام می شود، بنابراین هر کانال به طور یکسان تبدیل می شود (این باعث حفظ ثبات فضایی بین کانال ها می شود).

در تئوری، هر هسته نمونه‌گیری می‌تواند مورد استفاده قرار گیرد، تا زمانی که (زیر-)شیب ها می توان با توجه به x^s_i و y^s_i تعریف کرد. به عنوان مثال، با استفاده از هسته نمونه گیری عدد صحیح، معادله فوق را به:

کجا [x+ 0.5] x را به نزدیکترین عدد صحیح گرد می کند و δ() تابع دلتای کرونکر است. این هسته نمونه برابر با کپی کردن مقدار در نزدیکترین پیکسل به (xsi, ys i) در محل خروجی (xti, yt i) است. متناوبا، می توان از یک هسته نمونه برداری دوخطی استفاده کرد

برای اجازه دادن به انتشار معکوس از دست دادن از طریق این مکانیسم نمونه‌برداری، می‌توانیم آن را تعریف کنیم شیب ها با توجه به U و G. برای نمونه گیری دوخطی معادله بالا، مشتقات جزئی هستند

این به ما یک مکانیسم نمونه برداری (زیر) متمایز می دهد، که به گرادیان های تلفات اجازه می دهد تا نه تنها به نقشه ویژگی ورودی، بلکه به مختصات شبکه نمونه برداری و بنابراین، به پارامترهای تبدیل θ و شبکه محلی سازی از زمان ∂x^{ برگردند. s}_i / ∂θ و ∂y^{s}_{i}/ ∂θ را می توان به راحتی مشتق کرد. به دلیل ناپیوستگی در توابع نمونه برداری، باید از زیر گرادیان ها استفاده شود. این مکانیسم نمونه برداری را می توان به طور بسیار کارآمدی بر روی آن پیاده سازی کرد پردازنده گرافیکی با نادیده گرفتن مجموع در تمام مکان های ورودی و در عوض فقط نگاه کردن به منطقه پشتیبانی هسته برای هر پیکسل خروجی.

برای تاب برداشتن بهتر، STN ها را می توان با ارسال خروجی یک STN به بعدی آبشاری کرد (مانند [2]) و با ورودی اضافی به شرط (مانند [1])

مزایا و معایب STN ها:

مزایای کلی STN ها عبارتند از:

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

با این حال، STN ها به طور مشهور از 2 نقص زیر رنج می برند:

1. افکت مرزی با انتشار تصویر به وجود می‌آید و نه اطلاعات هندسی (مثلاً اگر تصویری چرخانده شود، STN‌ها می‌توانند چرخش را برطرف کنند، اما افکت‌های مرزی تخریب‌شده مانند گوشه‌های بریده شده و غیره را ثابت نمی‌کنند). این را می توان با نمونه گیری مرزی حل کرد:

2. برنامه تک STN برای یادگیری تبدیل های پیچیده کافی نیست.

3. دشواری آموزش: به دلیل حساسیت به پیش بینی های نادرست کوچک در پارامترهای تبدیل، آموزش سخت است – حل شده در P-STN (در زیر)

4. حساسیت به خطاها: تبدیل‌های پیش‌بینی‌شده اشتباه می‌تواند منجر به محلی‌سازی ضعیف شود و بر وظایف پایین‌دستی تأثیر منفی بگذارد – حل شده در P-STN (در زیر)

P-STN: بهبودی نسبت به STN

شبکه های ترانسفورماتور فضایی احتمالی (P-STN) توسط شوبل و همکاران [7]، محدودیت های 3 و 4 را با معرفی یک چارچوب احتمالی برای فرآیند تبدیل برطرف کنید. به جای پیش‌بینی یک تبدیل قطعی، P-STN توزیعی را بر روی تبدیل‌های احتمالی تخمین می‌زند (تبدیل احتمالی).

شکل 2: خط لوله P-STN. از تصویر مشاهده شده I، توزیعی از تبدیل ها تخمین زده می شود. نمونه‌هایی از این توزیع به تصویر مشاهده‌شده اعمال می‌شوند تا نمونه‌های تقویت‌شده تولید شوند، که به طبقه‌بندی‌کننده‌ای داده می‌شوند که میانگین بین نمونه‌ها را نشان می‌دهد. در مورد STN قطعی، محلی ساز فقط یک تبدیل θ(I) را محاسبه می کند، که می تواند به عنوان راه حل حداکثر احتمال در نظر گرفته شود. به جای نمونه‌های تبدیل چندگانه، یک T_{θ}^{I} را در این مورد به دست می‌آوریم

این رویکرد احتمالی چندین پیشرفت کلیدی را ارائه می دهد:

  1. استحکام از طریق حاشیه نشینی:
  • تبدیل های چندگانه: با نمونه‌برداری از تبدیل‌های چندگانه از توزیع برآورد شده، P-STN به طور موثر به ورودی از دیدگاه‌های مختلف نگاه می‌کند. این به حاشیه راندن در مورد تحولات، تأثیر هر تحول پیش‌بینی‌شده‌ای را کاهش می‌دهد.
  • چشم انداز از دست دادن آرام تر: ادغام بیش از چندین تغییر منجر به یک چشم انداز از دست دادن پایدارتر و هموارتر می شود و آموزش آسان تر و قابل اطمینان تر را تسهیل می کند.

2. تقویت داده ها:

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

3. قابلیت اجرا برای دامنه های متنوع:

  • در حالی که در ابتدا برای داده های تصویری طراحی شده بود، ماهیت احتمالی P-STN به آن اجازه می دهد تا به طور موثر به حوزه های غیر بصری، مانند داده های سری زمانی تعمیم یابد و تطبیق پذیری آن را بیشتر نشان دهد.

معادلات ریاضی تغییرات به شرح زیر است:

مزایای تصویری:

  • کاهش حساسیت به خطاهای تبدیل:

از دست دادن STN∝Log منفی – احتمال یک تبدیل واحد

P-STN Loss∝میانگین Log-Likelihood منفی بیش از چند تبدیل

P-STN با میانگین گیری بیش از چندین تبدیل، تأثیر هر تبدیل اشتباه را کاهش می دهد و منجر به یک فرآیند آموزشی پایدارتر و قابل اعتمادتر می شود.

خطای کالیبراسیون_STN > خطای کالیبراسیون_P-STN

رویکرد P-STN برای در نظر گرفتن تبدیل های چندگانه منجر به احتمالات کالیبره شده بهتر می شود، همانطور که با خطاهای کالیبراسیون کمتر در مقایسه با STN مشهود است.

شبکه‌های ترانسفورماتور فضایی احتمالی چارچوب STN اصلی را با معرفی توزیعی بر روی تبدیل‌های فضایی ممکن تقویت می‌کنند. این رویکرد احتمالی منجر به آموزش قوی‌تر، افزایش موثر داده‌ها، بهبود عملکرد طبقه‌بندی و مدل‌های کالیبره‌شده بهتر می‌شود. ادغام استنتاج متغیر و مونت کارلو نمونه‌برداری در P-STN روشی اصولی برای رسیدگی به عدم قطعیت‌های تبدیل فراهم می‌کند و آن را به پیشرفت قابل توجهی نسبت به STN‌های سنتی تبدیل می‌کند.

من در مورد تکنولوژی، سرمایه گذاری و کتاب هایی که می خوانم می نویسم. در اینجا فهرستی از وبلاگ های دیگر من است (مرتب شده بر اساس موضوع): https://medium.com/@shashwat.gpt/index-welcome-to-my-reflections-on-code-and-capital-2ac34c7213d9

مراجع:

  1. مقاله: IC-STN: https://arxiv.org/pdf/1612.03897.pdf
  2. STN: https://paperswithcode.com/method/stn
  3. ویدئو: https://www.youtube.com/watch?v=6NOQC_fl1hQ&t=162s (همراه با اسلایدها، منابع گروه خواندن رزومه)
  4. مقاله: Lenc and A. Vedaldi. درک نمایش تصویر با اندازه گیری هم ارزی و هم ارزی آنها. CVPR، 2015 (معیار عدم تغییر وابسته، هم ارزی و هم ارزی را تعریف می کند)
  5. STN – پیاده سازی PyTorch: https://pytorch.org/tutorials/ intermediate/spatial_transformer_tutorial.html
  6. شبکه های پراکنده: https://paperswithcode.com/paper/ شبکه‌های پیچ‌خوردگی-پراکنده ثابت#کد
  7. P-STN: https://backend.orbit.dtu.dk/ws/portalfiles/portal/280953750/2004.03637.pdf

منتشر شده از طریق به سمت هوش مصنوعی



منبع: https://towardsai.net/p/machine-learning/ai-ml-spatial-transformer-networks-stn-overview-challenges-and-proposed-improvements