Fork自 PaddlePaddle / Paddle
* Op developer can add `InferShape` to any operator
* Add grad_name_map * Fix bug * Fix bug * Follow comments
* Add no_grad_vars for grad_op_maker * Add unittest * Fix unittest * Fix unittest * Follow comment