इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

TFX उपयोगकर्ता गाइड

परिचय

TFX एक Google-प्रोडक्शन-स्केल मशीन लर्निंग (ML) प्लेटफॉर्म है, जो TensorFlow पर आधारित है। यह आपके मशीन लर्निंग सिस्टम को परिभाषित, लॉन्च और मॉनिटर करने के लिए आवश्यक सामान्य घटकों को एकीकृत करने के लिए एक कॉन्फ़िगरेशन फ्रेमवर्क और साझा लाइब्रेरी प्रदान करता है।

स्थापना

अजगर PyPI

pip install tfx

TFX के बारे में

टीएफएक्स उत्पादन वातावरण में एमएल वर्कफ़्लोज़ के निर्माण और प्रबंधन के लिए एक मंच है। TFX निम्नलिखित प्रदान करता है:

  • एमएल पाइपलाइनों के निर्माण के लिए एक टूलकिट। TFX पाइपलाइन आपको अपने ML वर्कफ़्लो को कई प्लेटफार्मों पर ऑर्केस्ट्रेट करने देती है, जैसे: Apache Airflow, Apache Beam और Kubeflow पाइपलाइन।

    TFX पाइपलाइनों के बारे में अधिक जानें

  • मानक घटकों का एक सेट जिसे आप पाइपलाइन के एक भाग के रूप में, या अपने एमएल प्रशिक्षण स्क्रिप्ट के एक भाग के रूप में उपयोग कर सकते हैं। टीएफएक्स मानक घटक आपको एक एमएल प्रक्रिया आसानी से शुरू करने में मदद करने के लिए सिद्ध कार्यक्षमता प्रदान करते हैं।

    TFX मानक घटकों के बारे में अधिक जानें

  • पुस्तकालय जो कई मानक घटकों के लिए आधार कार्यक्षमता प्रदान करते हैं। आप इस कार्यक्षमता को अपने स्वयं के कस्टम घटकों में जोड़ने के लिए TFX पुस्तकालयों का उपयोग कर सकते हैं, या उन्हें अलग से उपयोग कर सकते हैं।

    TFX पुस्तकालयों के बारे में अधिक जानें

TFX एक Google-प्रोडक्शन-स्केल मशीन लर्निंग टूलकिट है, जो TensorFlow पर आधारित है। यह आपके मशीन लर्निंग सिस्टम को परिभाषित, लॉन्च और मॉनिटर करने के लिए आवश्यक सामान्य घटकों को एकीकृत करने के लिए एक कॉन्फ़िगरेशन फ्रेमवर्क और साझा लाइब्रेरी प्रदान करता है।

TFX मानक घटक

टीएफएक्स पाइपलाइन घटकों का एक अनुक्रम है जो एक एमएल पाइपलाइन को लागू करता है जो विशेष रूप से स्केलेबल, उच्च-प्रदर्शन मशीन सीखने के कार्यों के लिए डिज़ाइन किया गया है। जिसमें मॉडलिंग, प्रशिक्षण, सेवा प्रदान करना, और ऑनलाइन, देशी मोबाइल और जावास्क्रिप्ट लक्ष्य पर तैनाती को प्रबंधित करना शामिल है।

TFX पाइपलाइन में आमतौर पर निम्नलिखित घटक शामिल होते हैं:

  • ExampleGen एक पाइपलाइन का प्रारंभिक इनपुट घटक है जो इनपुट डेटासेट्स को अंतर्ग्रहण और वैकल्पिक रूप से विभाजित करता है।

  • StatisticsGen डाटासेट के लिए आँकड़े गणना करता है।

  • SchemaGen आँकड़ों की जाँच करता है और एक डेटा स्कीमा बनाता है।

  • ExampleValidator डेटासेट में विसंगतियों और अनुपलब्ध मानों की तलाश करता है।

  • डेटासेट पर ट्रांसफॉर्मेशन इंजीनियरिंग की सुविधा देता है।

  • ट्रेनर मॉडल को ट्रेनिंग देता है।

  • ट्यूनर मॉडल के हाइपरपैरमीटर को ट्यून करता है।

  • मूल्यांकनकर्ता प्रशिक्षण परिणामों का गहन विश्लेषण करता है और आपको अपने निर्यात किए गए मॉडल को मान्य करने में मदद करता है, यह सुनिश्चित करता है कि वे उत्पादन के लिए धकेलने के लिए "अच्छे पर्याप्त" हैं।

  • InfraValidator चेक करता है कि मॉडल वास्तव में बुनियादी ढांचे से सेवा योग्य है, और खराब मॉडल को धकेलने से रोकता है।

  • पुशर एक सेवारत बुनियादी ढाँचे पर मॉडल प्रस्तुत करता है।

  • BulkInferrer एक मॉडल पर बैच प्रोसेसिंग करता है जिसमें अनलिमिटेड इनविज़न रिक्वेस्ट होती है।

