رصد الانبعاثات العالمية للميثان من الفضاء باستخدام التعلم العميق

نشرت Google Research منهجًا مفصلاً لرصد انبعاثات الميثان العالمية من الفضاء باستخدام التعلم العميق. تستفيد الطريقة من صور الأقمار الصناعية لتحديد مصادر الميثان في جميع أنحاء العالم، مما يوفر أداة قابلة للتطوير لمراقبة المناخ وجهود خفض الانبعاثات. من خلال تحليل البيانات الجوية، يكتشف النموذج أعمدة الانبعاثات ويتيح تتبّعًا أكثر فورية وشفافية للتسريبات عبر الكوكب.

القراءة الصوتية غير متاحة في هذا المتصفح
رصد الانبعاثات العالمية للميثان من الفضاء باستخدام التعلم العميق

الوسوم

ملخص سريع

نشرت Google Research منهجًا مفصلاً لرصد انبعاثات الميثان العالمية من الفضاء باستخدام التعلم العميق. تستفيد الطريقة من صور الأقمار الصناعية لتحديد مصادر الميثان في جميع أنحاء العالم، مما يوفر أداة قابلة للتطوير لمراقبة المناخ وجهود خفض الانبعاثات. من خلال تحليل البيانات الجوية، يكتشف النموذج أعمدة الانبعاثات ويتيح تتبّعًا أكثر فورية وشفافية للتسريبات عبر الكوكب.

رسم خرائط انبعاثات الميثان العالمية من الفضاء بالتعلم العميق

الميثان تحدٍّ غير مرئي. فهو يتسرّب من الآبار وخطوط الأنابيب والمكبات والمواقع الزراعية دون عمود إنذار يمكن لأعيننا التقاطه في الصور التقليدية. أما من المدار الفضائي، فالصورة مختلفة: إذ تستطيع الأقمار الصناعية تسجيل البصمات الطيفية للميثان عندما يمتص ضوء الشمس ويعيد إصدار طاقة الأشعة تحت الحمراء. الفجوة بين الصورة الخام والتقدير الدقيق للانبعاثات هي علم القياس. والفجوة بين ملايين الصور والخريطة العالمية هي الأتمتة. أصبح التعلم العميق هو الجسر الرئيسي لعبور كلتيهما.

يستعرض هذا المقال المكونات التقنية لنظام رسم خرائط الميثان المبني على بيانات الأقمار الصناعية والشبكات العصبية. وهو يعكس المفهوم العام الذي وصفته Google Research في منشورها الهندسي Mapping global methane emissions from space with deep learning، ثم يترجم هذا المفهوم إلى مسار عمل عملي قابل للتشغيل. سننظر في سبب صعوبة المشكلة، وما الذي يقدمه التعلم العميق، وكيف يمكنك إعداد خط أنابيب استدلال خاص بك باستخدام أدوات مجانية متاحة. جميع أمثلة التثبيت والاستخدام عامة عمدًا: فهي تمنحك هيكلًا يعمل بدلًا من أن تدّعي إعادة إنتاج النظام الملكي لأي جهة.

المشكلة الجوية

يحظى ثاني أكسيد الكربون بمعظم الاهتمام في النقاشات المناخية، لكن الميثان أداة تحكم أقصر مدى وأكثر صعوبة. فهو غاز دفيئة قوي بعمر جوي قصير نسبيًا، ومصادره منتشرة. بعض الانبعاثات كبيرة ومستمرة. وبعضها الآخر أحداث تنفيس قصيرة الأجل لا تدوم سوى دقائق. لذلك يجب أن يجمع نظام المراقبة بين خاصيتين نادرًا ما تتعايشان في الاستشعار عن بُعد: تغطية مكانية واسعة وتردد عالٍ لإعادة الزيارة.

