UNPKG

1.84 kBTypeScriptView Raw
1/**
2 * @license
3 * Copyright 2018 Google LLC. All Rights Reserved.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 * =============================================================================
16 */
17import { Tensor } from '../tensor';
18import { TensorLike } from '../types';
19/**
20 * Gather slices from tensor `x`'s axis `axis` according to `indices`.
21 *
22 * ```js
23 * const x = tf.tensor1d([1, 2, 3, 4]);
24 * const indices = tf.tensor1d([1, 3, 3], 'int32');
25 *
26 * x.gather(indices).print();
27 * ```
28 *
29 * ```js
30 * const x = tf.tensor2d([1, 2, 3, 4], [2, 2]);
31 * const indices = tf.tensor1d([1, 1, 0], 'int32');
32 *
33 * x.gather(indices).print();
34 * ```
35 * @param x The input tensor whose slices to be gathered.
36 * @param indices The indices of the values to extract.
37 * @param axis The axis over which to select values. Defaults to 0.
38 * @param batchDims Optional. The number of batch dimensions. It must be less
39 * than or equal to rank(indices). Defaults to 0.
40 * The output tensor will have shape of
41 * `x.shape[:axis] + indices.shape[batchDims:] + x.shape[axis + 1:]`
42 *
43 * @doc {heading: 'Tensors', subheading: 'Slicing and Joining'}
44 */
45declare function gather_<T extends Tensor>(x: T | TensorLike, indices: Tensor | TensorLike, axis?: number, batchDims?: number): T;
46export declare const gather: typeof gather_;
47export {};