نرمالسازی (Normalization) در GeoAI: یکسانسازی زبان دادهها
نویسنده: فاطمه جعفری نوبخت
در پروژههای سنجش از دور و GeoAI، ما با طیف وسیعی از اعداد سروکار داریم. یک تصویر ماهوارهای Sentinel-2 ممکن است مقادیر بازتابش (Reflectance) بین ۰ تا ۱۰۰۰۰ داشته باشد، در حالی که یک لایه ارتفاعی (DEM) مقادیری بین -۵۰ تا ۸۰۰۰ متر دارد و دادههای حرارتی بر حسب کلوین هستند.
اگر این دادههای خام را با مقیاسهای متفاوت مستقیماً وارد یک شبکه عصبی کنیم، مدل دچار سرگیجه محاسباتی میشود. نرمالسازی فرآیند تبدیل تمام این دادههای ناهمگون به یک مقیاس مشترک (معمولاً بین ۰ و ۱) است تا مدل بتواند عادلانه و سریع یاد بگیرد.
۱. چرا در GeoAI بدون نرمالسازی شکست میخوریم؟
شبکههای عصبی عمیق (Deep Neural Networks) با استفاده از الگوریتم «کاهش گرادیان» (Gradient Descent) یاد میگیرند. دادههای نرمال نشده دو مشکل بزرگ ایجاد میکنند:
- همگرایی کند (Slow Convergence): اگر یک ورودی دامنهای بین ۰ تا ۱ داشته باشد و دیگری ۰ تا ۱۰۰۰۰، گرادیانها در جهت اعداد بزرگتر بسیار شدیدتر حرکت میکنند. مدل مجبور میشود گامهای بسیار کوچکی بردارد تا ناپایدار نشود و این یعنی آموزش مدل به جای چند ساعت، چند روز طول میکشد.
- تسلط ویژگیهای بزرگ (Feature Dominance): فرض کنید میخواهیم نوع محصول کشاورزی را تشخیص دهیم و از دو لایه استفاده میکنیم: «باند مادون قرمز» (مقدار ۵۰۰۰) و «شاخص رطوبت» (مقدار ۰.۴). بدون نرمالسازی، شبکه تصور میکند باند مادون قرمز به دلیل عدد بزرگترش، هزاران برابر مهمتر است و رطوبت را نادیده میگیرد.
۲. روشهای اصلی نرمالسازی در سنجش از دور
سه روش استاندارد برای پالایش دادههای مکانی وجود دارد:
الف) مقیاسبندی Min-Max (نرمالسازی خطی)
سادهترین روش که تمام دادهها را به بازه [۰,۱] فشرده میکند.
X_{norm} ={X – X_{min}} \{X_{max} – X_{min}}
- کاربرد: زمانی که توزیع دادهها مشخص نیست و میخواهیم تصویر را برای نمایش بصری یا ورودی استاندارد CNN آماده کنیم.
- چالش GeoAI: این روش به شدت به دادههای پرت (Outliers) حساس است. اگر در یک تصویر ماهوارهای بزرگ، تنها یک پیکسلِ اشباع شده (مثلاً بازتاب نور خورشید از سقف شیروانی فلزی) وجود داشته باشد، $X_{max}$ بسیار بزرگ میشود و تمام پیکسلهای دیگرِ تصویر به سمت صفر میل میکنند و تصویر سیاه میشود.
ب) استانداردسازی (Z-Score Standardization)
دادهها را طوری تغییر میدهد که میانگین آنها ۰ و انحراف معیار آنها ۱ شود.
$$X_{std} = \frac{X – \mu}{\sigma}$$
- کاربرد: زمانی که دادهها توزیع نرمال (زنگولهای) دارند. این روش در برابر دادههای پرت مقاومتر است و برای شبکههای عصبی عمیق بسیار محبوب است.
ج) برش درصدی (Percentile Clipping) – مخصوص ماهواره
این روش «فوت کوزهگری» در پردازش تصاویر ماهوارهای است. به جای استفاده از مینیمم و ماکسیمم مطلق، از صدک ۲٪ و ۹۸٪ استفاده میکنیم.
- روش: هر پیکسلی که کمتر از صدک ۲٪ باشد را ۰ و هر چه بیشتر از ۹۸٪ باشد را ۱ در نظر میگیریم و مابقی را بین این دو نرمال میکنیم.
- چرا؟ چون در تصاویر ماهوارهای معمولاً ابرها (خیلی روشن) و سایهها (خیلی تیره) به عنوان نویز در نظر گرفته میشوند. با این کار کنتراستِ عوارض اصلی زمین حفظ میشود.
۳. چالشهای خاص نرمالسازی در GeoAI
۱. عمق بیت (Bit Depth)
تصاویر معمولی (JPG/PNG) ۸-بیتی هستند (۰ تا ۲۵۵). اما تصاویر علمی (TIFF) معمولاً ۱۶-بیتی یا ۳۲-بیتی شناور (Float) هستند.
- اشتباه رایج: تقسیم کورکورانه دادههای ماهوارهای بر ۲۵۵.
- راه درست: باید محدوده دینامیکی سنسور را بشناسید (مثلاً لندست ۱۶ بیتی است اما مقادیر مفید معمولاً تا ۳۰۰۰۰ هستند) و بر اساس آن نرمالسازی کنید.
۲. نرمالسازی سراسری در برابر محلی (Global vs. Local)
آیا باید میانگین ($\mu$) را برای هر تصویر جداگانه حساب کنیم یا برای کل مجموعه داده؟
- رویکرد محلی (Per Image): کنتراست هر تصویر را جداگانه تنظیم میکند. برای تشخیص اشیاء (Object Detection) خوب است.
- رویکرد سراسری (Global Statistics): میانگین کل ۱۰,۰۰۰ تصویر آموزشی را حساب کرده و همه را با آن نرمال میکنیم. این روش برای تحلیلهای سری زمانی (Time Series) و مقایسه تغییرات محیطی الزامی است (زیرا تغییر روشنایی در تصویر باید معنای فیزیکی داشته باشد، نه اینکه با نرمالسازی حذف شود).
۳. ترکیب دادههای چندحسی (Multi-modal Fusion)
وقتی دادههای راداری (SAR) را با دادههای نوری (Optical) ترکیب میکنید، نرمالسازی حیاتی است.
- دادههای SAR لگاریتمی (dB) هستند (مثلاً -۲۰ تا ۰).
- دادههای نوری خطی هستند.
- بدون نرمالسازی جداگانه برای هر کانال، مدل قادر به یادگیری همبستگی بین آنها نخواهد بود.
۴. لایه Batch Normalization (یک قدم جلوتر)
علاوه بر نرمالسازی ورودی (Data Preprocessing)، درون معماری شبکههای عصبی مدرن (مثل U-Net)، لایههایی به نام Batch Norm وجود دارد. این لایهها در حین آموزش، خروجیهای لایههای میانی را دوباره نرمال میکنند.
این تکنیک باعث میشود مدل GeoAI بسیار سریعتر همگرا شود و حساسیت کمتری به تنظیم دقیق پارامترهای اولیه داشته باشد.
5. نتیجهگیری
نرمالسازی در GeoAI فقط یک تقسیم ساده ریاضی نیست؛ بلکه درکی عمیق از فیزیک تصویر و معماری شبکه است. انتخاب روش اشتباه (مثلاً Min-Max روی تصویری پر از ابر) میتواند تمام اطلاعات بافتی را از بین ببرد.
یک قانون طلایی در GeoAI وجود دارد: «آشغال وارد شود، آشغال خارج میشود» (Garbage In, Garbage Out). نرمالسازی صحیح تضمین میکند که آنچه وارد شبکه میشود، نه آشغال، بلکه اطلاعات خالص و قابل هضم است.