यह आरेख इन घटकों के बीच डेटा के प्रवाह को दिखाता है:

घटक प्रवाह

TFX लाइब्रेरी

TFX में पुस्तकालयों और पाइपलाइन घटक दोनों शामिल हैं। यह आरेख TFX पुस्तकालयों और पाइपलाइन घटकों के बीच संबंधों को दिखाता है:

पुस्तकालय और घटक

टीएफएक्स कई पायथन पैकेज प्रदान करता है जो लाइब्रेरी हैं जो पाइपलाइन घटकों को बनाने के लिए उपयोग किए जाते हैं। अपनी पाइपलाइनों के घटकों को बनाने के लिए आप इन पुस्तकालयों का उपयोग करेंगे ताकि आपका कोड आपके पाइपलाइन के अनूठे पहलुओं पर ध्यान केंद्रित कर सके।

TFX पुस्तकालयों में शामिल हैं:

  • TensorFlow Data Validation (TFDV) मशीन लर्निंग डेटा के विश्लेषण और सत्यापन के लिए एक पुस्तकालय है। यह अत्यधिक स्केलेबल और TensorFlow और TFX के साथ अच्छी तरह से काम करने के लिए डिज़ाइन किया गया है। TFDV में शामिल हैं:

    • प्रशिक्षण और परीक्षण डेटा के सारांश आंकड़ों की स्केलेबल गणना।
    • डेटा वितरण और आंकड़ों के लिए एक दर्शक के साथ एकीकरण, साथ ही डेटासेट्स (पहलुओं) के जोड़े की तुलनात्मक रूप से स्पष्ट है।

    • आवश्यक मूल्यों, श्रेणियों और शब्दसंग्रह जैसे डेटा के बारे में अपेक्षाओं का वर्णन करने के लिए स्वचालित डेटा-स्कीमा पीढ़ी।

    • स्कीमा देखने में मदद करने के लिए एक स्कीमा दर्शक।

    • विसंगतियों का पता लगाने के लिए विसंगतियों का पता लगाना, जैसे कि लापता सुविधाएँ, कुछ मूल्यों का नामकरण, या गलत सुविधा प्रकार।

    • एक विसंगति दर्शक ताकि आप देख सकें कि किन विशेषताओं में विसंगतियाँ हैं और उन्हें ठीक करने के लिए और अधिक सीखें।

  • TensorFlow Transform (TFT) TensorFlow के साथ डेटा प्रीप्रोसेसिंग के लिए एक लाइब्रेरी है। TensorFlow Transform डेटा के लिए उपयोगी है जिसके लिए एक पूर्ण-पास की आवश्यकता होती है, जैसे:

    • औसत और मानक विचलन द्वारा एक इनपुट मूल्य को सामान्य करें।
    • सभी इनपुट मूल्यों पर एक शब्दावली उत्पन्न करके पूर्णांक में स्ट्रिंग बदलें।
    • मनाया डेटा वितरण के आधार पर उन्हें बाल्टी में असाइन करके पूर्णांक में फ़्लोट में कनवर्ट करें।
  • TensorFlow का उपयोग TFX के साथ प्रशिक्षण मॉडल के लिए किया जाता है। यह प्रशिक्षण डेटा और मॉडलिंग कोड को सम्मिलित करता है और एक SavedModel परिणाम बनाता है। यह इनपुट डेटा प्रीप्रोसेसिंग के लिए TensorFlow Transform द्वारा बनाई गई एक फीचर इंजीनियरिंग पाइपलाइन को भी एकीकृत करता है।

    KerasTuner को मॉडल के लिए हाइपरपैरमीटर ट्यूनिंग के लिए उपयोग किया जाता है।

  • TensorFlow मॉडल विश्लेषण (TFMA) TensorFlow मॉडल के मूल्यांकन के लिए एक पुस्तकालय है। इसका उपयोग TensorFlow के साथ एक EvalSavedModel बनाने के लिए किया जाता है, जो इसके विश्लेषण का आधार बन जाता है। यह उपयोगकर्ताओं को अपने ट्रेनर में परिभाषित समान मैट्रिक्स का उपयोग करके वितरित तरीके से बड़ी मात्रा में डेटा पर अपने मॉडल का मूल्यांकन करने की अनुमति देता है। इन मैट्रिक्स की गणना डेटा के विभिन्न स्लाइस पर की जा सकती है और जुपिटर नोटबुक में कल्पना की जा सकती है।

  • TensorFlow मेटाडाटा (TFMD) मेटाडेटा के लिए मानक प्रतिनिधित्व प्रदान करता है जो TensorFlow के साथ प्रशिक्षण मशीन सीखने के मॉडल के लिए उपयोगी होते हैं। मेटाडेटा हाथ से या स्वचालित रूप से इनपुट डेटा विश्लेषण के दौरान उत्पादित किया जा सकता है, और डेटा सत्यापन, अन्वेषण और परिवर्तन के लिए उपभोग किया जा सकता है। मेटाडेटा क्रमांकन प्रारूप में शामिल हैं:

    • सारणीबद्ध डेटा (उदाहरण के लिए, tf.Examples) का वर्णन करने वाला एक स्कीमा।
    • ऐसे डेटासेट पर सारांश आंकड़ों का संग्रह।
  • एमएल मेटाडेटा (एमएलएमडी) एमएल डेवलपर और डेटा वैज्ञानिक वर्कफ़्लोज़ से जुड़े मेटाडेटा को रिकॉर्ड करने और पुनर्प्राप्त करने के लिए एक पुस्तकालय है। अक्सर मेटाडेटा TFMD अभ्यावेदन का उपयोग करता है। MLMD SQL-Lite , MySQL और अन्य समान डेटा स्टोर का उपयोग करके दृढ़ता का प्रबंधन करता है।

