7 ডিসেম্বর এমএল সিম্পোজিয়ামে মহিলাদের অংশগ্রহণ করুন এখনই নিবন্ধন করুন৷

টেনসরস্কাটার অ্যাড

পাবলিক ফাইনাল ক্লাস টেনসরস্কাটার অ্যাড

`সূচকগুলি অনুসারে একটি বিদ্যমান টেনসরগুলিতে স্পারস` আপডেটগুলি যোগ করে `

এই ক্রিয়াকলাপটি `টেনসোর` উত্তীর্ণদের সাথে স্পারস` আপডেটগুলি যোগ করে একটি নতুন টেনসর তৈরি করে ` এই ক্রিয়াকলাপটি existing tf.scatter_nd_add very এর সাথে খুব মিল, ব্যতীত আপডেটগুলি একটি বিদ্যমান টেন্সরের (কোনও ভেরিয়েবলের বিপরীতে) যুক্ত করা হয়। যদি বিদ্যমান টেন্সরের জন্য মেমরিটি পুনরায় ব্যবহার করা না যায় তবে একটি অনুলিপি তৈরি করে আপডেট করা হয়।

`সূচকগুলি shape tensor.shape t আকারের নতুন টেনসরতে সূচকযুক্ত একটি পূর্ণসংখ্যা টেনসর` `সূচকগুলির সর্বশেষ মাত্রা সর্বাধিক` টেনসর.শ্যাপ` এর র‌্যাঙ্ক হতে পারে:

সূচি.শ্যাপ [-1] <= tensor.shape.rank

`সূচকের dimen শেষ মাত্রা সূচকগুলির সাথে উপাদানগুলির সাথে সম্পর্কিত (যদি` সূচকগুলি ices মাত্রা সহ `সূচকগুলি sha tensor.shape` এর [-1] pe আকার` `আপডেটস আকৃতিযুক্ত একটি সেন্সর

সূচিপত্রগুলি: [[- - 1] + টেনসার.শ্যাপ [সূচকগুলি pe শেপ [-1]:]

Tensor_scatter_add এর সহজতম রূপ হ'ল সূচক অনুসারে কোনও উপাদানগুলিকে একটি টেনসারে যুক্ত করা। উদাহরণস্বরূপ, বলুন আমরা 8 টি উপাদান সহ র‌্যাঙ্ক -1 টেনসারে 4 টি উপাদান যুক্ত করতে চাই।

পাইথনে, এই স্ক্যাটার অ্যাড অপারেশনটি দেখতে এই রকম হবে:

indices = tf.constant([[4], [3], [1], [7]])
     updates = tf.constant([9, 10, 11, 12])
     tensor = tf.ones([8], dtype=tf.int32)
     updated = tf.tensor_scatter_nd_add(tensor, indices, updates)
     print(updated)
 
ফলস্বরূপ টেন্সরটি দেখতে এটির মতো হবে:

[1, 12, 1, 11, 10, 1, 1, 13]

আমরা আরও একবারে উচ্চতর র‌্যাঙ্ক টেনসারের সম্পূর্ণ স্লাইসগুলি .োকাতে পারি। উদাহরণস্বরূপ, আমরা যদি নতুন মানের দুটি ম্যাট্রিকের সাথে একটি র‌্যাঙ্ক -3 টেনসরের প্রথম মাত্রায় দুটি স্লাইস সন্নিবেশ করতে চাইতাম।

পাইথনে, এই স্ক্যাটার অ্যাড অপারেশনটি দেখতে এইরকম হবে:

indices = tf.constant([[0], [2]])
     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]]])
     tensor = tf.ones([4, 4, 4],dtype=tf.int32)
     updated = tf.tensor_scatter_nd_add(tensor, indices, updates)
     print(updated)
 
ফলাফল প্রাপ্ত টেন্সরটি দেখতে এটির মতো হবে:

[[[6, 6, 6, 6], [7, 7, 7, 7], [8, 8, 8, 8], [9, 9, 9, 9]], [[1, 1, 1 , 1], [1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]], [[6, 6, 6, 6], [7, 7 , 7, 7], [8, 8, 8, 8], [9, 9, 9, 9]], [[1, 1, 1, 1], [1, 1, 1, 1], [1 , 1, 1, 1], [1, 1, 1, 1]]]

নোট করুন যে সিপিইউতে, যদি কোনও বাহিরের সূচক খুঁজে পাওয়া যায়, তবে একটি ত্রুটি ফিরে আসে। জিপিইউ-তে, যদি কোনও বাহ্যিক সূচক পাওয়া যায় তবে সূচকটি উপেক্ষা করা হবে।

পাবলিক পদ্ধতি

আউটপুট <টি>
আউটপুট ()
একটি সেন্সরটির প্রতীকী হ্যান্ডেল ফেরত দেয়।
স্থির <টি, ইউ প্রসারিত সংখ্যা> টেনসরস্ক্যাটারএড <টি>
তৈরি করার সুযোগ ( স্কোপ স্কোপ, অপেরাড <T> টেন্সর, অপেরাড <ইউ> সূচক, অপেরাড < ট্যাটেল আপডেট)
একটি নতুন টেনসরস্কাটারএড যোগ করুন একটি ক্লাস মোড়ানো একটি কারখানা তৈরি করার জন্য কারখানা পদ্ধতি।
আউটপুট <টি>
আউটপুট ()
একটি নতুন টেন্সর টেনসর থেকে অনুলিপি করা হয়েছে এবং সূচকগুলি অনুসারে আপডেট করা হয়েছে।

উত্তরাধিকারী পদ্ধতি

পাবলিক পদ্ধতি

সর্বজনীন আউটপুট <T> হিসাবে আউটপুট ()

একটি সেন্সরটির প্রতীকী হ্যান্ডেল ফেরত দেয়।

টেনসরফ্লো অপারেশনের ইনপুটগুলি অন্য টেনসরফ্লো অপারেশনের আউটপুট। এই পদ্ধতিটি প্রতীকী হ্যান্ডেল প্রাপ্ত করতে ব্যবহৃত হয় যা ইনপুটটির গণনা উপস্থাপন করে।

সর্বজনীন স্ট্যাটিক টেনসরস্ক্যাটার যুক্ত করুন <টি> তৈরি করুন ( স্কোপ স্কোপ, অপেরাড <টি> টেনসর, অপেরাড <ইউ> সূচকসমূহ, অপেরাড <টি> আপডেট)

একটি নতুন টেনসরস্ক্যাটারএড যোগ করুন একটি ক্লাস মোড়ানো একটি কারখানা তৈরি করার জন্য কারখানা পদ্ধতি।

পরামিতি
সুযোগ বর্তমান সুযোগ
টেনসর অনুলিপি / আপডেট করতে টেনসর।
সূচকগুলি সূচক টেনসর
আপডেট আউটপুট মধ্যে বিক্ষিপ্ত আপডেট।
ফিরে আসে
  • টেনসরস্ক্যাটারএডের একটি নতুন উদাহরণ

সর্বজনীন আউটপুট <T> আউটপুট ()

একটি নতুন টেন্সর টেনসর থেকে অনুলিপি করা হয়েছে এবং সূচকগুলি অনুসারে আপডেট করা হয়েছে।