Functional API 变更与说明

本章节列出了 v0.6 与 v1.0 版本的 Functional API 对比,并以 v1.0 为基准(中间列)。 有些 API 是 v1.0 版本新增的,表现为 v0.6 列为空。有些 API 在 v1.0 中被删除了,表现为 v1.0 列为空。

API 对应关系表以及相关说明

v0.6

v1.0

备注

abs

abs()

arccos

acos()

acosh()

adaptive_avg_pool2d()

adaptive_max_pool2d()

add

add()

add_update

arange

arange()

end 参数名改为 stop

argmax

argmax()

argmin

argmin()

argsort

argsort()

优化了返回值,只返回排序的 indices,不再返回 sorted tensor

arcsin

asin()

asinh()

atan()

atan2()

atanh()

avg_pool2d

avg_pool2d()

增加 mode 参数

batch_norm2d

batch_norm()

增加 inplace 参数

binary_cross_entropy

binary_cross_entropy()

增加 with_logits 参数;需要用 F.loss.binary_cross_entropy 调用

broadcast_to

broadcast_to()

ceil

ceil()

clamp

clip()

重命名

concat

concat()

删除 comp_graph 参数

cond_take

cond_take()

删除 val 参数

conv2d

conv2d()

conv_bias_activation

conv_bias_activation()

需要用 F.nn.conv_bias_activation 调用

conv_transpose2d

conv_transpose2d()

copy()

cos

cos()

cosh()

cross_entropy_with_softmax

cross_entropy()

设置 with_logits = True 则等价于 cross_entropy_with_softmax;需要用 F.loss.cross_entropy 调用

divide

div()

重命名

dot()

dropout

dropout()

rescale 参数重命名为 training

embedding

embedding()

需要用 F.nn.embedding 调用

equal

equal()

exp

exp()

add_axis

expand_dims()

重命名,并支持 axis list

expm1()

eye

eye()

形状参数从 shape tuple 改为二维的 N 与 M

flatten

flatten()

floor

floor()

floor_div()

full()

full_like()

gather

gather()

greater

greater()

greater_equal

greater_equal()

hinge_loss

hinge_loss()

需要用 F.loss.hinge_loss 调用

hsigmoid()

hswish()

identity

indexing_one_hot

indexing_one_hot()

interpolate

interpolate()

需要用 F.nn.interpolate 调用

isinf

isinf()

返回 bool tensor 而不是 int tensor

isnan

isnan()

返回 bool tensor 而不是 int tensor

leaky_relu

leaky_relu()

left_shift()

less

less()

less_equal

less_equal()

linear

linear()

需要用 F.nn.linear 调用

linspace

linspace()

local_conv2d

local_conv2d()

log

log()

log1p()

logical_and()

logical_not()

logical_or()

logical_xor()

logsigmoid()

logsoftmax()

logsumexp

logsumexp()

l1_loss

l1_loss()

需要用 F.loss.l1_loss 调用

matrix_mul, batched_matrix_mul

matmul()

支持 1d,2d,nd 等多种情况,是 dot/matrix_mul/batched_matrix_mul 的合集

max

max()

max_pool2d

max_pool2d()

maximum

maximum()

mean

mean()

min

min()

minimum

minimum()

mod

mod()

multiply

mul()

neg()

nms()

需要用 F.nn.nms 调用

norm

norm()

normalize

normalize()

not_equal()

ones()

one_hot

one_hot()

ones_like()

power

pow()

重命名

prelu

prelu()

prod

prod()

relu

relu()

relu6()

reshape

reshape()

right_shift()

roi_align

roi_align()

需要用 F.nn.roi_align 调用

roi_pooling

roi_pooling()

需要用 F.nn.roi_pooling 调用

round

round()

scatter

scatter()

sigmoid

sigmoid()

sign()

sin

sin()

sinh()

softmax

softmax()

softplus

softplus()

sort

sort()

split()

sqrt

sqrt()

square()

square_loss

square_loss()

需要用 F.loss.square_loss 调用

remove_axis

squeeze()

重命名;支持 axis list

stack()

std()

subtract

sub()

sum

sum()

svd()

sync_batch_norm

sync_batch_norm()

需要用 F.nn.sync_batch_norm 调用

tan()

tanh

tanh()

top_k

topk()

重命名

accuracy

topk_accuracy()

重命名

dimshuffle/transpose

transpose()

删除 dimshuffle 的别名

var()

warp_perspective

warp_perspective()

where

where()

zeros()

zeros_like

zeros_like()

add_extra_vardep

assert_equal

binary_cross_entropy

cross_entropy

grad

nll_loss

shapeof

如要获得 symbolic tensor,现在可以设置环境变量 MEGENGINE_USE_SYMBOLIC_SHAPE=1 来实现

smooth_l1_loss

triplet_margin_loss

zero_grad