Scope

सार्वजनिक अंतिम वर्ग स्कोप

Tensorflow संचालन बनाते समय संबंधित गुणों के समूहों का प्रबंधन करता है, जैसे कि एक सामान्य नाम उपसर्ग।

एक Scope सामान्य गुणों TensorFlow ऑप्स के लिए लागू के लिए एक कंटेनर है। सामान्य उपयोगकर्ता कोड एक initializes Scope और ऑपरेशन इमारत वर्गों के लिए यह प्रदान करता है। उदाहरण के लिए:

Scope scope = new Scope(graph);
 Constant c = Constant.create(scope, 42);
 

एक ऑपरेशन बिल्डिंग क्लास एक स्कोप प्राप्त करता है, और इसका उपयोग अंतर्निहित Tensorflow ops पर गुण सेट करने के लिए करता है। उदाहरण के लिए:

// An operator class that adds a constant.
 public class Constant {
   public static Constant create(Scope scope, ...) {
      scope.graph().opBuilder(
        "Const", scope.makeOpName("Const"))
        .setAttr(...)
        .build()
      ...
   
 }
 }

कार्यक्षेत्र पदानुक्रम:

एक Scope विभिन्न प्रदान करता है with() तरीकों कि एक नई गुंजाइश पैदा करते हैं। नए दायरे में आम तौर पर एक संपत्ति बदल जाती है जबकि अन्य गुण मूल दायरे से विरासत में मिलते हैं।

एक उदाहरण का उपयोग करते हुए Constant : से पहले के रूप में लागू

Scope root = new Scope(graph);

 // The linear subscope will generate names like linear/...
 Scope linear = Scope.withSubScope("linear");

 // This op name will be "linear/W"
 Constant.create(linear.withName("W"), ...);

 // This op will be "linear/Const", using the default
 // name provided by Constant
 Constant.create(linear, ...);

 // This op will be "linear/Const_1", using the default
 // name provided by Constant and making it unique within
 // this scope
 Constant.create(linear, ...);
 

स्कोप वस्तुओं धागा सुरक्षित नहीं है।

सार्वजनिक निर्माता

स्कोप ( ExecutionEnvironment env)
एक नया शीर्ष-स्तरीय दायरा बनाएं।

सार्वजनिक तरीके

ऑपरेशन बिल्डर
applyControlDependencies ( OperationBuilder बिल्डर)
प्रदान किए गए बिल्डर को नियंत्रण इनपुट के रूप में प्रत्येक ऑपरेंड को नियंत्रण निर्भरता में जोड़ता है।
निष्पादन पर्यावरण
env ()
इस दायरे द्वारा उपयोग किए जाने वाले निष्पादन वातावरण को लौटाता है।
डोरी
makeOpName (स्ट्रिंग defaultName)
यदि आवश्यक हो तो दिए गए डिफ़ॉल्ट का उपयोग करके, एक ऑपरेटर के लिए एक अद्वितीय नाम बनाएं।
दायरा
withControlDependencies (Iterable < ओपेरैंड <? >> नियंत्रण)
एक नया दायरा देता है जहां अतिरिक्त संचालन में प्रदान की गई नियंत्रण निर्भरताएं होंगी।
दायरा
withName (स्ट्रिंग opName)
एक नया दायरा लौटाएं जो एक सेशन के लिए दिए गए नाम का उपयोग करता है।
दायरा
withSubScope (स्ट्रिंग childScopeName)
एक नया दायरा देता है जहां अतिरिक्त संचालन में प्रदान किया गया नाम उपसर्ग होगा।

विरासत में मिली विधियां

सार्वजनिक निर्माता

सार्वजनिक क्षेत्र ( ExecutionEnvironment env)

एक नया शीर्ष-स्तरीय दायरा बनाएं।

मापदंडों
env स्कोप द्वारा उपयोग किया जाने वाला निष्पादन वातावरण।

सार्वजनिक तरीके

सार्वजनिक OperationBuilder applyControlDependencies ( OperationBuilder बिल्डर)

प्रदान किए गए बिल्डर को नियंत्रण इनपुट के रूप में प्रत्येक ऑपरेंड को नियंत्रण निर्भरता में जोड़ता है।

