इस पेज पर, Earth Engine के साथ TensorFlow के इस्तेमाल के उदाहरण के तौर पर वर्कफ़्लो दिए गए हैं. ज़्यादा जानकारी के लिए, TensorFlow पेज देखें. ये उदाहरण, Earth Engine Python API और Colab नोटबुक में चल रहे TensorFlow का इस्तेमाल करके लिखे गए हैं.
लागत
डीडीएन की मदद से, कई क्लास का अनुमान लगाना
"डीप" न्यूरल नेटवर्क (डीएनएन), एक ऐसा आर्टिफ़िशियल न्यूरल नेटवर्क (एएनएन) होता है जिसमें एक या उससे ज़्यादा हिडन लेयर होती हैं. इस उदाहरण में, एक ही हिडन लेयर वाली एक बहुत ही आसान डीडीएन दिखाई गई है. DNN, स्पेक्ट्रल वैक्टर को इनपुट के तौर पर लेता है (यानी एक बार में एक पिक्सल). साथ ही, हर पिक्सल के लिए एक क्लास लेबल और क्लास की संभावनाओं को दिखाता है. यहां दी गई Colab नोटबुक में, डीएनएन बनाने, Earth Engine के डेटा से उसे ट्रेन करने, एक्सपोर्ट की गई इमेज के आधार पर अनुमान लगाने, और अनुमान को Earth Engine में इंपोर्ट करने का तरीका बताया गया है.
Earth Engine में अनुमान लगाने के लिए, होस्ट किया जा सकने वाला डीएनएन
ट्रेन किए गए मॉडल से सीधे Earth Engine (उदाहरण के लिए, कोड एडिटर में) में अनुमान पाने के लिए, आपको मॉडल को Google के एआई प्लैटफ़ॉर्म पर होस्ट करना होगा. इस गाइड में,
ट्रेन किए गए मॉडल को SavedModel
फ़ॉर्मैट में सेव करने, earthengine model prepare
कमांड की मदद से मॉडल को होस्ट करने के लिए तैयार करने, और ee.Model.fromAiPlatformPredictor
की मदद से Earth Engine में इंटरैक्टिव तरीके से अनुमान पाने का तरीका बताया गया है.
TensorFlow का इस्तेमाल करके लॉजिस्टिक रिग्रेशन
TensorFlow में, लॉजिस्टिक रिग्रेशन जैसे क्लासिकल मशीन लर्निंग के तरीकों को लागू करना आसान है. इस नोटबुक में, सालाना कंपोजिट से पहले और बाद के डेटा का इस्तेमाल करके, लॉजिस्टिक रिग्रेशन के आधार पर, वन कटाई का पता लगाने वाले डिटेक्टर के बारे में बताया गया है. ध्यान दें कि यह बहुत ही आसान मॉडल सिर्फ़ उदाहरण के मकसद से दिया गया है. बेहतर नतीजे पाने के लिए, कुछ छिपी हुई लेयर जोड़ें.
एफ़सीएन (फ़ुली-कनेक्टेड नेटवर्क) के साथ रिग्रेशन
"कॉन्वोल्यूशनल" न्यूरल नेटवर्क (सीएनएन) में एक या एक से ज़्यादा कॉन्वोल्यूशनल लेयर होती हैं. इनमें इनपुट, पिक्सल के आस-पास के एरिया होते हैं. इससे ऐसा नेटवर्क बनता है जो पूरी तरह से कनेक्ट नहीं होता, लेकिन जगह के पैटर्न की पहचान करने के लिए सही होता है. फ़ुल्ली कन्वोल्यूशनल न्यूरल नेटवर्क (एफ़सीएनएन) के आउटपुट में, फ़ुल्ली-कनेक्टेड लेयर शामिल नहीं होती. इसका मतलब है कि यह किसी ग्लोबल आउटपुट (यानी हर इमेज के लिए एक आउटपुट) को नहीं सीखता, बल्कि लोकलाइज़ किए गए आउटपुट (यानी हर पिक्सल के लिए) को सीखता है.
इस Colab नोटबुक में, UNET मॉडल का इस्तेमाल दिखाया गया है. यह एक एफ़सीएन मॉडल है, जिसे मेडिकल इमेज सेगमेंटेशन के लिए डेवलप किया गया है. इसका इस्तेमाल, 256x256 पिक्सल के आस-पास के हर पिक्सल में, [0,1] के बीच के लगातार आउटपुट का अनुमान लगाने के लिए किया जाता है. खास तौर पर, इस उदाहरण में, नेटवर्क को ट्रेन करने के लिए, डेटा के पैच एक्सपोर्ट करने का तरीका बताया गया है. साथ ही, टाइल की सीमा के आर्टफ़ैक्ट को हटाने के लिए, अनुमान लगाने के लिए इमेज पैच को ओवरटाइल करने का तरीका भी बताया गया है.
AI Platform पर ट्रेनिंग
ज़्यादा बड़े मॉडल (जैसे, एफ़सीएन उदाहरण) के लिए, मुफ़्त वर्चुअल मशीन की लाइफ़, लंबे समय तक चलने वाली ट्रेनिंग के लिए ज़रूरत के मुताबिक नहीं हो सकती. खास तौर पर, अगर आकलन के लिए इस्तेमाल किए गए डेटासेट पर, अनुमान से जुड़ी गड़बड़ी को कम नहीं किया जाता है, तो ट्रेनिंग के लिए ज़्यादा बार चलाने की ज़रूरत पड़ सकती है. Cloud में बड़ी ट्रेनिंग प्रोसेस करने के लिए, इस Colab notebook में अपने ट्रेनिंग कोड को पैकेज करने, ट्रेनिंग प्रोसेस शुरू करने, earthengine model prepare
कमांड की मदद से SavedModel
तैयार करने, और ee.Model.fromAiPlatformPredictor
की मदद से Earth Engine में इंटरैक्टिव तरीके से अनुमान पाने का तरीका बताया गया है.