Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Crayon鑫
Paddle
提交
a67fc4be
P
Paddle
项目概览
Crayon鑫
/
Paddle
与 Fork 源项目一致
Fork自
PaddlePaddle / Paddle
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
a67fc4be
编写于
3月 14, 2022
作者:
P
phlrain
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add yaml config; test=develop
上级
f7765991
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
827 addition
and
822 deletion
+827
-822
paddle/fluid/eager/auto_code_generator/final_state_generator/eager_gen.py
...er/auto_code_generator/final_state_generator/eager_gen.py
+2
-2
paddle/phi/infermeta/backward.h
paddle/phi/infermeta/backward.h
+3
-0
python/paddle/utils/code_gen/api.yaml
python/paddle/utils/code_gen/api.yaml
+526
-526
python/paddle/utils/code_gen/api_gen.py
python/paddle/utils/code_gen/api_gen.py
+1
-0
python/paddle/utils/code_gen/backward.yaml
python/paddle/utils/code_gen/backward.yaml
+294
-294
python/paddle/utils/code_gen/wrapped_infermeta_gen.py
python/paddle/utils/code_gen/wrapped_infermeta_gen.py
+1
-0
未找到文件。
paddle/fluid/eager/auto_code_generator/final_state_generator/eager_gen.py
浏览文件 @
a67fc4be
...
...
@@ -202,7 +202,7 @@ def ParseYamlArgs(string):
default_value
=
m
.
group
(
3
).
split
(
"="
)[
1
].
strip
()
if
len
(
m
.
group
(
3
).
split
(
"="
))
>
1
else
None
assert
arg_type
in
yaml_types_mapping
.
keys
()
assert
arg_type
in
yaml_types_mapping
.
keys
()
,
arg_type
arg_type
=
yaml_types_mapping
[
arg_type
]
if
"Tensor"
in
arg_type
:
assert
default_value
is
None
...
...
@@ -1126,7 +1126,7 @@ if __name__ == "__main__":
fwd_returns_str
=
fwd_api
[
'output'
]
bwd_api_name
=
fwd_api
[
'backward'
]
assert
bwd_api_name
in
grad_api_dict
.
keys
()
assert
bwd_api_name
in
grad_api_dict
.
keys
()
,
bwd_api_name
bwd_api
=
grad_api_dict
[
bwd_api_name
]
assert
'args'
in
bwd_api
.
keys
()
...
...
paddle/phi/infermeta/backward.h
浏览文件 @
a67fc4be
...
...
@@ -17,6 +17,9 @@ limitations under the License. */
#include <tuple>
#include "paddle/phi/core/meta_tensor.h"
#include "paddle/phi/infermeta/binary.h"
#include "paddle/phi/infermeta/multiary.h"
#include "paddle/phi/infermeta/ternary.h"
#include "paddle/phi/infermeta/unary.h"
namespace
phi
{
...
...
python/paddle/utils/code_gen/api.yaml
浏览文件 @
a67fc4be
...
...
@@ -252,66 +252,66 @@
func
:
softmax
backward
:
softmax_grad
# maxout
-
api
:
maxout
args
:
(Tensor x, int groups, int axis)
output
:
Tensor
infer_meta
:
func
:
MaxoutInferMeta
kernel
:
func
:
maxout
backward
:
maxout_grad
#
#
maxout
#
- api : maxout
#
args : (Tensor x, int groups, int axis)
#
output : Tensor
#
infer_meta :
#
func : MaxoutInferMeta
#
kernel :
#
func : maxout
#
backward : maxout_grad
# put_along_axis
-
api
:
put_along_axis
args
:
(Tensor x, Tensor index, Tensor value, int axis, string reduce)
output
:
Tensor
infer_meta
:
func
:
PutAlongAxisInferMeta
kernel
:
func
:
put_along_axis
backward
:
put_along_axis_grad
#
#
put_along_axis
#
- api : put_along_axis
#
args : (Tensor x, Tensor index, Tensor value, int axis, string reduce)
#
output : Tensor
#
infer_meta :
#
func : PutAlongAxisInferMeta
#
kernel :
#
func : put_along_axis
#
backward : put_along_axis_grad
# take_along_axis
-
api
:
take_along_axis
args
:
(Tensor x, Tensor index, int axis)
output
:
Tensor
infer_meta
:
func
:
TakeAlongAxisInferMeta
kernel
:
func
:
take_along_axis
backward
:
take_along_axis_grad
#
#
take_along_axis
#
- api : take_along_axis
#
args : (Tensor x, Tensor index, int axis)
#
output : Tensor
#
infer_meta :
#
func : TakeAlongAxisInferMeta
#
kernel :
#
func : take_along_axis
#
backward : take_along_axis_grad
# matrix_power
-
api
:
maxtrix_power
args
:
(Tensor x, int n)
output
:
Tensor
infer_meta
:
func
:
MaxtrixPowerInferMeta
kernel
:
func
:
maxtrix_power
backward
:
maxtrix_power_grad
#
#
matrix_power
#
- api : maxtrix_power
#
args : (Tensor x, int n)
#
output : Tensor
#
infer_meta :
#
func : MaxtrixPowerInferMeta
#
kernel :
#
func : maxtrix_power
#
backward : maxtrix_power_grad
# eigh
-
api
:
eigh
args
:
(Tensor x, string uplo)
output
:
Tensor(out_w), Tensor(out_v)
infer_meta
:
func
:
EighInferMeta
kernel
:
func
:
eigh
backward
:
eigh_grad
#
#
eigh
#
- api : eigh
#
args : (Tensor x, string uplo)
#
output : Tensor(out_w), Tensor(out_v)
#
infer_meta :
#
func : EighInferMeta
#
kernel :
#
func : eigh
#
backward : eigh_grad
# segment_pool
-
api
:
segment_pool
args
:
(Tensor x, Tensor segment_ids, string pooltype)
output
:
Tensor(out), Tensor(summed_ids)
infer_meta
:
func
:
SegmentPoolInferMeta
kernel
:
func
:
segment_pool
backward
:
segment_pool_grad
#
#
segment_pool
#
- api : segment_pool
#
args : (Tensor x, Tensor segment_ids, string pooltype)
#
output : Tensor(out), Tensor(summed_ids)
#
infer_meta :
#
func : SegmentPoolInferMeta
#
kernel :
#
func : segment_pool
#
backward : segment_pool_grad
# accuracy
-
api
:
accuracy
...
...
@@ -451,7 +451,7 @@
args
:
(Tensor x, int axis, bool keepdims, bool flatten, int dtype)
output
:
Tensor
infer_meta
:
func
:
XXXX
InferMeta
func
:
ArgMinMax
InferMeta
kernel
:
func
:
argmin
...
...
@@ -460,7 +460,7 @@
args
:
(Tensor x, int axis, bool keepdims, bool flatten, int dtype)
output
:
Tensor
infer_meta
:
func
:
XXXX
InferMeta
func
:
ArgMinMax
InferMeta
kernel
:
func
:
argmax
...
...
@@ -469,85 +469,85 @@
args
:
(Tensor x, int axis, bool descending)
output
:
Tensor(out), Tensor(indices)
infer_meta
:
func
:
XXXX
InferMeta
func
:
Argsort
InferMeta
kernel
:
func
:
argsort
# auc; kernel why input?
-
api
:
auc
args
:
(Tensor x, Tensor label, Tensor stat_pos, Tenosr stat_neg, string
curve, int num_thresholds, int slide_steps)
output
:
Tensor(auc), Tensor(stat_pos_out), Tensor(stat_neg_out)
infer_meta
:
func
:
AucInferMeta
kernel
:
func
:
auc
#
- api : auc
# args : (Tensor x, Tensor label, Tensor stat_pos, Tensor stat_neg, str
curve, int num_thresholds, int slide_steps)
#
output : Tensor(auc), Tensor(stat_pos_out), Tensor(stat_neg_out)
#
infer_meta :
#
func : AucInferMeta
#
kernel :
#
func : auc
# batch_norm
-
api
:
batch_norm
args
:
(Tensor x, Tensor scale, Tensor bias, Tensor mean, Tensor variance, float momentum, float epsilon, string data_layout, bool is_test, bool use_global_stats, bool trainable_statistics, bool fuse_with_relu)
output
:
Tensor(out), Tensor(mean_out), Tensor(variance_out), Tensor(saved_mean), Tensor(saved_variance), Tensor(reserve_space)
infer_meta
:
func
:
XXXXInferMeta
kernel
:
func
:
batch_norm
backward
:
batch_norm_grad
#
#
batch_norm
#
- api : batch_norm
#
args : (Tensor x, Tensor scale, Tensor bias, Tensor mean, Tensor variance, float momentum, float epsilon, string data_layout, bool is_test, bool use_global_stats, bool trainable_statistics, bool fuse_with_relu)
#
output : Tensor(out), Tensor(mean_out), Tensor(variance_out), Tensor(saved_mean), Tensor(saved_variance), Tensor(reserve_space)
#
infer_meta :
#
func : XXXXInferMeta
#
kernel :
#
func : batch_norm
#
backward: batch_norm_grad
# bernoulli
-
api
:
bernoulli
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
BernoulliInferMeta
kernel
:
func
:
bernoulli
#
#
bernoulli
#
- api : bernoulli
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : BernoulliInferMeta
#
kernel :
#
func : bernoulli
# bilinear_tensor_product ?? optional
-
api
:
bilinear_tensor_product
args
:
(Tensor x, Tensor y, Tensor weight, Tensor bias)
output
:
Tensor
infer_meta
:
func
:
BilinearTensorProductInferMeta
kernel
:
func
:
bilinear_tensor_product
backward
:
bilinear_tensor_product_grad
#
#
bilinear_tensor_product ?? optional
#
- api : bilinear_tensor_product
#
args : (Tensor x, Tensor y, Tensor weight, Tensor bias)
#
output : Tensor
#
infer_meta :
#
func : BilinearTensorProductInferMeta
#
kernel :
#
func : bilinear_tensor_product
#
backward : bilinear_tensor_product_grad
# bincount ?? optional
-
api
:
bincount
args
:
(Tensor x, Tensor weight, int minlength)
output
:
Tensor
infer_meta
:
func
:
BincountInferMeta
kernel
:
func
:
bincount
#
- api : bincount
#
args : (Tensor x, Tensor weight, int minlength)
#
output : Tensor
#
infer_meta :
#
func : BincountInferMeta
#
kernel :
#
func : bincount
# bitwise_and
-
api
:
bitwise_and
args
:
(Tensor x, Tensor y)
output
:
Tensor
infer_meta
:
func
:
BitwiseInferMeta
kernel
:
func
:
bitwise_and
#
- api : bitwise_and
#
args : (Tensor x, Tensor y)
#
output : Tensor
#
infer_meta :
#
func : BitwiseInferMeta
#
kernel :
#
func : bitwise_and
# bitwise_or
-
api
:
bitwise_or
args
:
(Tensor x, Tensor y)
output
:
Tensor
infer_meta
:
func
:
BitwiseInferMeta
kernel
:
func
:
bitwise_or
#
#
bitwise_or
#
- api : bitwise_or
#
args : (Tensor x, Tensor y)
#
output : Tensor
#
infer_meta :
#
func : BitwiseInferMeta
#
kernel :
#
func : bitwise_or
# bitwise_xor
-
api
:
bitwise_xor
args
:
(Tensor x, Tensor y)
output
:
Tensor
infer_meta
:
func
:
BitwiseInferMeta
kernel
:
func
:
bitwise_xor
#
#
bitwise_xor
#
- api : bitwise_xor
#
args : (Tensor x, Tensor y)
#
output : Tensor
#
infer_meta :
#
func : BitwiseInferMeta
#
kernel :
#
func : bitwise_xor
# bitwise_not
-
api
:
bitwise_not
...
...
@@ -559,14 +559,14 @@
func
:
bitwise_not
# broadcast_tensors
-
api
:
broadcast_tensors
args
:
(Tensor[] x)
output
:
Tensor[]
infer_meta
:
func
:
BroadcastTensorsInferMeta
kernel
:
func
:
broadcast_tensors
backward
:
broadcast_tensors_grad
#
- api : broadcast_tensors
#
args : (Tensor[] x)
#
output : Tensor[]
#
infer_meta :
#
func : BroadcastTensorsInferMeta
#
kernel :
#
func : broadcast_tensors
#
backward : broadcast_tensors_grad
# cholesky
-
api
:
cholesky
...
...
@@ -588,8 +588,8 @@
func
:
cholesky_solve
backward
:
cholesky_solve_grad
# conv2d
# copy
#
#
conv2d
#
#
copy
# cumsum
...
...
@@ -601,458 +601,458 @@
kernel
:
func
:
cumsum
# depthwise_conv2d
# dropout ?? optional, intermediate
-
api
:
dropout
args
:
(Tensor x, Tensor seed_tensor, float p, bool is_test, string mode, int seed, bool fix_seed)
output
:
Tensor(out), Tensor(mask)
infer_meta
:
func
:
DropoutInferMeta
kernel
:
func
:
dropout
#
#
depthwise_conv2d
#
#
dropout ?? optional, intermediate
#
- api : dropout
#
args : (Tensor x, Tensor seed_tensor, float p, bool is_test, string mode, int seed, bool fix_seed)
#
output : Tensor(out), Tensor(mask)
#
infer_meta :
#
func : DropoutInferMeta
#
kernel :
#
func : dropout
# embedding
#
#
embedding
# erf
-
api
:
erf
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
ErfInferMeta
kernel
:
func
:
erf
backward
:
erf_grad
#
#
erf
#
- api : erf
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : ErfInferMeta
#
kernel :
#
func : erf
#
backward : erf_grad
# erfinv
-
api
:
erfinv
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
ErfinvInferMeta
kernel
:
func
:
erfinv
backward
:
erfinv_grad
#
#
erfinv
#
- api : erfinv
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : ErfinvInferMeta
#
kernel :
#
func : erfinv
#
backward : erfinv_grad
# expand_as ?? optional
-
api
:
expand_as
args
:
(Tensor x, Tensor y, int[] shape)
output
:
Tensor
infer_meta
:
func
:
ExpandAsInferMeta
kernel
:
func
:
expand_as
backward
:
expand_as_grad
#
#
expand_as ?? optional
#
- api : expand_as
#
args : (Tensor x, Tensor y, int[] shape)
#
output : Tensor
#
infer_meta :
#
func : ExpandAsInferMeta
#
kernel :
#
func : expand_as
#
backward : expand_as_grad
# expand
-
api
:
expand
args
:
(Tensor x, ScalarArray shape)
output
:
Tensor
infer_meta
:
func
:
ExpandInferMeta
kernel
:
func
:
expand
backward
:
expand_grad
#
#
expand
#
- api : expand
#
args : (Tensor x, ScalarArray shape)
#
output : Tensor
#
infer_meta :
#
func : ExpandInferMeta
#
kernel :
#
func : expand
#
backward : expand_grad
# eye
? int64
# eye
-
api
:
eye
args
:
(int
num_rows, int
num_colums, DataType dtype)
args
:
(int
64 num_rows, int64
num_colums, DataType dtype)
output
:
Tensor
infer_meta
:
func
:
EyeInferMeta
kernel
:
func
:
eye
# flip
-
api
:
flip
args
:
(Tensor x, int[] axis)
output
:
Tensor
infer_meta
:
func
:
FlipInferMeta
kernel
:
func
:
flip
#
#
flip
#
- api : flip
#
args : (Tensor x, int[] axis)
#
output : Tensor
#
infer_meta :
#
func : FlipInferMeta
#
kernel :
#
func : flip
# gaussian_random
-
api
:
gaussian_random
args
:
(ScalayArray shape, float mean, float std, int seed, DataType dtype)
output
:
Tensor
infer_meta
:
func
:
GaussianRandomInferMeta
kernel
:
func
:
gaussian_random
#
- api : gaussian_random
#
args : (ScalayArray shape, float mean, float std, int seed, DataType dtype)
#
output : Tensor
#
infer_meta :
#
func : GaussianRandomInferMeta
#
kernel :
#
func : gaussian_random
# graph_send_recv
-
api
:
graph_send_recv
args
:
(Tensor x, Tensor src_index, Tensor dst_index, string pool_type)
output
:
Tensor(out), Tensor(dst_count)
infer_meta
:
func
:
GraphSendRecvInferMeta
kernel
:
func
:
graph_send_recv
backward
:
graph_send_recv_grad
#
#
graph_send_recv
#
- api : graph_send_recv
#
args : (Tensor x, Tensor src_index, Tensor dst_index, string pool_type)
#
output : Tensor(out), Tensor(dst_count)
#
infer_meta :
#
func : GraphSendRecvInferMeta
#
kernel :
#
func : graph_send_recv
#
backward : graph_send_recv_grad
# histogram int64 ???
-
api
:
histogram
args
:
(Tensor x, int64_t bins, int min, int max)
output
:
Tensor
infer_meta
:
func
:
HistogramInferMeta
kernel
:
func
:
histogram
#
#
histogram int64 ???
#
- api : histogram
#
args : (Tensor x, int64_t bins, int min, int max)
#
output : Tensor
#
infer_meta :
#
func : HistogramInferMeta
#
kernel :
#
func : histogram
# increment
-
api
:
increment
args
:
(Tensor x, float value)
output
:
Tensor
infer_meta
:
func
:
IncrementInferMeta
kernel
:
func
:
increment
#
#
increment
#
- api : increment
#
args : (Tensor x, float value)
#
output : Tensor
#
infer_meta :
#
func : IncrementInferMeta
#
kernel :
#
func : increment
# is_empty
-
api
:
is_empty
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
IsEmptyInferMeta
kernel
:
func
:
is_empty
#
#
is_empty
#
- api : is_empty
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : IsEmptyInferMeta
#
kernel :
#
func : is_empty
# isinf selected rows??? involk
-
api
:
isinf
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
IsfiniteInferMeta
kernel
:
func
:
isinf
#
#
isinf selected rows??? involk
#
- api : isinf
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : IsfiniteInferMeta
#
kernel :
#
func : isinf
# isnan
-
api
:
isnan
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
IsfiniteInferMeta
kernel
:
func
:
isnan
#
#
isnan
#
- api : isnan
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : IsfiniteInferMeta
#
kernel :
#
func : isnan
# isfinite
-
api
:
isfinite
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
IsfiniteInferMeta
kernel
:
func
:
isfinite
#
#
isfinite
#
- api : isfinite
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : IsfiniteInferMeta
#
kernel :
#
func : isfinite
# label_smooth ?? optional
-
api
:
label_smooth
args
:
(Tensor label, Tensor prior_dist, float epsilon)
output
:
Tensor
infer_meta
:
func
:
LabelSmoothInferMeta
kernel
:
func
:
label_smooth
backward
:
label_smooth_grad
#
#
label_smooth ?? optional
#
- api : label_smooth
#
args : (Tensor label, Tensor prior_dist, float epsilon)
#
output : Tensor
#
infer_meta :
#
func : LabelSmoothInferMeta
#
kernel :
#
func : label_smooth
#
backward : label_smooth_grad
# linspace
-
api
:
linspace
args
:
(Tensor start, Tensor stop, Tensor number, DataType dtype)
output
:
Tensor
infer_meta
:
func
:
LinspaceInferMeta
kernel
:
func
:
linspace
#
#
linspace
#
- api : linspace
#
args : (Tensor start, Tensor stop, Tensor number, DataType dtype)
#
output : Tensor
#
infer_meta :
#
func : LinspaceInferMeta
#
kernel :
#
func : linspace
# log_loss
-
api
:
log_loss
args
:
(Tensor input, Tensor label, float epsilon)
output
:
Tensor
infer_meta
:
func
:
LogLossInferMeta
kernel
:
func
:
log_loss
backward
:
log_loss
#
#
log_loss
#
- api : log_loss
#
args : (Tensor input, Tensor label, float epsilon)
#
output : Tensor
#
infer_meta :
#
func : LogLossInferMeta
#
kernel :
#
func : log_loss
#
backward : log_loss
# logical_and
-
api
:
logical_and
args
:
(Tensor x, Tensor y)
output
:
Tensor
infer_meta
:
func
:
LogicalInferMeta
kernel
:
func
:
logical_and
#
#
logical_and
#
- api : logical_and
#
args : (Tensor x, Tensor y)
#
output : Tensor
#
infer_meta :
#
func : LogicalInferMeta
#
kernel :
#
func : logical_and
# logical_or
-
api
:
logical_or
args
:
(Tensor x, Tensor y)
output
:
Tensor
infer_meta
:
func
:
LogicalInferMeta
kernel
:
func
:
logical_or
#
#
logical_or
#
- api : logical_or
#
args : (Tensor x, Tensor y)
#
output : Tensor
#
infer_meta :
#
func : LogicalInferMeta
#
kernel :
#
func : logical_or
# logical_xor
-
api
:
logical_xor
args
:
(Tensor x, Tensor y)
output
:
Tensor
infer_meta
:
func
:
LogicalInferMeta
kernel
:
func
:
logical_xor
#
#
logical_xor
#
- api : logical_xor
#
args : (Tensor x, Tensor y)
#
output : Tensor
#
infer_meta :
#
func : LogicalInferMeta
#
kernel :
#
func : logical_xor
# logical_not
-
api
:
logical_not
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
UnchangedInferMeta
kernel
:
func
:
logical_not
#
#
logical_not
#
- api : logical_not
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : UnchangedInferMeta
#
kernel :
#
func : logical_not
# masked_select
-
api
:
masked_select
args
:
(Tensor x, Tensor mask)
output
:
Tensor
infer_meta
:
func
:
MaksedSelectInferMeta
kernel
:
func
:
masked_select
backward
:
masked_select_grad
#
#
masked_select
#
- api : masked_select
#
args : (Tensor x, Tensor mask)
#
output : Tensor
#
infer_meta :
#
func : MaksedSelectInferMeta
#
kernel :
#
func : masked_select
#
backward : masked_select_grad
# multi_dot
-
api
:
multi_dot
args
:
(Tensor[] x)
output
:
Tensor
infer_meta
:
func
:
MultiDotInferMeta
kernel
:
func
:
multi_dot
backward
:
multi_dot_grad
#
#
multi_dot
#
- api : multi_dot
#
args : (Tensor[] x)
#
output : Tensor
#
infer_meta :
#
func : MultiDotInferMeta
#
kernel :
#
func : multi_dot
#
backward : multi_dot_grad
# multinomial
-
api
:
multinomial
args
:
(Tensor x, int num_samples, bool replacement)
output
:
Tensor
infer_meta
:
func
:
MultinomialInferMeta
kernel
:
func
:
multinomial
#
#
multinomial
#
- api : multinomial
#
args : (Tensor x, int num_samples, bool replacement)
#
output : Tensor
#
infer_meta :
#
func : MultinomialInferMeta
#
kernel :
#
func : multinomial
# nll_loss ?? optional
-
api
:
nll_loss
args
:
(Tensor input, Tensor label, Tensor weight, int64_t ignore_index, string reduction)
output
:
Tensor(out), Tensor(total_weight)
infer_meta
:
func
:
NllLossInferMeta
kernel
:
func
:
nll_loss
backward
:
nll_loss_grad
#
#
nll_loss ?? optional
#
- api : nll_loss
#
args : (Tensor input, Tensor label, Tensor weight, int64_t ignore_index, string reduction)
#
output : Tensor(out), Tensor(total_weight)
#
infer_meta :
#
func : NllLossInferMeta
#
kernel :
#
func : nll_loss
#
backward : nll_loss_grad
# pad
-
api
:
pad
args
:
(Tensor x, int[] paddings, float pad_value)
output
:
Tensor
infer_meta
:
func
:
PadInferMeta
kernel
:
func
:
pad
backward
:
pad_grad
#
#
pad
#
- api : pad
#
args : (Tensor x, int[] paddings, float pad_value)
#
output : Tensor
#
infer_meta :
#
func : PadInferMeta
#
kernel :
#
func : pad
#
backward : pad_grad
# pixel_shuffle
-
api
:
pixel_shuffle
args
:
(Tensor x, int upscale_factor, string data_format)
output
:
Tensor
infer_meta
:
func
:
PixelShuffleInferMeta
kernel
:
func
:
pixel_shuffle
backward
:
pixel_shuffle_grad
#
#
pixel_shuffle
#
- api : pixel_shuffle
#
args : (Tensor x, int upscale_factor, string data_format)
#
output : Tensor
#
infer_meta :
#
func : PixelShuffleInferMeta
#
kernel :
#
func : pixel_shuffle
#
backward : pixel_shuffle_grad
# poisson
-
api
:
poisson
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
PoissonInferMeta
kernel
:
func
:
poisson
backward
:
poisson_grad
#
#
poisson
#
- api : poisson
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : PoissonInferMeta
#
kernel :
#
func : poisson
#
backward : poisson_grad
# psroi_pool ?? optional
-
api
:
psroi_pool
args
:
(Tensor x, Tensor rois, Tensor rois_num, int pooled_weight, int pooled_width, int output_channels, float spatial_scale )
output
:
Tensor
infer_meta
:
func
:
PsroiPoolInferMeta
kernel
:
func
:
psroi_pool
backward
:
psroi_pool_grad
#
#
psroi_pool ?? optional
#
- api : psroi_pool
#
args : (Tensor x, Tensor rois, Tensor rois_num, int pooled_weight, int pooled_width, int output_channels, float spatial_scale )
#
output : Tensor
#
infer_meta :
#
func : PsroiPoolInferMeta
#
kernel :
#
func : psroi_pool
#
backward : psroi_pool_grad
# randint_raw
-
api
:
randint
args
:
(int low, int high, ScalarArray shape, DataType dtype)
output
:
Tensor
infer_meta
:
func
:
RandintInferMeta
kernel
:
func
:
randint
#
#
randint_raw
#
- api : randint
#
args : (int low, int high, ScalarArray shape, DataType dtype)
#
output : Tensor
#
infer_meta :
#
func : RandintInferMeta
#
kernel :
#
func : randint
# randperm_raw
-
api
:
randperm
args
:
(int n, DataType dtype)
output
:
Tensor
infer_meta
:
func
:
RandpermInferMeta
kernel
:
func
:
randperm
#
#
randperm_raw
#
- api : randperm
#
args : (int n, DataType dtype)
#
output : Tensor
#
infer_meta :
#
func : RandpermInferMeta
#
kernel :
#
func : randperm
# max
-
api
:
max
args
:
(Tensor x, int64_t[] dims, bool keep_dim)
output
:
Tensor
infer_meta
:
func
:
MaxInferMeta
kernel
:
func
:
max
#
#
max
#
- api : max
#
args : (Tensor x, int64_t[] dims, bool keep_dim)
#
output : Tensor
#
infer_meta :
#
func : MaxInferMeta
#
kernel :
#
func : max
# reduce_prod
-
api
:
reduce_prod
args
:
(Tensor x, int64_t[] dims, bool keep_dim, bool reduce_all)
output
:
Tensor
infer_meta
:
func
:
ReduceProdInferMeta
kernel
:
func
:
reduce_prod
#
#
reduce_prod
#
- api : reduce_prod
#
args : (Tensor x, int64_t[] dims, bool keep_dim, bool reduce_all)
#
output : Tensor
#
infer_meta :
#
func : ReduceProdInferMeta
#
kernel :
#
func : reduce_prod
# selu
-
api
:
selu
args
:
(Tensor x, float scale, float alpha)
output
:
Tensor
infer_meta
:
func
:
SeluInferMeta
kernel
:
func
:
selu
backward
:
selu_grad
#
#
selu
#
- api : selu
#
args : (Tensor x, float scale, float alpha)
#
output : Tensor
#
infer_meta :
#
func : SeluInferMeta
#
kernel :
#
func : selu
#
backward : selu_grad
# set_value None api
#
#
set_value None api
# sgd # need invoke
# shape ??? selcted rows
#
#
sgd # need invoke
#
#
shape ??? selcted rows
# shard_index
-
api
:
shard_index
args
:
(Tensor in, int index_num, int nshards, int shard_id, int ignore_value)
output
:
Tensor
infer_meta
:
func
:
ShardIndexInferMeta
kernel
:
func
:
shard_index
#
#
shard_index
#
- api : shard_index
#
args : (Tensor in, int index_num, int nshards, int shard_id, int ignore_value)
#
output : Tensor
#
infer_meta :
#
func : ShardIndexInferMeta
#
kernel :
#
func : shard_index
# sigmoid_cross_entropy_with_logits
-
api
:
sigmoid_cross_entropy_with_logits
args
:
(Tensor x, Tensor label, bool normalize, int ignore_index)
output
:
Tensor
infer_meta
:
func
:
SigmoidCrossEntropyWithoLgitsInferMeta
kernel
:
func
:
sigmoid_cross_entropy_with_logits
#
#
sigmoid_cross_entropy_with_logits
#
- api : sigmoid_cross_entropy_with_logits
#
args : (Tensor x, Tensor label, bool normalize, int ignore_index)
#
output : Tensor
#
infer_meta :
#
func : SigmoidCrossEntropyWithoLgitsInferMeta
#
kernel :
#
func : sigmoid_cross_entropy_with_logits
# size
-
api
:
size
args
:
(Tensor x)
output
:
Tensor
infer_meta
:
func
:
SizeInferMeta
kernel
:
func
:
size
#
#
size
#
- api : size
#
args : (Tensor x)
#
output : Tensor
#
infer_meta :
#
func : SizeInferMeta
#
kernel :
#
func : size
# tile
-
api
:
tile
args
:
(Tensor x, ScalarArray repeat_times)
output
:
Tensor
infer_meta
:
func
:
TileInferMeta
kernel
:
func
:
tile
backward
:
tile_grad
#
#
tile
#
- api : tile
#
args : (Tensor x, ScalarArray repeat_times)
#
output : Tensor
#
infer_meta :
#
func : TileInferMeta
#
kernel :
#
func : tile
#
backward : tile_grad
# top_k
-
api
:
top_k
args
:
(Tensor x, Scalar k, int axis, bool largest, bool sorted)
output
:
Tensor(out), Tensor(indices)
infer_meta
:
func
:
TopkInferMeta
kernel
:
func
:
top_k
backward
:
top_k_grad
#
#
top_k
#
- api : top_k
#
args : (Tensor x, Scalar k, int axis, bool largest, bool sorted)
#
output : Tensor(out), Tensor(indices)
#
infer_meta :
#
func : TopkInferMeta
#
kernel :
#
func : top_k
#
backward : top_k_grad
# trace
-
api
:
trace
args
:
(Tensor x, int offset, int axis1, int axis2)
output
:
Tensor
infer_meta
:
func
:
TraceInferMeta
kernel
:
func
:
trace
backward
:
trace_grad
#
#
trace
#
- api : trace
#
args : (Tensor x, int offset, int axis1, int axis2)
#
output : Tensor
#
infer_meta :
#
func : TraceInferMeta
#
kernel :
#
func : trace
#
backward : trace_grad
# phi_transfer_layout | not have python api
#
#
phi_transfer_layout | not have python api
# truncated_gaussian_random
-
api
:
truncated_gaussian_random
args
:
(int[] shape, float mean, float std, int seed, DataType dtype)
output
:
Tensor
infer_meta
:
func
:
TruncatedGaussianRandomInferMeta
kernel
:
func
:
truncated_gaussian_random
#
#
truncated_gaussian_random
#
- api : truncated_gaussian_random
#
args : (int[] shape, float mean, float std, int seed, DataType dtype)
#
output : Tensor
#
infer_meta :
#
func : TruncatedGaussianRandomInferMeta
#
kernel :
#
func : truncated_gaussian_random
# unbind
-
api
:
unbind
args
:
(Tensor x, int axis)
output
:
Tensor[]
infer_meta
:
func
:
UnbindInferMeta
kernel
:
func
:
unbind
#
#
unbind
#
- api : unbind
#
args : (Tensor x, int axis)
#
output : Tensor[]
#
infer_meta :
#
func : UnbindInferMeta
#
kernel :
#
func : unbind
# unfold
-
api
:
unfold
args
:
(Tensor x, int[] kernel_sizes, int[] strides, int[] paddings, int[] dilations)
output
:
Tensor
infer_meta
:
func
:
UnfoldInferMeta
kernel
:
func
:
unfold
backward
:
unfold_grad
# uniform_random_raw selected rows ??
# viterbi_decode
-
api
:
viterbi_decode
args
:
(Tensor input, Tensor transition, Tensor length, bool include_bos_eos_tag)
output
:
Tensor(scores), Tensor(path)
infer_meta
:
func
:
ViterbiDecodeInferMeta
kernel
:
func
:
viterbi_decode
#
#
unfold
#
- api : unfold
#
args : (Tensor x, int[] kernel_sizes, int[] strides, int[] paddings, int[] dilations)
#
output : Tensor
#
infer_meta :
#
func : UnfoldInferMeta
#
kernel :
#
func : unfold
#
backward : unfold_grad
#
#
uniform_random_raw selected rows ??
#
#
viterbi_decode
#
- api : viterbi_decode
#
args : (Tensor input, Tensor transition, Tensor length, bool include_bos_eos_tag)
#
output : Tensor(scores), Tensor(path)
#
infer_meta :
#
func : ViterbiDecodeInferMeta
#
kernel :
#
func : viterbi_decode
# where_index
-
api
:
where_index
args
:
(Tensor condition)
output
:
Tensor
infer_meta
:
func
:
WhereIndexInferMeta
kernel
:
func
:
where_index
#
#
where_index
#
- api : where_index
#
args : (Tensor condition)
#
output : Tensor
#
infer_meta :
#
func : WhereIndexInferMeta
#
kernel :
#
func : where_index
# yolo_box
-
api
:
yolo_box
args
:
(Tensor x, Tensor img_size, int[] anchors, int class_num, float conf_thresh, int downsample_ratio, bool clip_bbox, float scale_x_y, bool iou_aware, float iou_aware_factor)
output
:
Tensor(boxes), Tensor(scores)
infer_meta
:
func
:
YoloBoxInferMeta
kernel
:
func
:
yolo_box
#
#
yolo_box
#
- api : yolo_box
#
args : (Tensor x, Tensor img_size, int[] anchors, int class_num, float conf_thresh, int downsample_ratio, bool clip_bbox, float scale_x_y, bool iou_aware, float iou_aware_factor)
#
output : Tensor(boxes), Tensor(scores)
#
infer_meta :
#
func : YoloBoxInferMeta
#
kernel :
#
func : yolo_box
python/paddle/utils/code_gen/api_gen.py
浏览文件 @
a67fc4be
...
...
@@ -147,6 +147,7 @@ def source_include(header_file_path):
#include "paddle/phi/infermeta/multiary.h"
#include "paddle/phi/infermeta/nullary.h"
#include "paddle/phi/infermeta/unary.h"
#include "paddle/phi/infermeta/ternary.h"
"""
...
...
python/paddle/utils/code_gen/backward.yaml
浏览文件 @
a67fc4be
...
...
@@ -101,66 +101,66 @@
kernel
:
func
:
softmax_grad
-
backward_api
:
maxout_grad
forward
:
maxout (Tensor x, int groups, int axis) -> Tensor(out)
args
:
(Tensor x, Tensor out, Tensor out_grad, int groups, int axis)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
maxout_grad
#
- backward_api : maxout_grad
#
forward : maxout (Tensor x, int groups, int axis) -> Tensor(out)
#
args : (Tensor x, Tensor out, Tensor out_grad, int groups, int axis)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : maxout_grad
-
backward_api
:
put_along_axis_grad
forward
:
put_along_axis (Tensor x, Tensor index, Tensor value, int axis, string reduce) -> Tensor(out)
args
:
(Tensor x, Tensor index, Tensor out_grad, int axis, string reduce)
output
:
Tensor(x_grad), Tensor(value_grad)
infer_meta
:
func
:
GeneralBinaryGradInferMeta
param
:
[
x
,
valule
]
kernel
:
func
:
put_along_axis_grad
#
- backward_api : put_along_axis_grad
#
forward : put_along_axis (Tensor x, Tensor index, Tensor value, int axis, string reduce) -> Tensor(out)
#
args : (Tensor x, Tensor index, Tensor out_grad, int axis, string reduce)
#
output : Tensor(x_grad), Tensor(value_grad)
#
infer_meta :
#
func : GeneralBinaryGradInferMeta
#
param : [x, valule]
#
kernel :
#
func : put_along_axis_grad
-
backward_api
:
take_along_axis_grad
forward
:
take_along_axis (Tensor x, Tensor index, int axis) -> Tensor(out)
args
:
(Tensor x, Tensor index, Tensor out_grad, int axis)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
take_along_axis_grad
#
- backward_api : take_along_axis_grad
#
forward : take_along_axis (Tensor x, Tensor index, int axis) -> Tensor(out)
#
args : (Tensor x, Tensor index, Tensor out_grad, int axis)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : take_along_axis_grad
-
backward_api
:
maxtrix_power_grad
forward
:
maxtrix_power (Tensor x, int n) -> Tensor(out)
args
:
(Tensor x, Tensor out, Tensor out_grad, int n)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
maxtrix_power_grad
#
- backward_api : maxtrix_power_grad
#
forward : maxtrix_power (Tensor x, int n) -> Tensor(out)
#
args : (Tensor x, Tensor out, Tensor out_grad, int n)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : maxtrix_power_grad
-
backward_api
:
eigh_grad
forward
:
eigh (Tensor x, string uplo) -> Tensor(out_w), Tensor(out_v)
args
:
(Tensor out_w, Tensor out_v, Tensor outw_grad, Tensor out
v_grad)
output
:
Tensor(x_grad)
infer_meta
:
func
:
XXXXXXX
InferMeta
param
:
[
x
]
kernel
:
func
:
eigh_grad
#
- backward_api : eigh_grad
#
forward : eigh (Tensor x, string uplo) -> Tensor(out_w), Tensor(out_v)
# args : (Tensor out_w, Tensor out_v, Tensor out_w_grad, Tensor out_
v_grad)
#
output : Tensor(x_grad)
#
infer_meta :
# func : Unchanged
InferMeta
# param : [out_v
]
#
kernel :
#
func : eigh_grad
-
backward_api
:
segment_pool_grad
forward
:
segment_pool (Tensor x, Tensor segment_ids, string pooltype) -> Tensor(out), Tensor(summed_ids)
args
:
(Tensor x, Tensor segment_ids, Tensor out, Tensor summed_ids, Tenosr out_grad, string pooltype)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
segment_pool_grad
#
- backward_api : segment_pool_grad
#
forward : segment_pool (Tensor x, Tensor segment_ids, string pooltype) -> Tensor(out), Tensor(summed_ids)
#
args : (Tensor x, Tensor segment_ids, Tensor out, Tensor summed_ids, Tenosr out_grad, string pooltype)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : segment_pool_grad
-
backward_api
:
cos_grad
forward
:
cos (Tensor x) -> Tensor(out)
...
...
@@ -172,15 +172,15 @@
kernel
:
func
:
cos_grad
-
backward_api
:
tan_grad
forward
:
tan (Tensor x) -> Tensor(out)
-
backward_api
:
tan
h
_grad
forward
:
tan
h
(Tensor x) -> Tensor(out)
args
:
(Tensor out, Tensor out_grad)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
out
]
kernel
:
func
:
ta
m
_grad
func
:
ta
nh
_grad
-
backward_api
:
acos_grad
forward
:
acos (Tensor x) -> Tensor(out)
...
...
@@ -282,53 +282,53 @@
kernel
:
func
:
relu_grad
-
backward_api
:
argsort_grad
forward
:
argsort (Tensor x, int axis, bool descending) -> Tensor(out), tensor(indices)
args
:
(Tensor indices, Tensor x, Tensor out_grad, int axis, bool descending)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
argsort_grad
#
- backward_api : argsort_grad
#
forward : argsort (Tensor x, int axis, bool descending) -> Tensor(out), tensor(indices)
#
args : (Tensor indices, Tensor x, Tensor out_grad, int axis, bool descending)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : argsort_grad
-
backward_api
:
batch_norm_grad
forward
:
batch_norm (Tensor x, Tensor scale, Tensor bias, Tensor mean, Tensor variance, float momentum, float epsilon, string data_layout, bool is_test, bool use_global_stats, bool trainable_statistics, bool fuse_with_relu) -> Tensor(out), Tensor(mean_out), Tensor(variance_out), Tensor(saved_mean), Tensor(saved_variance), Tensor(reserve_space)
args
:
(Tensor indices, Tensor x, Tensor out_grad, int axis, bool descending)
output
:
Tensor(x_grad), Tensor(scale_grad), Tensor(bias_grad)
infer_meta
:
func
:
GeneralTernaryGradInferMeta
param
:
[
x
,
scale
,
bias
]
kernel
:
func
:
batch_norm_grad
#
- backward_api : batch_norm_grad
#
forward : batch_norm (Tensor x, Tensor scale, Tensor bias, Tensor mean, Tensor variance, float momentum, float epsilon, string data_layout, bool is_test, bool use_global_stats, bool trainable_statistics, bool fuse_with_relu) -> Tensor(out), Tensor(mean_out), Tensor(variance_out), Tensor(saved_mean), Tensor(saved_variance), Tensor(reserve_space)
#
args : (Tensor indices, Tensor x, Tensor out_grad, int axis, bool descending)
#
output : Tensor(x_grad), Tensor(scale_grad), Tensor(bias_grad)
#
infer_meta :
#
func : GeneralTernaryGradInferMeta
#
param : [x, scale, bias]
#
kernel :
#
func : batch_norm_grad
-
backward_api
:
bilinear_tensor_product_grad
forward
:
bilinear_tensor_product (Tensor x, Tensor y, Tensor weight, Tensor bias) -> Tensor(out)
args
:
(Tensor x, Tensor y, Tensor weight, Tensor out_grad)
output
:
Tensor(x_grad), Tensor(y_grad), Tensor(weight_grad), Tensor(bias_grad)
infer_meta
:
func
:
FourXXXXInferMeta
param
:
[
x
,
y
,
weight
,
bias
]
kernel
:
func
:
bilinear_tensor_product_grad
#
- backward_api : bilinear_tensor_product_grad
#
forward : bilinear_tensor_product (Tensor x, Tensor y, Tensor weight, Tensor bias) -> Tensor(out)
#
args : (Tensor x, Tensor y, Tensor weight, Tensor out_grad)
#
output : Tensor(x_grad), Tensor(y_grad), Tensor(weight_grad), Tensor(bias_grad)
#
infer_meta :
#
func : FourXXXXInferMeta
#
param : [x, y, weight, bias]
#
kernel :
#
func : bilinear_tensor_product_grad
-
backward_api
:
broadcast_tensor_grad
forward
:
broadcast_tensors (Tensor[] x) -> Tensor [] (out)
args
:
(Tensor [] out_grad)
output
:
Tensor [] (x_grad)
infer_meta
:
func
:
XXXXInferMeta
param
:
[
out_grad
]
kernel
:
func
:
broadcast_tensor_grad
#
- backward_api : broadcast_tensor_grad
#
forward : broadcast_tensors (Tensor[] x) -> Tensor [] (out)
#
args : (Tensor [] out_grad)
#
output : Tensor [] (x_grad)
#
infer_meta :
#
func : XXXXInferMeta
#
param : [out_grad]
#
kernel :
#
func : broadcast_tensor_grad
-
backward_api
:
cholesky_grad
forward
:
cholesky (Tensor x, bool upper) -> Tensor(out)
args
:
(Tensor out, Tensor out_grad, bool upper)
output
:
Tensor(x_grad)
infer_meta
:
func
:
XXXXGra
dInferMeta
func
:
Unchange
dInferMeta
param
:
[
out
]
kernel
:
func
:
cholesky_grad
...
...
@@ -338,230 +338,230 @@
args
:
(Tensor x, Tensor y, Tensor out, Tensor out_grad, bool upper)
output
:
Tensor(x_grad), Tensor(y_grad)
infer_meta
:
func
:
Genera
teBin
naryGradInferMeta
func
:
Genera
lBi
naryGradInferMeta
param
:
[
x
,
y
]
kernel
:
func
:
cholesky_solve_grad
-
backward_api
:
dropout_grad
forward
:
dropout (Tensor x, Tensor seed_tensor, float p, bool is_test, string mode, int seed, bool fix_seed) -> Tensor(out), Tensor(mask)
args
:
(Tensor mask, Tensor out_grad, float p, bool is_test, string mode)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
out_grad
]
kernel
:
func
:
dropout_grad
#
- backward_api : dropout_grad
#
forward : dropout (Tensor x, Tensor seed_tensor, float p, bool is_test, string mode, int seed, bool fix_seed) -> Tensor(out), Tensor(mask)
#
args : (Tensor mask, Tensor out_grad, float p, bool is_test, string mode)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [out_grad]
#
kernel :
#
func : dropout_grad
-
backward_api
:
erf_grad
forward
:
erf (Tensor x) -> Tensor(out)
args
:
(Tensor x, Tensor out, Tensor out_grad)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
erf_grad
#
- backward_api : erf_grad
#
forward : erf (Tensor x) -> Tensor(out)
#
args : (Tensor x, Tensor out, Tensor out_grad)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : erf_grad
-
backward_api
:
erfinv_grad
forward
:
erf (Tensor x) -> Tensor(out)
args
:
(Tensor out, Tensor out_grad)
output
:
Tensor(x_grad)
infer_meta
:
func
:
ErfinvGradInferMeta
param
:
[
out
]
kernel
:
func
:
erfinv_grad
#
- backward_api : erfinv_grad
#
forward : erf (Tensor x) -> Tensor(out)
#
args : (Tensor out, Tensor out_grad)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : ErfinvGradInferMeta
#
param : [out]
#
kernel :
#
func : erfinv_grad
-
backward_api
:
expand_as_grad
forward
:
expand_as (Tensor x, Tensor y, int[] target_shape) -> Tensor(out)
args
:
(Tensor x, Tensor out_grad, int[] target_shape)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedGradInferMeta
param
:
[
x
]
kernel
:
func
:
expand_as_grad
#
- backward_api : expand_as_grad
#
forward : expand_as (Tensor x, Tensor y, int[] target_shape) -> Tensor(out)
#
args : (Tensor x, Tensor out_grad, int[] target_shape)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedGradInferMeta
#
param : [x]
#
kernel :
#
func : expand_as_grad
-
backward_api
:
expand_grad
forward
:
expand (Tensor x, ScalarArray shape) -> Tensor(out)
args
:
(Tensor x, Tensor out_grad, ScalarArray shape)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedGradInferMeta
param
:
[
x
]
kernel
:
func
:
expand_grad
#
- backward_api : expand_grad
#
forward : expand (Tensor x, ScalarArray shape) -> Tensor(out)
#
args : (Tensor x, Tensor out_grad, ScalarArray shape)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedGradInferMeta
#
param : [x]
#
kernel :
#
func : expand_grad
-
backward_api
:
graph_send_recv_grad
forward
:
graph_send_recv (Tensor x, Tensor src_index, Tensor dst_index, string pool_type) -> Tensor(out), Tensor(dst_count)
args
:
(Tensor out_grad, Tensor x, Tensor out, Tensor src_index, Tensor dst_index, Tensor dst_count, string pool_type)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedGradInferMeta
param
:
[
x
]
kernel
:
func
:
graph_send_recv_grad
#
- backward_api : graph_send_recv_grad
#
forward : graph_send_recv (Tensor x, Tensor src_index, Tensor dst_index, string pool_type) -> Tensor(out), Tensor(dst_count)
#
args : (Tensor out_grad, Tensor x, Tensor out, Tensor src_index, Tensor dst_index, Tensor dst_count, string pool_type)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedGradInferMeta
#
param : [x]
#
kernel :
#
func : graph_send_recv_grad
-
backward_api
:
label_smooth_grad
forward
:
label_smooth (Tensor label, Tensor prior_dist, float epsilon) -> Tensor(out)
args
:
(Tensor out_grad, float epsilon)
output
:
Tensor(x_grad)
infer_meta
:
func
:
XXXXInferMeta
param
:
[
x
]
kernel
:
func
:
label_smooth_grad
#
- backward_api : label_smooth_grad
#
forward : label_smooth (Tensor label, Tensor prior_dist, float epsilon) -> Tensor(out)
#
args : (Tensor out_grad, float epsilon)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : XXXXInferMeta
#
param : [x]
#
kernel :
#
func : label_smooth_grad
-
backward_api
:
log_loss_grad
forward
:
log_loss (Tensor input, Tensor label, float epsilon) -> Tensor(out)
args
:
(Tensor input, Tensor label, Tensor out_grad, float epsilon)
output
:
Tensor(input_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
log_loss_grad
#
- backward_api : log_loss_grad
#
forward : log_loss (Tensor input, Tensor label, float epsilon) -> Tensor(out)
#
args : (Tensor input, Tensor label, Tensor out_grad, float epsilon)
#
output : Tensor(input_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : log_loss_grad
-
backward_api
:
masked_selecte_grad
forward
:
masked_select (Tensor x, Tensor mask) -> Tensor(out)
args
:
(Tensor out_grad, Tensor x, Tensor mask)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
masked_selecte_grad
#
- backward_api : masked_selecte_grad
#
forward : masked_select (Tensor x, Tensor mask) -> Tensor(out)
#
args : (Tensor out_grad, Tensor x, Tensor mask)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : masked_selecte_grad
-
backward_api
:
multi_dot_grad
forward
:
multi_dot (Tensor[] x) -> Tensor(out)
args
:
(Tensor out_grad, Tensor[] x)
output
:
Tensor[] (x_grad)
infer_meta
:
func
:
XXXXInferMeta
param
:
[
x
]
kernel
:
func
:
multi_dot_grad
#
- backward_api : multi_dot_grad
#
forward : multi_dot (Tensor[] x) -> Tensor(out)
#
args : (Tensor out_grad, Tensor[] x)
#
output : Tensor[] (x_grad)
#
infer_meta :
#
func : XXXXInferMeta
#
param : [x]
#
kernel :
#
func : multi_dot_grad
-
backward_api
:
nll_loss_grad
forward
:
nll_loss (Tensor input, Tensor label, Tensor weight, int64_t ignore_index, string reduction) -> Tensor(out), Tensor(total_weight)
args
:
(Tensor x, Tensor label, Tensor total_weight, Tensor weight, Tensor out_grad, int64_t ignore_index, string reduction)
output
:
Tensor[] (x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
nll_loss_grad
#
- backward_api : nll_loss_grad
#
forward : nll_loss (Tensor input, Tensor label, Tensor weight, int64_t ignore_index, string reduction) -> Tensor(out), Tensor(total_weight)
#
args : (Tensor x, Tensor label, Tensor total_weight, Tensor weight, Tensor out_grad, int64_t ignore_index, string reduction)
#
output : Tensor[] (x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : nll_loss_grad
-
backward_api
:
pad_grad
forward
:
pad (Tensor x, int[] paddings, float pad_value) -> Tensor(out)
args
:
(Tensor out_grad, int[] paddings, float pad_value)
output
:
Tensor(x_grad)
infer_meta
:
func
:
XXXXXInferMeta
param
:
[
x
]
kernel
:
func
:
pad_grad
#
- backward_api : pad_grad
#
forward : pad (Tensor x, int[] paddings, float pad_value) -> Tensor(out)
#
args : (Tensor out_grad, int[] paddings, float pad_value)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : XXXXXInferMeta
#
param : [x]
#
kernel :
#
func : pad_grad
-
backward_api
:
pixel_shuffle_grad
forward
:
pixel_shuffle (Tensor x, int upscale_factor, string data_format) -> Tensor(out)
args
:
(Tensor out_grad, int upscale_factor, string data_format)
output
:
Tensor(x_grad)
infer_meta
:
func
:
XXXXXInferMeta
param
:
[
x
]
kernel
:
func
:
pixel_shuffle_grad
#
- backward_api : pixel_shuffle_grad
#
forward : pixel_shuffle (Tensor x, int upscale_factor, string data_format) -> Tensor(out)
#
args : (Tensor out_grad, int upscale_factor, string data_format)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : XXXXXInferMeta
#
param : [x]
#
kernel :
#
func : pixel_shuffle_grad
-
backward_api
:
poisson_grad
forward
:
poisson (Tensor x) -> Tensor(out)
args
:
()
output
:
Tensor(x_grad)
infer_meta
:
func
:
XXXXXInferMeta
param
:
[
x
]
kernel
:
func
:
poisson_grad
#
- backward_api : poisson_grad
#
forward : poisson (Tensor x) -> Tensor(out)
#
args : ()
#
output : Tensor(x_grad)
#
infer_meta :
#
func : XXXXXInferMeta
#
param : [x]
#
kernel :
#
func : poisson_grad
-
backward_api
:
psroi_pool_grad
forward
:
psroi_pool (Tensor x, Tensor rois, Tensor rois_num, int pooled_weight, int pooled_width, int output_channels, float spatial_scale ) -> Tensor(out)
args
:
(Tensor x, Tensor rois, Tensor rois_num, Tensor out_grad, int pooled_weight, int pooled_width, int output_channels, float spatial_scale)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
psroi_pool_grad
#
- backward_api : psroi_pool_grad
#
forward : psroi_pool (Tensor x, Tensor rois, Tensor rois_num, int pooled_weight, int pooled_width, int output_channels, float spatial_scale ) -> Tensor(out)
#
args : (Tensor x, Tensor rois, Tensor rois_num, Tensor out_grad, int pooled_weight, int pooled_width, int output_channels, float spatial_scale)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : psroi_pool_grad
-
backward_api
:
selu_grad
forward
:
selu (Tensor x, float scale, float alpha) -> Tensor(out)
args
:
(Tensor out, Tensor out_grad, float scale, float alpha)
output
:
Tensor(x_grad)
infer_meta
:
func
:
XXXXXInferMeta
param
:
[
x
]
kernel
:
func
:
selu_grad
#
- backward_api : selu_grad
#
forward : selu (Tensor x, float scale, float alpha) -> Tensor(out)
#
args : (Tensor out, Tensor out_grad, float scale, float alpha)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : XXXXXInferMeta
#
param : [x]
#
kernel :
#
func : selu_grad
-
backward_api
:
sigmoid_cross_entropy_with_logits_grad
forward
:
sigmoid_cross_entropy_with_logits (Tensor x, Tensor label, bool normalize, int ignore_index) -> Tensor(out)
args
:
(Tensor x, Tensor label, Tensor out_grad, bool normalize, int ingore_index)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
sigmoid_cross_entropy_with_logits_grad
#
- backward_api : sigmoid_cross_entropy_with_logits_grad
#
forward : sigmoid_cross_entropy_with_logits (Tensor x, Tensor label, bool normalize, int ignore_index) -> Tensor(out)
#
args : (Tensor x, Tensor label, Tensor out_grad, bool normalize, int ingore_index)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : sigmoid_cross_entropy_with_logits_grad
-
backward_api
:
tile_grad
forward
:
tile (Tensor x, ScalarArray repeat_times) -> Tensor(out)
args
:
(Tensor x, Tensor out_grad, ScalarArray repeat_times)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
tile_grad
#
- backward_api : tile_grad
#
forward : tile (Tensor x, ScalarArray repeat_times) -> Tensor(out)
#
args : (Tensor x, Tensor out_grad, ScalarArray repeat_times)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : tile_grad
# forward backward type not match
-
backward_api
:
top_k_grad
forward
:
top_k (Tensor x, Scalar k, int axis, bool largest, bool sorted) -> Tensor(out), Tensor(indices)
args
:
(Tensor out_grad, Tensor x, Tensor indices, int k, index axis, bool largest, bool sorted)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
top_k_grad
#
#
forward backward type not match
#
- backward_api : top_k_grad
#
forward : top_k (Tensor x, Scalar k, int axis, bool largest, bool sorted) -> Tensor(out), Tensor(indices)
#
args : (Tensor out_grad, Tensor x, Tensor indices, int k, index axis, bool largest, bool sorted)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : top_k_grad
-
backward_api
:
trace_grad
forward
:
trace (Tensor x, int offset, int axis1, int axis2) -> Tensor(out)
args
:
(Tensor out_grad, Tensor x, int offset, int axis1, int axis2)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
trace_grad
#
- backward_api : trace_grad
#
forward : trace (Tensor x, int offset, int axis1, int axis2) -> Tensor(out)
#
args : (Tensor out_grad, Tensor x, int offset, int axis1, int axis2)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : trace_grad
-
backward_api
:
unfold_grad
forward
:
unfold (Tensor x, int[] kernel_sizes, int[] strides, int[] paddings, int[] dilations) -> Tensor(out)
args
:
(Tensor x, Tensor out_grad, int[] kernel_sizes, int[] strides, int[] paddings, int[] dilations)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
unfold_grad
#
- backward_api : unfold_grad
#
forward : unfold (Tensor x, int[] kernel_sizes, int[] strides, int[] paddings, int[] dilations) -> Tensor(out)
#
args : (Tensor x, Tensor out_grad, int[] kernel_sizes, int[] strides, int[] paddings, int[] dilations)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : unfold_grad
-
backward_api
:
where_index_grad
forward
:
where_index (Tensor condition) -> Tensor(out)
args
:
(Tensor out_grad, Tensor x, int offset, int axis1, int axis2)
output
:
Tensor(x_grad)
infer_meta
:
func
:
UnchangedInferMeta
param
:
[
x
]
kernel
:
func
:
trace_grad
#
- backward_api : where_index_grad
#
forward : where_index (Tensor condition) -> Tensor(out)
#
args : (Tensor out_grad, Tensor x, int offset, int axis1, int axis2)
#
output : Tensor(x_grad)
#
infer_meta :
#
func : UnchangedInferMeta
#
param : [x]
#
kernel :
#
func : trace_grad
python/paddle/utils/code_gen/wrapped_infermeta_gen.py
浏览文件 @
a67fc4be
...
...
@@ -98,6 +98,7 @@ def source_include(header_file_path):
#include "paddle/phi/infermeta/multiary.h"
#include "paddle/phi/infermeta/nullary.h"
#include "paddle/phi/infermeta/unary.h"
#include "paddle/phi/infermeta/ternary.h"
"""
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录