یادگیری عمیق (Deep Learning) در علوم خاک — راهنمای کاربردی (بخش دوم)
این دومین مطلب از سری مقالات یادگیری عمیق در علوم خاک است. در بخش قبلی این مطالب، چارچوب کلی گردآوری اطلاعات از سوی دانشمندان خاک ارائه شد. این دانشمندان به طور معمول به تحقیق میدانی و کار تحلیلی در آزمایشگاه میپردازند. این فرایند زمانبر و پرهزینه است و یکی از دلایل علاقهمندی به ساخت مدلهای پیشبینی خصوصیات خاک همین است.
در این مقاله، روی مدلهای مکانی برای تولید نقشهها متمرکز شدهایم. در ابتدا مقدماتی در مورد روشهای سنتی «یادگیری ماشین» برای تولید نقشههای خاک ارائه میکنیم. سپس توضیح میدهیم که چرا اطلاعات زمینهای مهم هستند و چگونه میتوان از شبکههای عصبی کانولوشن (CNN) برای به دست آوردن آن اطلاعات بهره جست.
زمینه
در این بخش به عوامل مختلف دخیل در زمینه یادگیری عمیق در علوم خاک میپردازیم.
سابقه نظریه خاک
در اواخر قرن 1800، زمینشناس و جغرافیدان مشهور واسیلی داکوچایف (Vasily Dokuchaev) که مسئول نقشهبرداری از خاکهای امپراطوری روسیه بود، این ایده را مطرح کرد که تشکیل خاک (و از این رو تغییرات آن) به چندین عامل شامل ماده اولیه، اقلیم آب و هوایی، توپوگرافی، پوشش گیاهی و زمان وابسته است. این ایده، مفهوم کلی مقدماتی خاکشناسی مدرن را تشکیل داده است.
نقشهبرداری سنتی از خاک
بشر از دیرباز اقدام به نقشهبرداری از خاک کرده است. این کار به منظور تصمیمگیری در مورد نوع کشت، تعیین مالیات و غیره صورت میگرفته است. برای درک خاک و به طور کلی طبیعت، مشاهده گامی مهم محسوب میشود. در طبیعت پس از حفر یک سوراخ، نمایه خاک و لایههای تشکیلدهنده آن، تاریخچهاش را نشان میدهند؛ اما این تنها بخشی از داستان است. از آنجا که این سوراخ در یک موقعیت خاص قرار دارد، دانشمند خاک پیش از هر گونه نتیجهگیری (یا نقشهبرداری) اقدام به بررسی محیط پیرامون آن میکند.
پس از توصیف و مشاهده، زمان آن میرسد که نقشه را ترسیم کنیم. همه نقاط (سوراخها) روی یک صفحه سیاه موقعیتیابی میشوند و چندضلعیهایی بر اساس موارد زیر ترسیم میشود:
- مشابهت آنها
- اطلاعاتی در مورد عوامل تشکیلدهنده
پس از مدتی (در این مورد احتمالاً سالها بعد) چیزی مانند تصویر زیر به دست میآید:
نقشهبرداری دیجیتالی از خاک
از زمان تحقیقات داکوچایف، چیزهای زیادی تغییر یافته است. البته تئوری علوم خاک تا حدود زیادی همان است؛ اما در شیوه مشاهده طبیعت و شیوه پردازش دادهها تغییرات زیادی پدید آمده است. امروزه فناوری در اغلب مراحل پردازش از GPS برای یافتن موقعیت دقیق مکان حفره تا تصاویر ماهوارهای که عوامل تشکیل خاک را توصیف میکنند وارد شده است.
در نقشهبرداری سنتی از خاک، نتیجهگیریهایی بر مبنای تعامل بین عوامل تشکیلدهنده در ذهن دانشمند خاک شکل میگرفت. در نقشهبرداری دیجیتالی خاک (DSM) کل فرایند به وسیله مدلسازی و یادگیری ماشین صورت میپذیرد. یک دانشمند خاک میتواند به این نتیجه برسد که خاکهای داخل یک دره از خاکهای دامنه آن متفاوت هستند. بدیهی است که میتوان یک مدل نیز برای یک چنین نتیجهگیری آموزش داد.
DSM زیرشاخه پویایی از علوم خاک محسوب میشود و از این رو جمعبندی همه کارهایی که در این حوزه صورت میگیرد کار دشواری است. ما از مدلهای رگرسیون خطی تا جنگل تصادفی به این منظور استفاده کردهایم. منابع زیادی برای به دست آوردن پیشبینها (عوامل تشکیلدهنده) وجود دارند که شامل تصاویر ماهوارهای و محصولات مشتق از آنها میشود. برای دریافت اطلاعات بیشتر در مورد DSM میتوانید از مقاله مکبارتنی و همکاران، 2003 استفاده کنید.
شبکههای عصبی کانولوشن و DSM
همان طور که در بخش قبل اشاره کردیم، پیشزمینه نظری DSM بر اساس روابط بین خصوصیات خاک و عوامل تشکیلدهنده خاک است. در عمل یک مشاهده منفرد از خاک معمولاً به صورت یک نقطه p با مختصات (x,y) توصیف میشود و عوامل تشکیلدهنده متناظر برای خاک به وسیله مقادیر پیکسل چندین ((covariate raster ((a1,a2,…,an از همان مکان نمایش مییابند که n تعداد کلی covariate raster ها است.
بازنمایی نقطهای قطعاً مفید است؛ اما مانند این است که یک دانشمند خاک بدون در نظر گرفتن چشمانداز پیرامونی، صرفاً نمایه خاک را در نظر بگیرد. برای تکمیل کردن این تصویر باید مدل را در معرض زمینه مکانی هر مشاهده نیز قرار دهیم که معادل خارج شدن از حفره کنده شده و نگاه کردن به محیط پیرامون است.
به کمک CNN ها میتوان رویکرد DSM کلاسیک را با گنجاندن اطلاعاتی در مورد مجاورت (x,y) و کمک گرفتن از زمینه مکانی مشاهده خاک توسعه داد. میتوان بردار متغیرهای کمکی را با آرایهای سهبعدی به شکل (w,h,n) جایگزین کرد که w و h به ترتیب عرض و ارتفاع پیکسلهای پنجرهای به مرکزیت p هستند.
از آنجا که ما به یادگیری چندوظیفهای (multi-task learning) علاقهمند هستیم از CNN به همراه یک آرایه 3 بعدی از ورودیها و پیشبینیهای تولید شده برای مشخصات خاک (محتوای کربن آلی) استفاده میکنیم. در 5 محدوده عمقی بر اساس مدل ارتفاع دیجیتال، شیب، شاخص رطوبت توپوگرافیک، دمای میانگین سالانه بلندمدت و نزولات جوی کلی سالانه استفاده میکنیم. این شبکه چیزی مانند زیر خواهد شد:
رأس شبکه (لایههای مشترک) یک بازنمایی عمومی از دادههایی است که در ادامه در 5 شاخه هدایت شدهاند و هر یک مسئول عمق مورد نظر هستند. این شاخهها باید بتوانند نشان دهند که برای یک عمق خاص تعیین شدهاند.
نتایج
در این بخش نتایجی که از مدل خود به دست آوردهایم را ارائه میکنیم.
داده افزایی (Data Augmentation)
داده افزایی یک آمادهسازی اولیه در یادگیری ماشین محسوب میشود. زمانی که از نقشهها صحبت میکنیم، معمولاً نمای فوقانی از محل مطلوب را در نظر داریم و از این رو سادهترین روش برای داده افزایی از طریق چرخش است. بدین ترتیب تصاویر به میزان 90، 180 و 270 درجه چرخش مییابند. این کار دو مزیت دارد:
بدیهیترین مزیت این کار آن است که تعداد مشاهدات خود را به طرز مؤثری چهار برابر میکنیم.
مزیت دوم این است که میتوانیم تعمیمهای پایدارتری را از طریق القای ناوردایی چرخش (rotation invariance) ایجاد کنیم.
همان طور که انتظار میرود، داده افزایی در کاهش خطای مدل و تغییرپذیری مؤثر است. ما شاهد کاهش خطای میانگین به میزان 10.56، 10.56، 11.25، 14.51 و 24.77 درصد به ترتیب برای محدودههای عمق 0 تا 5، 5 تا 15، 15 تا 30، 30 تا 60 و 60 تا 100 سانتیمتر بودیم.
اندازه همسایگی
اندازه پنجره همسایگی (مجاورت) تأثیر معنیداری روی خطای پیشبینی داشته است. اندازههای بالاتر از 9 پیکسل موجب افزایش خطا میشدند. در این مثال، برای یک نقشه در اندازه یک ییلاق از SOC در اندازه شبکهای 100 متری اطلاعاتی از همسایگی به شعاع 150 تا 450 متر مفید است. این محدوده مشابه بازه همبستگی مکانی گزارش شده برای زمینهای کشاورزی در مطالعه پترسون و همکاران (2018) بوده است که مبتنی بر 41 واریوگرام (variogram) است. محققین تخمین زدهاند که بازه همبستگی مکانی به طور میانگین 400 متر است. از آنجا که ما از یک وضوح پیکسلی درشت (100 متر) استفاده کردهایم. تعیین مقدار کمینه زمینه مورد نیاز برای بهبود پیشبینیهای SOC کار دشواری است. ما بر این باور هستیم که استفاده از وضوحهای بالاتر (کمتر از 10 متر) میتواند بینشهای عمیقتری در این خصوص ارائه دهد.
مقایسه نتایج CNN با رویکرد سنتیتر (Cubist) مشخص میسازد که CNN باعث کاهش معنیداری در خطا به میزان 23.0، 23.8، 26.9/ف 39.8 درصد به ترتیب برای بازههای عمقی 0 تا 5، 5 تا 15، 15 تا 30، 30 تا 60 و 60 تا 100 سانتیمتر شده است.
پیشبینی لایههای چندگانه خاک
دو رویکرد اصلی در DSM برای بررسی تغییرات عمودی یک مشخصه خاک وجود دارد. میتوان پیشبینی لایه به لایه (عمق به صورت ضمنی) انجام داد یا این که عمق را در مدل جاسازی کرد (عمق به صورت صریح). هر دو رویکرد موجب کاهش واریانس توضیح داده شده از سوی مدل میشوند، چون عمق پیشبینی افزایش مییابد. این وضعیت قابل پیشبینی است، زیرا این اطلاعات که به صورت متغیرهای کمکی استفاده میشوند به طور معمول شرایط سطحی را نمایش میدهند.
در این مطالعه میتوانیم بار دیگر ببینیم که تأثیر همافزایی استفاده از CNN چندوظیفهای تا چه حد بالا است. در این خصوص در بخش پیشین این سری مقالات نیز صحبت کردیم. همان طور که در تصویر فوق مشخص است، در این حالت واریانس توضیح داده شده از سوی مدل با افزایش عمق بالاتر میرود. مقادیر مطلق R² را نمیتوان بین مدلها و مجموعه دادهها مقایسه کرد؛ اما امکان مقایسه مطلق روندها وجود دارد.
این یکی از دلایل اصلی اهمیت یادگیری چندوظیفهای است. اما باید هوشیار بود که این نوع یادگیری همیشه کار نمیکند. در بخشهای بعدی این سری مقالات در این خصوص بیشتر توضیح داده و مثالهای دیگری ارائه میکنیم.
در مورد نقشهها چه میتوان گفت؟
اگر این مقاله را تا اینجا مطالعه کرده باشید، قطعاً شایسته مشاهده یک نقشه هستید، چون در هر صورت کل این مقاله مربوط به نقشهها است. این مطالعه با استفاده از اطلاعات خاک به دست آمده از کشور شیلی اجرا شده است. در تصویر زیر میتوانید نمونهای از پیشبینی یک ناحیه تست کوچک را ببینید. در انتهای مقاله، لینک نقشه کامل ارائه شده است.
از لحاظ بصری نقشههای تولید شد با CNN اختلافهایی را در قیاس با مدل سنتی (Cubist) نشان میدهند. نقشه تولید شده با مدل Cubist جزییات بیشتری در ارتباط با توپوگرافی نشان میدهد؛ اما به دلیل محدودیتهای شدید تعیین شده از سوی قواعد درخت، برخی تأثیرهای مصنوعی را نیز تولید کرده است. احتمالاً برخی از این تأثیرات مصنوعی ناشی از covariate raster ها هستند. از سوی دیگر، نقشه تولید شده توسط CNN تأثیر نرمی دارد که تأثیر قابل پیشبینی استفاده از پیکسلهای در همسایگی است.
ارزیابی بصری یک نقشه کار دشواری است، زیرا به طور ناگزیر مجبور هستیم آن را بر مبنای جنبههای زیبایی شناسانه داوری کنیم. نقشه واقعی چه قدر تیز یا نرم است؟ این یک بحث دائمی در این حوزه محسوب میشود. چندضلعیهای سنتی خاک بهترین روش برای توصیف یک خاک است، زیرا خاک یک پیوستار است؛ اما یافتن مواردی از تغییرات شدید بین خاکهای مختلف نیز کار دشواری نیست و از این رو raster نرم ممکن است نادرست باشد. مهمترین پاسخ چیزی بین این دو باید باشد.
سخن پایانی
نقشهبرداری دیجیتالی از خاک بسیار جالب است و حوزه پویایی محسوب میشود. در این حوزه شاهد هستیم که روشهایی مانند شبکههای عصبی کانولوشن قابل استفاده هستند. به طور شهودی روشی که مزیت بهرهبرداری از اطلاعات مکانی زمینهای را داشته باشد در چارچوب نظری علوم خاک به خوبی جای میگیرد.
ضمناً یک بار دیگر شاهد تأثیر همافزایی شبکه چندوظیفهای با تنظیم پیشبینیها در لایههای عمیقتر بودیم. اگر مدل قبلاً تلاش کرده باشد لایه فوقانی را پیشبینی کند، قطعاً میتواند از آن برای راهنمایی پیشبینی لایههای عمیقتر استفاده کند. این دقیقاً همان چیزی است که یک دانشمند خاک در زمان توصیف نمایه خاک انجام میدهد. در بخش قبلی در مورد مطلبی در خصوص یادگیری انتقال نوید دادیم. در بخش بعدی به این موضوع خواهیم پرداخت.
اگر این مطلب برایتان مفید بوده است، آموزشهای زیر نیز به شما پیشنهاد میشوند:
- مجموعه آموزشهای زیست شناسی
- یادگیری عمیق (Deep Learning) در علوم خاک — راهنمای کاربردی (بخش اول)
- مجموعه آموزشهای آمار، احتمالات و دادهکاوی
- ۲۵ اصطلاح و مفهوم که برای شروع «یادگیری عمیق» باید بدانید
- آموزش یادگیری عمیق (Deep learning)
- مجموعه آموزش های مهندسی کشاورزی و زراعت
- معرفی منابع جهت آموزش یادگیری عمیق (Deep Learning) — راهنمای کامل
==
سپاس ازمطالب علمی وبه روزشما.
سلام و سپاس از مطالب مفیدتون
اگر ممکنه کدهای پیاده سازی یادگیری عمیق را برای نقشه برداری رقومی خاک در نرم افزار R قرار دهید
سلام لطفا اگه پیدا کردید و دسترسی داشتید برای بنده ارسال کنید
با سلام و عرض ادب
از شما تشکر مکنم از این جهت که مطلب کاربردی را نوشته اید. و یک پیشنهاد دارم و این است که روش های دیگر یادگیری ماشین را همراه با کدهای R و با مثالهای برای DSM بیاورید.
با سلام؛
از همراهی شما با مجله فرادرس سپاسگزارم. در مطلب «پیاده سازی الگوریتم های یادگیری ماشین با پایتون و R — به زبان ساده»، الگوریتمهای گوناگون یادگیری ماشین مورد بررسی قرار گرفتهاند و کدهای آنها در زبانهای برنامهنویسی R و پایتون ارائه شده است.
سپاسگزارم.