nuget server logo nuget api documents
↑

API Docs / Microsoft.VisualBasic.MachineLearning.TensorFlow / NumPyModule

NumPyModule

Full name Microsoft.VisualBasic.MachineLearning.TensorFlow.NumPy.NumPyModule Assembly Microsoft.VisualBasic.MachineLearning.TensorFlow Members 51

NumPy 兼容 API 模块 提供类 NumPy 的静态方法,全部基于 Tensor 实现

00 Remarks

典型用法: Imports np = Microsoft.VisualBasic.MachineLearning.TensorFlow.NumPy Dim a = np.zeros(3, 4) Dim b = np.dot(a, a.transpose())

01 Syntax

Microsoft.VisualBasic.MachineLearning.TensorFlow.NumPy.NumPyModule

02 Methods

NameOverloadsSummary
array 1 从数据和形状创建张量 (np.array)
zeros 1 创建全零张量 (np.zeros)
ones 1 创建全一张量 (np.ones)
full 1 创建填充指定值的张量 (np.full)
eye 1 创建单位矩阵 (np.eye)
identity 1 创建单位矩阵 (np.identity)
arange 1 创建等差数列张量 (np.arange)
linspace 1 创建等间距张量 (np.linspace)
logspace 1 创建对数等间距张量 (np.logspace)
reshape 1 重塑张量形状 (np.reshape) 返回新的张量,不修改原张量
transpose 1 转置张量 (np.transpose)
expand_dims 1 在指定位置插入一个大小为 1 的维度 (np.expand_dims)
squeeze 1 移除大小为 1 的维度 (np.squeeze)
flatten 1 展平张量为一维 (np.flatten / np.ravel)
dot 1 矩阵乘法 (np.dot / np.matmul)
matmul 1 矩阵乘法 (np.matmul)
concatenate 1 沿指定轴拼接多个张量 (np.concatenate)
stack 1 沿新轴堆叠多个张量 (np.stack)
vstack 1 垂直堆叠 (np.vstack) - 相当于 axis=0 的 concatenate
hstack 1 水平堆叠 (np.hstack) - 对于 1D 相当于 axis=0 的 concatenate,对于 2D+ 相当于 axis=1
split 1 将张量沿指定轴分割为多个子张量 (np.split)
slice 1 沿指定轴截取连续区间 (np.slice / 基本切片的等价形式)。
topk 1 沿最后一维取最大的 k 个元素及其下标。
sum 1 计算所有元素或沿指定轴的和 (np.sum)
mean 1 计算所有元素或沿指定轴的均值 (np.mean)
max 1 计算所有元素或沿指定轴的最大值 (np.max)
min 1 计算所有元素或沿指定轴的最小值 (np.min)
argmax 1 找到最大值索引 (np.argmax)
argmin 1 找到最小值索引 (np.argmin)
std 1 计算标准差 (np.std)
prod 1 所有元素的乘积 (np.prod)
exp 1 逐元素指数 (np.exp)
log 1 逐元素自然对数 (np.log)
sqrt 1 逐元素平方根 (np.sqrt)
square 1 逐元素平方 (np.square)
abs 1 逐元素绝对值 (np.abs)
power 1 逐元素幂运算 (np.power)
clip 1 逐元素裁剪 (np.clip)
maximum 1 逐元素最大值 (np.maximum)
minimum 1 逐元素最小值 (np.minimum)
sin 1 逐元素正弦 (np.sin)
cos 1 逐元素余弦 (np.cos)
tanh 1 逐元素双曲正切 (np.tanh)
where 1 条件选择 (np.where) condition 中非零位置取 x 值,零位置取 y 值
greater 1 逐元素比较大于 (np.greater)
less 1 逐元素比较小于 (np.less)
equal 1 逐元素比较相等 (np.equal)
shape 1 获取张量的形状 (np.shape)
ndim 1 获取张量的维度数 (np.ndim)
size 1 获取张量中元素的总数 (np.size)
as_double_array 1 将张量转换为 Double 数组 (np.asarray)

03 Members

method array #
array(Double(), Int32())

从数据和形状创建张量 (np.array)

method zeros #
zeros(Int32())

创建全零张量 (np.zeros)

method ones #
ones(Int32())

创建全一张量 (np.ones)

method full #
full(Int32(), Double)

创建填充指定值的张量 (np.full)

method eye #
eye(Int32, Nullable(Of Int32))

创建单位矩阵 (np.eye)

Parameters
NameTypeDescription
nInt32

行数

mNullable(Of Int32)

列数(可选,默认为 n)

method identity #
identity(Int32)

创建单位矩阵 (np.identity)

method arange #
arange(Double, Nullable(Of Double), Double)

创建等差数列张量 (np.arange)

method linspace #
linspace(Double, Double, Int32)

创建等间距张量 (np.linspace)

Parameters
NameTypeDescription
startDouble

起始值

[stop]Double

终止值(包含)

numInt32

元素个数,默认 50

method logspace #
logspace(Double, Double, Int32, Double)

