این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

گویش & # 39؛ TFL & # 39؛ تعریف

گویش TensorFlow مطلب.

این گویش نقشه ها را به عملیات TensorFlow مطلب.

ویژگیهای:

  • همه ارزش ها از نوع تانسور (به ویژه، بندی با استفاده از تانسورها صفر بعدی نشان داده).

تعریف عملیات

tfl.abs (TFL :: AbsOp)

عملگر مقدار مطلق

شرح:

با توجه به یک تانسور x ، این عملیات یک تانسور حاوی مقدار مطلق هر عنصر در برمی گرداند x . به عنوان مثال، اگر x یک عنصر ورودی است و y یک عنصر خروجی است، این عملیات محاسبه \ (Y = | X | \).

عملوند:

  1. x : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. y : تانسور از هر مقدار نوع

tfl.add_n (TFL :: AddNOp)

اپراتور add_n

شرح:

می افزاید: تمام تانسورها ورودی عنصر و حکیم است.

عملوند:

  1. inputs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. sum : تانسور از هر مقدار نوع

tfl.add (TFL :: AddOp)

عملگر

شرح:

عنصر عاقلانه عمل علاوه بر.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.arg_max (TFL :: ArgMaxOp)

اپراتور ArgMax

شرح:

شاخص با بزرگترین مقدار در ابعاد یک تانسور می گرداند.

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. dim : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
output_type Attribute ویژگی ویژگی مشتق شده

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.arg_min (TFL :: ArgMinOp)

اپراتور ArgMin

شرح:

بازده شاخص با کوچکترین مقدار در ابعاد یک تانسور. "A = [1، 10، 26.9، 2.8، 166.32، 62.3] ب = tf.math.argmin (ورودی = A) C = tf.keras.backend.eval (ب)

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. dim : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
output_type Attribute ویژگی ویژگی مشتق شده

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.average_pool_2d (TFL :: AveragePool2DOp)

اپراتور Average_pool_2d

شرح:

انجام به طور متوسط، ادغام عملیات بر روی ورودی.

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
filter_height IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
filter_width IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
padding StringAttr پد ویژگی شمارشی
stride_h IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
stride_w IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.basic_lstm (TFL :: BasicLSTMOp)

اپراتور LSTM پایه

شرح:

پایه اپراتور LSTM همراه.

عملوند:

  1. data_input : تانسور از هر مقدار نوع
  2. prev_activ_input : تانسور از هر مقدار نوع
  3. weights_input : تانسور از هر مقدار نوع
  4. biases_input : تانسور از هر مقدار نوع
  5. prev_state_input : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی
cell_clip FloatAttr 32 بیتی ویژگی ویژگی شناور
proj_clip FloatAttr 32 بیتی ویژگی ویژگی شناور
kernel_type StringAttr هسته LSTM مورد نوع شمارشی ویژگی اساسی

نتایج:

  1. activ_output : تانسور 2D از هر مقدار نوع
  2. state_output تانسور 2D از هر مقدار نوع:
  3. concat_temp تانسور 2D از هر مقدار نوع:
  4. activ_temp : تانسور 2D از هر مقدار نوع

tfl.batch_to_space_nd (TFL :: BatchToSpaceNdOp)

اپراتور BatchToSpaceNd

شرح:

این عملیات را تغییر شکل "دسته" بعد 0 به ابعاد فضا است.

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. block_shape : تانسور از هر مقدار نوع
  3. indices : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.cast (TFL :: CastOp)

عملگر cast

شرح:

بازیگران ورودی از نوع ورودی به نوع خروجی.

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.ceil (TFL :: CeilOp)

اپراتور سقف

شرح:

عنصر عاقلانه ارزش سقف از ورودی را برمی گرداند.

عملوند:

  1. x : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. y : تانسور از هر مقدار نوع

tfl.concatenation (TFL :: ConcatenationOp)

عملگر الحاق

شرح:

الحاق تانسورها در یک جهت

عملوند:

  1. values : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
axis IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.pseudo_const (TFL :: ConstOp)

عملیات شبه ثابت.

شرح:

نشان دهنده یک مقدار ثابت در گویش TensorFlow مطلب. این یک عملیات واقعی نیست و از آن خواهد شد کاهش به بافر به جای.

عملیات مجاز است به همه از همان نوع از صفات به عنوان tf.Const کند (به عنوان مثال، ویژگی های TF مات مجاز هستند).

عملوند:

ویژگی های:

صفت MLIR نوع شرح
value ElementsAttr بردار ثابت / ویژگی ویژگی تانسور

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.conv_2d (TFL :: Conv2DOp)

اپراتور پیچیدگی

شرح:

انجام پیچیدگی عملیات بر روی ورودی.

ورودی ها: inputs[0] : مورد نیاز: فعال سازی ورودی تانسور inputs[1] : مورد نیاز: وزن فیلتر تانسور inputs[2] : اختیاری: تانسور تعصب

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. filter : تانسور از هر مقدار نوع
  3. bias : تانسور از هر مقدار نوع یا نوع هیچ

ویژگی های:

صفت MLIR نوع شرح
dilation_h_factor IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
dilation_w_factor IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی
padding StringAttr پد ویژگی شمارشی
stride_h IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
stride_w IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.convolution_2d_transpose_bias (TFL :: Convolution2DTransposeBiasOp)

پیچیدگی ترانهاده با اپراتور تعصب

شرح:

انجام عملیات پس و پیچیدگی در ورودی، با گزینه اضافه کردن یک تعصب. توجه داشته باشید این عملیات سفارشی است که در زمان اجرا استاندارد پشتیبانی نمی شود.

 Inputs:
  `inputs[0]`: required: the input activation tensor
  `inputs[1]`: required: the filter weight tensor
  `inputs[2]`: optional: the bias tensor
 

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. filter : تانسور از هر مقدار نوع
  3. bias : تانسور از هر مقدار نوع یا نوع هیچ

ویژگی های:

صفت MLIR نوع شرح
padding StringAttr پد ویژگی شمارشی
stride_h IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
stride_w IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.cos (TFL :: CosOp)

اپراتور کسینوس

شرح:

محاسبه کسینوس عنصر عاقلانه ورودی

عملوند:

  1. x : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. y : تانسور از هر مقدار نوع

tfl.densify (TFL :: DensifyOp)

اپراتور Densify

شرح:

تبدیل پراکنده تانسوری را به فرمت های انبوه است.

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.depth_to_space (TFL :: DepthToSpaceOp)

اپراتور DepthToSpace

شرح:

را rearranges داده ها را از عمق به بلوک از داده های مکانی. این تحول معکوس SpaceToDepth است. بیشتر به طور خاص، این عملیات خروجی یک کپی از تانسور ورودی که در آن ارزش ها از depth بعد در بلوک های فضایی به نقل مکان height و width ابعاد. ATTR block_size نشان می دهد اندازه ورودی بلوک و چگونه داده ها منتقل شده است.

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
block_size IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.depthwise_conv_2d (TFL :: DepthwiseConv2DOp)

اپراتور پیچیدگی Depthwise از هم جدا

شرح:

انجام پیچیدگی عملیات بر روی ورودی.