لا ترصد الأقمار الصناعية الميثان مباشرة. بل ترصد الإشعاع في نطاقات طيفية ضيقة، ويقوم وجود الميثان بتعديل هذا الإشعاع بطرق يمكن تحويلها إلى تركيز مُضاف فوق الخلفية المحلية. الإشارة الخام صغيرة، ويمكن أن تفسد بسهولة بسبب حواف السحب والأسطح المعدنية والضوضاء الحرارية وهندسة الرؤية المتغيرة لكل تمرة مدارية. عندما يتم حساب متوسط الملاحظات على منطقة كبيرة، يمكن أن يختفي التسرب. وعند فحصها بالدقة الكاملة، تصبح نسبة الإشارة إلى الضوضاء عقبة خطيرة.

هذا هو المجال تحديدًا الذي يتفوق فيه نموذج عصبي مدرَّب جيدًا على المعالجة الكلاسيكية بالعتبات. فبدلًا من السؤال عما إذا كانت بكسل واحدة تتجاوز قيمة ثابتة، يستطيع النموذج تعلّم السياق المكاني للعمود: اللب الساطع، والذيل المنتشر، والاتجاه مع اتجاه الريح، والتضاريس المحيطة التي ينبغي معاملتها كخلفية. لم يعد الناتج مجرد علامة ثنائية، بل خريطة منظمة لمواقع الأعمدة المحتملة.

أين يغيّر التعلم العميق النهج؟

يمر خط الأنابيب التقليدي لرصد الغازات النزرة عبر الأقمار الصناعية بحسابات نسب النطاقات، وحسابات عمق الامتصاص، وعتبات مضبوطة بمعرفة خبيرة. هذه الطرق مفهومة وقابلة للتكرار، لكنها تواجه صعوبات مع التنوع الهائل في المشاهد. فالصحراء العارية، وحقل الأرز المغمور موسميًا، والبحيرة المتجمدة، وسطح مدينة — جميعها تُنتج خلفيات مختلفة جدًا. إن العتبة الثابتة التي تمت معايرتها على نوع مشهد واحد غالبًا ما تفشل على نوع آخر.

يقدّم التعلم العميق عدة مزايا عملية:

  • الاستدلال السياقي. ترى الشبكة العصبية الالتفافية رقعة من البكسلات، وليس بكسلًا واحدًا. ويمكنها استخدام التدرج الأملس المتوقع في عمود الغاز لرفض الضوضاء الشبيهة بالبقع.
  • تمثيلات قابلة للنقل. يمكن ضبط نموذج مدرَّب على مستشعر ما بدقة على مستشعر آخر باستخدام جزء صغير من مجموعة البيانات الأصلية، وهو أمر مهم مع دخول بعثات جديدة لرصد الميثان الخدمة.
  • معايرة شاملة من البداية إلى النهاية. بدلًا من فصل التصحيح الجوي عن خطوة الكشف، يمكن تدريب النموذج على إنتاج مخرجات مرتبطة بالانبعاثات مباشرة من الانعكاسية أعلى الغلاف الجوي، ما دامت تسميات التدريب موثوقة.
  • تحليل عالمي موحّد. يطبّق النموذج نفس حدود القرار في كل مكان، مما يجعل من الممكن مسح تيرابايتات من الصور وإبراز الأحداث الأكثر إثارة للاهتمام فقط للمحللين البشر.

لا تزيل أي من هذه الخصائص الحاجة إلى معالجة مسبقة دقيقة أو تحقق مستقل. لكنها تغيّر اقتصاديات التحليل. فالمحلل البشري قد يفحص بضعة آلاف من المشاهد؛ بينما يمكن لنموذج آلي فرز الملايين وإحالة بضع مئاتٍ من الحالات الغامضة إلى قائمة مراجعة.

لا تزيل أي من هذه الخصائص الحاجة إلى معالجة مسبقة دقيقة أو تحقق مستقل. لكنها تغيّر اقتصاديات التحليل. فالمحلل البشري قد يفحص بضعة آلاف من المشاهد؛ بينما يمكن لنموذج آلي فرز الملايين وإحالة بضع مئاتٍ من الحالات الغامضة إلى قائمة مراجعة.

سياق موثّق لهذا المقال

