LogSoftmax¶
LogSoftmax - 13¶
版本¶
域:
main
自版本:
13
函数:
True
支持级别:
SupportType.COMMON
形状推断:
True
此版本的操作符自版本 13 起可用。
摘要¶
该运算符计算给定输入的 softmax 值的对数。
LogSoftmax(input, axis) = Log(Softmax(input, axis=axis))
“axis” 属性指示将执行 LogSoftmax 的维度。输出张量具有相同的形状,并包含对应输入的 LogSoftmax 值。
属性¶
axis - INT(默认值为
'-1'
)描述将执行 LogSoftmax 的维度。负值表示从后向前计算维度。接受的范围是 [-r, r-1],其中 r = rank(input)。
输入¶
input(异构) - T
等级 >= 轴的输入张量。
输出¶
output(异构) - T
与输入张量具有相同形状的输出值。
类型约束¶
T in (
tensor(bfloat16)
,tensor(double)
,tensor(float)
,tensor(float16)
)将输入和输出类型约束为浮点张量。
LogSoftmax - 11¶
版本¶
域:
main
自版本:
11
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
此版本的操作符自版本 11 起可用。
摘要¶
该运算符计算给定输入的批次中每个层的日志softmax(softmax 的对数)值。
输入不需要显式为二维向量;相反,它将被强制转换为二维向量。对于任意 n 维张量输入 \in [a_0, a_1, …, a_{k-1}, a_k, …, a_{n-1}],并且 k 是提供的轴,那么输入将被强制转换为具有维度 [a_0 * … * a_{k-1}, a_k * … * a_{n-1}] 的二维张量。对于轴 = 1 的默认情况,这意味着输入张量将被强制转换为具有维度 [a_0, a_1 * … * a_{n-1}] 的二维张量,其中 a_0 通常是批次大小。在这种情况下,我们必须有 a_0 = N 且 a_1 * … * a_{n-1} = D。每个维度都必须正确匹配,否则运算符将抛出错误。输出张量具有相同的形状,并包含对应输入的日志softmax 值。
属性¶
axis - INT(默认值为
'1'
)描述输入在强制转换为二维时的轴;默认为 1,因为第 0 轴最有可能描述批次大小。负值表示从后向前计算维度。接受的范围是 [-r, r-1],其中 r = rank(input)。
输入¶
input(异构) - T
如上所述,输入张量强制转换为大小为 (NxD) 的二维矩阵。
输出¶
output(异构) - T
与输入张量具有相同形状的输出值(原始大小,未强制转换)。
类型约束¶
T in (
tensor(double)
,tensor(float)
,tensor(float16)
)将输入和输出类型约束为浮点张量。
LogSoftmax - 1¶
版本¶
域:
main
自版本:
1
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
此版本的操作符自版本 1 起可用。
摘要¶
该运算符计算给定输入的批次中每个层的日志softmax(softmax 的对数)值。输入是一个二维张量(张量
输入不需要显式为二维向量;相反,它将被强制转换为二维向量。对于任意 n 维张量输入 \in [a_0, a_1, …, a_{k-1}, a_k, …, a_{n-1}],并且 k 是提供的轴,那么输入将被强制转换为具有维度 [a_0 * … * a_{k-1}, a_k * … * a_{n-1}] 的二维张量。对于轴 = 1 的默认情况,这意味着输入张量将被强制转换为具有维度 [a_0, a_1 * … * a_{n-1}] 的二维张量,其中 a_0 通常是批次大小。在这种情况下,我们必须有 a_0 = N 且 a_1 * … * a_{n-1} = D。每个维度都必须正确匹配,否则运算符将抛出错误。
属性¶
axis - INT(默认值为
'1'
)描述输入在强制转换为二维时的轴;默认为 1,因为第 0 轴最有可能描述批次大小。
输入¶
input(异构) - T
如上所述,输入张量强制转换为大小为 (NxD) 的二维矩阵。
输出¶
output(异构) - T
与输入张量具有相同形状的输出值(原始大小,未强制转换)。
类型约束¶
T in (
tensor(double)
,tensor(float)
,tensor(float16)
)将输入和输出类型约束为浮点张量。