चेतावनी: यह एपीआई हटा दिया गया है और प्रतिस्थापन के स्थिर होने के बाद TensorFlow के भविष्य के संस्करण में हटा दिया जाएगा।

ScatterNd

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.
पब्लिक फाइनल क्लास स्कैटरएनडी

`सूचकांक` के अनुसार आकार `आकार` के टेंसर में `अपडेट` को बिखेरता है।

निर्दिष्ट `सूचकांक` पर अलग-अलग मानों के अनुसार विरल `अपडेट` को बिखेरें। यह ऑप आपके द्वारा निर्दिष्ट `आकृति` के साथ एक आउटपुट टेंसर देता है। यह ऑप tf.gather_nd ऑपरेटर का व्युत्क्रम है जो किसी दिए गए टेंसर से मान या स्लाइस निकालता है।

यह ऑपरेशन tf.tensor_scatter_nd_add के समान है, सिवाय इसके कि टेंसर शून्य-प्रारंभिक है। tf.scatter_nd(indices, updates, shape) को कॉल करना `tf.tensor_scatter_nd_add(tf.zeros(shape, update.dtype), अनुक्रमणिका, अद्यतन) को कॉल करने के समान है।

यदि `सूचकांक` में डुप्लीकेट हैं, तो संबंधित `अपडेट` को आउटपुट टेंसर में संचित (सारांशित) किया जाता है।

चेतावनी : फ्लोटिंग-पॉइंट डेटा प्रकारों के लिए, आउटपुट नॉनडेटर्मिनिस्टिक हो सकता है। इसका कारण यह है कि जिस क्रम में अद्यतन लागू होते हैं वह गैर-निर्धारक होता है और जब अलग-अलग क्रमों में फ़्लोटिंग-पॉइंट नंबर जोड़े जाते हैं तो परिणामी संख्यात्मक सन्निकटन त्रुटि थोड़ी भिन्न हो सकती है। हालांकि, आउटपुट नियतात्मक होगा यदि op नियतत्ववाद tf.config.experimental.enable_op_determinism के माध्यम से सक्षम है।

`सूचकांक` एक पूर्णांक टेंसर है जिसमें आउटपुट टेंसर में सूचकांक होते हैं। `सूचकांक` का अंतिम आयाम `आकार` के अधिकतम रैंक पर हो सकता है:

सूचकांकों.आकार[-1] <= आकार.रैंक

`सूचकांक` का अंतिम आयाम तत्वों के सूचकांक (यदि `सूचकांक। आकार [-1] = आकार। रैंक`) या स्लाइस (यदि `सूचकांक। आकार [-1] <आकार। रैंक`) के साथ आयाम `सूचकांक" से मेल खाता है .shape[-1]``shape` का।

`अपडेट` आकार के साथ एक टेंसर है:

index.shape[:-1] + Shape[indices.shape[-1]:]

स्कैटर ऑप का सबसे सरल रूप इंडेक्स द्वारा अलग-अलग तत्वों को टेंसर में सम्मिलित करना है। एक उदाहरण पर विचार करें जहां आप रैंक -1 टेंसर में 8 तत्वों के साथ 4 बिखरे हुए तत्व सम्मिलित करना चाहते हैं।

पायथन में, यह स्कैटर ऑपरेशन इस तरह दिखेगा:

indices = tf.constant([[4], [3], [1], [7]])
     updates = tf.constant([9, 10, 11, 12])
     shape = tf.constant([8])
     scatter = tf.scatter_nd(indices, updates, shape)
     print(scatter)
 
परिणामी टेंसर इस तरह दिखेगा:

[0, 11, 0, 10, 9, 0, 0, 12]

आप एक ही बार में उच्च रैंक टेंसर के पूरे स्लाइस भी सम्मिलित कर सकते हैं। उदाहरण के लिए, आप रैंक -3 टेंसर के पहले आयाम में दो स्लाइस नए मानों के दो मैट्रिक्स के साथ सम्मिलित कर सकते हैं।

पायथन में, यह स्कैटर ऑपरेशन इस तरह दिखेगा:

indices = tf.constant([[1], [3]])
     updates = tf.constant([[[5, 5, 5, 5], [6, 6, 6, 6],
                             [7, 7, 7, 7], [8, 8, 8, 8]],
                            [[5, 5, 5, 5], [6, 6, 6, 6],
                             [7, 7, 7, 7], [8, 8, 8, 8]]])
     shape = tf.constant([4, 4, 4])
     scatter = tf.scatter_nd(indices, updates, shape)
     print(scatter)
 
परिणामी टेंसर इस तरह दिखेगा:

[[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]], [[5, 5, 5 , 5], [6, 6, 6, 6], [7, 7, 7, 7], [8, 8, 8, 8]], [[0, 0, 0, 0], [0, 0 , 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]], [[5, 5, 5, 5], [6, 6, 6, 6], [7 , 7, 7, 7], [8, 8, 8, 8]]]

ध्यान दें कि सीपीयू पर, यदि एक आउट ऑफ बाउंड इंडेक्स पाया जाता है, तो एक त्रुटि वापस आ जाती है। GPU पर, यदि कोई बाध्य अनुक्रमणिका पाई जाती है, तो अनुक्रमणिका को अनदेखा कर दिया जाता है।

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

आउटपुट <यू>
आउटपुट के रूप में ()
टेंसर का प्रतीकात्मक हैंडल लौटाता है।
स्थिर <यू, टी संख्या बढ़ाता है> स्कैटरएनडी <यू>
create ( स्कोप स्कोप, ऑपरेंड <T> इंडेक्स, ऑपरेंड <U> अपडेट, ऑपरेंड <T> शेप)
एक नया स्कैटरएनडी ऑपरेशन रैपिंग क्लास बनाने के लिए फ़ैक्टरी विधि।
आउटपुट <यू>
आउटपुट ()
दिए गए आकार और अद्यतनों के साथ एक नया टेंसर सूचकांकों के अनुसार लागू होता है।

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

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

सार्वजनिक आउटपुट <U> आउटपुट के रूप में ()

टेंसर का प्रतीकात्मक हैंडल लौटाता है।

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

पब्लिक स्टैटिक स्कैटरएनडी <यू> क्रिएट ( स्कोप स्कोप, ऑपरेंड <टी> इंडेक्स, ऑपरेंड <यू> अपडेट, ऑपरेंड <टी> शेप)

एक नया स्कैटरएनडी ऑपरेशन रैपिंग क्लास बनाने के लिए फ़ैक्टरी विधि।

मापदंडों
दायरा वर्तमान दायरा
सूचकांक सूचकांकों का टेंसर।
अपडेट आउटपुट टेंसर में स्कैटर करने के लिए मान।
आकार 1-डी। आउटपुट टेंसर का आकार।
रिटर्न
  • स्कैटरएनडी का एक नया उदाहरण

सार्वजनिक आउटपुट <यू> आउटपुट ()

दिए गए आकार और अद्यतनों के साथ एक नया टेंसर सूचकांकों के अनुसार लागू होता है।