ورودی ها: inputs[0] : مورد نیاز: فعال سازی ورودی تانسور inputs[1] : مورد نیاز: وزن فیلتر تانسور inputs[2] : اختیاری: تانسور تعصب

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. filter : تانسور از هر مقدار نوع
  3. bias : تانسور از هر مقدار نوع یا نوع هیچ

ویژگی های:

صفت MLIR نوع شرح
dilation_h_factor IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
dilation_w_factor IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی
padding StringAttr پد ویژگی شمارشی
stride_h IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
stride_w IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
depth_multiplier IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.dequantize (TFL :: DequantizeOp)

اپراتور Dequantize

شرح:

تبدیل آرایه ای از اعداد صحیح را به شناور نقاط با توجه به پارامترهای کوانتیزاسیون کوانتیزه.

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.div (TFL :: DivOp)

عملگر تقسیم

شرح:

عنصر عاقلانه عمل تقسیم.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.elu (TFL :: EluOp)

اپراتور نمایی واحد خطی

شرح:

محاسبه نمایی خطی تابع f (x) -> توان (x) - 1 برای x <0، x برای x> = 0. عنصر و حکیم است.

عملوند:

  1. x : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. y : تانسور از هر مقدار نوع

tfl.embedding_lookup (TFL :: EmbeddingLookupOp)

کدهای جاسازی اپراتور مراجعه

شرح:

به نظر می رسد تا شناسه در یک لیست از تانسورها تعبیه

عملوند:

  1. lookup : تانسور از هر مقدار نوع
  2. value : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.equal (TFL :: EqualOp)

اپراتور برابر

شرح:

بازگشت عنصر حقیقت از x == y را عنصر عاقلانه

عملوند:

  1. x : تانسور از هر مقدار نوع
  2. y : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.exp (TFL :: ExpOp)

اپراتور توان طبیعی

شرح:

انجام عنصر عاقلانه طبیعی عمل به توان رساندن در ورودی.

عملوند:

  1. x : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. y : تانسور از هر مقدار نوع

tfl.expand_dims (TFL :: ExpandDimsOp)

درج یک بعد از 1 را به شکل یک تانسور است.

شرح:

با توجه به یک تانسور input ، این عملیات درج یک بعد از 1 در شاخص بعد axis از input را شکل. شاخص بعد axis صفر شروع می شود. اگر شما یک عدد منفی برای مشخص axis آن است که از پایان عقب مانده محسوب می شود.

این عملیات بسیار مفید است اگر شما می خواهید برای اضافه کردن یک بعد دسته ای برای یک عنصر واحد. برای مثال، اگر شما یک تصویر واحد از شکل [height, width, channels] ، شما می توانید آن را به یک دسته ای از 1 تصویر با ایجاد expand_dims(image, 0) ، که به شکل را [1, height, width, channels] .

نمونه های دیگر:

 # 't' is a tensor of shape [2]
shape(expand_dims(t, 0)) ==> [1, 2]
shape(expand_dims(t, 1)) ==> [2, 1]
shape(expand_dims(t, -1)) ==> [2, 1]

# 't2' is a tensor of shape [2, 3, 5]
shape(expand_dims(t2, 0)) ==> [1, 2, 3, 5]
shape(expand_dims(t2, 2)) ==> [2, 3, 1, 5]
shape(expand_dims(t2, 3)) ==> [2, 3, 5, 1]
 

این عملیات مستلزم آن است که:

-1-input.dims() <= dim <= input.dims()

این عملیات مربوط به squeeze() ، که حذف ابعاد اندازه 1.

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. dim : تانسور از هر نوع عدد صحیح

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.external_const (TFL :: ExternalConstOp)

عملیات توایع خارجی.

شرح:

عملیات توایع خارجی دارای buffer_index که اشاره به یک ثابت در flatbuffer.

عملوند:

ویژگی های:

صفت MLIR نوع شرح
buffer_index IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.fake_quant (TFL :: FakeQuantOp)

اپراتور FakeQuant

شرح:

جعلی-فرمول اندازهگیری تانسور ورودیها و از نوع float طریق دقیقه شناور را مافوق اعداد و حداکثر به خروجی، تانسور از همان شکل به عنوان ورودی.

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
min FloatAttr 32 بیتی ویژگی ویژگی شناور
max FloatAttr 32 بیتی ویژگی ویژگی شناور
num_bits IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
narrow_range BoolAttr بولی ویژگی ویژگی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.fill (TFL :: FillOp)

پر تانسور با مقدار داده شده.

شرح:

پر تانسور با مقدار داده شده.

عملوند:

  1. dims : تانسور از هر مقدار نوع
  2. value : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. res : تانسور از هر مقدار نوع

tfl.floor_div (TFL :: FloorDivOp)

اپراتور DIV طبقه

شرح:

عنصر عاقلانه عمل کف دیو.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.floor_mod (TFL :: FloorModOp)

یادآوری بخش

شرح:

عنصر عاقلانه عمل تقسیم یادآوری.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.floor (TFL :: FloorOp)

اپراتور طبقه

شرح:

عنصر عاقلانه ارزش کف ورودی را برمی گرداند.

عملوند:

  1. x : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. y : تانسور از هر مقدار نوع

tfl.fully_connected (TFL :: FullyConnectedOp)

عملیات کاملا متصل

شرح:

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. filter : تانسور از هر مقدار نوع
  3. bias : تانسور از هر مقدار نوع یا نوع هیچ

ویژگی های:

صفت MLIR نوع شرح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی
weights_format StringAttr وزن گزینه به طور کامل متصل فرمت صفت
keep_num_dims BoolAttr بولی ویژگی ویژگی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.gather_nd (TFL :: GatherNdOp)

اپراتور Gather_nd

شرح:

جمع آوری برش از params به یک تانسور با شکل مشخص شده توسط indices .

عملوند:

  1. params : تانسور از هر مقدار نوع
  2. indices : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.gather (TFL :: GatherOp)

جمع آوری اپراتور

شرح:

جمع آوری برش از params محور axis با توجه به indices .

عملوند:

  1. params : تانسور از هر مقدار نوع
  2. indices : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
axis IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.greater_equal (TFL :: GreaterEqualOp)

اپراتور Greater_equal

شرح:

عنصر عاقلانه عمل greater_equal.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.greater (TFL :: GreaterOp)

اپراتور بزرگ

شرح:

عنصر عاقلانه عمل بیشتر است.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.hard_swish (TFL :: HardSwishOp)

تابع فعال Hardswish.

شرح:

محاسبه سخت صدای فش فش تابع فعال کنید f (x) -> (X * relu6 (X + 3)) / 6 عنصر و حکیم است.

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. out : تانسور از هر مقدار نوع

tfl.l2_normalization (TFL :: L2NormalizationOp)

L2 عادی اپراتور

شرح:

L2Normalization عملیات

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.lstm (TFL :: LSTMOp)

اپراتور LSTM کامل

شرح:

بلند واحد حافظه کوتاه مدت (LSTM) لایه شبکه های مکرر. http://deeplearning.cs.cmu.edu/pdfs/Hochreiter97_lstm.pdf S. Hochreiter و J. Schmidhuber است: پیش فرض غیر روزنه اجرای بر روی است. "بلند کوتاه مدت، حافظه". عصبی محاسبات، 9 (8): 1735-1780، 1997. اجرای روزنه است بر اساس: https://research.google.com/pubs/archive/43905.pdf Hasim ساک، اندرو ارشد، و فرانسوا Beaufays. . http://arxiv.org/pdf/1503.04069.pdf Greff و همکاران: "بلند حافظه کوتاه مدت عود معماری شبکه های عصبی در مقیاس بزرگ برای مدل سازی آکوستیک INTERSPEECH، 2014. جفت ورودی و دروازه فراموش کرده ام (CIFG) بر اساس . "LSTM: جستجو اودیسه فضایی" عادی لایه است بر اساس:. https://arxiv.org/pdf/1607.06450.pdf کارشناسی و همکاران "عادی لایه"

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. input_to_input_weights : تانسور از هر مقدار نوع یا نوع هیچ
  3. input_to_forget_weights : تانسور از هر مقدار نوع
  4. input_to_cell_weights : تانسور از هر مقدار نوع
  5. input_to_output_weights : تانسور از هر مقدار نوع
  6. recurrent_to_input_weights : تانسور از هر مقدار نوع یا نوع هیچ
  7. recurrent_to_forget_weights : تانسور از هر مقدار نوع
  8. recurrent_to_cell_weights : تانسور از هر مقدار نوع
  9. recurrent_to_output_weights : تانسور از هر مقدار نوع
  10. cell_to_input_weights : تانسور از هر مقدار نوع یا نوع هیچ
  11. cell_to_forget_weights : تانسور از هر مقدار نوع یا نوع هیچ
  12. cell_to_output_weights : تانسور از هر مقدار نوع یا نوع هیچ
  13. input_gate_bias : تانسور از هر مقدار نوع یا نوع هیچ
  14. forget_gate_bias : تانسور از هر مقدار نوع
  15. cell_bias : تانسور از هر مقدار نوع
  16. output_gate_bias : تانسور از هر مقدار نوع
  17. projection_weights : تانسور از هر مقدار نوع یا نوع هیچ
  18. projection_bias : تانسور از هر مقدار نوع یا نوع هیچ
  19. input_activation_state : تانسور stateful به
  20. input_cell_state : تانسور stateful به
  21. input_layer_norm_coefficients : تانسور از هر مقدار نوع یا نوع هیچ
  22. forget_layer_norm_coefficients : تانسور از هر مقدار نوع یا نوع هیچ
  23. cell_layer_norm_coefficients : تانسور از هر مقدار نوع یا نوع هیچ
  24. output_layer_norm_coefficients : تانسور از هر مقدار نوع یا نوع هیچ

ویژگی های:

صفت MLIR نوع شرح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی
cell_clip FloatAttr 32 بیتی ویژگی ویژگی شناور
proj_clip FloatAttr 32 بیتی ویژگی ویژگی شناور
kernel_type StringAttr LSTM نوع هسته مورد شمارشی ویژگی FULL

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.leaky_relu (TFL :: LeakyReluOp)

اپراتور چکه کن Relu

شرح:

عنصر عاقلانه چکه کن ReLU اپراتور X -> X> = 0؟ X: (آلفا * X)

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
alpha FloatAttr 32 بیتی ویژگی ویژگی شناور

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.less_equal (TFL :: LessEqualOp)

اپراتور Less_equal

شرح:

عنصر عاقلانه عمل less_equal.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.less (TFL :: LessOp)

اپراتور کمتر

شرح:

عملیات عنصر عاقلانه کمتر است.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.local_response_normalization (TFL :: LocalResponseNormalizationOp)

عادی پاسخ محلی.

شرح:

4-D input تانسور را به عنوان یک آرایه 3-D بردار 1-D (همراه آخرین بعد) درمان، و هر بردار به طور مستقل نرمال. در عرض یک بردار داده شده، هر جزء توسط وزن، مجموع مربعات از ورودی در تقسیم depth_radius . در جزئیات،

 sqr_sum[a, b, c, d] =
    sum(input[a, b, c, d - depth_radius : d + depth_radius + 1] ** 2)
output = input / (bias + alpha * sqr_sum) ** beta
 

برای جزئیات، Krizhevsky و همکاران، ImageNet طبقه بندی با شبکه های عصبی کانولوشن عمیق (NIPS 2012) .

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
radius IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
bias FloatAttr 32 بیتی ویژگی ویژگی شناور
alpha FloatAttr 32 بیتی ویژگی ویژگی شناور
beta FloatAttr 32 بیتی ویژگی ویژگی شناور

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.log (TFL :: LogOp)

اپراتور لگاریتم طبیعی

شرح:

انجام عنصر عاقلانه طبیعی عمل لگاریتم در ورودی.

عملوند:

  1. x : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. y : تانسور از هر مقدار نوع

tfl.log_softmax (TFL :: LogSoftmaxOp)

اپراتور ورود softmax

شرح:

محاسبه عنصر عاقلانه ورود به سیستم softmax فعال با استفاده از فرمول زیر

ورودی - ورود به سیستم (reduce_sum (انتظار (ورودی)، کم نور))

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.logical_and (TFL :: LogicalAndOp)

منطقی و اپراتور

شرح:

عنصر عاقلانه منطقی و بهره برداری است.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.logical_not (TFL :: LogicalNotOp)

عملگر NOT منطقی

شرح:

عنصر عاقلانه عمل نمی منطقی است.

عملوند:

  1. lhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.logical_or (TFL :: LogicalOrOp)

منطقی یا اپراتور

شرح:

عنصر عاقلانه منطقی عمل می کنند.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.logistic (TFL :: LogisticOp)

اپراتور لجستیک

شرح:

عنصر عاقلانه محاسبه سیگموئید ورودی

عملوند:

  1. x : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. y : تانسور از هر مقدار نوع

tfl.matrix_diag (TFL :: MatrixDiagOp)

 Returns a tensor with the provided diagonal and everything else padded with zeros.
 

شرح:

با توجه به قطر، باز می گردد یک تانسور با خالی دیگری مورب و همه چیز را با صفر. فرض مورب دارای ابعاد K [I, J, K, ..., N] ، و سپس خروجی یک تانسور از مرتبه است k+1 با ابعاد [I, J, K, ..., N, N] که در آن: output[i, j, k, ..., m, n] = 1{m=n} * diagonal[i, j, k, ..., n].

عملوند:

  1. diagonal : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.matrix_set_diag (TFL :: MatrixSetDiagOp)

 Returns a batched matrix tensor with new batched diagonal values.
 

شرح:

با توجه به input و diagonal ، این عملیات را بر می گرداند یک تانسور با همان شکل و ارزش به عنوان input ، به جز قطر اصلی ماتریس درونی. این خواهد رونویسی توسط ارزش ها در شود diagonal .

عملوند:

  1. input : تانسور از شناور 32 بیتی و یا عدد صحیح 32 بیتی یا عدد صحیح 64 بیتی یا عدد صحیح 8 بیتی یا نوع QI8 یا نوع QI16 یا نوع QUI8 یا TFLite نوع uint8 یا ارزش نوع TFLite quint8
  2. diagonal : تانسور از شناور 32 بیتی و یا عدد صحیح 32 بیتی یا عدد صحیح 64 بیتی یا عدد صحیح 8 بیتی یا نوع QI8 یا نوع QI16 یا نوع QUI8 یا TFLite uint8 نوع و یا ارزش نوع TFLite quint8

