tensorflow:: عملیات:: SparseMatMul

#include <math_ops.h>

ماتریس «a» را در ماتریس «b» ضرب کنید .

خلاصه

ورودی‌ها باید ماتریس‌های دوبعدی باشند و بُعد داخلی "a" باید با بُعد خارجی "b" مطابقت داشته باشد. هم "a" و هم "b" باید Tensor باشند نه SparseTensor . این عملیات برای حالتی بهینه شده است که حداقل یکی از "a" یا "b" پراکنده باشد، به این معنا که نسبت زیادی از مقادیر صفر داشته باشند. نقطه سربه سر برای استفاده از این در مقابل ضرب ماتریس متراکم در یک پلتفرم، 30٪ مقادیر صفر در ماتریس پراکنده بود.

محاسبه گرادیان این عملیات تنها زمانی از پراکندگی در گرادیان ورودی بهره می‌برد که آن گرادیان از یک Relu آمده باشد.

استدلال‌ها:

بازده:

  • Output : تانسور حاصلضرب.

سازنده‌ها و مخرب‌ها

SparseMatMul (const :: tensorflow::Scope & scope, :: tensorflow::Input a, :: tensorflow::Input b)
SparseMatMul (const :: tensorflow::Scope & scope, :: tensorflow::Input a, :: tensorflow::Input b, const SparseMatMul::Attrs & attrs)

ویژگی‌های عمومی

operation
product

کارکردهای عمومی

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

توابع استاتیک عمومی

AIsSparse (bool x)
BIsSparse (bool x)
TransposeA (bool x)
TransposeB (bool x)

ساختارها

tensorflow:: عملیات:: SparseMatMul:: جذابیت‌ها

تنظیم‌کننده‌های ویژگی اختیاری برای SparseMatMul .

ویژگی‌های عمومی

عملیات

Operation operation

محصول

::tensorflow::Output product

کارکردهای عمومی

اسپارس‌مت‌مول

 SparseMatMul(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input a,
  ::tensorflow::Input b
)

اسپارس‌مت‌مول

 SparseMatMul(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input a,
  ::tensorflow::Input b,
  const SparseMatMul::Attrs & attrs
)

گره

::tensorflow::Node * node() const 

عملگر::tensorflow::ورودی

 operator::tensorflow::Input() const 

عملگر::tensorflow::خروجی

 operator::tensorflow::Output() const 

توابع استاتیک عمومی

هوش مصنوعی پراکنده

Attrs AIsSparse(
  bool x
)

BIsSparse

Attrs BIsSparse(
  bool x
)

ترانسپوزA

Attrs TransposeA(
  bool x
)

ترانسپوز بی

Attrs TransposeB(
  bool x
)