Transformers.js 文件
utils/tensor
並獲得增強的文件體驗
開始使用
utils/tensor
用於 `Tensor` 處理的輔助模組。
這些函式和類僅供內部使用,這意味著終端使用者無需訪問此處。
- utils/tensor
- 靜態
- .Tensor
new Tensor(...args)
.dims
:Array.<number>
.type
:DataType
.data
:DataArray
.size
:number
.location
:string
.Symbol.iterator()
⇒Iterator
._getitem(index)
⇒Tensor
.indexOf(item)
⇒number
._subarray(index, iterSize, iterDims)
⇒Tensor
.item()
⇒number
|bigint
.tolist()
⇒Array
.sigmoid()
⇒Tensor
.sigmoid_()
⇒Tensor
.map(callback)
⇒Tensor
.map_(callback)
⇒Tensor
.mul(val)
⇒Tensor
.mul_(val)
⇒Tensor
.div(val)
⇒Tensor
.div_(val)
⇒Tensor
.add(val)
⇒Tensor
.add_(val)
⇒Tensor
.sub(val)
⇒Tensor
.sub_(val)
⇒Tensor
.clone()
⇒Tensor
.slice(...slices)
⇒Tensor
.permute(...dims)
⇒Tensor
.sum([dim], keepdim)
⇒.norm([p], [dim], [keepdim])
⇒Tensor
.normalize_([p], [dim])
⇒Tensor
.normalize([p], [dim])
⇒Tensor
.stride()
⇒Array.<number>
.squeeze([dim])
⇒Tensor
.squeeze_()
.unsqueeze(dim)
⇒Tensor
.unsqueeze_()
.flatten_()
.flatten(start_dim, end_dim)
⇒Tensor
.view(...dims)
⇒Tensor
.gt(val)
⇒Tensor
.lt(val)
⇒Tensor
.clamp_()
.clamp(min, max)
⇒Tensor
.round_()
.round()
⇒Tensor
.to(type)
⇒Tensor
.permute(tensor, axes)
⇒Tensor
.interpolate(input, size, mode, align_corners)
⇒Tensor
.interpolate_4d(input, options)
⇒Promise.<Tensor>
.matmul(a, b)
⇒Promise.<Tensor>
.rfft(x, a)
⇒Promise.<Tensor>
.topk(x, [k])
⇒*
.slice(data:, starts:, ends:, axes:, [steps])
⇒Promise.<Tensor>
.mean_pooling(last_hidden_state, attention_mask)
⇒Tensor
.layer_norm(input, normalized_shape, options)
⇒Tensor
.cat(tensors, dim)
⇒Tensor
.stack(tensors, dim)
⇒Tensor
.std_mean(input, dim, correction, keepdim)
⇒Array.<Tensor>
.mean(input, dim, keepdim)
⇒Tensor
.full(size, fill_value)
⇒Tensor
.ones(size)
⇒Tensor
.ones_like(tensor)
⇒Tensor
.zeros(size)
⇒Tensor
.zeros_like(tensor)
⇒Tensor
.rand(size)
⇒Tensor
.quantize_embeddings(tensor, precision)
⇒Tensor
- .Tensor
- 內部
~args[0]
:ONNXTensor
~reshape(data, dimensions)
⇒*
~reshapedArray
:any
~reduce_helper(callbackfn, input, dim, keepdim)
⇒*
~DataArray
:*
~NestArray
:*
- 靜態
utils/tensor.Tensor
型別:utils/tensor
的靜態類
- .Tensor
new Tensor(...args)
.dims
:Array.<number>
.type
:DataType
.data
:DataArray
.size
:number
.location
:string
.Symbol.iterator()
⇒Iterator
._getitem(index)
⇒Tensor
.indexOf(item)
⇒number
._subarray(index, iterSize, iterDims)
⇒Tensor
.item()
⇒number
|bigint
.tolist()
⇒Array
.sigmoid()
⇒Tensor
.sigmoid_()
⇒Tensor
.map(callback)
⇒Tensor
.map_(callback)
⇒Tensor
.mul(val)
⇒Tensor
.mul_(val)
⇒Tensor
.div(val)
⇒Tensor
.div_(val)
⇒Tensor
.add(val)
⇒Tensor
.add_(val)
⇒Tensor
.sub(val)
⇒Tensor
.sub_(val)
⇒Tensor
.clone()
⇒Tensor
.slice(...slices)
⇒Tensor
.permute(...dims)
⇒Tensor
.sum([dim], keepdim)
⇒.norm([p], [dim], [keepdim])
⇒Tensor
.normalize_([p], [dim])
⇒Tensor
.normalize([p], [dim])
⇒Tensor
.stride()
⇒Array.<number>
.squeeze([dim])
⇒Tensor
.squeeze_()
.unsqueeze(dim)
⇒Tensor
.unsqueeze_()
.flatten_()
.flatten(start_dim, end_dim)
⇒Tensor
.view(...dims)
⇒Tensor
.gt(val)
⇒Tensor
.lt(val)
⇒Tensor
.clamp_()
.clamp(min, max)
⇒Tensor
.round_()
.round()
⇒Tensor
.to(type)
⇒Tensor
new Tensor(...args)
建立新的張量或複製現有張量。
引數量 | 型別 |
---|---|
...args | * |
tensor.dims : <code> Array. < number > </code>
張量的維度。
型別:Tensor
的例項屬性
tensor.type : <code> DataType </code>
張量的型別。
型別:Tensor
的例項屬性
tensor.data : <code> DataArray </code>
儲存在張量中的資料。
型別:Tensor
的例項屬性
tensor.size : <code> number </code>
張量中的元素數量。
型別:Tensor
的例項屬性
tensor.location : <code> string </code>
張量資料的位置。
型別:Tensor
的例項屬性
tensor.Symbol.iterator() ⇒ <code> Iterator </code>
返回一個迭代器物件,用於按行主序迭代張量資料。如果張量有多個維度,迭代器將生成子陣列。
型別:Tensor
的例項方法
返回:Iterator
- 用於按行主序迭代張量資料的迭代器物件。
tensor._getitem(index) ⇒ <code> Tensor </code>
對張量物件進行索引。
型別:Tensor
的例項方法
返回:Tensor
- 指定索引處的資料。
引數量 | 型別 | 描述 |
---|---|---|
索引 | 數字 | 要訪問的索引。 |
tensor.indexOf(item) ⇒ <code> number </code>
型別:Tensor
的例項方法
返回:number
- 張量資料中項的第一次出現的索引。
引數量 | 型別 | 描述 |
---|---|---|
項 | number | bigint | 要在張量中搜索的項 |
tensor._subarray(index, iterSize, iterDims) ⇒ <code> Tensor </code>
型別:Tensor
的例項方法
引數量 | 型別 |
---|---|
索引 | 數字 |
迭代大小 | 數字 |
迭代維度 | 任何 |
tensor.item() ⇒ <code> number </code> | <code> bigint </code>
將此張量的值作為標準 JavaScript Number 返回。這僅適用於具有一個元素的張量。對於其他情況,請參閱 `Tensor.tolist()`。
型別:Tensor
的例項方法
返回:number
| bigint
- 此張量的值作為標準 JavaScript Number。
丟擲:
- 如果張量有多個元素,則會丟擲
Error
。
tensor.tolist() ⇒ <code> Array </code>
將張量資料轉換為 n 維 JS 列表
型別:Tensor
的例項方法
tensor.sigmoid() ⇒ <code> Tensor </code>
返回一個新的張量,其中每個元素都應用了 sigmoid 函式。
型別:Tensor
的例項方法
返回:Tensor
- 應用了 sigmoid 函式的張量。
tensor.sigmoid_() ⇒ <code> Tensor </code>
將 sigmoid 函式就地應用於張量。
型別:Tensor
的例項方法
返回:Tensor
- 返回 this
。
tensor.map(callback) ⇒ <code> Tensor </code>
返回一個新的張量,其中每個元素都應用了回撥函式。
型別:Tensor
的例項方法
返回:Tensor
- 一個新的張量,其中每個元素都應用了回撥函式。
引數量 | 型別 | 描述 |
---|---|---|
回撥函式 | 函式 | 要應用於每個元素的函式。它應該接受三個引數:當前元素、其索引和張量的資料陣列。 |
tensor.map_(callback) ⇒ <code> Tensor </code>
就地將回調函式應用於張量的每個元素。
型別:Tensor
的例項方法
返回:Tensor
- 返回 this
。
引數量 | 型別 | 描述 |
---|---|---|
回撥函式 | 函式 | 要應用於每個元素的函式。它應該接受三個引數:當前元素、其索引和張量的資料陣列。 |
tensor.mul(val) ⇒ <code> Tensor </code>
返回一個新張量,其中每個元素都乘以一個常數。
型別:Tensor
的例項方法
返回:Tensor
- 新張量。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要相乘的值。 |
tensor.mul_(val) ⇒ <code> Tensor </code>
就地將張量乘以一個常數。
型別:Tensor
的例項方法
返回:Tensor
- 返回 this
。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要相乘的值。 |
tensor.div(val) ⇒ <code> Tensor </code>
返回一個新的張量,其中每個元素都除以一個常數。
型別:Tensor
的例項方法
返回:Tensor
- 新張量。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要除以的值。 |
tensor.div_(val) ⇒ <code> Tensor </code>
就地將張量除以一個常數。
型別:Tensor
的例項方法
返回:Tensor
- 返回 this
。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要除以的值。 |
tensor.add(val) ⇒ <code> Tensor </code>
返回一個新的張量,其中每個元素都加上一個常數。
型別:Tensor
的例項方法
返回:Tensor
- 新張量。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要新增的值。 |
tensor.add_(val) ⇒ <code> Tensor </code>
就地將張量加上一個常數。
型別:Tensor
的例項方法
返回:Tensor
- 返回 this
。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要新增的值。 |
tensor.sub(val) ⇒ <code> Tensor </code>
返回一個新的張量,其中每個元素都減去一個常數。
型別:Tensor
的例項方法
返回:Tensor
- 新張量。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要減去的值。 |
tensor.sub_(val) ⇒ <code> Tensor </code>
就地將張量減去一個常數。
型別:Tensor
的例項方法
返回:Tensor
- 返回 this
。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要減去的值。 |
tensor.clone() ⇒ <code> Tensor </code>
建立當前張量的深複製。
型別:Tensor
的例項方法
返回:Tensor
- 一個與原始張量具有相同型別、資料和維度的新張量。
tensor.slice(...slices) ⇒ <code> Tensor </code>
沿指定維度對張量執行切片操作。
考慮一個維度為 [4, 7] 的張量。
[ 1, 2, 3, 4, 5, 6, 7]
[ 8, 9, 10, 11, 12, 13, 14]
[15, 16, 17, 18, 19, 20, 21]
[22, 23, 24, 25, 26, 27, 28]
我們可以對行和列的兩個維度進行切片,例如,在這種情況下,我們可以從第二個元素開始,然後返回到倒數第二個元素,如下所示:
tensor.slice([1, -1], [1, -1]);
這將返回:
[ 9, 10, 11, 12, 13 ]
[ 16, 17, 18, 19, 20 ]
型別:Tensor
的例項方法
返回:Tensor
- 包含所選元素的新張量。
丟擲:
- 如果切片輸入無效,則會丟擲
Error
。
引數量 | 型別 | 描述 |
---|---|---|
...切片 | number | Array<number> | null | 每個維度的切片規範。
|
tensor.permute(...dims) ⇒ <code> Tensor </code>
根據提供的維度,返回此張量的置換版本。
型別:Tensor
的例項方法
返回:Tensor
- 置換後的張量。
引數量 | 型別 | 描述 |
---|---|---|
...維度 | 數字 | 要置換的維度。 |
tensor.sum([dim], keepdim) ⇒
返回給定維度 dim 中輸入張量每行的總和。
型別:Tensor
的例項方法
返回:求和後的張量
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
[dim] | 數字 |
| 要縮減的維度。如果為 |
保持維度 | boolean | false | 輸出張量是否保留 |
tensor.norm([p], [dim], [keepdim]) ⇒ <code> Tensor </code>
返回給定張量的矩陣範數或向量範數。
型別:Tensor
的例項方法
返回:Tensor
- 張量的範數。
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
[p] | number | string | 'fro' | 範數階數 |
[dim] | 數字 |
| 指定要計算範數的張量維度。如果 dim 為 None,則範數將計算輸入的所有維度。 |
[keepdim] | boolean | false | 輸出張量是否保留維度。 |
tensor.normalize_([p], [dim]) ⇒ <code> Tensor </code>
對指定維度上的輸入執行 `L_p` 歸一化。就地操作。
型別:Tensor
的例項方法
返回:Tensor
- 用於操作鏈的 this
。
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
[p] | 數字 | 2 | 範數公式中的指數值 |
[dim] | 數字 | 1 | 要縮減的維度 |
tensor.normalize([p], [dim]) ⇒ <code> Tensor </code>
對指定維度上的輸入執行 `L_p` 歸一化。
型別:Tensor
的例項方法
返回:Tensor
- 歸一化後的張量。
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
[p] | 數字 | 2 | 範數公式中的指數值 |
[dim] | 數字 | 1 | 要縮減的維度 |
tensor.stride() ⇒ <code> Array. < number > </code>
計算並返回此張量的步長。步長是在指定維度 dim 中從一個元素到下一個元素所需的跳躍步數。
型別:Tensor
的例項方法
返回:Array.<number>
- 此張量的步長。
tensor.squeeze([dim]) ⇒ <code> Tensor </code>
返回一個張量,其中刪除了所有指定大小為 1 的輸入維度。
注意:返回的張量與輸入張量共享儲存空間,因此更改其中一個的內容將更改另一個。如果您想要一個副本,請在壓縮之前使用 `tensor.clone()`。
型別:Tensor
的例項方法
返回:Tensor
- 壓縮後的張量
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
[dim] | number | Array<number> |
| 如果給定,則僅在指定維度中壓縮輸入。 |
tensor.squeeze_()
@see Tensor.squeeze 的就地版本
型別:Tensor
的例項方法
tensor.unsqueeze(dim) ⇒ <code> Tensor </code>
返回一個新張量,在指定位置插入大小為一的維度。
注意:返回的張量與此張量共享相同的基礎資料。
型別:Tensor
的例項方法
返回:Tensor
- 未壓縮的張量
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
維度 | 數字 |
| 插入單例維度的索引 |
tensor.unsqueeze_()
@see Tensor.unsqueeze 的就地版本
型別:Tensor
的例項方法
tensor.flatten_()
@see Tensor.flatten 的就地版本
型別:Tensor
的例項方法
tensor.flatten(start_dim, end_dim) ⇒ <code> Tensor </code>
透過將輸入重塑為一維張量來展平輸入。如果傳遞了 `start_dim` 或 `end_dim`,則只展平從 `start_dim` 開始到 `end_dim` 結束的維度。輸入的元素順序不變。
型別:Tensor
的例項方法
返回:Tensor
- 展平後的張量。
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
開始維度 | 數字 | 0 | 要展平的第一個維度 |
結束維度 | 數字 | 要展平的最後一個維度 |
tensor.view(...dims) ⇒ <code> Tensor </code>
返回一個新張量,其資料與 self
張量相同,但 形狀
不同。
型別:Tensor
的例項方法
返回:Tensor
- 資料相同但形狀不同的張量
引數量 | 型別 | 描述 |
---|---|---|
...維度 | 數字 | 所需大小 |
tensor.gt(val) ⇒ <code> Tensor </code>
逐元素計算輸入 > 值。
型別:Tensor
的例項方法
返回:Tensor
- 一個布林張量,當輸入大於其他值時為 true
,否則為 false
。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要比較的值。 |
tensor.lt(val) ⇒ <code> Tensor </code>
逐元素計算輸入 < 值。
型別:Tensor
的例項方法
返回:Tensor
- 一個布林張量,當輸入小於其他值時為 true
,否則為 false
。
引數量 | 型別 | 描述 |
---|---|---|
值 | 數字 | 要比較的值。 |
tensor.clamp_()
@see Tensor.clamp 的就地版本
型別:Tensor
的例項方法
tensor.clamp(min, max) ⇒ <code> Tensor </code>
將輸入中的所有元素限制在 [min, max] 範圍內
型別:Tensor
的例項方法
返回:Tensor
- 輸出張量。
引數量 | 型別 | 描述 |
---|---|---|
最小 | 數字 | 要限制的範圍下限 |
最大 | 數字 | 要限制的範圍上限 |
tensor.round_()
@see Tensor.round 的就地版本
型別:Tensor
的例項方法
tensor.round() ⇒ <code> Tensor </code>
將輸入中的元素四捨五入到最近的整數。
型別:Tensor
的例項方法
返回:Tensor
- 輸出張量。
tensor.to(type) ⇒ <code> Tensor </code>
執行張量資料型別轉換。
型別:Tensor
的例項方法
返回:Tensor
- 轉換後的張量。
引數量 | 型別 | 描述 |
---|---|---|
型別 | 資料型別 | 所需的資料型別。 |
utils/tensor.permute(tensor, axes) ⇒ <code> Tensor </code>
根據提供的軸排列張量。
類別: utils/tensor
的靜態方法
返回:Tensor
- 置換後的張量。
引數量 | 型別 | 描述 |
---|---|---|
張量 | 任何 | 要排列的輸入張量。 |
軸 | 陣列 | 張量沿其排列的軸。 |
utils/tensor.interpolate(input, size, mode, align_corners) ⇒ <code> Tensor </code>
將張量插值到給定大小。
類別: utils/tensor
的靜態方法
返回: Tensor
- 插值後的張量。
引數量 | 型別 | 描述 |
---|---|---|
輸入 | 張量 | 要插值的輸入張量。資料必須是通道優先的(即 [c, h, w]) |
尺寸 | Array.<number> | 影像的輸出尺寸 |
模式 | 字串 | 插值模式 |
align_corners | boolean | 是否對齊角點。 |
utils/tensor.interpolate_4d(input, options) ⇒ <code> Promise. < Tensor > </code>
對輸入進行降取樣/升取樣。靈感來自 https://pytorch.org/docs/stable/generated/torch.nn.functional.interpolate.html。
類別: utils/tensor
的靜態方法
返回: Promise.<Tensor>
- 插值後的張量。
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
輸入 | 張量 | 輸入張量 | |
選項 | 物件 | 插值的選項 | |
[options.size] | * |
| 輸出空間大小。 |
[options.mode] | "nearest" | "bilinear" | "bicubic" | 'bilinear' | 上取樣使用的演算法 |
utils/tensor.matmul(a, b) ⇒ <code> Promise. < Tensor > </code>
兩個張量的矩陣乘積。靈感來自 https://pytorch.org/docs/stable/generated/torch.matmul.html
類別: utils/tensor
的靜態方法
返回: Promise.<Tensor>
- 兩個張量的矩陣乘積。
引數量 | 型別 | 描述 |
---|---|---|
a | 張量 | 第一個乘數張量 |
b | 張量 | 第二個乘數張量 |
utils/tensor.rfft(x, a) ⇒ <code> Promise. < Tensor > </code>
計算實值輸入的一維傅立葉變換。靈感來自 https://pytorch.org/docs/stable/generated/torch.fft.rfft.html
類別: utils/tensor
的靜態方法
返回: Promise.<Tensor>
- 輸出張量。
引數量 | 型別 | 描述 |
---|---|---|
x | 張量 | 實數輸入張量 |
a | 張量 | 進行一維實數 FFT 的維度。 |
utils/tensor.topk(x, [k]) ⇒ <code> * </code>
返回給定輸入張量的 k 個最大元素。靈感來自 https://pytorch.org/docs/stable/generated/torch.topk.html
類別: utils/tensor
的靜態方法
返回: *
- 包含 top-k 元素及其索引的輸出元組 (Tensor, LongTensor)。
引數量 | 型別 | 描述 |
---|---|---|
x | 張量 | 輸入張量 |
[k] | 數字 | "top-k" 中的 k 值 |
utils/tensor.slice(data:, starts:, ends:, axes:, [steps]) ⇒ <code> Promise. < Tensor > </code>
切片多維 float32 張量。
類別: utils/tensor
的靜態方法
返回: Promise.<Tensor>
- 切片資料張量。
引數量 | 型別 | 描述 |
---|---|---|
data | 張量 | 要提取切片的資料張量 |
starts | Array.<number> | axes 中對應軸的起始索引的一維陣列 |
ends | Array.<number> | axes 中對應軸的結束索引(不包含)的一維陣列 |
軸 | Array.<number> | starts 和 ends 應用的軸的一維陣列 |
[steps] | Array.<number> | axes 中對應軸的切片步長的一維陣列。 |
utils/tensor.mean_pooling(last_hidden_state, attention_mask) ⇒ <code> Tensor </code>
對最後一個隱藏狀態執行平均池化,然後進行歸一化。
類別: utils/tensor
的靜態方法
返回: Tensor
- 返回形狀為 [batchSize, embedDim] 的新張量。
引數量 | 型別 | 描述 |
---|---|---|
last_hidden_state | 張量 | 形狀為 [batchSize, seqLength, embedDim] 的張量 |
attention_mask | 張量 | 形狀為 [batchSize, seqLength] 的張量 |
utils/tensor.layer_norm(input, normalized_shape, options) ⇒ <code> Tensor </code>
對最後某些維度應用層歸一化。
類別: utils/tensor
的靜態方法
返回:Tensor
- 歸一化後的張量。
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
輸入 | 張量 | 輸入張量 | |
normalized_shape | Array.<number> | 期望輸入大小的輸入形狀 | |
選項 | 物件 | 層歸一化的選項 | |
[options.eps] | 數字 | 1e-5 | 為數值穩定性新增到分母的值。 |
utils/tensor.cat(tensors, dim) ⇒ <code> Tensor </code>
沿著指定維度連線張量陣列。
類別: utils/tensor
的靜態方法
返回: Tensor
- 連線後的張量。
引數量 | 型別 | 描述 |
---|---|---|
張量 | Array.<Tensor> | 要連線的張量陣列。 |
維度 | 數字 | 要連線的維度。 |
utils/tensor.stack(tensors, dim) ⇒ <code> Tensor </code>
沿著指定維度堆疊張量陣列。
類別: utils/tensor
的靜態方法
返回: Tensor
- 堆疊後的張量。
引數量 | 型別 | 描述 |
---|---|---|
張量 | Array.<Tensor> | 要堆疊的張量陣列。 |
維度 | 數字 | 要堆疊的維度。 |
utils/tensor.std_mean(input, dim, correction, keepdim) ⇒ <code> Array. < Tensor > </code>
計算由 dim 指定的維度的標準差和均值。dim 可以是單個維度,或為 null
以縮減所有維度。
類別: utils/tensor
的靜態方法
返回: Array.<Tensor>
- (std, mean) 張量的元組。
引數量 | 型別 | 描述 |
---|---|---|
輸入 | 張量 | 輸入張量 |
維度 | number | null | 要縮減的維度。如果為 None,則縮減所有維度。 |
校正 | 數字 | 樣本大小與樣本自由度之間的差值。預設為貝塞爾校正,correction=1。 |
保持維度 | boolean | 輸出張量是否保留 dim。 |
utils/tensor.mean(input, dim, keepdim) ⇒ <code> Tensor </code>
返回給定維度 dim 中輸入張量每行的平均值。
類別: utils/tensor
的靜態方法
返回: Tensor
- 沿著指定維度取平均值的新張量。
引數量 | 型別 | 描述 |
---|---|---|
輸入 | 張量 | 輸入張量。 |
維度 | number | null | 要縮減的維度。 |
保持維度 | boolean | 輸出張量是否保留 dim。 |
utils/tensor.full(size, fill_value) ⇒ <code> Tensor </code>
建立一個大小為 size 且填充了 fill_value 的張量。張量的資料型別根據 fill_value 推斷。
類別: utils/tensor
的靜態方法
返回: Tensor
- 填充後的張量。
引數量 | 型別 | 描述 |
---|---|---|
尺寸 | Array.<number> | 定義輸出張量形狀的整數序列。 |
fill_value | number | bigint | boolean | 用於填充輸出張量的值。 |
utils/tensor.ones(size) ⇒ <code> Tensor </code>
返回一個填充了標量值 1 的張量,其形狀由可變引數 size 定義。
類別: utils/tensor
的靜態方法
返回: Tensor
- 全為 1 的張量。
引數量 | 型別 | 描述 |
---|---|---|
尺寸 | Array.<number> | 定義輸出張量形狀的整數序列。 |
utils/tensor.ones_like(tensor) ⇒ <code> Tensor </code>
返回一個填充了標量值 1 的張量,其大小與輸入張量相同。
類別: utils/tensor
的靜態方法
返回: Tensor
- 全為 1 的張量。
引數量 | 型別 | 描述 |
---|---|---|
張量 | 張量 | 輸入張量的大小將決定輸出張量的大小。 |
utils/tensor.zeros(size) ⇒ <code> Tensor </code>
返回一個填充了標量值 0 的張量,其形狀由可變引數 size 定義。
類別: utils/tensor
的靜態方法
返回: Tensor
- 全為 0 的張量。
引數量 | 型別 | 描述 |
---|---|---|
尺寸 | Array.<number> | 定義輸出張量形狀的整數序列。 |
utils/tensor.zeros_like(tensor) ⇒ <code> Tensor </code>
返回一個填充了標量值 0 的張量,其大小與輸入張量相同。
類別: utils/tensor
的靜態方法
返回: Tensor
- 全為 0 的張量。
引數量 | 型別 | 描述 |
---|---|---|
張量 | 張量 | 輸入張量的大小將決定輸出張量的大小。 |
utils/tensor.rand(size) ⇒ <code> Tensor </code>
返回一個填充了來自區間 [0, 1) 的均勻分佈隨機數的張量
類別: utils/tensor
的靜態方法
返回: Tensor
- 隨機張量。
引數量 | 型別 | 描述 |
---|---|---|
尺寸 | Array.<number> | 定義輸出張量形狀的整數序列。 |
utils/tensor.quantize_embeddings(tensor, precision) ⇒ <code> Tensor </code>
將嵌入張量量化為二進位制或無符號二進位制精度。
類別: utils/tensor
的靜態方法
返回: Tensor
- 量化後的張量。
引數量 | 型別 | 描述 |
---|---|---|
張量 | 張量 | 要量化的張量。 |
精度 | 'binary' | 'ubinary' | 用於量化的精度。 |
utils/tensor~args[0] : <code> ONNXTensor </code>
類別: utils/tensor
的內部屬性
utils/tensor~reshape(data, dimensions) ⇒ <code> * </code>
根據提供的維度,將一維陣列重塑為 N 維陣列。
類別: utils/tensor
的內部方法
返回: *
- 重塑後的陣列。
引數量 | 型別 | 描述 |
---|---|---|
data | Array<T> | DataArray | 要重塑的輸入陣列。 |
維度 | DIM | 目標形狀/維度。 |
示例
reshape([10 ], [1 ]); // Type: number[] Value: [10]
reshape([1, 2, 3, 4 ], [2, 2 ]); // Type: number[][] Value: [[1, 2], [3, 4]]
reshape([1, 2, 3, 4, 5, 6, 7, 8], [2, 2, 2]); // Type: number[][][] Value: [[[1, 2], [3, 4]], [[5, 6], [7, 8]]]
reshape([1, 2, 3, 4, 5, 6, 7, 8], [4, 2 ]); // Type: number[][] Value: [[1, 2], [3, 4], [5, 6], [7, 8]]
reshape~reshapedArray : <code> any </code>
類別: reshape
的內部屬性
utils/tensor~reduce_helper(callbackfn, input, dim, keepdim) ⇒ <code> * </code>
類別: utils/tensor
的內部方法
返回: *
- 縮減後的張量資料。
引數量 | 型別 | 預設 | 描述 |
---|---|---|---|
callbackfn | * | ||
輸入 | 張量 | 輸入張量。 | |
維度 | number | null |
| 要縮減的維度。 |
保持維度 | boolean | false | 輸出張量是否保留 dim。 |
utils/tensor~DataArray : <code> * </code>
類別: utils/tensor
的內部型別定義
utils/tensor~NestArray : <code> * </code>
這會建立給定型別和深度的巢狀陣列(請參閱示例)。
類別: utils/tensor
的內部型別定義
示例
NestArray<string, 1>; // string[]
示例
NestArray<number, 2>; // number[][]
示例
NestArray<string, 3>; // string[][][] etc.
< > 在 GitHub 上更新