Transformers.js 文档

utils/maths

Hugging Face's logo
加入 Hugging Face 社区

并获得增强型文档体验

入门

utils/maths

用于数学处理的辅助模块。

这些函数和类仅用于内部,这意味着最终用户无需访问此处的内容。


utils/maths.interpolate_data(input)

类型: utils/maths 的静态方法

参数类型
inputTypedArray

utils/maths.permute_data(array, dims, axes) ⇒ <code> * </code>

帮助方法,直接置换 AnyTypedArray

类型: utils/maths 的静态方法
返回值: * - 置换后的数组和新的形状。

参数类型
arrayT
dimsArray.<number>
axesArray.<number>

utils/maths.softmax(arr) ⇒ <code> T </code>

计算数字数组的softmax。

类型: utils/maths 的静态方法
返回: T - softmax数组。

参数类型描述
arrT

要计算softmax的数字数组。


utils/maths.log_softmax(arr) ⇒ <code> T </code>

计算输入数组的softmax函数的对数。

类型: utils/maths 的静态方法
返回: T - 结果log_softmax数组。

参数类型描述
arrT

要计算log_softmax函数的输入数组。


utils/maths.dot(arr1, arr2) ⇒ <code> number </code>

计算两个数组的点积。

类型: utils/maths 的静态方法
返回: number - arr1和arr2的点积。

参数类型描述
arr1Array.<number>

第一个数组。

arr2Array.<number>

第二个数组。


utils/maths.cos_sim(arr1, arr2) ⇒ <code> number </code>

计算两个数组之间的余弦相似度。

类型: utils/maths 的静态方法
返回: number - 两个数组之间的余弦相似度。

参数类型描述
arr1Array.<number>

第一个数组。

arr2Array.<number>

第二个数组。


utils/maths.magnitude(arr) ⇒ <code> number </code>

计算给定数组的大小。

类型: utils/maths 的静态方法
返回: number - 数组的大小。

参数类型描述
arrArray.<number>

要计算大小的数组。


utils/maths.min(arr) ⇒ <code> * </code>

返回数组中最小元素的值和索引。

类型: utils/maths 的静态方法
返回: * - 最小元素的值和索引,格式为:[valueOfMin, indexOfMin]
抛出:

  • Error 如果数组为空。
参数类型描述
arrArray<number> | TypedArray

数字数组。


utils/maths.max(arr) ⇒ <code> * </code>

返回数组中最大元素的值和索引。

类型: utils/maths 的静态方法
返回: * - 最大元素的值和索引,格式为:[valueOfMax, indexOfMax]
抛出:

  • Error 如果数组为空。
参数类型描述
arrArray<number> | AnyTypedArray

数字数组。


utils/maths.medianFilter(data, windowSize)

对提供的数据执行中值滤波。填充通过镜像数据完成。

类型: utils/maths 的静态方法

参数类型描述
dataAnyTypedArray

输入数组

windowSizenumber

窗口大小


utils/maths.round(num, decimals) ⇒ <code> number </code>

辅助函数,用于将数字四舍五入到给定的位数。

类型: utils/maths 的静态方法
返回: number - 四舍五入后的数字

参数类型描述
numnumber

要四舍五入的数字

decimalsnumber

位数


utils/maths.bankers_round(x) ⇒ <code> number </code>

辅助函数,用于将数字四舍五入到最接近的整数,其中平局四舍五入到最接近的偶数。也称为“银行家舍入”。这是 python 中的默认舍入模式。例如:1.5 四舍五入到 2,2.5 四舍五入到 2。

类型: utils/maths 的静态方法
返回: number - 四舍五入后的数字

参数类型描述
xnumber

要四舍五入的数字


utils/maths.dynamic_time_warping(matrix) ⇒ <code> Array. < Array < number > > </code>

测量两个时间序列(例如,输入音频和输出标记以生成标记级时间戳)之间的相似性。

类型: utils/maths 的静态方法

参数类型
matrixArray.<Array<number>>

utils/maths~P2FFT

基-4 FFT 的实现。

P2FFT 类提供对长度为 2 的幂的数组执行快速傅里叶变换的功能。代码改编自 https://npmjs.net.cn/package/fft.js

Kind: utils/maths 的内部类


new P2FFT(size)

抛出:

  • Error FFT 大小必须是大于 1 的 2 的幂。
参数类型描述
sizenumber

输入数组的大小。必须是大于 1 的 2 的幂。


p2FFT.createComplexArray() ⇒ <code> Float64Array </code>

创建一个大小为 2 * size 的复数数组。

Kind: P2FFT 的实例方法
Returns: Float64Array - 一个大小为 2 * size 的复数数组。


p2FFT.fromComplexArray(complex, [storage]) ⇒ <code> Array. < number > </code>

将存储在 Float64Array 中的复数表示转换为实数数组。

Kind: P2FFT 的实例方法
Returns: Array.<number> - 表示输入复数表示的实数数组。

参数类型描述
complexFloat64Array

要转换的复数表示。

[storage]Array.<number>

可选数组,用于存储结果。


p2FFT.toComplexArray(input, [storage]) ⇒ <code> Float64Array </code>

将实值输入数组转换为复值输出数组。

Kind: P2FFT 的实例方法
Returns: Float64Array - 复值输出数组。

参数类型描述
inputFloat64Array

input

[storage]Float64Array

实值输入数组。


[storage]

用于存储输出数组的可选缓冲区。

Kind: P2FFT 的实例方法
抛出:

  • p2FFT.transform(out, data) ⇒ <code> void </code>
