Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
flux tensoriel : : opérations : : SparseConcat
#include <sparse_ops.h>
Concatène une liste de SparseTensor
le long de la dimension spécifiée.
Résumé
La concaténation concerne les versions denses de ces tenseurs clairsemés. On suppose que chaque entrée est un SparseTensor
dont les éléments sont ordonnés selon un nombre de dimension croissant.
Les formes de toutes les entrées doivent correspondre, à l'exception de la dimension concat. Les listes indices
, values
et shapes
doivent avoir la même longueur.
La forme de sortie est identique à celle des entrées, sauf le long de la dimension concaténée, où il s'agit de la somme des tailles des entrées le long de cette dimension.
Les éléments de sortie seront utilisés pour conserver l'ordre de tri en fonction du nombre de dimensions croissant.
Cette opération s'exécute en temps O(M log M)
, où M
est le nombre total de valeurs non vides sur toutes les entrées. Cela est dû à la nécessité d'un tri interne afin de concaténer efficacement sur une dimension arbitraire.
Par exemple, si concat_dim = 1
et que les entrées sont
sp_inputs[0]: shape = [2, 3]
[0, 2]: "a"
[1, 0]: "b"
[1, 1]: "c"
sp_inputs[1]: shape = [2, 4]
[0, 1]: "d"
[0, 2]: "e"
alors la sortie sera
shape = [2, 7]
[0, 2]: "a"
[0, 4]: "d"
[0, 5]: "e"
[1, 0]: "b"
[1, 1]: "c"
Graphiquement, cela équivaut à faire
[ a] concat [ d e ] = [ a d e ]
[b c ] [ ] [b c ]
Arguments :
- scope : un objet Scope
- indices : 2-D. Indices de chaque entrée
SparseTensor
. - valeurs : 1-D. Valeurs non vides de chaque
SparseTensor
. - formes : 1-D. Formes de chaque
SparseTensor
. - concat_dim : Dimension à concaténer. Doit être compris dans la plage [-rank, Rank), où Rank est le nombre de dimensions dans chaque
SparseTensor
d'entrée.
Retours :
-
Output
Output_indices : 2-D. Indices du SparseTensor
concaténé. -
Output
valeurs_de_sortie : 1-D. Valeurs non vides du SparseTensor
concaténé. -
Output
output_shape : 1-D. Forme du SparseTensor
concaténé.
Attributs publics
Fonctions publiques
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/26 (UTC).
[null,null,["Dernière mise à jour le 2025/07/26 (UTC)."],[],[],null,["# tensorflow::ops::SparseConcat Class Reference\n\ntensorflow::ops::SparseConcat\n=============================\n\n`#include \u003csparse_ops.h\u003e`\n\nConcatenates a list of `SparseTensor` along the specified dimension.\n\nSummary\n-------\n\nConcatenation is with respect to the dense versions of these sparse tensors. It is assumed that each input is a `SparseTensor` whose elements are ordered along increasing dimension number.\n\n[All](/versions/r2.0/api_docs/cc/class/tensorflow/ops/all#classtensorflow_1_1ops_1_1_all) inputs' shapes must match, except for the concat dimension. The `indices`, `values`, and `shapes` lists must have the same length.\n\nThe output shape is identical to the inputs', except along the concat dimension, where it is the sum of the inputs' sizes along that dimension.\n\nThe output elements will be resorted to preserve the sort order along increasing dimension number.\n\nThis op runs in `O(M log M)` time, where `M` is the total number of non-empty values across all inputs. This is due to the need for an internal sort in order to concatenate efficiently across an arbitrary dimension.\n\nFor example, if `concat_dim = 1` and the inputs are \n\n```scdoc\nsp_inputs[0]: shape = [2, 3]\n[0, 2]: \"a\"\n[1, 0]: \"b\"\n[1, 1]: \"c\"\n\nsp_inputs[1]: shape = [2, 4]\n[0, 1]: \"d\"\n[0, 2]: \"e\"\n```\n\n\u003cbr /\u003e\n\nthen the output will be \n\n```text\nshape = [2, 7]\n[0, 2]: \"a\"\n[0, 4]: \"d\"\n[0, 5]: \"e\"\n[1, 0]: \"b\"\n[1, 1]: \"c\"\n```\n\n\u003cbr /\u003e\n\nGraphically this is equivalent to doing \n\n```ini\n[ a] concat [ d e ] = [ a d e ]\n[b c ] [ ] [b c ]\n```\n\n\u003cbr /\u003e\n\nArguments:\n\n- scope: A [Scope](/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object\n- indices: 2-D. Indices of each input `SparseTensor`.\n- values: 1-D. Non-empty values of each `SparseTensor`.\n- shapes: 1-D. Shapes of each `SparseTensor`.\n- concat_dim: Dimension to concatenate along. Must be in range \\[-rank, rank), where rank is the number of dimensions in each input `SparseTensor`.\n\n\u003cbr /\u003e\n\nReturns:\n\n- [Output](/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) output_indices: 2-D. Indices of the concatenated `SparseTensor`.\n- [Output](/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) output_values: 1-D. Non-empty values of the concatenated `SparseTensor`.\n- [Output](/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) output_shape: 1-D. Shape of the concatenated `SparseTensor`.\n\n\u003cbr /\u003e\n\n| ### Constructors and Destructors ||\n|---|---|\n| [SparseConcat](#classtensorflow_1_1ops_1_1_sparse_concat_1a50aa275ec5a88496fd4e99f0f1003616)`(const ::`[tensorflow::Scope](/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::InputList](/versions/r2.0/api_docs/cc/class/tensorflow/input-list#classtensorflow_1_1_input_list)` indices, ::`[tensorflow::InputList](/versions/r2.0/api_docs/cc/class/tensorflow/input-list#classtensorflow_1_1_input_list)` values, ::`[tensorflow::InputList](/versions/r2.0/api_docs/cc/class/tensorflow/input-list#classtensorflow_1_1_input_list)` shapes, int64 concat_dim)` ||\n\n| ### Public attributes ||\n|------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|\n| [operation](#classtensorflow_1_1ops_1_1_sparse_concat_1a8db5a398751bcf0e460c5032ae1ab292) | [Operation](/versions/r2.0/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation) |\n| [output_indices](#classtensorflow_1_1ops_1_1_sparse_concat_1a79b9cef174b8488e90f52907d6d64a0f) | `::`[tensorflow::Output](/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) |\n| [output_shape](#classtensorflow_1_1ops_1_1_sparse_concat_1ae3130991367ac10382b9a6a310b1eff5) | `::`[tensorflow::Output](/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) |\n| [output_values](#classtensorflow_1_1ops_1_1_sparse_concat_1a626bd96bc86fb8ecddbd8cbb7a6828cf) | `::`[tensorflow::Output](/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) |\n\nPublic attributes\n-----------------\n\n### operation\n\n```text\nOperation operation\n``` \n\n### output_indices\n\n```scdoc\n::tensorflow::Output output_indices\n``` \n\n### output_shape\n\n```scdoc\n::tensorflow::Output output_shape\n``` \n\n### output_values\n\n```scdoc\n::tensorflow::Output output_values\n``` \n\nPublic functions\n----------------\n\n### SparseConcat\n\n```gdscript\n SparseConcat(\n const ::tensorflow::Scope & scope,\n ::tensorflow::InputList indices,\n ::tensorflow::InputList values,\n ::tensorflow::InputList shapes,\n int64 concat_dim\n)\n```"]]