सहायक प्रौद्योगिकी

अपेक्षित

  • अपाचे बीम एक खुला स्रोत है, जो बैच को परिभाषित करने और डेटा-समानांतर प्रसंस्करण पाइपलाइनों को स्ट्रीमिंग करने के लिए एकीकृत मॉडल है। टीएफएक्स डेटा-समानांतर पाइपलाइनों को लागू करने के लिए अपाचे बीम का उपयोग करता है। पाइप लाइन को तब बीम के समर्थित वितरित प्रसंस्करण बैक-एंड में से एक द्वारा निष्पादित किया जाता है, जिसमें अपाचे फ्लिंक, अपाचे स्पार्क, Google क्लाउड डेटाफ़्लो और अन्य शामिल हैं।

ऐच्छिक

Apache Airflow और Kubeflow जैसे ऑर्केस्ट्रेटर एक ML पाइपलाइन को कॉन्फ़िगर करना, संचालन, निगरानी करना और बनाए रखना आसान बनाते हैं।

  • अपाचे एयरफ्लो प्रोग्रामेटिकली ऑथर, शेड्यूल और मॉनिटर वर्कफ़्लोज़ का एक प्लेटफ़ॉर्म है। टीएफएक्स एयरफ्लो का उपयोग लेखक वर्कफ़्लोज़ को कार्यों के निर्देशित एसाइक्लिक ग्राफ (डीएजी) के रूप में करता है। Airflow अनुसूचक निर्दिष्ट निर्भरता का पालन करते हुए श्रमिकों की एक सरणी पर कार्यों को निष्पादित करता है। रिच कमांड लाइन उपयोगिताओं DAGs एक तस्वीर पर जटिल सर्जरी कर रही है। समृद्ध उपयोगकर्ता इंटरफ़ेस, उत्पादन में चल रही पाइपलाइनों की कल्पना करना, प्रगति की निगरानी करना और ज़रूरत पड़ने पर समस्याओं का निवारण करना आसान बनाता है। जब वर्कफ़्लोज़ को कोड के रूप में परिभाषित किया जाता है, तो वे अधिक रखरखाव योग्य, संस्करण, परीक्षण योग्य और सहयोगी बन जाते हैं।

  • क्यूबफ्लो कुबेरनेट्स पर मशीन लर्निंग (एमएल) वर्कफ़्लो की तैनाती को सरल, पोर्टेबल और स्केलेबल बनाने के लिए समर्पित है। क्यूबफ़्लो का लक्ष्य अन्य सेवाओं को फिर से बनाना नहीं है, बल्कि विभिन्न इन्फ्रास्ट्रक्चर के लिए एमएल के लिए सबसे अच्छी नस्ल के ओपन-सोर्स सिस्टम को तैनात करने का एक सीधा तरीका प्रदान करना है। Kubeflow पाइपलाइन प्रयोगों और नोटबुक आधारित अनुभवों के साथ एकीकृत, Kubeflow पर प्रतिलिपि प्रस्तुत करने योग्य वर्कफ़्लोज़ की संरचना और निष्पादन को सक्षम करता है। कुबेरनेट पर क्यूबफ़्लो पाइपलाइन सेवाओं में उपयोगकर्ताओं को बड़े पैमाने पर जटिल एमएल पाइपलाइनों को विकसित करने, चलाने और प्रबंधित करने में मदद करने के लिए होस्टेड मेटाडेटा स्टोर, कंटेनर आधारित ऑर्केस्ट्रेशन इंजन, नोटबुक सर्वर और यूआई शामिल हैं। Kubeflow पाइपलाइनों SDK घटकों और प्रोग्राम की रचना को साझा करने की अनुमति देता है।