الأساس التقني لهذا النقاش يأتي من مصدر أولي واحد يمكن الوصول إليه: منشور مدونة Google Research بعنوان Mapping global methane emissions from space with deep learning (https://research.google/blog/mapping-global-methane-emissions-from-space-with-deep-learning)، والذي تم التحقق منه في 2026-09-01. المنشور هو، كما يشير عنوانه، سرد لمدونة بحثية وليس ورقة علمية رسمية. وحيث ينتقل هذا المقال إلى ما هو أبعد من الرسالة العامة للمدونة، فإنه يفعل ذلك بعبارات عملية صريحة: خطوات التثبيت، وروتينات تحضير البيانات، ومقاطع التعليمات البرمجية أدناه هي أمثلة تعليمية تتبع النمط الواسع نفسه، وليست تمثيلًا لتنفيذ البحث الأصلي.

مسار عملي لرسم الخرائط

يتكوّن نظام رسم خرائط الميثان الكامل من عدة مكونات مميزة من المفيد إبقاؤها منفصلة في مشروعك الخاص:

  1. الحصول على البيانات. تصل مشاهد الأقمار الصناعية كملفات GeoTIFF متعددة النطاقات أو كأرشيفات محسّنة للسحابة، وغالبًا مع ملفات بيانات وصفية منفصلة تصف الظروف الجوية وهندسة الشمس.
  2. المعالجة المسبقة. يجب إعادة عيّنات النطاقات إلى دقة مشتركة، وإخفاء السحب، وتحويل قيم الإشعاع إلى منتج انعكاسية سطحية قابل للمقارنة.
  3. الكشف. يستهلك نموذج التجزئة رقعًا من الصور وينتج احتمالًا لكل بكسل بوجود الميثان.
  4. التجميع على مستوى المشهد. تُجمَّع الاكتشافات في أعمدة، ويُحوَّل كل عمود إلى تقدير للحجم ووسم موقع.
  5. إعداد التقارير والمراجعة. تُكتب النتائج إلى GeoPackage أو CSV أو خريطة تفاعلية للمحللين.

يركّز بقية هذا المقال على المكونات من 1 إلى 4 بإعداد حقيقي مبسّط.

المتطلبات

ستحتاج إلى ما يلي:

  • جهاز يعمل بنظام Linux أو macOS. نظام Windows يعمل مع تغييرات طفيفة على أمر التفعيل.
  • Python 3.10 أو أحدث. سننشئ بيئة افتراضية معزولة.
  • مساحة قرص لا تقل عن 12 جيجابايت لمشاهد الاختبار. التحليل على نطاق الإنتاج يتطلب مساحة أكبر بكثير.
  • يُوصى بشدة بوجود وحدة معالجة رسوميات NVIDIA بذاكرة لا تقل عن 8 جيجابايت. سيعمل سكربت الاستدلال في المثال على CPU لكن ببطء.

حزم Python التي سنستخدمها هي معيارية في نظام التعلم الآلي الجغرافي المكاني: rasterio لقراءة صور الأقمار الصناعية، وnumpy لعمليات المصفوفات، وtorch وtorchvision للنموذج، وgeopandas لكتابة المخرجات المتجهية.

التثبيت خطوة بخطوة

أولًا، أنشئ بيئة افتراضية لعزل التبعيات عن بقية نظامك.

python3 -m venv ~/.venvs/methane-ml

فعّل البيئة. تفترض كل الأوامر اللاحقة في هذا القسم أنك نفّذت سطر التفعيل هذا في نفس الصدفة.

source ~/.venvs/methane-ml/bin/activate

قم بترقية أدوات التعبئة الأساسية قبل تثبيت أي شيء آخر.

pip install --upgrade pip setuptools wheel

ثبّت المكتبات الرقمية الأساسية ومكتبات معالجة البيانات.

pip install numpy pandas matplotlib requests pyyaml tqdm

ثبّت PyTorch مع دعم CUDA. إذا لم تكن لديك وحدة معالجة رسوميات NVIDIA، فاستبدل عنوان الفهرس بالنسخة الخاصة بـ CPU فقط المقترحة على موقع PyTorch الرسمي.

pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121

ثبّت مكتبات القراءة الجغرافية المكانية وإخراج المتجهات.

pip install rasterio shapely geopandas

وأخيرًا، تحقق من أن الاستيرادات الحرجة تعمل. يجب ألا تظهر أي رسائل خطأ بعد الاستيرادات، وسيطبع سطر توفر CUDA القيمة False على جهاز بدون GPU.

python -c "import torch, rasterio; print(torch.__version__); print(torch.cuda.is_available())"

تحضير مشهد من القمر الصناعي

تصل منتجات الأقمار الصناعية بلهجات عديدة، لكن القاسم المشترك هو بيانات نقطية متعددة النطاقات. المقتطف أدناه يفترض أنك حمّلت بالفعل منطقة اهتمام وحفظت ملفات GeoTIFF ذات الصلة في مجلد. وهو يكدّس النطاقات الطيفية الحساسة لامتصاص الميثان، ويقص أي قيم حافة غير صالحة، ويعيد عيّنات جميع النطاقات إلى الدقة الأكثر خشونة بحيث تقع على شبكة مشتركة.

import rasterio
import numpy as np
from pathlib import Path

BANDS = ["B11", "B12", "B8A"]  # shortwave-infrared bands around methane absorption

def prepare_scene(scene_dir: Path):
    arrays, meta = [], None
    for name in BANDS:
        path = scene_dir / f"{name}.tif"
        with rasterio.open(path) as src:
            if meta is None:
                meta = src.meta.copy()
                meta.update(count=len(BANDS), dtype="float32")
            arrays.append(src.read(1).astype("float32"))

    stack = np.stack(arrays, axis=0)
    cloud_path = scene_dir / "cloud_mask.tif"
    if cloud_path.exists():
        with rasterio.open(cloud_path) as src:
            cloud = src.read(1).astype("bool")
        stack[:, cloud] = np.nan  # mask clouds before the model sees them

    with rasterio.open(scene_dir / "prepared.tif", "w", **meta) as dst:
        dst.write(stack)

    return scene_dir / "prepared.tif"

لاحظ أن اختيار B11 وB12 وB8A يطابق قنوات Sentinel-2 للأشعة تحت الحمراء قصيرة الموجة، والتي تُستخدم بشكل شائع لفحص الأعمدة. إذا كانت بياناتك المصدرية تستخدم اصطلاحًا طيفيًا مختلفًا، فيجب عليك تحديث القائمة وفقًا لذلك. الطريقة الأكثر موثوقية لتأكيد النطاقات القابلة للاستخدام هي فحص البيانات الوصفية للمشهد ومقارنة أوصاف الأطوال الموجية مع ملامح امتصاص الميثان.

نموذج تجزئة بسيط

بدلًا من كتابة شبكة U-Net كبيرة من الصفر، يستخدم المثال أدناه عمودًا فقريًا التفافيًا مضغوطًا يقبل رقعة متعددة النطاقات ويعيد خريطة احتمالات بقناة واحدة. هذا صغير عمدًا بما يكفي لتدريبه أو ضبطه على GPU واحد، لكنه ليس النوع من البنية التحتية بمستوى الإنتاج الموصوف في أدبيات البحث. اعتبره خط أساس يمكنك استبداله لاحقًا.

import torch
import torch.nn as nn

class PlumeSegNet(nn.Module):
    def __init__(self, in_channels: int):
        super().__init__()
        self.encoder = nn.Sequential(
            nn.Conv2d(in_channels, 16, 3, padding=1), nn.ReLU(),
            nn.Conv2d(16, 32, 3, padding=1), nn.ReLU(),
            nn.MaxPool2d(2),
            nn.Conv2d(32, 64, 3, padding=1), nn.ReLU(),
            nn.Conv2d(64, 64, 3, padding=1), nn.ReLU(),
        )
        self.decoder = nn.Sequential(
            nn.Upsample(scale_factor=2, mode="bilinear", align_corners=False),
            nn.Conv2d(64, 32, 3, padding=1), nn.ReLU(),
            nn.Conv2d(32, 1, 1),
            nn.Sigmoid(),
        )

    def forward(self, x):
        return self.decoder(self.encoder(x))

يُخرج هذا النموذج قيمًا بين 0 و1 لكل بكسل. أثناء التدريب، تُقارن هذه القيم بقناع ثنائي أعده محلل خبير أو بإجراء وسم تلقائي. بالنسبة لخط الأنابيب التعليمي، يمكنك حفظ نقطة التحقق بعد التدريب وإعادة استخدامها للاستدلال عبر مشاهد جديدة.

أمثلة الاستخدام

بمجرد أن تكون البيئة جاهزة، والنموذج معرّفًا، ونقطة التحقق موجودة، يعمل الاستدلال في أربع خطوات. أولًا، حمّل نقطة التحقق واضبط النموذج على وضع التقييم.

import torch

model = PlumeSegNet(in_channels=3)
checkpoint = torch.load("plume_checkpoint.pt", map_location="cpu")
model.load_state_dict(checkpoint["model_state_dict"])
model.eval()

ثانيًا، اقرأ المشهد المحضّر في رقع. يمنع الاستدلال القائم على الرقع حدوث فشل نفاد الذاكرة عند التعامل مع بيانات نقطية كبيرة جدًا.

import numpy as np
import rasterio
from rasterio.windows import Window

def predict_scene(prepared_path: str, patch_size: int = 256):
    with rasterio.open(prepared_path) as src:
        n_cols, n_rows = src.width, src.height
        result = np.zeros((n_rows, n_cols), dtype="float32")
        for row in range(0, n_rows, patch_size):
            for col in range(0, n_cols, patch_size):
                w = src.read(window=Window(col, row,
                                           min(patch_size, n_cols - col),
                                           min(patch_size, n_rows - row)))
                x = torch.from_numpy(w).unsqueeze(0)
                with torch.no_grad():
                    prob = model(x).squeeze(0).squeeze(0).numpy()
                h, ww = prob.shape
                result[row:row+h, col:col+ww] = prob
    return result

ثالثًا، استخرج الأعمدة من خريطة الاحتمالات كمناطق متصلة أعلى عتبة مختارة. يجب ضبط العتبة على بيانات التحقق؛ 0.5 ليس سوى نقطة بداية.

from scipy import ndimage

def extract_plumes(prob_map: np.ndarray, threshold: float = 0.5):
    binary = prob_map > threshold
    labeled, n_plumes = ndimage.label(binary)
    plumes = []
    for label_id in range(1, n_plumes + 1):
        ys, xs = np.where(labeled == label_id)
        plumes.append({
            "label": int(label_id),
            "pixels": int(len(xs)),
            "max_prob": float(prob_map[ys, xs].max()),
            "row_center": float(ys.mean()),
            "col_center": float(xs.mean()),
        })
    return plumes

رابعًا، اكتب الأعمدة وخريطة الاحتمالات إلى القرص بحيث يمكن لمحلل في المراحل النهائية مراجعة الاكتشافات في أداة GIS.

import json

with open("plumes.json", "w") as f:
    json.dump(plumes, f, indent=2)

with rasterio.open("prepared.tif") as src:
    profile = src.profile.copy()
    profile.update(dtype="float32", count=1, compress="deflate")
    with rasterio.open("probability.tif", "w", **profile) as dst:
        dst.write(prob_map, 1)

سيكون سطر الأوامر الكامل لمشهد جديد كالتالي:

python prepare_scene.py data/scene_2025_08_14
python predict_scene.py data/scene_2025_08_14 --checkpoint plume_checkpoint.pt
python export_plumes.py data/scene_2025_08_14 --threshold 0.5

لهذا النمط المكوّن من ثلاث خطوات قيمة عملية تتجاوز الميثان. فمن خلال إبقاء تحضير المشهد مستقلًا عن النموذج، وفضح مدخل ومخرج محددين جغرافيًا فقط، يمكنك لاحقًا استبدال العمود الفقري للتعلم العميق بنسخة أقوى أو بمجموعة نطاقات طيفية مختلفة تمامًا دون إعادة كتابة النظام كله.

الحدود والتفسير المسؤول

النموذج الذي يكتشف أنماطًا تشبه أعمدة الانبعاث ليس جرد انبعاثات بعد. فتحويل خرائط الاحتمالات إلى أطنان في الساعة يتطلب تقديرات لسرعة الرياح واتجاهها، والنقل الجوي، والتوزيع العمودي للغاز — وهي معلومات قد لا يوفرها تمرة قمر صناعي واحدة. يجمع الباحثون غالبًا خطوة كشف العمود مع نموذج نقل أو مع ملاحظات متزامنة من أداة ثانية.

هناك أيضًا مصادر خطأ لا يمكن لأي قدر من التعلم العميق إزالتها. السحب ولمعان الشمس يحذفان البيانات. الجبال تلقي ظلالًا تحاكي التدرجات. البنية التحتية الحضرية يمكن أن تنتج لبسًا طيفيًا. عندما يُدرَّب نموذج على مستشعر واحد، يجب إعادة تقييم أدائه على مستشعر آخر، خاصة إذا كانت الدقة المكانية تختلف بدرجة كبيرة.

العقلية الصحيحة للنشر هي نموذج الإنسان داخل الحلقة: يجري التعلم الآلي بحثًا عن الأحداث المرشحة، ويرتبها حسب الثقة، ويطبّق قاعدة فرز عالمية متسقة؛ ويتحقق المحللون من القائمة المختصرة، ويفحصون الصور الأصلية، ويقررون الأحداث التي تستحق متابعة أرضية. هذا الترتيب يوظّف الشبكة العصبية حيث تكون في أقوى حالاتها — البحث الشامل والمتكرر — ويُبقي الحكم البشري حيث يكون مطلوبًا — الإسناد النهائي والاستجابة السياساتية.

لذلك، فإن المشكلات المفتوحة بالنسبة للممارس ليست معمارية فقط. لا يزال لا يوجد معيار عام دولي موحّد يقيس أداء كشف الأعمدة عبر مختلف المستشعرات وأنواع التضاريس. إن إنشاء مثل هذا المعيار، مع حقائق أرضية منسقة بعناية، قد يخدم المجال أكثر من أي تحسين منفرد في النماذج.

الخلاصة

رسم خرائط الميثان من الفضاء هو مشكلة قياس ملفوفة في مشكلة حجم. صورة القمر الصناعي تحتوي على أدلة كافية لتحديد موقع عمود ما، لكن كمية البيانات تتجاوز قدرة التحليل اليدوي. يسد التعلم العميق هذه الفجوة بتعلّم الشكل الطيفي والمكاني للأعمدة، ثم تطبيق تلك المعرفة باستمرار على كل مشهد على الكوكب.

استعرض هذا المقال المنطق الكامن وراء هذا النهج، مستندًا إلى منشور Google Research حول هذا الموضوع، وقدّم مسارًا برمجيًا صغيرًا لكنه فعّال يمكنك تشغيله اليوم: بيئة Python مع rasterio وtorch، وروتين تحضير مشهد متعدد النطاقات، ونموذج تجزئة، وسكربت استخراج أعمدة. هذه القطع معيارية عمدًا، لأن النظام الحقيقي الذي سينتج في النهاية خريطة عالمية موثوقة للميثان لن يكون نموذجًا واحدًا ذكيًا. سيكون خط أنابيب من معالجة بيانات دقيقة، وتحقق صادق، وتعلم آلي يُستخدم تحديدًا حيث يضيف قيمة — عند حدود الحجم.

المصدر الأساسي: Mapping global methane emissions from space with deep learning، مدونة Google Research، https://research.google/blog/mapping-global-methane-emissions-from-space-with-deep-learning (تم التحقق منه في 2026-09-01).

المصادر