ویژگی های:

نتایج:

  1. output : تانسور از شناور 32 بیتی و یا عدد صحیح 32 بیتی یا عدد صحیح 64 بیتی یا عدد صحیح 8 بیتی یا نوع QI8 یا نوع QI16 یا نوع QUI8 یا TFLite نوع uint8 یا ارزش نوع TFLite quint8

tfl.max_pool_2d (TFL :: MaxPool2DOp)

عملیات حداکثر استخر 2D

شرح:

انجام حداکثر استخر 2D در ورودی.

ورودی ها: inputs[0] : مورد نیاز: تانسور ورودی

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
padding StringAttr پد ویژگی شمارشی
stride_w IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
stride_h IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
filter_width IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
filter_height IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.max_pooling_with_argmax_2d (TFL :: MaxPoolingWithArgMax2DOp)

حداکثر استخر 2D با عملیات argmax

شرح:

انجام حداکثر تجمع در ورودی و خروجی هر دو ارزش حداکثر و شاخص است. هر شاخص یک شاخص مسطح در یک زیر مجموعه ای از "filter_w" X "filter_h" توجه اندازه این عملیات سفارشی است که در زمان اجرا استاندارد پشتیبانی نمی باشد.

ورودی ها: inputs[0] : مورد نیاز: تانسور فعال سازی ورودی

عملوند:

  1. input : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
padding StringAttr پد ویژگی شمارشی
stride_w IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
stride_h IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
filter_w IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
filter_h IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح

نتایج:

  1. value : تانسور از هر مقدار نوع
  2. indices : تانسور از هر مقدار نوع

tfl.max_unpooling_2d (TFL :: MaxUnpooling2DOp)

حداکثر Unpool 2D

شرح:

انجام عملیات unpool حداکثر. عناصر در فعال سازی ورودی است که تانسور را به موقعیت های مشخص شده توسط شاخص ورودی ذخیره می شود: تا حدودی این عملیات معکوس حداکثر ادغام است. توجه داشته باشید این عملیات سفارشی است که در زمان اجرا استاندارد پشتیبانی نمی شود.

ورودی ها: inputs[0] : مورد نیاز: فعال سازی ورودی تانسور inputs[1] : مورد نیاز: شاخص ورودی

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. indices : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
padding StringAttr پد ویژگی شمارشی
stride_w IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
stride_h IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
filter_w IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح
filter_h IntegerAttr 32 بیتی ویژگی ویژگی عدد صحیح

نتایج:

  1. outputs : تانسور از هر مقدار نوع

tfl.maximum (TFL :: MaximumOp)

حداکثر اپراتور

شرح:

عنصر عاقلانه حداکثر بهره برداری است.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. max : تانسور از هر مقدار نوع

tfl.mean (TFL :: MeanOp)

اپراتور متوسط

شرح:

محاسبه میانگین عناصر در ابعاد یک تانسور. را کاهش می دهد input_tensor امتداد ابعاد داده شده در محور. مگر در مواردی که keepdims درست است، رتبه از تانسور 1 برای هر ورودی در محور کاهش می یابد. اگر keepdims درست است، ابعاد کاهش می یابد با طول 1 باقی می ماند.

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. axis : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
keep_dims BoolAttr بولی ویژگی ویژگی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.minimum (TFL :: MinimumOp)

اپراتور حداقل

شرح:

عنصر عاقلانه دقیقه عملیات.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. min : تانسور از هر مقدار نوع

tfl.mirror_pad (TFL :: MirrorPadOp)

MirrorPad اپراتور. پد یک تانسور با ارزش آینه.

شرح:

این عملیات زنان یک ورودی با ارزش آینه با توجه به تشک شما مشخص است. تشک تانسور عدد صحیح با شکل [N، 2]، که در آن n رتبه ورودی است. برای هر یک از ابعاد د از ورودی ها، واشر [D، 0] نشان می دهد که چگونه بسیاری از ارزش ها برای اضافه کردن قبل محتویات ورودی در آن بعد، و نوار [D، 1] نشان می دهد که چگونه بسیاری از ارزش ها به اضافه کردن پس از محتویات ورودی در هر بعد.

هر دو واشر [D، 0] و نوار [D، 1] باید بیشتر از input.dim_size (د) (یا input.dim_size (D) - 1) اگر copy_border درست است (اگر نادرست، به ترتیب).

اندازه خالی هر یک از ابعاد D از خروجی باشد:

کیف (D، 0) + input.dim_size (D) + کیف (D، 1)

عملوند:

  1. input : تانسور از هر مقدار نوع
  2. pad : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
mode StringAttr آینه صفت شمارشی پد

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.mul (TFL :: MulOp)

عملگر ضرب

شرح:

عنصر عاقلانه عمل ضرب.

عملوند:

  1. lhs : تانسور از هر مقدار نوع
  2. rhs : تانسور از هر مقدار نوع

ویژگی های:

صفت MLIR نوع شرح
fused_activation_function StringAttr فعال سازی ذوب ویژگی شمارشی

نتایج:

  1. output : تانسور از هر مقدار نوع

tfl.neg (TFL :: NegOp)

اپراتور نفی

شرح:

محاسبه نفی عنصر عاقلانه ورودی

عملوند:

  1. x : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. y : تانسور از هر مقدار نوع

tfl.non_max_suppression_v4 (TFL :: NonMaxSuppressionV4Op)

ورزیدن انتخاب یک زیر مجموعه از محدوده جعبه به ترتیب نمره،

شرح:

هرس دور جعبه که بالا تقاطع بیش از اتحادیه (بدهی) همپوشانی با جعبه قبلا انتخاب شده است. محدوده جعبه با نمره کمتر از score_threshold حذف شده است. جعبه محدوده به عنوان [Y1، X1، Y2، X2]، که در آن (Y1، X1) و (Y2، X2) عرضه شده است مختصات هر جفت مورب از جعبه گوشه و مختصات را می توان ارائه به عنوان نرمال (یعنی دروغ در بازه [0، 1]) یا مطلق. توجه داشته باشید که این الگوریتم اگنوستیک به جایی که منشاء در دستگاه مختصات است و به طور کلی ثابت به تحولات و ترجمه از سیستم مختصات متعامد است. بنابراین ترجمه و یا بازتاب از هماهنگی نتیجه سیستم در همان جعبه که توسط الگوریتم انتخاب شده است. خروجی این عملیات یک مجموعه از اعداد صحیح نمایه سازی به مجموعه ورودی از محدوده جعبه به نمایندگی از جعبه های انتخاب شده است. مختصات جعبه محدوده مربوط به شاخص های انتخاب شده و سپس می توانید با استفاده از به دست آمده باشد tf.gather operation . به عنوان مثال: selected_indices = tf.image.non_max_suppression_v2 (جعبه، نمرات، max_output_size، iou_threshold، score_threshold) selected_boxes = tf.gather (جعبه، selected_indices)

عملوند:

  1. boxes : تانسور از هر مقدار نوع
  2. scores : تانسور از هر مقدار نوع
  3. max_output_size : تانسور از هر مقدار نوع
  4. iou_threshold : تانسور از هر مقدار نوع
  5. score_threshold : تانسور از هر مقدار نوع