पोर्टेबिलिटी और इंटरऑपरेबिलिटी

TFX को अपाचे एयरफ्लो , अपाचे बीम और क्यूबफ्लो सहित कई वातावरणों और ऑर्केस्ट्रेशन फ्रेमवर्क के लिए पोर्टेबल बनाया गया है। यह विभिन्न कंप्यूटिंग प्लेटफार्मों के लिए पोर्टेबल है, जिसमें ऑन-प्रिमाइसेस और क्लाउड प्लेटफ़ॉर्म जैसे Google क्लाउड प्लेटफ़ॉर्म (GCP) शामिल हैं । विशेष रूप से, TFX सर्वर के साथ प्रबंधित GCP सेवाओं, जैसे प्रशिक्षण और भविष्यवाणी के लिए क्लाउड AI प्लेटफ़ॉर्म , और ML जीवनचक्र के कई अन्य पहलुओं के लिए वितरित डेटा प्रोसेसिंग के लिए क्लाउड डेटाफ़्लो के रूप में काम करता है।

मॉडल बनाम सेव्डमॉडल

नमूना

एक मॉडल प्रशिक्षण प्रक्रिया का आउटपुट है। यह वजन का क्रमबद्ध रिकॉर्ड है जो प्रशिक्षण प्रक्रिया के दौरान सीखा गया है। इन वज़न को बाद में नए इनपुट उदाहरणों के लिए भविष्यवाणियों की गणना करने के लिए इस्तेमाल किया जा सकता है। TFX और TensorFlow के लिए, 'मॉडल' से तात्पर्य उन चौकियों से है जो उस बिंदु तक सीखी गई वज़न वाली होती हैं।

ध्यान दें कि 'मॉडल' भी TensorFlow अभिकलन ग्राफ (यानी पायथन फ़ाइल) की परिभाषा को संदर्भित कर सकता है जो यह बताता है कि एक भविष्यवाणी कैसे गणना की जाएगी। संदर्भ के आधार पर दो इंद्रियों का परस्पर उपयोग किया जा सकता है।

SavedModel

  • एक SavedModel क्या है : एक सार्वभौमिक, भाषा-तटस्थ, उपदेशात्मक, एक TensorFlow मॉडल का पुनर्प्राप्त करने योग्य क्रमांकन।
  • यह महत्वपूर्ण क्यों है : यह उच्च-स्तरीय प्रणालियों को एक अमूर्तता का उपयोग करके TensorFlow मॉडल बनाने, बदलने और उपभोग करने में सक्षम बनाता है।

SavedModel उत्पादन में एक TensorFlow मॉडल की सेवा करने के लिए या देशी मोबाइल या जावास्क्रिप्ट एप्लिकेशन के लिए एक प्रशिक्षित मॉडल निर्यात करने के लिए अनुशंसित क्रमांकन प्रारूप है। उदाहरण के लिए, पूर्वानुमान बनाने के लिए एक मॉडल को REST सेवा में बदलने के लिए, आप मॉडल को SavedModel के रूप में क्रमबद्ध कर सकते हैं और TensorFlow Serving का उपयोग करके इसकी सेवा कर सकते हैं। अधिक जानकारी के लिए एक TensorFlow मॉडल की सेवा देखें।

योजना

कुछ TFX घटक आपके इनपुट डेटा के विवरण का उपयोग करते हैं जिन्हें स्कीमा कहा जाता है। स्कीमा, स्कीमा.प्रोटो का एक उदाहरण है। स्कीमा एक प्रकार के प्रोटोकॉल बफर हैं , जिन्हें आमतौर पर "प्रोटोबॉफ़" के रूप में जाना जाता है। स्कीमा फीचर मानों के लिए डेटा प्रकार निर्दिष्ट कर सकती है, चाहे एक विशेषता को सभी उदाहरणों में मौजूद होना चाहिए, मूल्य सीमाएं, और अन्य गुण। TensorFlow Data Validation (TFDV) का उपयोग करने के लाभों में से एक यह है कि यह स्वचालित रूप से प्रशिक्षण डेटा से इनफ़र्ट प्रकार, श्रेणियों और श्रेणियों द्वारा एक स्कीमा उत्पन्न करेगा।

यहाँ एक स्कीमा प्रोटोबुफ़ का अंश दिया गया है:

