दिए गए हैंडल में मानों के ग्रेडिएंट को संग्रहीत करने के लिए एक TensorArray बनाता है।
यदि दिया गया TensorArray ग्रेडिएंट पहले से मौजूद है, तो इसका संदर्भ देता है।
मूल TensorArray के आकार को इसके गतिशील आकार के ध्वज को अक्षम करके लॉक करता है।
**इनपुट फ्लो_इन के बारे में एक नोट:**
हैंडल फ्लो_इन ग्रेडिएंट लुकअप के निष्पादन को कुछ अन्य ऑपरेशन होने के बाद ही होने के लिए बाध्य करता है। उदाहरण के लिए, जब आगे TensorArray गतिशील रूप से आकार में होता है, तो इस TensorArray को लिखता है कि वस्तु का आकार बदल सकता है। जब यह ऑपरेशन निष्पादित होता है, तो आगे TensorArray के आकार के आधार पर ग्रेडिएंट TensorArray का स्थिर आकार होता है। इसके अलावा, इस कॉल से आगे TensorArray का आकार स्थिर हो जाता है। नतीजतन, प्रवाह का उपयोग यह सुनिश्चित करने के लिए किया जाता है कि ग्रेडिएंट TensorArray उत्पन्न करने के लिए कॉल सभी लेखन निष्पादित होने के बाद ही होता है।
गतिशील रूप से आकार वाले TensorArrays के मामले में, ग्रेडिएंट गणना केवल उन रीड ऑपरेशंस पर की जानी चाहिए जो स्वयं प्रवाह के माध्यम से जंजीर से बंधे होते हैं, केवल सभी लेखन निष्पादित होने के बाद ही होते हैं। इस तरह जब इस ऑपरेशन को कहा जाता है तो आगे TensorArray का अंतिम आकार ज्ञात होता है।
**स्रोत विशेषता के बारे में एक नोट:**
TensorArray ग्रेडिएंट कॉल एक संचायक TensorArray ऑब्जेक्ट का उपयोग करते हैं। यदि एक ही सत्र में कई ग्रेडिएंट की गणना की जाती है और उन्हें चलाया जाता है, तो कई ग्रेडिएंट नोड्स गलती से एक ही संचायक TensorArray के माध्यम से प्रवाहित हो सकते हैं। यह डबल मायने रखता है और आम तौर पर TensorArray ढाल प्रवाह को तोड़ता है।
समाधान यह पहचानना है कि इस विशेष TensorArray ग्रेडिएंट को किस ग्रेडिएंट कॉल में बुलाया जा रहा है। यह इनपुट ग्रेडिएंट Tensor के नाम से एक अद्वितीय स्ट्रिंग (जैसे "ग्रेडिएंट", "ग्रेडिएंट्स_1", ...) की पहचान करके किया जाता है। TensorArray ग्रेडिएंट ऑब्जेक्ट (विशेषता `स्रोत`) बनाते समय इस स्ट्रिंग का उपयोग प्रत्यय के रूप में किया जाता है।
विशेषता `स्रोत` को निर्माण / लुकअप करते समय आगे TensorArray के नाम के प्रत्यय के रूप में जोड़ा जाता है, ताकि प्रत्येक अलग ढाल गणना को अपना स्वयं का TensorArray संचायक प्राप्त हो।
सार्वजनिक तरीके
स्थिर TensorArrayGrad | |
आउटपुट <फ्लोट> | flowOut () |
आउटपुट <?> | gradHandle () |
विरासत में मिली विधियां
सार्वजनिक तरीके
सार्वजनिक स्थिर TensorArrayGrad बनाने ( स्कोप गुंजाइश, ओपेरैंड <?> हैंडल, ओपेरैंड <फ्लोट> Flowin, स्ट्रिंग स्रोत)
एक नया TensorArrayGrad ऑपरेशन रैपिंग क्लास बनाने के लिए फ़ैक्टरी विधि।
मापदंडों
दायरा | वर्तमान दायरा |
---|---|
हैंडल | आगे TensorArray के लिए हैंडल। |
में प्रवाह | एक फ्लोट स्केलर जो संचालन की उचित श्रृंखला को लागू करता है। |
स्रोत | ग्रेडिएंट सोर्स स्ट्रिंग, यह तय करने के लिए प्रयोग किया जाता है कि कौन सा ग्रेडिएंट TensorArray वापस लौटना है। |
रिटर्न
- TensorArrayGrad का एक नया उदाहरण