จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
เทนเซอร์โฟลว์:: ปฏิบัติการ:: BatchMatMul
#include <math_ops.h>
คูณเทนเซอร์สองตัวเป็นชุด
สรุป
คูณชิ้นส่วนทั้งหมดของ Tensor
x
และ y
(แต่ละชิ้นสามารถดูได้เป็นองค์ประกอบของชุด) และจัดเรียงผลลัพธ์แต่ละรายการในเทนเซอร์เอาต์พุตเดี่ยวที่มีขนาดชุดเดียวกัน แต่ละชิ้นสามารถเลือกที่จะติดกัน (เพื่อติดเมทริกซ์หมายถึงการย้ายและคอนจูเกต) ก่อนการคูณโดยการตั้งค่าแฟล็ก adj_x
หรือ adj_y
เป็น True
ซึ่งตามค่าเริ่มต้นจะเป็น False
เทนเซอร์อินพุต x
และ y
เป็น 2-D หรือสูงกว่าโดยมีรูปร่าง [..., r_x, c_x]
และ [..., r_y, c_y]
เอาท์พุตเทนเซอร์เป็น 2-D หรือสูงกว่าที่มีรูปร่าง [..., r_o, c_o]
โดยที่:
r_o = c_x if adj_x else r_x
c_o = r_y if adj_y else c_y
คำนวณเป็น:
output[..., :, :] = matrix(x[..., :, :]) * matrix(y[..., :, :])
ข้อโต้แย้ง:
- ขอบเขต: วัตถุ ขอบเขต
- x: 2-D หรือสูงกว่าที่มีรูปร่าง
[..., r_x, c_x]
- y: 2-D หรือสูงกว่าที่มีรูปร่าง
[..., r_y, c_y]
แอ็ตทริบิวต์ทางเลือก (ดู Attrs
):
- adj_x: ถ้าเป็น
True
ให้ติดส่วนของ x
ค่าเริ่มต้นเป็น False
- adj_y: หาก
True
ให้ติดส่วนของ y
ค่าเริ่มต้นเป็น False
ผลตอบแทน:
-
Output
: 3-D หรือสูงกว่าที่มีรูปร่าง [..., r_o, c_o]
ฟังก์ชันคงที่สาธารณะ |
---|
AdjX (bool x) | |
AdjY (bool x) | |
คุณลักษณะสาธารณะ
งานสาธารณะ
โหนด
::tensorflow::Node * node() const
operator::tensorflow::Input() const
ตัวดำเนินการ::tensorflow::เอาต์พุต
operator::tensorflow::Output() const
ฟังก์ชันคงที่สาธารณะ
AdjX
Attrs AdjX(
bool x
)
ปรับป
Attrs AdjY(
bool x
)
เนื้อหาของหน้าเว็บนี้ได้รับอนุญาตภายใต้ใบอนุญาตที่ต้องระบุที่มาของครีเอทีฟคอมมอนส์ 4.0 และตัวอย่างโค้ดได้รับอนุญาตภายใต้ใบอนุญาต Apache 2.0 เว้นแต่จะระบุไว้เป็นอย่างอื่น โปรดดูรายละเอียดที่นโยบายเว็บไซต์ Google Developers Java เป็นเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2025-07-26 UTC
[null,null,["อัปเดตล่าสุด 2025-07-26 UTC"],[],[],null,["# tensorflow::ops::BatchMatMul Class Reference\n\ntensorflow::ops::BatchMatMul\n============================\n\n`#include \u003cmath_ops.h\u003e`\n\nMultiplies slices of two tensors in batches.\n\nSummary\n-------\n\nMultiplies all slices of [Tensor](/versions/r2.2/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor)`x` and `y` (each slice can be viewed as an element of a batch), and arranges the individual results in a single output tensor of the same batch size. Each of the individual slices can optionally be adjointed (to adjoint a matrix means to transpose and conjugate it) before multiplication by setting the `adj_x` or `adj_y` flag to `True`, which are by default `False`.\n\nThe input tensors `x` and `y` are 2-D or higher with shape `[..., r_x, c_x]` and `[..., r_y, c_y]`.\n\nThe output tensor is 2-D or higher with shape `[..., r_o, c_o]`, where: \n\n```scdoc\nr_o = c_x if adj_x else r_x\nc_o = r_y if adj_y else c_y\n```\n\n\u003cbr /\u003e\n\nIt is computed as: \n\n```scdoc\noutput[..., :, :] = matrix(x[..., :, :]) * matrix(y[..., :, :])\n```\n\n\u003cbr /\u003e\n\nArguments:\n\n- scope: A [Scope](/versions/r2.2/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object\n- x: 2-D or higher with shape `[..., r_x, c_x]`.\n- y: 2-D or higher with shape `[..., r_y, c_y]`.\n\n\u003cbr /\u003e\n\nOptional attributes (see [Attrs](/versions/r2.2/api_docs/cc/struct/tensorflow/ops/batch-mat-mul/attrs#structtensorflow_1_1ops_1_1_batch_mat_mul_1_1_attrs)):\n\n- adj_x: If `True`, adjoint the slices of `x`. Defaults to `False`.\n- adj_y: If `True`, adjoint the slices of `y`. Defaults to `False`.\n\n\u003cbr /\u003e\n\nReturns:\n\n- [Output](/versions/r2.2/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output): 3-D or higher with shape `[..., r_o, c_o]`\n\n\u003cbr /\u003e\n\n| ### Constructors and Destructors ||\n|---|---|\n| [BatchMatMul](#classtensorflow_1_1ops_1_1_batch_mat_mul_1a951cabca8c8dbcf8b746969d80f2b480)`(const ::`[tensorflow::Scope](/versions/r2.2/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r2.2/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` x, ::`[tensorflow::Input](/versions/r2.2/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` y)` ||\n| [BatchMatMul](#classtensorflow_1_1ops_1_1_batch_mat_mul_1aec4aecf952592bd193eca45a9900ebe1)`(const ::`[tensorflow::Scope](/versions/r2.2/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r2.2/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` x, ::`[tensorflow::Input](/versions/r2.2/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` y, const `[BatchMatMul::Attrs](/versions/r2.2/api_docs/cc/struct/tensorflow/ops/batch-mat-mul/attrs#structtensorflow_1_1ops_1_1_batch_mat_mul_1_1_attrs)` & attrs)` ||\n\n| ### Public attributes ||\n|-------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|\n| [operation](#classtensorflow_1_1ops_1_1_batch_mat_mul_1a255c486fdefe3708a3355e3f85e8daf2) | [Operation](/versions/r2.2/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation) |\n| [output](#classtensorflow_1_1ops_1_1_batch_mat_mul_1ad3a290bbf8589298ccf6cd5bf0018a53) | `::`[tensorflow::Output](/versions/r2.2/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) |\n\n| ### Public functions ||\n|-------------------------------------------------------------------------------------------------------------------------|------------------------|\n| [node](#classtensorflow_1_1ops_1_1_batch_mat_mul_1af21f279f44b701fb277af586e5f0dd69)`() const ` | `::tensorflow::Node *` |\n| [operator::tensorflow::Input](#classtensorflow_1_1ops_1_1_batch_mat_mul_1aa6685ef6076abe41dc6d4f97156d77cb)`() const ` | ` ` ` ` |\n| [operator::tensorflow::Output](#classtensorflow_1_1ops_1_1_batch_mat_mul_1a7d6d385af7d73a390e36ccc7e6989345)`() const ` | ` ` ` ` |\n\n| ### Public static functions ||\n|------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------|\n| [AdjX](#classtensorflow_1_1ops_1_1_batch_mat_mul_1a47c8466020881eced6720f2f415053dd)`(bool x)` | [Attrs](/versions/r2.2/api_docs/cc/struct/tensorflow/ops/batch-mat-mul/attrs#structtensorflow_1_1ops_1_1_batch_mat_mul_1_1_attrs) |\n| [AdjY](#classtensorflow_1_1ops_1_1_batch_mat_mul_1a3f939eb8aea098cdf431a3b626274e6b)`(bool x)` | [Attrs](/versions/r2.2/api_docs/cc/struct/tensorflow/ops/batch-mat-mul/attrs#structtensorflow_1_1ops_1_1_batch_mat_mul_1_1_attrs) |\n\n| ### Structs ||\n|-------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [tensorflow::ops::BatchMatMul::Attrs](/versions/r2.2/api_docs/cc/struct/tensorflow/ops/batch-mat-mul/attrs) | Optional attribute setters for [BatchMatMul](/versions/r2.2/api_docs/cc/class/tensorflow/ops/batch-mat-mul#classtensorflow_1_1ops_1_1_batch_mat_mul). |\n\nPublic attributes\n-----------------\n\n### operation\n\n```text\nOperation operation\n``` \n\n### output\n\n```text\n::tensorflow::Output output\n``` \n\nPublic functions\n----------------\n\n### BatchMatMul\n\n```gdscript\n BatchMatMul(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input x,\n ::tensorflow::Input y\n)\n``` \n\n### BatchMatMul\n\n```gdscript\n BatchMatMul(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input x,\n ::tensorflow::Input y,\n const BatchMatMul::Attrs & attrs\n)\n``` \n\n### node\n\n```gdscript\n::tensorflow::Node * node() const \n``` \n\n### operator::tensorflow::Input\n\n```gdscript\n operator::tensorflow::Input() const \n``` \n\n### operator::tensorflow::Output\n\n```gdscript\n operator::tensorflow::Output() const \n``` \n\nPublic static functions\n-----------------------\n\n### AdjX\n\n```text\nAttrs AdjX(\n bool x\n)\n``` \n\n### AdjY\n\n```text\nAttrs AdjY(\n bool x\n)\n```"]]