...
feature {
  name: "age"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
feature {
  name: "capital-gain"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
...

निम्न घटक स्कीमा का उपयोग करते हैं:

  • TensorFlow Data Validation
  • TensorFlow रूपांतरण

एक ठेठ TFX पाइपलाइन TensorFlow Data Validation में एक स्कीमा उत्पन्न करता है, जिसका उपभोग अन्य घटकों द्वारा किया जाता है।

TFX के साथ विकसित करना

TFX, आपके स्थानीय मशीन पर अनुसंधान, प्रयोग और विकास से लेकर, तैनाती के माध्यम से, मशीन लर्निंग प्रोजेक्ट के हर चरण के लिए एक शक्तिशाली मंच प्रदान करता है। कोड दोहराव से बचने और प्रशिक्षण / सेवारत तिरछा करने की क्षमता को समाप्त करने के लिए, मॉडल मॉडल प्रशिक्षण और प्रशिक्षित मॉडल दोनों की तैनाती के लिए अपनी TFX पाइपलाइन को लागू करने के लिए दृढ़ता से अनुशंसा की जाती है, और ट्रांसफ़ॉर्म घटकों का उपयोग करें जो प्रशिक्षण और अनुमान दोनों के लिए TensorFlow Transform पुस्तकालय का लाभ उठाते हैं। ऐसा करने से आप एक ही प्रीप्रोसेसिंग और विश्लेषण कोड का उपयोग लगातार करेंगे, और प्रशिक्षण के लिए उपयोग किए जाने वाले डेटा और उत्पादन में अपने प्रशिक्षित मॉडल को खिलाए गए डेटा के बीच के अंतर से बचें, साथ ही साथ उस कोड को एक बार लिखने से लाभ होगा।

डेटा अन्वेषण, विज़ुअलाइज़ेशन, और सफाई

डेटा अन्वेषण, विज़ुअलाइज़ेशन, और सफाई

TFX पाइपलाइन आम तौर पर एक ExampleGen घटक से शुरू होती है, जो इनपुट डेटा को स्वीकार करता है और इसे tf.Examples के रूप में प्रारूपित करता है। अक्सर यह डेटा प्रशिक्षण और मूल्यांकन डेटासेट में विभाजित होने के बाद किया जाता है ताकि वास्तव में उदाहरण के दो घटक हो जाएं, प्रशिक्षण और मूल्यांकन के लिए एक-एक। यह आमतौर पर एक सांख्यिकीगैन घटक और एक स्कीमागेन घटक द्वारा पीछा किया जाता है, जो आपके डेटा की जांच करेगा और एक डेटा स्कीमा और आंकड़ों का अनुमान लगाएगा । स्कीमा और आँकड़ों का सेवन एक उदाहरणवेद्य घटक द्वारा किया जाएगा, जो आपके डेटा में विसंगतियों, लापता मूल्यों और गलत डेटा प्रकारों के लिए दिखेगा। ये सभी घटक TensorFlow Data Validation Library की क्षमताओं का लाभ उठाते हैं।

प्रारंभिक खोज, दृश्य और अपने डेटासेट की सफाई करते समय TensorFlow Data Validation (TFDV) एक मूल्यवान उपकरण है। टीएफडीवी आपके डेटा की जांच करता है और डेटा प्रकारों, श्रेणियों और श्रेणियों को संक्रमित करता है, और फिर स्वचालित रूप से विसंगतियों और लापता मूल्यों की पहचान करने में मदद करता है। यह विज़ुअलाइज़ेशन टूल भी प्रदान करता है जो आपके डेटासेट की जांच और समझने में आपकी मदद कर सकता है। आपकी पाइप लाइन पूरी होने के बाद आप एमएलएमडी से मेटाडेटा पढ़ सकते हैं और अपने डेटा का विश्लेषण करने के लिए जुपाइटर नोटबुक में टीएफडीवी के विज़ुअलाइज़ेशन टूल का उपयोग कर सकते हैं।

अपने प्रारंभिक मॉडल प्रशिक्षण और परिनियोजन के बाद, TFDV का उपयोग आपके तैनात किए गए मॉडल के अनुमान अनुरोधों से नए डेटा की निगरानी करने और विसंगतियों और / या बहाव के लिए किया जा सकता है। यह विशेष रूप से टाइम सीरीज़ डेटा के लिए उपयोगी है जो समय के साथ-साथ प्रवृत्ति या मौसमी के परिणामस्वरूप बदलता है, और यह सूचित करने में मदद कर सकता है कि कब डेटा समस्याएँ हैं या जब मॉडल को नए डेटा पर वापस लेने की आवश्यकता है।

डेटा विज़ुअलाइज़ेशन

अपने पाइपलाइन के अनुभाग के माध्यम से अपने डेटा का पहला रन पूरा करने के बाद आप TFDV (आम तौर पर स्टेटिस्टिक्सजेन, स्कीमाजेन, और ExampleValidator) का उपयोग करते हैं, आप परिणाम को एक Jupyter स्टाइल नोटबुक में देख सकते हैं। अतिरिक्त रन के लिए आप इन परिणामों की तुलना कर सकते हैं जब तक आप समायोजन करते हैं, जब तक कि आपका डेटा आपके मॉडल और एप्लिकेशन के लिए इष्टतम न हो।

आप इन घटकों के निष्पादन के परिणामों का पता लगाने के लिए पहले एमएल मेटाडेटा (MLMD) को क्वेरी करेंगे, और फिर अपनी नोटबुक में विज़ुअलाइज़ेशन बनाने के लिए TFDV में विज़ुअलाइज़ेशन समर्थन API का उपयोग करेंगे। इसमें tfdv.load_statistics () और tfdv.visualize_statistics () शामिल हैं इस विज़ुअलाइज़ेशन का उपयोग करके आप अपने डेटासेट की विशेषताओं को बेहतर ढंग से समझ सकते हैं, और यदि आवश्यक हो तो संशोधित कर सकते हैं।

विकासशील और प्रशिक्षण मॉडल

फ़ीचर इंजीनियरिंग

एक विशिष्ट TFX पाइपलाइन में एक ट्रांसफ़ॉर्म घटक शामिल होगा, जो TensorFlow Transform (TFT) लाइब्रेरी की क्षमताओं का लाभ उठाकर फ़ीचर इंजीनियरिंग का प्रदर्शन करेगा। एक ट्रांस्फ़ॉर्म घटक स्कीमा घटक द्वारा बनाए गए स्कीमा का उपभोग करता है, और आपके मॉडल को प्रशिक्षित करने के लिए उपयोग की जाने वाली सुविधाओं को बनाने, संयोजित करने और बदलने के लिए डेटा परिवर्तन लागू करता है । अनुपलब्ध मानों की सफाई और प्रकारों का रूपांतरण भी ट्रांसफ़ॉर्म घटक में किया जाना चाहिए, अगर कभी कोई संभावना है कि ये अनुमानों के अनुरोध के लिए भेजे गए डेटा में भी मौजूद होंगे। TFX में प्रशिक्षण के लिए TensorFlow कोड डिजाइन करते समय कुछ महत्वपूर्ण विचार हैं

मॉडलिंग और प्रशिक्षण

एक ट्रांसफॉर्म घटक का परिणाम एक SavedModel है जिसे आयात किया जाएगा और ट्रेनर घटक के दौरान TensorFlow में आपके मॉडलिंग कोड में उपयोग किया जाएगा। इस SavedModel में सभी डेटा इंजीनियरिंग ट्रांसफ़ॉर्मेशन शामिल हैं जो ट्रांसफ़ॉर्म घटक में बनाए गए थे, ताकि प्रशिक्षण और इंट्रेंस के दौरान समान कोड का उपयोग करके समान ट्रांसफ़ॉर्म किए जा सकें। ट्रांस्फ़ॉर्म घटक से SavedModel सहित मॉडलिंग कोड का उपयोग करके, आप अपने प्रशिक्षण और मूल्यांकन डेटा का उपभोग कर सकते हैं और अपने मॉडल को प्रशिक्षित कर सकते हैं।

अपने मॉडलिंग कोड के अंतिम भाग के दौरान आपको अपने मॉडल को सेव्डमॉडल और एवलस्वामॉडल दोनों के रूप में सहेजना चाहिए। एक EvalSavedModel के रूप में सहेजना आपको अपने ट्रेनर घटक में TensorFlow Model Analysis (TFMA) लाइब्रेरी को आयात और लागू करने की आवश्यकता होगी।

import tensorflow_model_analysis as tfma
...

tfma.export.export_eval_savedmodel(
        estimator=estimator,
        export_dir_base=eval_model_dir,
        eval_input_receiver_fn=receiver_fn)

मॉडल के लिए हाइपरपरमेटर्स (जैसे, परतों की संख्या) को ट्यून करने के लिए ट्रेनर से पहले एक वैकल्पिक ट्यूनर घटक जोड़ा जा सकता है। दिए गए मॉडल और हाइपरपैरमीटर खोज स्थान के साथ, ट्यूनिंग एल्गोरिथ्म उद्देश्य के आधार पर सबसे अच्छा हाइपरपैरेटर्स पाएंगे।

विश्लेषण और मॉडल प्रदर्शन को समझना

मॉडल विश्लेषण

प्रारंभिक मॉडल विकास और प्रशिक्षण के बाद विश्लेषण करना और वास्तव में अपने मॉडल के प्रदर्शन को समझना महत्वपूर्ण है। एक ठेठ TFX पाइपलाइन एक शामिल होंगे मूल्यांकनकर्ता घटक है, जो की क्षमताओं का लाभ उठाता है TensorFlow मॉडल विश्लेषण (TFMA) पुस्तकालय है, जो विकास के इस चरण के लिए एक शक्ति टूलसेट प्रदान करता है। एक मूल्यांकनकर्ता घटक उस EvalSavedModel का उपभोग करता है जिसे आपने ऊपर निर्यात किया था, और आपको SliceSpecs की एक सूची निर्दिष्ट करने की अनुमति देता है SliceSpecs उपयोग आप अपने मॉडल के प्रदर्शन का विश्लेषण और विश्लेषण करते समय कर सकते हैं। प्रत्येक स्लाइसस्पीक आपके प्रशिक्षण डेटा के एक स्लाइस को परिभाषित करता है जिसे आप जांचना चाहते हैं, जैसे कि श्रेणीगत विशेषताओं के लिए विशेष श्रेणियां, या संख्यात्मक विशेषताओं के लिए विशेष श्रेणियां।

उदाहरण के लिए, यह आपके ग्राहकों के विभिन्न खंडों के लिए आपके मॉडल के प्रदर्शन को समझने की कोशिश करने के लिए महत्वपूर्ण होगा, जो कि वार्षिक खरीद, भौगोलिक डेटा, आयु समूह, या लिंग द्वारा खंडित किया जा सकता है। यह लंबी पूंछ वाले डेटासेट के लिए विशेष रूप से महत्वपूर्ण हो सकता है, जहां एक प्रमुख समूह का प्रदर्शन महत्वपूर्ण, अभी तक छोटे समूहों के लिए अस्वीकार्य प्रदर्शन का मुखौटा लगा सकता है। उदाहरण के लिए, आपका मॉडल औसत कर्मचारियों के लिए अच्छा प्रदर्शन कर सकता है, लेकिन कार्यकारी कर्मचारियों के लिए बुरी तरह विफल हो सकता है, और यह जानना आपके लिए महत्वपूर्ण हो सकता है।

मॉडल विश्लेषण और विज़ुअलाइज़ेशन

आप अपने मॉडल को प्रशिक्षण और चल रहे हैं के माध्यम से अपने डेटा के पहले रन पूरा कर लिया है के बाद मूल्यांकनकर्ता घटक (जो लाभ उठाता है TFMA प्रशिक्षण परिणामों पर), आप एक Jupyter शैली नोटबुक में परिणाम कल्पना कर सकते हैं। अतिरिक्त रन के लिए आप इन परिणामों की तुलना कर सकते हैं क्योंकि आप समायोजन करते हैं, जब तक कि आपके परिणाम आपके मॉडल और अनुप्रयोग के लिए इष्टतम नहीं होते।

आप इन घटकों के निष्पादन के परिणामों का पता लगाने के लिए पहले एमएल मेटाडेटा (MLMD) को क्वेरी करेंगे, और फिर अपनी नोटबुक में विज़ुअलाइज़ेशन बनाने के लिए TFMA में विज़ुअलाइज़ेशन समर्थन API का उपयोग करें। इसमें tfma.load_eval_results () और tfma.view.render_slicing_metrics () शामिल हैं इस विज़ुअलाइज़ेशन का उपयोग करके आप अपने मॉडल की विशेषताओं को बेहतर ढंग से समझ सकते हैं, और यदि आवश्यक हो तो संशोधित कर सकते हैं।

एक मॉडल की सेवा की जा सकती है

इंफ्रा वैलिडेशन

प्रशिक्षित मॉडल को तैनात करने से पहले, आप यह सत्यापित करना चाहते हैं कि क्या मॉडल वास्तव में सेवारत बुनियादी ढांचे में सेवा योग्य है या नहीं। यह उत्पादन वातावरण में विशेष रूप से महत्वपूर्ण है यह सुनिश्चित करने के लिए कि नव प्रकाशित मॉडल सिस्टम को भविष्यवाणियों की सेवा से नहीं रोकता है। InfraValidator घटक सैंडबॉक्स वाले वातावरण में आपके मॉडल की एक कैनरी परिनियोजन करेगा, और वैकल्पिक रूप से यह जांचने के लिए वास्तविक अनुरोध भेजेगा कि आपका मॉडल सही तरीके से काम करता है।

तैनाती के लक्ष्य

एक बार जब आप एक मॉडल को विकसित और प्रशिक्षित कर लेते हैं, जिससे आप खुश होते हैं, तो अब इसे एक या एक से अधिक परिनियोजन लक्ष्य (एस) में तैनात करने का समय है, जहां इसे निष्कर्ष अनुरोध प्राप्त होंगे। TFX, तैनाती लक्ष्य के तीन वर्गों में तैनाती का समर्थन करता है। प्रशिक्षित मॉडल जिन्हें SavedModels के रूप में निर्यात किया गया है, इन तैनाती लक्ष्यों में से किसी एक या सभी को तैनात किया जा सकता है।

घटक प्रवाह

इंजेक्शन: TensorFlow सर्व करना

TensorFlow सर्विंग (TFS) मशीन लर्निंग मॉडल के लिए एक लचीला, उच्च-प्रदर्शन वाली सेवारत प्रणाली है, जिसे उत्पादन वातावरण के लिए डिज़ाइन किया गया है। यह एक SavedModel की खपत करता है और REST या gRPC इंटरफेस पर या तो अनुरोधों को स्वीकार करेगा। यह एक या अधिक नेटवर्क सर्वर पर प्रक्रियाओं के एक सेट के रूप में चलता है, सिंक्रनाइज़ेशन और वितरित कम्प्यूटेशन को संभालने के लिए कई उन्नत आर्किटेक्चर में से एक का उपयोग करता है। टीएफएस समाधानों के विकास और तैनाती के बारे में अधिक जानकारी के लिए टीएफएस प्रलेखन देखें।

एक ठेठ पाइपलाइन में, एक SavedModel जिसे एक ट्रेनर घटक में प्रशिक्षित किया गया है, पहले एक InfraValidator घटक में इन्फ्रा-मान्य किया जाएगा। InfraValidator वास्तव में SavedModel की सेवा करने के लिए एक कैनरी TFS मॉडल सर्वर लॉन्च करता है। यदि मान्यता समाप्त हो गई है, तो एक पुशर घटक अंततः आपके TFS बुनियादी ढांचे में SavedModel को तैनात करेगा। इसमें कई संस्करणों और मॉडल अपडेट को शामिल करना शामिल है।

देशी मोबाइल और आईओटी अनुप्रयोगों में इंजेक्शन: टेन्सरफ्लो लाइट

TensorFlow Lite एक उपकरण है, जो डेवलपर्स को उनके प्रशिक्षित TensorFlow मॉडल को मूल मोबाइल और IoL अनुप्रयोगों में उपयोग करने में मदद करने के लिए समर्पित है। यह TensorFlow सर्विंग के रूप में एक ही SavedModels की खपत करता है, और मोबाइल और IoT उपकरणों पर चलने की चुनौतियों के लिए परिणामी मॉडल के आकार और प्रदर्शन का अनुकूलन करने के लिए परिमाणीकरण और छंटाई जैसे अनुकूलन लागू करता है। TensorFlow Lite का उपयोग करने के बारे में अधिक जानकारी के लिए TensorFlow Lite दस्तावेज देखें।

जावास्क्रिप्ट में इंजेक्शन: TensorFlow JS

TensorFlow JS ब्राउज़र और Node.js. पर एमएल मॉडल के प्रशिक्षण और तैनाती के लिए एक जावास्क्रिप्ट लाइब्रेरी है। यह TensorFlow सर्विंग और TensorFlow Lite के रूप में एक ही SavedModels की खपत करता है, और उन्हें TensorFlow.js वेब प्रारूप में परिवर्तित करता है। TensorFlow JS का उपयोग करने के बारे में अधिक जानकारी के लिए TensorFlow JS प्रलेखन देखें।

Airflow के साथ एक TFX पाइपलाइन बनाना

विवरण के लिए एयरफ्लो कार्यशाला की जाँच करें

क्यूबफ़्लो के साथ एक TFX पाइपलाइन बनाना

सेट अप

Kubeflow पैमाने पर पाइपलाइनों को चलाने के लिए एक Kubernetes क्लस्टर की आवश्यकता होती है। क्यूबफ़्लो परिनियोजन दिशानिर्देश देखें जो क्यूबफ़्लो क्लस्टर को तैनात करने के विकल्पों के माध्यम से मार्गदर्शन करता है।

TFX पाइपलाइन को कॉन्फ़िगर करें और चलाएं

Kubeflow पर TFX उदाहरण पाइपलाइन को चलाने के लिए क्लाउड AI प्लेटफ़ॉर्म पाइपलाइन ट्यूटोरियल पर TFX का पालन करें। टीएफएक्स घटकों को क्यूबफ़्लो पाइपलाइन की रचना के लिए कंटेनरीकृत किया गया है और नमूना बड़े सार्वजनिक डाटासेट को पढ़ने के लिए पाइपलाइन को कॉन्फ़िगर करने और क्लाउड में पैमाने पर प्रशिक्षण और डेटा प्रोसेसिंग चरणों को निष्पादित करने की क्षमता दिखाता है।

पाइपलाइन कार्यों के लिए कमांड लाइन इंटरफ़ेस

टीएफएक्स एक एकीकृत सीएलआई प्रदान करता है जो पाइप लाइन क्रियाओं की पूरी श्रृंखला बनाने में मदद करता है जैसे कि अपाचे एयरफ्लो, अपाचे बीम और क्यूबफ़्लो सहित विभिन्न ऑर्केस्ट्रेटर पर पाइपलाइनों को बनाना, अपडेट करना, चलाना, सूचीबद्ध करना और हटाना। जानकारी के लिए, कृपया इन निर्देशों का पालन करें