ویژگی های:

نتایج:

  1. selected_indices : تانسور از هر مقدار نوع
  2. valid_outputs : تانسور از هر مقدار نوع

tfl.non_max_suppression_v5 (TFL :: NonMaxSuppressionV5Op)

ورزیدن انتخاب یک زیر مجموعه از محدوده جعبه به ترتیب نمره،

شرح:

هرس دور جعبه که بالا تقاطع بیش از اتحادیه (بدهی) همپوشانی با جعبه قبلا انتخاب شده است. محدوده جعبه با نمره کمتر از score_threshold حذف شده است. جعبه محدوده به عنوان [Y1، X1، Y2، X2]، که در آن (Y1، X1) و (Y2، X2) عرضه شده است مختصات هر جفت مورب از جعبه گوشه و مختصات را می توان ارائه به عنوان نرمال (یعنی دروغ در بازه [0، 1]) یا مطلق. توجه داشته باشید که این الگوریتم اگنوستیک به جایی که منشاء در دستگاه مختصات است و به طور کلی ثابت به تحولات و ترجمه از سیستم مختصات متعامد است. بنابراین ترجمه و یا بازتاب از هماهنگی نتیجه سیستم در همان جعبه که توسط الگوریتم انتخاب شده است. خروجی این عملیات یک مجموعه از اعداد صحیح نمایه سازی به مجموعه ورودی از محدوده جعبه به نمایندگی از جعبه های انتخاب شده است. مختصات جعبه محدوده مربوط به شاخص های انتخاب شده و سپس می توانید با استفاده از به دست آمده باشد tf.gather operation . For example: selected_indices = tf.image.non_max_suppression_v2( boxes, scores, max_output_size, iou_threshold, score_threshold) selected_boxes = tf.gather(boxes, selected_indices) This op also supports a Soft-NMS (with Gaussian weighting) mode (cf Bodla et al, https://arxiv.org/abs/1704.04503) where boxes reduce the score of other overlapping boxes instead of directly causing them to be pruned. To enable this Soft-NMS mode, set the soft_nms_sigma parameter to be larger than 0.

Operands:

  1. boxes : tensor of any type values
  2. scores : tensor of any type values
  3. max_output_size : tensor of any type values
  4. iou_threshold : tensor of any type values
  5. score_threshold : tensor of any type values
  6. soft_nms_sigma : tensor of any type values

Attributes:

Results:

  1. selected_indices : tensor of any type values
  2. selected_scores : tensor of any type values
  3. valid_outputs : tensor of any type values

tfl.not_equal (TFL::NotEqualOp)

Not_equal operator

Description:

Element-wise not_equal operation.

Operands:

  1. lhs : tensor of any type values
  2. rhs : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.NumericVerify (TFL::NumericVerifyOp)

Verifies the numericals of the two operands

Description:

The NumericVerify op is a debugging op to verify the numericals of the two activations. It is a custom op in TFLite.

Operands:

  1. input : tensor of any type values
  2. ref : tensor of any type values

Attributes:

Attribute MLIR Type Description
tolerance FloatAttr 32-bit float attribute attribute

Results:

tfl.one_hot (TFL::OneHotOp)

OneHot operator

Description:

Returns a one-hot tensor.The locations represented by indices in indices take value on_value , while all other locations take value off_value .

If the input indices is rank N , the output will have rank N+1 , The new axis is created at dimension axis (default: the new axis is appended at the end).

Operands:

  1. indices : tensor of any type values
  2. depth : tensor of any type values
  3. on_value : tensor of any type values
  4. off_value : tensor of any type values

Attributes:

Attribute MLIR Type Description
axis IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.prelu (TFL::PReluOp)

Parameterized Relu operator

Description:

Parameterized Relu operator x -> x >= 0 ? x : (alpha * x) where alpha is a trainable tensor. alpha should have one less rank than the input as it doesn't have the batch dimension, and the other dimensions either should be the same size as input or size 1, where it is broadcasted in the second case.

Operands:

  1. input : tensor of any type values
  2. alpha : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.pack (TFL::PackOp)

Packs a list of tensors along a dimension into one tensor

Description:

Packs a list of values_count rank- R tensors into one rank- (R+1) tensor.

Packs the values_count tensors in values into a tensor with rank one higher than each tensor in values , by packing them along the axis dimension.

Given a list of tensors of shape (A, B, C) ;

if axis == 0 then the output tensor will have the shape (N, A, B, C) . if axis == 1 then the output tensor will have the shape (A, N, B, C) . Etc.

For example:

 # 'x' is [1, 4]
# 'y' is [2, 5]
# 'z' is [3, 6]
pack([x, y, z]) => [[1, 4], [2, 5], [3, 6]]  # Pack along first dim.
pack([x, y, z], axis=1) => [[1, 2, 3], [4, 5, 6]]
 

This is the opposite of unpack .

Operands:

  1. values : tensor of any type values

Attributes:

Attribute MLIR Type Description
values_count IntegerAttr 32-bit integer attribute attribute
axis IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.pad (TFL::PadOp)

Padding operator

Description:

This operation pads a input with zeros according to the paddings you specify. paddings is an integer tensor with shape [Dn, 2] , where n is the rank of input . For each dimension D of input , paddings[D, 0] indicates how many zeros to add before the contents of input in that dimension, and paddings[D, 1] indicates how many zeros to add after the contents of input in that dimension.

The padded size of each dimension D of the output is:

paddings(D, 0) + input.dim_size(D) + paddings(D, 1)

For example:

 # 't' is [[1, 1], [2, 2]]
# 'paddings' is [[1, 1], [2, 2]]
# rank of 't' is 2
pad(t, paddings) ==> [[0, 0, 0, 0, 0, 0]
                      [0, 0, 1, 1, 0, 0]
                      [0, 0, 2, 2, 0, 0]
                      [0, 0, 0, 0, 0, 0]]
 

Operands:

  1. input : tensor of any type values
  2. padding : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.padv2 (TFL::PadV2Op)

Padding operator v2

Description:

This operation pads a input according to the paddings and constant_values you specify. paddings is an integer tensor with shape [Dn, 2] , where n is the rank of input . For each dimension D of input , paddings[D, 0] indicates how many zeros to add before the contents of input in that dimension, and paddings[D, 1] indicates how many zeros to add after the contents of input in that dimension. constant_values is a scalar tensor of the same type as input that indicates the value to use for padding input .

The padded size of each dimension D of the output is:

paddings(D, 0) + input.dim_size(D) + paddings(D, 1)

For example:

 # 't' is [[1, 1], [2, 2]]
# 'paddings' is [[1, 1], [2, 2]]
# rank of 't' is 2
pad(t, paddings) ==> [[0, 0, 0, 0, 0, 0]
                      [0, 0, 1, 1, 0, 0]
                      [0, 0, 2, 2, 0, 0]
                      [0, 0, 0, 0, 0, 0]]
 

Operands:

  1. input : tensor of any type values
  2. padding : tensor of any type values
  3. constant_values : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.pow (TFL::PowOp)

Power operator

Description:

Element-wise power operation.

Operands:

  1. lhs : tensor of any type values
  2. rhs : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.pseudo_qconst (TFL::QConstOp)

Quantized constant pseudo op

Description:

Represents a quantized constant value in TensorFlow Lite dialect. This is not an actual operation and it will be lowered to buffer instead. The quantization parameters are stored as a type attribute in this constant.

Operands:

Attributes:

Attribute MLIR Type Description
qtype TypeAttr Tensor type attribute attribute
value ElementsAttr constant vector/tensor attribute attribute

Results:

  1. output : tensor of any type values

tfl.quantize (TFL::QuantizeOp)

Quantize operator

Description:

Converts floating point tensors to quantized integer tensors according to the quantization parameters defined in the type attribute.

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
qtype TypeAttr Tensor type attribute attribute

Results:

  1. output : tensor of any type values

tfl.range (TFL::RangeOp)

Range operator

Description:

Returns a 1D tensor defined by a sequence from start to limit with a given delta .

Operands:

  1. start : tensor of any type values
  2. limit : tensor of any type values
  3. delta : tensor of any type values

Attributes:

Results:

  1. result : tensor of any type values

tfl.rank (TFL::RankOp)

Rank operator.

Description:

Returns the rank of a tensor.

Operands:

  1. input : tensor of any type values

Attributes:

Results:

  1. output : tensor of any integer type

tfl.reduce_any (TFL::ReduceAnyOp)

Computes the "logical or" of elements across dimensions of a tensor.

Description:

Reduces input along the dimensions given in axis . Unless keep_dims is true, the rank of the tensor is reduced by 1 for each entry in axis . If keep_dims is true, the reduced dimensions are retained with length 1.

Operands:

  1. input : tensor of any type values
  2. reduction_indices : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.reduce_max (TFL::ReduceMaxOp)

Max-reduction operator

Description:

Computes the max reduction along the specified axes

Operands:

  1. input : tensor of any type values
  2. axes : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. «unnamed»: tensor of any type values

tfl.reduce_min (TFL::ReduceMinOp)

Min-reduction operator

Description:

Computes the min reduction along the specified axes

Operands:

  1. input : tensor of any type values
  2. axes : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. «unnamed»: tensor of any type values

tfl.reduce_prod (TFL::ReduceProdOp)

Prod-reduction operator

Description:

Computes the product along the specified axes

Operands:

  1. input : tensor of any type values
  2. axes : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. «unnamed»: tensor of any type values

tfl.relu_n1_to_1 (TFL::Relu1Op)

Relu1 operator

Description:

Element-wise Relu1 operator x -> max(-1, min(1, x))

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.relu6 (TFL::Relu6Op)

Relu6 operator

Description:

Element-wise Relu6 operator x -> max(0, min(6, x))

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.relu (TFL::ReluOp)

Relu operator

Description:

Element-wise Relu operator x -> max(0, x)

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.reshape (TFL::ReshapeOp)

Reshape operator

Description:

Produces a tensor with the same values but different static shape defined by the output type.

Operands:

  1. input : tensor of any type values
  2. shape : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.resize_bilinear (TFL::ResizeBilinearOp)

ResizeBilinear Op

Description:

Resize images to size using bilinear interpolation.

Operands:

  1. input : tensor of any type values
  2. size : tensor of any type values

Attributes:

Attribute MLIR Type Description
align_corners BoolAttr bool attribute attribute
half_pixel_centers BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.resize_nearest_neighbor (TFL::ResizeNearestNeighborOp)

ResizeNearestNeighbor Op

Description:

Resize images to size using nearest neighbor interpolation.

Operands:

  1. input : tensor of any type values
  2. size : tensor of any type values

Attributes:

Attribute MLIR Type Description
align_corners BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.reverse_sequence (TFL::ReverseSequenceOp)

Reverses variable length slices.

Description:

This op first slices input along the dimension batch_dim , and for each slice i , reverses the first seq_lengths[i] elements along the dimension seq_dim .

The elements of seq_lengths must obey seq_lengths[i] <= input.dims[seq_dim] , and seq_lengths must be a vector of length input.dims[batch_dim] .

The output slice i along dimension batch_dim is then given by input slice i , with the first seq_lengths[i] slices along dimension seq_dim reversed.

Operands:

  1. input : tensor of any type values
  2. seq_lengths : tensor of any type values

Attributes:

Attribute MLIR Type Description
seq_dim IntegerAttr 32-bit integer attribute attribute
batch_dim IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.reverse_v2 (TFL::ReverseV2Op)

ReverseV2 Operator

Description:

Reverses specific dimensions of a tensor.

Given a tensor, and a int32/int64 tensor axis representing the set of dimensions of tensor to reverse. This operation reverses each dimension i for which there exists j st axis[j] == i.

Args: tensor: A Tensor. Must be one of the following types: uint8, int16, int32, int64, float32, bool Up to 8-D.

axis: A Tensor. Must be one of the following types: int32, int64. with only 1 element which is the axis index. TODO: Add support for multiple elements.

Operands:

  1. input : tensor of any type values
  2. axis : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.round (TFL::RoundOp)

Round operator

Description:

Rounds the values of a tensor to the nearest integer, element-wise.

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.rsqrt (TFL::RsqrtOp)

Reciprocal of square root operator

Description:

Computes element-wise reverse square root of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.svdf (TFL::SVDFOp)

Single value decomposition filter operator

Description:

The SVDF op is a decomposition of a densely connected op into low rank filters. For details: https://research.google.com/pubs/pub43813.html https://arxiv.org/abs/1812.02802

Operands:

  1. input : tensor of any type values
  2. feature_weights : tensor of any type values
  3. time_weights : tensor of any type values
  4. input_gate_bias : tensor of any type values or none type
  5. activation_state : stateful tensor

Attributes:

Attribute MLIR Type Description
rank IntegerAttr 32-bit integer attribute attribute
fused_activation_function StringAttr fused activation enum attribute

Results:

  1. output : tensor of any type values

tfl.segment_sum (TFL::SegmentSumOp)

SegmentSum operator

Description:

Computes the sum along segments of a tensor.

Operands:

  1. data : tensor of any type values
  2. segment_ids : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.select (TFL::SelectOp)

Select operator

Description:

Select values of 'x' if the corresponding value of 'condition' is true or the value of 'y' if false. There are valid condition input sizes:

  1. Either the same shape (in which case the select is elementwise), or
  2. condition must be Rank 1 and match over the first dimension.

Operands:

  1. condition : tensor of any type values
  2. x : tensor of any type values
  3. y : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.select_v2 (TFL::SelectV2Op)

SelectV2 operator

Description:

Select values of 'x' if the corresponding value of 'condition' is true or the value of 'y' if false. There are valid condition input sizes:

  1. Either the same shape (in which case the select is elementwise), or
  2. Broadcastable shapes between 'condition', 'x' and 'y'.

Operands:

  1. condition : tensor of any type values
  2. x : tensor of any type values
  3. y : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.shape (TFL::ShapeOp)

Shape operator

Description:

Returns the shape of a tensor.

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
out_type Attribute derived attribute attribute

Results:

  1. output : tensor of any type values

tfl.sin (TFL::SinOp)

Sine operator

Description:

Computes element-wise Sine of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.slice (TFL::SliceOp)

Return a slice from 'input'.

Description:

The output tensor is a tensor with dimensions described by 'size' whose values are extracted from 'input' starting at the offsets in 'begin'.

begin is zero-based; size is one-based. If size[i] is -1, all remaining elements in dimension i are included in the slice. In other words, this is equivalent to setting: size[i] = input.dim_size(i) - begin[i]

Requirements : 0 <= begin[i] <= begin[i] + size[i] <= Di for i in [0, n)

Operands:

  1. input : tensor of any type values
  2. begin : tensor of any type values
  3. size : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.softmax (TFL::SoftmaxOp)

Softmax operator

Description:

Computes element-wise softmax activations with the following formula

exp(input) / tf.reduce_sum(exp(input * beta), dim)

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
beta FloatAttr 32-bit float attribute attribute

Results:

  1. output : tensor of any type values

tfl.space_to_batch_nd (TFL::SpaceToBatchNdOp)

SpaceToBatchNd operator

Description:

This operation reshapes space dimensions into the "batch" dimension 0

Operands:

  1. input : tensor of any type values
  2. block_shape : tensor of any type values
  3. paddings : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.space_to_depth (TFL::SpaceToDepthOp)

SpaceToDepth operator

Description:

Rearranges blocks of spatial data, into depth. More specifically, this op outputs a copy of the input tensor where values from the height and width dimensions are moved to the depth dimension. block_size indicates the input block size.

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
block_size IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.pseudo_sparse_const (TFL::SparseConstOp)

Sparse constant pseudo op.

Description:

Represents a sparse constant value in TensorFlow Lite dialect. This is not an actual operation and it will be lowered to buffer instead.

Operands:

Attributes:

Attribute MLIR Type Description
value ElementsAttr constant vector/tensor attribute attribute
s_param TFL::SparsityParameterAttr Sparsity parameter. attribute

Results:

  1. output : tensor of any type values

tfl.pseudo_sparse_qconst (TFL::SparseQConstOp)

Sparse quantized constant pseudo op

Description:

Represents a sparse quantized constant value in TensorFlow Lite dialect. This is not an actual operation and it will be lowered to buffer instead. The quantization parameters are stored as a type attribute in this constant.

Operands:

Attributes:

Attribute MLIR Type Description
qtype TypeAttr Tensor type attribute attribute
value ElementsAttr constant vector/tensor attribute attribute
s_param TFL::SparsityParameterAttr Sparsity parameter. attribute

Results:

  1. output : tensor of any type values

tfl.sparse_to_dense (TFL::SparseToDenseOp)

Converts a sparse representation into a dense tensor.

Description:

Builds an array dense with shape output_shape such that

 # If sparse_indices is scalar
dense[i] = (i == sparse_indices ? sparse_values : default_value)

# If sparse_indices is a vector, then for each i
dense[sparse_indices[i]] = sparse_values[i]

# If sparse_indices is an n by d matrix, then for each i in [0, n)
dense[sparse_indices[i][0], ..., sparse_indices[i][d-1]] = sparse_values[i]
 

All other values in dense are set to default_value . If sparse_values is a scalar, all sparse indices are set to this single value.

Indices should be sorted in lexicographic order, and indices must not contain any repeats. If validate_indices is true, these properties are checked during execution.

Operands:

  1. sparse_indices : tensor of any type values
  2. output_shape : tensor of any type values
  3. sparse_values : tensor of any type values
  4. default_value : tensor of any type values

Attributes:

Results:

  1. dense : tensor of any type values

tfl.split (TFL::SplitOp)

Splits a tensor into num_split tensors along one dimension.

Description:

Splits the value tensor along split_dim into a number of sub-tensors with same shape as the original one, except for split_dim . Same as tf.Split.

Operands:

  1. split_dim : tensor of any type values
  2. value : tensor of any type values

Attributes:

Attribute MLIR Type Description
num_splits IntegerAttr positive 32-bit integer attribute attribute

Results:

  1. outputs : tensor of any type values

tfl.split_v (TFL::SplitVOp)

Splits a tensor into num_split tensors along one dimension.

Description:

Splits the value tensor along split_dim into a number of sub-tensors with same shape as the original one, except for split_dim . The grouping of the resultant sub-tensors is decided by size-splits . Same as tf.SplitV.

Operands:

  1. value : tensor of any type values
  2. size_splits : 1D tensor of 32-bit integer values
  3. split_dim : 0D tensor of 32-bit integer values

Attributes:

Attribute MLIR Type Description
num_splits IntegerAttr positive 32-bit integer attribute attribute

Results:

  1. outputs : tensor of any type values

tfl.sqrt (TFL::SqrtOp)

Square root operator

Description:

Computes element-wise Square root of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.square (TFL::SquareOp)

Square operator

Description:

Computes element-wise Square of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.squared_difference (TFL::SquaredDifferenceOp)

Squared difference operator

Description:

Element-wise squared difference operation.

Operands:

  1. lhs : tensor of any type values
  2. rhs : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.squeeze (TFL::SqueezeOp)

Removes dimensions of size 1 from the shape of a tensor.

Description:

Given a tensor input , this operation returns a tensor of the same type with all dimensions of size 1 removed. If you don't want to remove all size 1 dimensions, you can remove specific size 1 dimensions by specifying axis .

For example:

 # 't' is a tensor of shape [1, 2, 1, 3, 1, 1]
shape(squeeze(t)) ==> [2, 3]
 

Or, to remove specific size 1 dimensions:

 # 't' is a tensor of shape [1, 2, 1, 3, 1, 1]
shape(squeeze(t, [2, 4])) ==> [1, 2, 3, 1]
 

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
squeeze_dims ArrayAttr 64-bit integer array attribute attribute

Results:

  1. output : tensor of any type values

tfl.strided_slice (TFL::StridedSliceOp)

StridedSlice Op

Description:

Return a strided slice from input .

Operands:

  1. input : tensor of any type values
  2. begin : tensor of any type values
  3. end : tensor of any type values
  4. strides : tensor of any type values

Attributes:

Attribute MLIR Type Description
begin_mask IntegerAttr 32-bit integer attribute attribute
end_mask IntegerAttr 32-bit integer attribute attribute
ellipsis_mask IntegerAttr 32-bit integer attribute attribute
new_axis_mask IntegerAttr 32-bit integer attribute attribute
shrink_axis_mask IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.sub (TFL::SubOp)

Subtraction operator

Description:

Element-wise subtraction operation.

Operands:

  1. lhs : tensor of any type values
  2. rhs : tensor of any type values

Attributes:

Attribute MLIR Type Description
fused_activation_function StringAttr fused activation enum attribute

Results:

  1. output : tensor of any type values

tfl.sum (TFL::SumOp)

Sum operator

Description:

Computes the sum reduction along the specified axes

Operands:

  1. input : tensor of any type values
  2. axes : tensor of any type values

Attributes:

Attribute MLIR Type Description
keep_dims BoolAttr bool attribute attribute

Results:

  1. «unnamed»: tensor of any type values

tfl.tanh (TFL::TanhOp)

Hyperbolic tangent operator

Description:

Computes element-wise Hyperbolic tangent of input

Operands:

  1. x : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.tile (TFL::TileOp)

Tile operator.

Description:

Constructs a tensor by tiling a given tensor.

This operation creates a new tensor by replicating input multiples times. The output tensor's i'th dimension has input.dims(i) * multiples[i] elements, and the values of input are replicated multiples[i] times along the 'i'th dimension. For example, tiling [abcd] by [2] produces [abcdabcd].

Operands:

  1. input : tensor of any type values
  2. multiples : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values

tfl.topk_v2 (TFL::TopKV2Op)

TopK operator

Description:

Returns the top k largest element along each last dimensional slice of input and the indices of values within the last dimension of the input tensor.

Operands:

  1. input : tensor of any type values
  2. k : tensor of any type values

Attributes:

Results:

  1. values : tensor of any type values
  2. indices : tensor of any type values

tfl.transpose_conv (TFL::TransposeConvOp)

Transpose convolution operator

Description:

Performs transpose convolution operation on input.

Operands:

  1. output_shape : 1D tensor of any type values
  2. weights : tensor of any type values
  3. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
padding StringAttr padding enum attribute
stride_h IntegerAttr 32-bit integer attribute attribute
stride_w IntegerAttr 32-bit integer attribute attribute

Results:

  1. output : tensor of any type values

tfl.transpose (TFL::TransposeOp)

Transpose operator

Description:

Returns the Transpose of x

Operands:

  1. x : tensor of any type values
  2. perm : tensor of any type values

Attributes:

Results:

  1. y : tensor of any type values

tfl.unidirectional_sequence_lstm (TFL::UnidirectionalSequenceLSTMOp)

Unidirectional sequence lstm operator

Description:

A recurrent neural network specified by an LSTM cell. This Op supports unrolling the input along the time or batch dimensions, and implements the following operation for each element in the sequence s = 1...sequence_length: outputs[s] = state = activation(LSTMOp(inputs[s]))

where LSTMOp is LSTM TF Lite Op and the “activation” is the function passed as the “fused_activation_function” argument (if not “NONE”).

Operands:

  1. input : tensor of any type values
  2. input_to_input_weights : tensor of any type values or none type
  3. input_to_forget_weights : tensor of any type values
  4. input_to_cell_weights : tensor of any type values
  5. input_to_output_weights : tensor of any type values
  6. recurrent_to_input_weights : tensor of any type values or none type
  7. recurrent_to_forget_weights : tensor of any type values
  8. recurrent_to_cell_weights : tensor of any type values
  9. recurrent_to_output_weights : tensor of any type values
  10. cell_to_input_weights : tensor of any type values or none type
  11. cell_to_forget_weights : tensor of any type values or none type
  12. cell_to_output_weights : tensor of any type values or none type
  13. input_gate_bias : tensor of any type values or none type
  14. forget_gate_bias : tensor of any type values
  15. cell_bias : tensor of any type values
  16. output_gate_bias : tensor of any type values
  17. projection_weights : tensor of any type values or none type
  18. projection_bias : tensor of any type values or none type
  19. input_activation_state : stateful tensor
  20. input_cell_state : stateful tensor
  21. input_layer_norm_coefficients : tensor of any type values or none type
  22. forget_layer_norm_coefficients : tensor of any type values or none type
  23. cell_layer_norm_coefficients : tensor of any type values or none type
  24. output_layer_norm_coefficients : tensor of any type values or none type

Attributes:

Attribute MLIR Type Description
fused_activation_function StringAttr fused activation enum attribute
cell_clip FloatAttr 32-bit float attribute attribute
proj_clip FloatAttr 32-bit float attribute attribute
time_major BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.unidirectional_sequence_rnn (TFL::UnidirectionalSequenceRNNOp)

Unidirectional sequence rnn operator

Description:

A recurrent neural network specified by an RNN cell. This Op takes in input in a format {batch_size, seq_len, input_size} or {seq_len, batch_size, input_size} if it's time-majored.

It implements the following operation for each element in the sequence s = 1...sequence_length: outputs[s] = state = activation(RNNOp(inputs[s]))

where RNNOp is RNNOp TF Lite Op and the “activation” is the function passed as the “fused_activation_function” argument (if not “NONE”).

Operands:

  1. input : tensor of any type values
  2. input_to_input_weights : tensor of any type values
  3. recurrent_to_input_weights : tensor of any type values
  4. input_gate_bias : tensor of any type values
  5. hidden_state : stateful tensor

Attributes:

Attribute MLIR Type Description
time_major BoolAttr bool attribute attribute
fused_activation_function StringAttr fused activation enum attribute

Results:

  1. output : tensor of any type values

tfl.unique (TFL::UniqueOp)

Unique Op.

Description:

This operation returns a tensor y containing all of the unique elements of x sorted in the same order that they occur in x . This operation also returns a tensor idx the same size as x that contains the index of each value of x in the unique output y . In other words:

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
idx_out_type Attribute derived attribute attribute

Results:

  1. output : tensor of any type values
  2. idx : tensor of any type values

tfl.unpack (TFL::UnpackOp)

Unpacks a tensor along a dimension into multiple tensors

Description:

Unpacks a given dimension of a rank- R tensor into num rank- (R-1) tensors.

Unpacks num tensors from value by chipping it along the axis dimension. For example, given a tensor of shape (A, B, C, D) ;

If axis == 0 then the i'th tensor in output is the slice value[i, :, :, :] and each tensor in output will have shape (B, C, D) . (Note that the dimension unpacked along is gone, unlike split ).

If axis == 1 then the i'th tensor in output is the slice value[:, i, :, :] and each tensor in output will have shape (A, C, D) . Etc.

This is the opposite of pack .

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
num IntegerAttr 32-bit integer attribute attribute
axis IntegerAttr 32-bit integer attribute attribute

Results:

  1. outputs : tensor of any type values

tfl.where (TFL::WhereOp)

Returns locations of nonzero / true values in a tensor.

Description:

This operation returns the coordinates of true elements in condition . The coordinates are returned in a 2-D tensor where the first dimension (rows) represents the number of true elements, and the second dimension (columns) represents the coordinates of the true elements. Keep in mind, the shape of the output tensor can vary depending on how many true values there are in condition . Indices are output in row-major order.

Operands:

  1. input : tensor of any type values

Attributes:

Results:

  1. index : tensor of any type values

tfl.while (TFL::WhileOp)

While loop

Description:

output = input; while (cond(output)) { output = body(output) }

While loop where all values are passes through arguments with implicit capture.

input: A list of input tensors whose types are T. output: A list of output tensors whose types are T. cond: A region takes 'input' and returns a boolean scalar tensor. body: A region that takes a list of tensors and returns another list of tensors. Both lists have the same types.

Operands:

  1. input : tensor of any type values

Attributes:

Attribute MLIR Type Description
is_stateless BoolAttr bool attribute attribute

Results:

  1. output : tensor of any type values

tfl.yield (TFL::YieldOp)

Yield operation

Description:

The "yield" operation represents a return operation within the conditional and body of structured control flow (eg, while). The operation takes variable number of operands and produces no results. The operand number and types must match the signature of the region that contains the operation.

Operands:

  1. operands : any type

Attributes:

Results:

tfl.zeros_like (TFL::ZerosLikeOp)

ZerosLike operator

Description:

Returns a tensor of zeros with the same shape and type as the input tensor.

Operands:

  1. input : tensor of any type values

Attributes:

Results:

  1. output : tensor of any type values