جنگلهای حرا بخش وارداتی از یک اکوسیستم سالم هستند و فعالیتهای انسانی یکی از دلایل اصلی ناپدید شدن تدریجی آنها از خطوط ساحلی در سراسر جهان است. استفاده از مدل یادگیری ماشینی (ML) برای شناسایی مناطق حرا از روی یک تصویر ماهوارهای، روشی موثر برای نظارت بر اندازه جنگلها در طول زمان به محققان میدهد. که در قسمت 1 در این مجموعه، نحوه جمع آوری داده های ماهواره ای به صورت خودکار و تجزیه و تحلیل آن را نشان دادیم Amazon SageMaker Studio با تجسم تعاملی در این پست نحوه استفاده را نشان می دهیم Amazon SageMaker Autopilot برای خودکارسازی فرآیند ساخت یک طبقهبندیکننده سفارشی حرا.
یک مدل را با اتوپایلوت آموزش دهید
Autopilot راه متعادلی را برای ساخت چندین مدل و انتخاب بهترین آنها فراهم می کند. در حالی که ترکیب های متعددی از تکنیک های مختلف پیش پردازش داده ها و مدل های ML را با حداقل تلاش ایجاد می کند، Autopilot در صورت تمایل، کنترل کاملی بر روی این مراحل مؤلفه را برای دانشمند داده فراهم می کند.
میتوانید از Autopilot با استفاده از یکی از AWS SDK استفاده کنید (جزئیات موجود در راهنمای مرجع API برای Autopilot) یا از طریق Studio. ما از Autopilot در راه حل استودیو خود به دنبال مراحل ذکر شده در این بخش استفاده می کنیم:
- در صفحه راهانداز استودیو، علامت مثبت را برای آن انتخاب کنید آزمایش اتوپایلوت جدید.
- برای داده های خود را وصل کنید، انتخاب کنید سطل S3 را پیدا کنید، و نام سطلی را که مجموعه داده های آموزشی و آزمایشی را در آن نگهداری می کردید وارد کنید.
- برای نام فایل مجموعه داده، نام فایل داده آموزشی که ایجاد کرده اید را در آن وارد کنید داده های آموزشی را آماده کنید بخش در قسمت 1.
- برای مکان داده خروجی (سطل S3)، همان نام سطلی را که در مرحله 2 استفاده کردید وارد کنید.
- برای نام دایرکتوری مجموعه داده، نام پوشه ای را در زیر سطلی که می خواهید Autopilot مصنوعات را در آن ذخیره کند، وارد کنید.
- برای آیا ورودی S3 شما یک فایل مانیفست است؟، انتخاب کنید خاموش.
- برای هدف، انتخاب کنید برچسب.
- برای استقرار خودکار، انتخاب کنید خاموش.
- بر اساس تنظیمات پیشرفته، برای نوع مشکل یادگیری ماشینی، انتخاب کنید طبقه بندی باینری.
- برای متریک عینی، انتخاب کنید AUC.
- برای نحوه اجرای آزمایش خود را انتخاب کنید، انتخاب کنید نه، یک پایلوت برای ایجاد یک دفترچه با تعاریف نامزد اجرا کنید.
- را انتخاب کنید ایجاد آزمایش.
برای اطلاعات بیشتر در مورد ایجاد یک آزمایش، مراجعه کنید یک آزمایش Amazon SageMaker Autopilot ایجاد کنیدممکن است حدود 15 دقیقه طول بکشد تا این مرحله اجرا شود. - پس از تکمیل، انتخاب کنید نوت بوک نسل نامزد را باز کنید، که یک نوت بوک جدید را در حالت فقط خواندنی باز می کند.
- را انتخاب کنید واردات نوت بوک تا نوت بوک قابل ویرایش باشد.
- برای تصویر، را انتخاب کنید علم اطلاعات.
- برای هسته، انتخاب کنید پایتون 3.
- را انتخاب کنید انتخاب کنید.
این نوت بوک تولید شده به صورت خودکار توضیحات مفصلی دارد و کنترل کاملی بر روی کار ساخت مدل واقعی برای دنبال کردن فراهم می کند. یک نسخه سفارشی از دفتر یادداشت، جایی که طبقه بندی کننده با استفاده از باندهای ماهواره لندست از سال 2013 آموزش دیده است، در مخزن کد زیر موجود است. notebooks/mangrove-2013.ipynb
.
چارچوب ساخت مدل از دو بخش تشکیل شده است: تبدیل ویژگی به عنوان بخشی از مرحله پردازش داده، و بهینه سازی فراپارامتر (HPO) به عنوان بخشی از مرحله انتخاب مدل. تمام مصنوعات لازم برای این وظایف در طی آزمایش Autopilot ایجاد و در آن ذخیره شد سرویس ذخیره سازی ساده آمازون (Amazon S3). اولین سلول نوت بوک آن مصنوعات را از آمازون S3 به محلی دانلود می کند آمازون SageMaker فایل سیستم برای بازرسی و هرگونه اصلاح لازم. دو پوشه وجود دارد: generated_module
و sagemaker_automl
، جایی که تمام ماژول ها و اسکریپت های پایتون لازم برای اجرای نوت بوک ذخیره می شود. مراحل مختلف تبدیل ویژگی مانند انتساب، مقیاسبندی و PCA به عنوان ذخیره میشوند generated_modules/candidate_data_processors/dpp*.py.
Autopilot سه مدل مختلف را بر اساس الگوریتمهای XGBoost، یادگیری خطی و پرسپترون چند لایه (MLP) ایجاد میکند. خط لوله نامزد شامل یکی از گزینه های تبدیل ویژگی است که به نام شناخته می شود data_transformer
و یک الگوریتم خط لوله یک فرهنگ لغت پایتون است و می تواند به صورت زیر تعریف شود:
در این مثال، خط لوله داده های آموزشی را مطابق با اسکریپت در تبدیل می کند generated_modules/candidate_data_processors/dpp5.py
و یک مدل XGBoost می سازد. اینجاست که Autopilot کنترل کاملی را برای دانشمند داده فراهم می کند، که می تواند مراحل تبدیل ویژگی و انتخاب مدل به طور خودکار تولید شده را انتخاب کند یا ترکیب خود را بسازد.
اکنون می توانید خط لوله را به یک استخر برای Autopilot اضافه کنید تا آزمایش را به صورت زیر اجرا کند:
این مرحله مهمی است که در آن شما می توانید تصمیم بگیرید که تنها زیر مجموعه ای از نامزدهای پیشنهادی Autopilot را بر اساس تخصص موضوعی حفظ کنید تا کل زمان اجرا را کاهش دهید. در حال حاضر، همه پیشنهادات Autopilot را که می توانید به صورت زیر فهرست کنید، نگه دارید:
نام نامزد | الگوریتم | ترانسفورماتور ویژگی |
dpp0-xgboost | xgboost | dpp0.py |
dpp1-xgboost | xgboost | dpp1.py |
dpp2-خطی-آموزنده | یادگیرنده خطی | dpp2.py |
dpp3-xgboost | xgboost | dpp3.py |
dpp4-xgboost | xgboost | dpp4.py |
dpp5-xgboost | xgboost | dpp5.py |
dpp6-mlp | سریال | dpp6.py |
آزمایش کامل Autopilot در دو بخش انجام می شود. ابتدا باید کارهای تبدیل داده را اجرا کنید:
این مرحله باید در حدود 30 دقیقه برای همه نامزدها تکمیل شود، اگر هیچ تغییر دیگری در آن ایجاد نکنید dpp*.py
فایل های.
مرحله بعدی ساخت بهترین مجموعه مدل ها با تنظیم فراپارامترها برای الگوریتم های مربوطه است. هایپرپارامترها معمولاً به دو بخش استاتیک و قابل تنظیم تقسیم می شوند. فراپارامترهای استاتیک در طول آزمایش برای همه نامزدهایی که الگوریتم یکسانی دارند بدون تغییر باقی می مانند. این فراپارامترها به عنوان یک فرهنگ لغت به آزمایش منتقل می شوند. اگر بهترین مدل XGBoost را با به حداکثر رساندن AUC از سه دور یک طرح اعتبارسنجی متقابل پنج برابری انتخاب کنید، دیکشنری مانند کد زیر است:
برای هایپرپارامترهای قابل تنظیم، باید فرهنگ لغت دیگری را با محدوده و نوع مقیاس بندی ارسال کنید:
مجموعه کامل هایپرپارامترها در موجود است mangrove-2013.ipynb
دفتر یادداشت.
برای ایجاد آزمایشی که در آن هر هفت نامزد را بتوان به طور موازی آزمایش کرد، یک تیونر HPO چند الگوریتمی ایجاد کنید:
معیارهای هدف به طور مستقل برای هر الگوریتم تعریف می شوند:
آزمایش تمام مقادیر ممکن فراپارامترها برای همه آزمایشها بیهوده است. شما می توانید یک استراتژی بیزی برای ایجاد یک تیونر HPO اتخاذ کنید:
در تنظیمات پیشفرض، Autopilot 250 کار را در تیونر انتخاب میکند تا بهترین مدل را انتخاب کند. برای این مورد، تنظیم کافی است max_jobs=50
برای صرفه جویی در زمان و منابع، بدون هیچ جریمه قابل توجهی از نظر انتخاب بهترین مجموعه هایپرپارامترها. در نهایت شغل HPO را به شرح زیر ارسال کنید:
این فرآیند در نمونههای ml.m80xlarge حدود 5.4 دقیقه طول میکشد. میتوانید با انتخاب، پیشرفت را در کنسول SageMaker کنترل کنید کارهای تنظیم فراپارامتر زیر آموزش در صفحه ناوبری
شما می توانید با انتخاب نام شغل در حال انجام، مجموعه ای از اطلاعات مفید از جمله عملکرد هر نامزد را تجسم کنید.
در نهایت، عملکرد مدل بهترین نامزدها را به صورت زیر مقایسه کنید:
نامزد | AUC | run_time (s) |
dpp6-mlp | 0.96008 | 2711.0 |
dpp4-xgboost | 0.95236 | 385.0 |
dpp3-xgboost | 0.95095 | 202.0 |
dpp4-xgboost | 0.95069 | 458.0 |
dpp3-xgboost | 0.95015 | 361.0 |
مدل با عملکرد برتر مبتنی بر MLP، در حالی که نسبت به مدلهای XGBoost با انتخابهای مختلف مراحل پردازش دادهها بسیار بهتر است، اما آموزش بسیار طولانیتر طول میکشد. شما می توانید جزئیات مهمی در مورد آموزش مدل MLP، از جمله ترکیبی از فراپارامترهای مورد استفاده، به شرح زیر پیدا کنید:
TrainingJobName | mangrove-2-notebook–211021-2016-012-500271c8 |
وضعیت شغلی آموزش | تکمیل شده |
FinalObjectiveValue | 0.96008 |
TrainingStartTime | 2021-10-21 20:22:55+00:00 |
TrainingEndTime | 2021-10-21 21:08:06+00:00 |
TrainingElapsedTimeSeconds | 2711 |
TrainingJobDefinitionName | dpp6-mlp |
dropout_prob | 0.415778 |
embedding_size_factor | 0.849226 |
لایه | 256 |
یادگیری_نرخ | 0.00013862 |
mini_batch size | 317 |
نوع شبکه | خوراکی |
وزن_پوسیدگی | 1.29323e-12 |
یک خط لوله استنتاج ایجاد کنید
برای تولید استنتاج بر روی دادههای جدید، باید یک خط لوله استنتاج در SageMaker ایجاد کنید تا بهترین مدلی را که میتوان بعداً برای تولید استنتاج فراخوانی کرد، میزبانی کرد. مدل خط لوله SageMaker به سه کانتینر به عنوان اجزای آن نیاز دارد: تبدیل داده، الگوریتم، و تبدیل برچسب معکوس (اگر لازم باشد پیشبینیهای عددی روی برچسبهای غیر عددی نگاشت شوند). برای اختصار، تنها بخشی از کد مورد نیاز در قطعه زیر نشان داده شده است. کد کامل در موجود است mangrove-2013.ipynb
دفتر یادداشت:
پس از ساخت کانتینرهای مدل، می توانید خط لوله را به صورت زیر ساخته و مستقر کنید:
تکمیل استقرار نقطه پایانی حدود 10 دقیقه طول می کشد.
با استفاده از نقطه پایانی از مجموعه داده آزمایشی استنباط کنید
پس از استقرار نقطه پایانی، میتوانید آن را با محمولهای از ویژگیهای B1-B7 فراخوانی کنید تا هر پیکسل در یک تصویر را به عنوان حرا (1) یا دیگر (0) طبقهبندی کنید:
جزئیات کامل در مورد پس پردازش پیش بینی های مدل برای ارزیابی و ترسیم در دسترس است notebooks/model_performance.ipynb
.
با استفاده از تبدیل دسته ای از مجموعه داده آزمایشی استنباط کنید
اکنون که بهترین مدل را با Autopilot ایجاد کرده اید، می توانیم از مدل برای استنتاج استفاده کنیم. برای استنتاج در مورد مجموعه داده های بزرگ، استفاده از تبدیل دسته ای کارآمدتر است. بیایید پیشبینیهایی را روی کل مجموعه داده (آموزش و آزمایش) ایجاد کنیم و نتایج را به ویژگیها اضافه کنیم، تا بتوانیم تجزیه و تحلیل بیشتری را انجام دهیم تا، برای مثال، پیشبینیشده در مقابل واقعی و توزیع ویژگیها در بین کلاسهای پیشبینیشده را بررسی کنیم.
ابتدا یک فایل مانیفست در آمازون S3 ایجاد می کنیم که به مکان های آموزش و داده های آزمایشی از مراحل قبلی پردازش داده اشاره می کند:
اکنون می توانیم یک کار تبدیل دسته ای ایجاد کنیم. از آنجا که قطار ورودی و مجموعه داده آزمایشی ما دارند label
به عنوان آخرین ستون، باید آن را در حین استنتاج رها کنیم. برای انجام آن، عبور می کنیم InputFilter
در DataProcessing
بحث و جدل. کد "$[:-2]"
نشان می دهد که آخرین ستون را رها کنید. سپس خروجی پیشبینیشده برای تجزیه و تحلیل بیشتر با دادههای منبع ملحق میشود.
در کد زیر، آرگومانهای مربوط به کار تبدیل دستهای را میسازیم و سپس به آن منتقل میکنیم create_transform_job
عملکرد:
می توانید وضعیت کار را در کنسول SageMaker نظارت کنید.
عملکرد مدل را تجسم کنید
اکنون می توانید عملکرد بهترین مدل را در مجموعه داده آزمایشی متشکل از مناطقی از هند، میانمار، کوبا و ویتنام به عنوان یک ماتریس سردرگمی تجسم کنید. این مدل دارای ارزش یادآوری بالایی برای پیکسل هایی است که حرا را نشان می دهند، اما دقت آن تنها حدود 75 درصد است. دقت پیکسلهای غیر حرا یا سایر پیکسلها 99 درصد با فراخوانی 85 درصد است. می توانید قطع احتمال پیش بینی های مدل را تنظیم کنید تا مقادیر مربوطه را بسته به مورد استفاده خاص تنظیم کنید.
شایان ذکر است که نتایج نسبت به مدل smileCart داخلی پیشرفت قابل توجهی دارد.
پیش بینی های مدل را تجسم کنید
در نهایت، مشاهده عملکرد مدل در مناطق خاص روی نقشه مفید است. در تصویر زیر منطقه حرا در مرز هند و بنگلادش با رنگ قرمز به تصویر کشیده شده است. نقاط نمونه برداری شده از وصله تصویر Landsat متعلق به مجموعه داده آزمایشی بر روی منطقه قرار می گیرند، جایی که هر نقطه یک پیکسل است که مدل تعیین می کند که نشان دهنده جنگل های حرا باشد. نقاط آبی به درستی توسط مدل طبقه بندی می شوند، در حالی که نقاط سیاه نشان دهنده اشتباهات مدل هستند.
تصویر زیر فقط نقاطی را نشان میدهد که مدل پیشبینی کرده بود که حرا را نشان نمیدهد، با همان طرح رنگی مثال قبلی. طرح کلی خاکستری بخشی از پچ لندست است که شامل هیچ گونه حرا نیست. همانطور که از تصویر مشخص است، این مدل در طبقهبندی نقاط روی آب اشتباه نمیکند، اما در تشخیص پیکسلهای نشاندهنده حرا از پیکسلهایی که نشاندهنده شاخ و برگهای معمولی هستند، با چالش مواجه میشود.
تصویر زیر عملکرد مدل را در منطقه حرا میانمار نشان می دهد.
در تصویر زیر، این مدل عملکرد بهتری در شناسایی پیکسل های حرا دارد.
پاک کردن
اگر نقطه پایانی استنتاج SageMaker در حال اجرا باقی بماند، همچنان متحمل هزینه خواهد شد. پس از اتمام کار، نقطه پایانی را به شرح زیر حذف کنید:
نتیجه
این سری از پست ها چارچوبی سرتاسری برای دانشمندان داده برای حل مسائل GIS فراهم می کند. قسمت 1 فرآیند ETL و روشی مناسب برای تعامل بصری با داده ها را نشان داد. قسمت 2 نحوه استفاده از Autopilot برای خودکار ساختن یک طبقهبندیکننده سفارشی حرا را نشان داد.
شما می توانید از این چارچوب برای کاوش مجموعه داده های ماهواره ای جدید حاوی مجموعه غنی تری از باندهای مفید برای طبقه بندی حرا استفاده کنید و با ترکیب دانش دامنه، مهندسی ویژگی را کشف کنید.
درباره نویسنده
آندری ایوانوویچ یک دانشجوی ورودی کارشناسی ارشد علوم کامپیوتر در دانشگاه تورنتو و فارغالتحصیل اخیر از برنامه علوم مهندسی در دانشگاه تورنتو، در رشته هوش ماشینی با مدرک رباتیک/مکاترونیک. او به بینایی کامپیوتر، یادگیری عمیق و روباتیک علاقه دارد. او کارهای ارائه شده در این پست را در طول دوره کارآموزی تابستانی خود در آمازون انجام داد.
دیوید دونگ دانشمند داده در خدمات وب آمازون است.
آرکاجیوتی میسرا دانشمند داده در Amazon LastMile Transportation است. او مشتاق به کارگیری تکنیکهای بینایی کامپیوتری برای حل مشکلاتی است که به زمین کمک میکند. او عاشق کار با سازمان های غیرانتفاعی است و یکی از اعضای موسس آن است ekipi.org.
- Coinsmart. بهترین صرافی بیت کوین و کریپتو اروپا.
- پلاتوبلاک چین. Web3 Metaverse Intelligence. دانش تقویت شده دسترسی رایگان.
- CryptoHawk. رادار آلت کوین امتحان رایگان.
- منبع: https://aws.amazon.com/blogs/machine-learning/part-2-identify-mangrove-forests-using-satellite-image-features-using-amazon-sagemaker-studio-and-amazon-sagemaker- خلبان خودکار/
- "
- 10
- 100
- a
- درباره ما
- مطابق
- فعالیت ها
- الگوریتم
- الگوریتم
- معرفی
- آمازون
- آمازون خدمات وب
- در میان
- تحلیل
- علم تجزیه و تحلیل
- تحلیل
- دیگر
- با استفاده از
- محدوده
- استدلال
- دور و بر
- خودکار بودن
- خودکار
- بطور خودکار
- در دسترس
- AWS
- زیرا
- بهترین
- سیاه پوست
- بدن
- مرز
- ساختن
- بنا
- می سازد
- ساخته شده در
- نامزد
- نامزد
- مورد
- به چالش
- انتخاب
- را انتخاب کنید
- کلاس ها
- طبقه بندی
- طبقه بندی
- رمز
- ستون
- ترکیب
- ترکیب
- کامل
- جزء
- اجزاء
- کامپیوتر
- علم کامپیوتر
- گیجی
- کنسول
- ظروف
- ادامه
- کنترل
- مناسب
- ایجاد
- ایجاد شده
- ایجاد
- ایجاد
- کوبا
- سفارشی
- داده ها
- پردازش داده ها
- دانشمند داده
- عمیق
- بستگی دارد
- گسترش
- مستقر
- گسترش
- دقیق
- جزئیات
- DID
- مختلف
- نمایش دادن
- توزیع
- نمی کند
- دامنه
- دانلود
- قطره
- در طی
- هر
- زمین
- اکوسیستم
- موثر
- موثر
- تلاش
- پشت سر هم
- نقطه پایانی
- مهندسی
- وارد
- ارزیابی
- مثال
- تجربه
- تخصص
- اکتشاف
- چهره ها
- روش
- ویژگی
- امکانات
- سرانجام
- نام خانوادگی
- به دنبال
- پیروی
- به دنبال آن است
- تاسیس
- چارچوب
- از جانب
- کامل
- تابع
- بیشتر
- تولید می کنند
- تولید
- نسل
- فارغ التحصیل
- خاکستری
- راهنمایی
- ارتفاع
- کمک می کند
- زیاد
- چگونه
- چگونه
- HTTPS
- انسان
- شناسایی
- شناسایی
- تصویر
- مهم
- بهبود
- شامل
- از جمله
- به طور مستقل
- هندوستان
- اطلاعات
- ورودی
- نمونه
- اطلاعات
- تعاملی
- علاقه مند
- IT
- کار
- شغل ها
- پیوست
- نگاه داشتن
- دانش
- شناخته شده
- برچسب
- برچسب ها
- بزرگ
- یادگیری
- لاین
- فهرست
- محلی
- محل
- مکان
- دستگاه
- فراگیری ماشین
- عمده
- ساخت
- نقشه
- کارشناسی ارشد
- ماتریس
- ماده
- عضو
- متریک
- اشتباهات
- ML
- مدل
- مدل
- مانیتور
- بیش
- چندگانه
- میانمار
- جهت یابی
- لازم
- بعد
- غیرانتفاعی
- دفتر یادداشت
- باز می شود
- بهینه سازی
- گزینه
- سازمان های
- دیگر
- خود
- بخش
- ویژه
- احساساتی
- وصله
- کارایی
- اجرای
- انجام
- خلبان
- نقطه
- نقطه
- استخر
- ممکن
- پست ها
- پیش بینی
- قبلی
- مشکل
- مشکلات
- روند
- در حال پردازش
- برنامه
- ارائه
- فراهم می کند
- دلایل
- اخیر
- كاهش دادن
- منطقه
- منظم
- ماندن
- مخزن
- نشان دادن
- نمایندگی
- درخواست
- ضروری
- نیاز
- محققان
- منابع
- نتایج
- رباتیک
- نقش
- دور
- دویدن
- در حال اجرا
- همان
- ماهواره ای
- ذخیره
- مقیاس گذاری
- طرح
- علم
- دانشمند
- دانشمندان
- انتخاب
- سلسله
- خدمات
- تنظیم
- محیط
- چند
- اشتراک گذاری
- نشان
- نشان داده شده
- امضاء
- قابل توجه
- ساده
- اندازه
- So
- جامد
- راه حل
- حل
- خاص
- ایستادن
- وضعیت
- ذخیره سازی
- opbevare
- استراتژی
- دانشجو
- استودیو
- موضوع
- تابستان
- سیستم
- وظایف
- تکنیک
- قوانین و مقررات
- آزمون
- La
- منبع
- جهان
- سه
- از طریق
- سراسر
- زمان
- بالا
- بالا 5
- تورنتو
- آموزش
- دگرگون کردن
- دگرگونی
- تحولات
- حمل و نقل
- زیر
- دانشگاه
- استفاده کنید
- معمولا
- اعتبار سنجی
- ارزش
- مختلف
- نسخه
- دید
- تجسم
- آب
- وب
- خدمات وب
- در حین
- WHO
- بدون
- مهاجرت کاری
- جهان
- با ارزش
- X
- شما