创建对数等间距张量 (np.logspace)

Parameters
NameTypeDescription
startDouble

10^start 起始

[stop]Double

10^stop 终止

numInt32

元素个数,默认 50

baseDouble

对数底数,默认 10.0

method reshape #
reshape(Tensor, Int32())

重塑张量形状 (np.reshape) 返回新的张量,不修改原张量

method transpose #
transpose(Tensor)

转置张量 (np.transpose)

method expand_dims #
expand_dims(Tensor, Int32)

在指定位置插入一个大小为 1 的维度 (np.expand_dims)

method squeeze #
squeeze(Tensor, Nullable(Of Int32))

移除大小为 1 的维度 (np.squeeze)

Parameters
NameTypeDescription
tTensor

输入张量

axisNullable(Of Int32)

指定要移除的轴,若不指定则移除所有大小为 1 的维度

method flatten #
flatten(Tensor)

展平张量为一维 (np.flatten / np.ravel)

method dot #

矩阵乘法 (np.dot / np.matmul)

method matmul #
matmul(Tensor, Tensor)

矩阵乘法 (np.matmul)

method concatenate #
concatenate(Tensor(), Int32)

沿指定轴拼接多个张量 (np.concatenate)

method stack #
stack(Tensor(), Int32)

沿新轴堆叠多个张量 (np.stack)

method vstack #
vstack(Tensor())

垂直堆叠 (np.vstack) - 相当于 axis=0 的 concatenate

method hstack #
hstack(Tensor())

水平堆叠 (np.hstack) - 对于 1D 相当于 axis=0 的 concatenate,对于 2D+ 相当于 axis=1

method split #
split(Tensor, Int32, Int32)

将张量沿指定轴分割为多个子张量 (np.split)

method slice #
slice(Tensor, Int32, Int32, Int32)

沿指定轴截取连续区间 (np.slice / 基本切片的等价形式)。

Parameters
NameTypeDescription
tTensor

输入张量

startInt32

起始下标(含)

lengthInt32

截取长度

axisInt32

切片轴,支持负数

method topk #
topk(Tensor, Int32, Tensor)

沿最后一维取最大的 k 个元素及其下标。

Remarks

与 argmax 一样,下标以 Double 存储。该算子没有 NumPy 的一一对应 函数(np.argsort 只给下标),因此同时返回 "值" 与 "下标" 两个张量。

Parameters
NameTypeDescription
tTensor

输入张量

kInt32

保留的元素个数

indicesTensor

输出参数:被选中元素在原始最后一维中的下标

method sum #
sum(Tensor, Nullable(Of Int32))

计算所有元素或沿指定轴的和 (np.sum)

method mean #
mean(Tensor, Nullable(Of Int32))

计算所有元素或沿指定轴的均值 (np.mean)

method max #
max(Tensor, Nullable(Of Int32))

计算所有元素或沿指定轴的最大值 (np.max)

method min #
min(Tensor, Nullable(Of Int32))

计算所有元素或沿指定轴的最小值 (np.min)

method argmax #
argmax(Tensor, Nullable(Of Int32))

找到最大值索引 (np.argmax)

method argmin #
argmin(Tensor, Nullable(Of Int32))

找到最小值索引 (np.argmin)

method std #
std(Tensor, Nullable(Of Int32))

计算标准差 (np.std)

method prod #
prod(Tensor, Nullable(Of Int32))

所有元素的乘积 (np.prod)

method exp #
exp(Tensor)

逐元素指数 (np.exp)

method log #
log(Tensor)

逐元素自然对数 (np.log)

method sqrt #
sqrt(Tensor)

逐元素平方根 (np.sqrt)

method square #
square(Tensor)

逐元素平方 (np.square)

method abs #
abs(Tensor)

逐元素绝对值 (np.abs)

method power #
power(Tensor, Double)

逐元素幂运算 (np.power)

method clip #
clip(Tensor, Double, Double)

逐元素裁剪 (np.clip)

method maximum #
maximum(Tensor, Tensor)

逐元素最大值 (np.maximum)

method minimum #
minimum(Tensor, Tensor)

逐元素最小值 (np.minimum)

method sin #
sin(Tensor)

逐元素正弦 (np.sin)

method cos #
cos(Tensor)

逐元素余弦 (np.cos)

method tanh #
tanh(Tensor)

逐元素双曲正切 (np.tanh)

method where #

条件选择 (np.where) condition 中非零位置取 x 值,零位置取 y 值

method greater #
greater(Tensor, Tensor)

逐元素比较大于 (np.greater)

method less #
less(Tensor, Tensor)

逐元素比较小于 (np.less)

method equal #
equal(Tensor, Tensor)

逐元素比较相等 (np.equal)

method shape #
shape(Tensor)

获取张量的形状 (np.shape)

method ndim #
ndim(Tensor)

获取张量的维度数 (np.ndim)

method size #
size(Tensor)

获取张量中元素的总数 (np.size)

method as_double_array #
as_double_array(Tensor)

将张量转换为 Double 数组 (np.asarray)