جریان تنسور:: عملیات:: ParallelDynamicStitch
#include <data_flow_ops.h>
مقادیر تانسورهای data
را در یک تانسور منفرد قرار دهید.
خلاصه
یک تانسور ادغام شده به گونه ای می سازد که
merged[indices[m][i, ..., j], ...] = data[m][i, ..., j, ...]
به عنوان مثال، اگر هر indices[m]
اسکالر یا برداری باشد، داریم
# Scalar indices: merged[indices[m], ...] = data[m][...]
# Vector indices: merged[indices[m][i], ...] = data[m][i, ...]
هر data[i].shape
باید با indices[i].shape
شروع شود و بقیه data[i].shape
باید wrt i
ثابت باشد. یعنی باید data[i].shape = indices[i].shape + constant
داشته باشیم. بر حسب این constant
، شکل خروجی است
merged.shape = [max(indices)] + constant
مقادیر ممکن است به صورت موازی ادغام شوند، بنابراین اگر یک شاخص در هر دو indices[m][i]
و indices[n][j]
ظاهر شود، ممکن است نتیجه نامعتبر باشد. این با عملگر معمولی DynamicStitch که رفتار را در آن حالت تعریف می کند متفاوت است.
به عنوان مثال:
indices[0] = 6 indices[1] = [4, 1] indices[2] = [[5, 2], [0, 3]] data[0] = [61, 62] data[1] = [[41, 42], [11, 12]] data[2] = [[[51, 52], [21, 22]], [[1, 2], [31, 32]]] merged = [[1, 2], [11, 12], [21, 22], [31, 32], [41, 42], [51, 52], [61, 62]]
این روش می تواند برای ادغام پارتیشن های ایجاد شده توسط dynamic_partition
همانطور که در مثال زیر نشان داده شده است استفاده شود:
# Apply function (increments x_i) on elements for which a certain condition # apply (x_i != -1 in this example). x=tf.constant([0.1, -1., 5.2, 4.3, -1., 7.4]) condition_mask=tf.not_equal(x,tf.constant(-1.)) partitioned_data = tf.dynamic_partition( x, tf.cast(condition_mask, tf.int32) , 2) partitioned_data[1] = partitioned_data[1] + 1.0 condition_indices = tf.dynamic_partition( tf.range(tf.shape(x)[0]), tf.cast(condition_mask, tf.int32) , 2) x = tf.dynamic_stitch(condition_indices, partitioned_data) # Here x=[1.1, -1., 6.2, 5.3, -1, 8.4], the -1. values remain # unchanged.
استدلال ها:
- scope: یک شی Scope
برمی گرداند:
-
Output
: تانسور ادغام شده.
سازندگان و ویرانگرها | |
---|---|
ParallelDynamicStitch (const :: tensorflow::Scope & scope, :: tensorflow::InputList indices, :: tensorflow::InputList data) |
صفات عمومی | |
---|---|
merged | |
operation |
توابع عمومی | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
صفات عمومی
ادغام شد
::tensorflow::Output merged
عملیات
Operation operation
توابع عمومی
ParallelDynamicStitch
ParallelDynamicStitch( const ::tensorflow::Scope & scope, ::tensorflow::InputList indices, ::tensorflow::InputList data )
گره
::tensorflow::Node * node() const
عملگر::tensorflow::ورودی
operator::tensorflow::Input() const
عملگر::tensorflow::خروجی
operator::tensorflow::Output() const
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2024-11-25 بهوقت ساعت هماهنگ جهانی.