参数类型描述
对给定的输入数据执行快速傅里叶变换 (FFT),并将结果存储在输出缓冲区中。Float64Array

Error 输入和输出缓冲区必须不同。

dataFloat64Array

out


用于存储结果的输出缓冲区。

data

Kind: P2FFT 的实例方法
抛出:

  • 要转换的输入数据。
参数类型描述
对给定的输入数据执行快速傅里叶变换 (FFT),并将结果存储在输出缓冲区中。Float64Array

p2FFT.realTransform(out, data)

dataFloat64Array

对给定的输入缓冲区执行实值正向 FFT,并将结果存储在给定的输出缓冲区中。输入缓冲区必须仅包含实数值,而输出缓冲区将包含复数值。输入和输出缓冲区必须不同。


Error 如果输入和输出缓冲区相同。

out

Kind: P2FFT 的实例方法
抛出:

  • 输出缓冲区。
参数类型描述
对给定的输入数据执行快速傅里叶变换 (FFT),并将结果存储在输出缓冲区中。Float64Array

data

dataFloat64Array

out


包含实值的输入缓冲区。

p2FFT.inverseTransform(out, data) ⇒ <code> void </code>

Kind: P2FFT 的实例方法

参数类型描述
对给定的输入数据执行快速傅里叶变换 (FFT),并将结果存储在输出缓冲区中。Float64Array

data

dataFloat64Array

对给定的 data 数组执行逆 FFT 变换,并将结果存储在 out 中。out 数组必须与 data 数组是不同的缓冲区。out 数组将包含变换的结果。data 数组不会被修改。

Error 如果 outdata 指向同一个缓冲区。number

out


p2FFT._singleTransform2(data, out, outOff, off, step) ⇒ <code> void </code>

对给定的数据集执行基数为 2 的离散傅里叶变换。

Kind: P2FFT 的实例方法

参数类型描述
dataFloat64Array

对给定的 data 数组执行逆 FFT 变换,并将结果存储在 out 中。out 数组必须与 data 数组是不同的缓冲区。out 数组将包含变换的结果。data 数组不会被修改。

对给定的输入数据执行快速傅里叶变换 (FFT),并将结果存储在输出缓冲区中。Float64Array

data

outOffnumber

写入输出数据的偏移量。

offnumber

开始读取输入数据的偏移量。

stepnumber

索引输入数据的步长。


p2FFT._singleTransform4(data, out, outOff, off, step, inv) ⇒ <code> void </code>

对长度为 8 的输入数据执行基数为 4 的变换。

Kind: P2FFT 的实例方法

参数类型描述
dataFloat64Array

长度为 8 的输入数据数组。

对给定的输入数据执行快速傅里叶变换 (FFT),并将结果存储在输出缓冲区中。Float64Array

长度为 8 的输出数据数组。

outOffnumber

要开始写入的输出数组的索引。

offnumber

要开始读取的输入数组的索引。

stepnumber

输入数组中元素之间的步长。

Error 如果 outdata 指向同一个缓冲区。number

逆变换的比例因子。


p2FFT._realTransform4(out, data, inv)

实数输入基数为 4 的实现。

Kind: P2FFT 的实例方法

参数类型描述
对给定的输入数据执行快速傅里叶变换 (FFT),并将结果存储在输出缓冲区中。Float64Array

变换数据的输出数组。

dataFloat64Array

要变换的实数数据的输入数组。

Error 如果 outdata 指向同一个缓冲区。number

用于规范化逆变换的比例因子。


p2FFT._singleRealTransform2(data, out, outOff, off, step) ⇒ <code> void </code>

对提供的进行单次实数输入基数为 2 的变换。

Kind: P2FFT 的实例方法

参数类型描述
dataFloat64Array

输入数据数组。

对给定的输入数据执行快速傅里叶变换 (FFT),并将结果存储在输出缓冲区中。Float64Array

输出数据数组。

outOffnumber

输出偏移量。

offnumber

输入偏移量。

stepnumber

步长。


p2FFT._singleRealTransform4(data, out, outOff, off, step, inv)

使用基数为 4 的算法计算单个实值变换。此方法仅在 len=8 时调用。

Kind: P2FFT 的实例方法

参数类型描述
dataFloat64Array

输入数据数组。

对给定的输入数据执行快速傅里叶变换 (FFT),并将结果存储在输出缓冲区中。Float64Array

输出数据数组。

outOffnumber

输出数组中的偏移量。

offnumber

输入数组中的偏移量。

stepnumber

输入数组的步长。

Error 如果 outdata 指向同一个缓冲区。number

inverse 的值。


utils/maths~NP2FFT

NP2FFT 类提供对非 2 的幂长度的数组执行快速傅里叶变换的功能。在这种情况下,使用 chirp-z 变换。

更多信息,请参见: https://math.stackexchange.com/questions/77118/non-power-of-2-ffts/77156#77156

Kind: utils/maths 的内部类


new NP2FFT(fft_length)

构造一个新的 NP2FFT 对象。

参数类型描述
fft_lengthnumber

FFT 的长度。


utils/maths~AnyTypedArray : <code> Int8Array </code> | <code> Uint8Array </code> | <code> Uint8ClampedArray </code> | <code> Int16Array </code> | <code> Uint16Array </code> | <code> Int32Array </code> | <code> Uint32Array </code> | <code> Float32Array </code> | <code> Float64Array </code>

种类utils/maths 的内部类型定义。


< > GitHub 上更新