मापदंडों
निर्माता ऑपरेशनबिल्डर में नियंत्रण इनपुट जोड़ने के लिए

सार्वजनिक ExecutionEnvironment env ()

इस दायरे द्वारा उपयोग किए जाने वाले निष्पादन वातावरण को लौटाता है।

सार्वजनिक स्ट्रिंग makeOpName (स्ट्रिंग defaultName)

यदि आवश्यक हो तो दिए गए डिफ़ॉल्ट का उपयोग करके, एक ऑपरेटर के लिए एक अद्वितीय नाम बनाएं।

इसे आम तौर पर केवल ऑपरेटर बिल्डिंग क्लासेस द्वारा ही बुलाया जाता है।

यह विधि एक अद्वितीय नाम उत्पन्न करती है, जो इस उदाहरण द्वारा नियंत्रित नाम क्षेत्र के लिए उपयुक्त है। ठेठ ऑपरेटर बिल्डिंग कोड की तरह लग सकता है

scope.env().opBuilder("Const", scope.makeOpName("Const"))...
 

नोट: यदि आप एक समग्र ऑपरेटर के निर्माण वर्ग प्रदान (यानी, एक वर्ग है कि अन्य ऑपरेटर बिल्डिंग कोड को फोन करके संबंधित संचालन का एक समूह तैयार), प्रदान किए गए नाम सभी अंतर्निहित ऑपरेटरों के लिए एक subscope रूप में कार्य करेगा।

मापदंडों
डिफ़ॉल्टनाम अंतर्निहित ऑपरेटर के लिए नाम।
रिटर्न
  • ऑपरेटर के लिए अद्वितीय नाम।
फेंकता
अवैध तर्क अपवाद यदि डिफ़ॉल्ट नाम अमान्य है।

सार्वजनिक क्षेत्र withControlDependencies (Iterable < ओपेरैंड <? >> नियंत्रण)

एक नया दायरा देता है जहां अतिरिक्त संचालन में प्रदान की गई नियंत्रण निर्भरताएं होंगी।

इस दायरे के साथ बनाए गए ऑप्स में दिए गए प्रत्येक नियंत्रण से नियंत्रण बढ़त होगी। अन्य सभी गुण वर्तमान दायरे से विरासत में मिले हैं।

मापदंडों
नियंत्रण लौटाए गए दायरे के साथ बनाए गए ऑप्स के लिए नियंत्रण निर्भरता
रिटर्न
  • प्रदान की गई नियंत्रण निर्भरताओं के साथ एक नया दायरा

सार्वजनिक क्षेत्र withName (स्ट्रिंग opName)

एक नया दायरा लौटाएं जो एक सेशन के लिए दिए गए नाम का उपयोग करता है।

इस दायरे के भीतर बनाई गई संचालन प्रपत्र की एक नाम होगा name/opName[_suffix] । इससे आप किसी विशिष्ट ऑपरेटर का नाम अधिक अर्थपूर्ण ढंग से रख सकते हैं।

नाम नियमित अभिव्यक्ति से मेल खाना चाहिए [A-Za-z0-9.][A-Za-z0-9_.\-]*

मापदंडों
opName दिए गए दायरे में एक ऑपरेटर का नाम
रिटर्न
  • एक नया दायरा जो संचालन के लिए opName का उपयोग करता है।
फेंकता
अवैध तर्क अपवाद अगर नाम अमान्य है

सार्वजनिक क्षेत्र withSubScope (स्ट्रिंग childScopeName)

एक नया दायरा देता है जहां अतिरिक्त संचालन में प्रदान किया गया नाम उपसर्ग होगा।

इस दायरे के साथ बनाया ऑप्स होगा name/childScopeName/ उपसर्ग के रूप में। वास्तविक नाम लौटाए गए दायरे में अद्वितीय होगा। अन्य सभी गुण वर्तमान दायरे से विरासत में मिले हैं।

बच्चे गुंजाइश नाम नियमित अभिव्यक्ति से मेल खाना चाहिए [A-Za-z0-9.][A-Za-z0-9_.\-]*

मापदंडों
चाइल्डस्कोपनाम नए बच्चे के दायरे के लिए नाम
रिटर्न
  • एक नया सबस्कोप
फेंकता
अवैध तर्क अपवाद अगर नाम अमान्य है