跪求统一API
Created by: Meiyim
欢迎您对PaddlePaddle提出建议,非常感谢您对PaddlePaddle的贡献! 在留下您的建议时,辛苦您同步提供如下信息:
- 版本、环境信息 1)PaddlePaddle版本:请提供您的PaddlePaddle版本号,例如1.1 Paddle 1.3.0 2)CPU/GPU:您是否使用GPU进行训练,如是,请提供您的CUDA和cuDNN版本号 3)系统环境:请您描述系统类型、版本,例如Mac OS 10.14
- 复现信息:如为报错,请给出复现环境、复现步骤
- 建议描述:请您详细描述,您认为需优化的功能
Paddle作为百度研发的深度学习框架应该能够代表百度最高代码、架构水平。提供给开发者可简单可依赖的开发API。TF的API设计中基于tensor操作的API大多跟numpy同名,且有相应的参数。而Paddle的API基本是乱成一锅粥。举个例子: 以下3个参数都有指定reduce维度的含义,但是却有3种形态。
-
reduce_max
有参数dim
-
argmax
有参数axis
-
unsqueeze
有参数axes
以下两个API都是对logits进行非线性然后算交叉熵,而命名是不同一的: sigmoid_cross_entropy_with_logits
softmax_with_cross_entropy
另外为了增加灵活性,请对所有API都引以下机制:
- broadcast机制,维度自动对齐。
- 所有需要传入Tensor的参数,都应该可以传入一个
Tensor_like
对象。既可以是tensor,也可以是python scalar, 或者是二者的混合。(类似于自动应用paddle.fluid.layers.fill_constant
)
我建议Paddle发布fluid V2。重新规划一下API(建议照着numpy设计)。