หน้านี้มีเวิร์กโฟลว์ตัวอย่างเพื่อสาธิตการใช้ TensorFlow กับ Earth Engine ดูรายละเอียดเพิ่มเติมได้ที่หน้า TensorFlow ตัวอย่างเหล่านี้เขียนโดยใช้ Earth Engine Python API และ TensorFlow ที่ทำงานใน Colab Notebook
ค่าใช้จ่าย
การคาดการณ์แบบหลายคลาสด้วย DNN
เครือข่ายประสาท "ลึก" (DNN) คือเครือข่ายประสาทเทียม (ANN) ที่มีเลเยอร์ที่ซ่อนอยู่อย่างน้อย 1 เลเยอร์ ตัวอย่างนี้แสดง DNN ที่เรียบง่ายมากซึ่งมีเลเยอร์ที่ซ่อนอยู่เพียงเลเยอร์เดียว DNN จะรับเวกเตอร์สเปกตรัมเป็นอินพุต (เช่น ทีละพิกเซล) และแสดงผลป้ายกำกับคลาสเดียวและระดับความน่าจะเป็นของคลาสต่อพิกเซล สมุดบันทึก Colab ด้านล่างแสดงการสร้าง DNN, การฝึก DNN ด้วยข้อมูลจาก Earth Engine, การคาดการณ์เกี่ยวกับภาพถ่ายที่ส่งออก และการนำการคาดการณ์มายัง Earth Engine
DNN ที่โฮสต์ได้สำหรับการคาดการณ์ใน Earth Engine
หากต้องการรับการคาดการณ์จากโมเดลที่ฝึกแล้วใน Earth Engine โดยตรง (เช่น ในเครื่องมือแก้ไขโค้ด) คุณต้องโฮสต์โมเดลใน Google AI Platform คู่มือนี้จะแสดงวิธีบันทึกโมเดลที่ผ่านการฝึกในรูปแบบ SavedModel
เตรียมโมเดลสำหรับการโฮสต์ด้วยคําสั่ง earthengine model prepare
และรับการคาดการณ์ใน Earth Engine แบบอินเทอร์แอกทีฟด้วย ee.Model.fromAiPlatformPredictor
การถดถอยแบบโลจิสติกตามแนวทางของ TensorFlow
วิธีการแมชชีนเลิร์นนิงแบบคลาสสิก เช่น การถดถอยแบบโลจิสติก เหมาะที่จะนำมาใช้ใน TensorFlow สมุดบันทึกนี้แสดงเครื่องตรวจจับการตัดไม้ทำลายป่าที่อิงตามการถดถอยเชิงโลจิสติกส์จากภาพรวมก่อนและหลังประจำปี โปรดทราบว่าโมเดลที่เรียบง่ายมากนี้เป็นเพียงการสาธิตเท่านั้น ให้เพิ่มเลเยอร์ที่ซ่อนอยู่ 2-3 เลเยอร์เพื่อให้แม่นยำยิ่งขึ้น
การถดถอยด้วย FCNN
โครงข่ายประสาทเทียม "Convolutive" (CNN) มีเลเยอร์ Convolutive อย่างน้อย 1 เลเยอร์ ซึ่งอินพุตคือบริเวณใกล้เคียงของพิกเซล ส่งผลให้เป็นเครือข่ายที่เชื่อมต่อไม่สมบูรณ์ แต่เหมาะสําหรับการระบุรูปแบบเชิงพื้นที่ เครือข่ายประสาทแบบ Convolution ทั้งหมด (FCNN) ไม่มีเลเยอร์แบบ Fully Connected เป็นเอาต์พุต ซึ่งหมายความว่าโมเดลไม่ได้เรียนรู้เอาต์พุตส่วนกลาง (เช่น เอาต์พุตเดียวต่อรูปภาพ) แต่เรียนรู้เอาต์พุตที่แปลแล้ว (เช่น ต่อพิกเซล)
สมุดบันทึก Colab นี้แสดงการใช้โมเดล UNET ซึ่งเป็น FCNN ที่พัฒนาขึ้นเพื่อการแบ่งกลุ่มรูปภาพทางการแพทย์ เพื่อทำนายเอาต์พุต [0,1] แบบต่อเนื่องในแต่ละพิกเซลจากพิกเซลใกล้เคียงขนาด 256x256 กล่าวโดยละเอียดคือ ตัวอย่างนี้แสดงวิธีส่งออกแพตช์ข้อมูลเพื่อฝึกเครือข่าย และวิธีวางซ้อนแพตช์รูปภาพเพื่อใช้อนุมาน เพื่อกำจัดข้อบกพร่องที่เกิดจากขอบเขตของชิ้นส่วน
การฝึกอบรมใน AI Platform
สำหรับโมเดลขนาดใหญ่ (เช่น ตัวอย่าง FCNN) อายุการใช้งานของเครื่องเสมือนแบบไม่มีค่าใช้จ่ายที่ใช้เรียกใช้สมุดบันทึก Colab อาจไม่เพียงพอสำหรับงานการฝึกระยะยาว กล่าวโดยละเอียดคือ หากข้อผิดพลาดในการคาดการณ์ที่คาดไว้ไม่ได้ลดลงในชุดข้อมูลการประเมิน คุณอาจต้องเพิ่มจำนวนรอบการฝึก สําหรับการทํางานการฝึกอบรมขนาดใหญ่ในระบบคลาวด์ สําเนาสมุดบันทึก Colab นี้จะแสดงวิธีจัดแพ็กเกจโค้ดการฝึกอบรม เริ่มงานการฝึกอบรม เตรียม SavedModel
ด้วยคําสั่ง earthengine model prepare
และรับการคาดการณ์ใน Earth Engine แบบอินเทอร์แอกทีฟด้วย ee.Model.fromAiPlatformPredictor