1. 27 6月, 2022 1 次提交
  2. 05 6月, 2022 1 次提交
    • S
      【code format check upgrade】 step2:yapf (#42944) · a072fca8
      Sing_chan 提交于
      * use yapf to format all python file
      
      * yapf exclude two unittests file for they rely on writing and reading file, and format will break them
      
      * disable diff_py_file because too many diff files cause command following failed
      a072fca8
  3. 18 5月, 2022 1 次提交
    • W
      Add support for forward and reverse high-order automatic differentiation mechanism (#41919) · f6ee202f
      WangZhen 提交于
      * Updated triple_grad_check func
      
      * add todo for gradient checker and refine some comments
      
      * remove additional code
      
      * add test for warnging in backward.py
      
      * format python code
      
      * support multi input in triple gradient checker
      
      * Add matmul triple grad kernel
      
      * Updated comments of TODO
      
      * Supported some special tests
      
      * Change code-format to follow CI std
      
      * Updated gradient_checker.py
      
      * Fix conflicts
      
      * Removed unnecessary printing log
      
      * Change code style to follow CI std
      
      * merge upstream
      
      * add priops.py
      
      * add_p
      
      * rm useless files
      
      * add sub_p mul_p div_p
      
      * add sqrt_p and tanh_p
      
      * add reshape_p
      
      * add broadcast_p
      
      * Add python primitive wrappers.
      
      * Jvp rules updated.
      
      * JVP rules done for all the 17 primops.
      
      * quick check and fixes.
      
      * add jvp(op, *args)
      
      * add broadcast_p fill_constant_p matmul_p reduce_p reshape_p transpose_p
      
      * add split_p and concat_p
      
      * add gather_p and scatter_add_p
      
      * add slice_select_p and slice_assign_p
      
      * Add transpose rules.
      
      * add multi input check for add_p, sub_p, mul_p, div_p
      
      * update concat_p
      
      * Linearize and transpose in progress..
      
      * refine gather_p and scatter_add_p
      
      * updated.
      
      * update transpose.
      
      * refine slice_assign_p and slice_select_p
      
      * init commit for lower
      
      * Merged with primitive ops.
      
      * small update
      
      * add rules for orig2prim and prim2orig
      
      * add 9 test for prim ops
      
      * add more test and fix some bug
      
      * add more test
      
      * register proto
      
      * Adding primops test.
      
      * add shape valid check for broadcast_p op, and add keepdim attr into reduce_p op proto
      
      * support multi input and multi output for split_p and concat_p
      
      * Test updated.
      
      * update
      
      * fix slice bug for slice_select_p and slice_assign_p
      
      * updated.
      
      * Ops updated.
      
      * Refactor and bug fixes.
      
      * updated.
      
      * finish orig2prim and prim2orig rules
      
      * dtype for axis attr should be long int
      
      * update dtype for axis attr int64_t
      
      * update for iscan CI
      
      * Update primx.
      
      * Refactor vars in primx.
      
      * update for lower transform
      
      * add more shape and dtype check
      
      * update primx.py
      
      * change IndexTensor into int32 dtype
      
      * update
      
      * Fix linearize and transpose.
      
      * Update is_dot
      
      * Update is_dot
      
      * Update is_dot
      
      * add gradient aggregation, fix add_transpose.
      
      * pass first linearize+transpose test.
      
      * update test
      
      * refactor op registration and primx.
      
      * update rule for slice_assign
      
      * try test lower
      
      * update orig2prim and prim2orig
      
      * pass simple lower pass
      
      * update
      
      * Update input types in the unit test.
      
      * orig2prim segfault.
      
      * 50% for adam.minimize
      
      * test updated.
      
      * temp fix erros in removing vars.
      
      * primx updated.
      
      * update for matmul_v2 and reshape2 orig2prim
      
      * update for minimize
      
      * Refine primrules
      
      * Remove some code
      
      * supporting unused and unreachable vars.
      
      * update for use prim2orig in minimize
      
      * fix gather and scatter_add transpose.
      
      * Add rules UT
      
      * update scatter_add
      
      * Refine UT code
      
      * fix nonetype check in topo
      
      * Update gather_p pywrapper.
      
      * remove useless print
      
      * Merge tongxin PR and refine code
      
      * readd some test
      
      * rm useless print
      
      * polish code.
      
      * fix bug in minimize
      
      * add get_input_var_list and get_output_var_list and use it in lower
      
      * Fix scatter_add_p prim2orig
      
      * Update code and fix orig2prim/prim2orig UT
      
      * delete vars after block.desc._remove
      
      * Improve ops and vars clean up logics.
      
      * fix some bug in linearize and lower
      
      * update tanh transpose.
      
      * use set instead of list for var2remove
      
      * test updated.
      
      * polish code.
      
      * fix dot2bar delete.
      
      * merge tx/ad
      
      * add indextensor_dot for gather and scatter_add
      
      * add sorted for set
      
      * Fix scale_orig2prim params
      
      * fix some syntax bug
      
      * add golbal_lower_update list
      
      * Better handling of unused vars.
      
      * update tests.
      
      * Fix elementwise_sub orig2prim
      
      * support none for transpose rule
      
      * Merge and add transform UT
      
      * fix a bug in transpose
      
      * Fix transpose and UT
      
      * a hacky fix for cancat op
      
      * Fix exector place
      
      * Refine variable name
      
      * Add elementwise_mul orig2prim and support p_norm when p=1
      
      * Add sqrt orig2prim rule and UT
      
      * merge wz test
      
      * rename files, add enable_prim, disable_prim, prim_enabled, delete global_lower_update
      
      * fix a bug in test_ad_transform_trans
      
      * revert modify in framework.py
      
      * add paddle.fluid.incubate.ad_transform to  python/setup.py.in
      
      * Fix remove vars error
      
      * Fix p_norm_orig2prim
      
      * merge wz
      
      * Modify the code directory
      
      * Add utils.py and remove get_input/output_vars functions
      
      * Update maolin code
      
      * Rename UT and refine test_ad_transform_primops
      
      * Fix div_p jvp rule
      
      * Add higher derivatives UT
      
      * Remove UT to autograd dir
      
      * Fix comments
      
      * import paddle in primops.py
      
      * Add some error message for assert
      
      * Refine UT class name and refine some comments in primreg.py
      
      * update minimize of paddle/optimizer for supporting new autograd
      
      * resolve cicular importing between backward.py and optimizer.py
      
      * fill gradients and minimize unittest
      
      * Replace `assert isinstance` with `raise TypeError`
      
      * Add some assert message for primx.py
      
      * Polish variable name
      
      * Add some assert message
      
      * add some docstring
      
      * refine some name
      
      * update the format of english documents
      
      * Split test_transform.py to two files to avoid ci error
      
      * fix the document format of enable_prim/disable_prim/prim2orig/prim_enabled
      
      * polish test_gradients_and_minimize
      
      * add default value for prim_enabled api doc
      
      * Remove some UT to avoid windows ci error
      
      * Enlarge test_gradients_and_minimize limit time
      
      * Fix ut limit time
      Co-authored-by: Nveyron95 <veyron_wu@163.com>
      Co-authored-by: NJiabin Yang <360788950@qq.com>
      Co-authored-by: Nlevi131 <limaolin01@baidu.com>
      Co-authored-by: NTongxin Bai <waffle.bai@gmail.com>
      Co-authored-by: NXiaoxu Chen <chenxx_id@163.com>
      Co-authored-by: Nlevi131 <83750468+levi131@users.noreply.github.com>
      f6ee202f
  4. 16 4月, 2022 1 次提交
    • L
      Lml/prim op pywrapper (#41813) · ebf4fe6e
      levi131 提交于
      * native commit for triple grad of sigmod
      
      * Updated unittests files
      
      * init functional jacobian api
      
      * Updated trible_test func
      
      * Updated gradient_checker & test_script
      
      * finish test with dtype float32
      
      * add float64 test case
      
      * polish code
      
      * use atol=1e-5 with dtype float64
      
      * fix for ci
      
      * set timeout for test_jacobian
      
      * fix dygraph grad to support high differential
      
      * polish API docstring
      
      * Updated gradient checker and some related files
      
      * fix double grad strip error for high differential
      
      * fix double grad strip error for high differential
      
      * Add Sigmoid triple grad tests
      
      * fix dygraph double grad dtype error when calling for high differential senario
      
      * Updated triple grad teses func
      
      * Use np.random to initialize ddx
      
      * Updated triple_grad_check func
      
      * add todo for gradient checker and refine some comments
      
      * remove additional code
      
      * add test for warnging in backward.py
      
      * format python code
      
      * support multi input in triple gradient checker
      
      * Add matmul triple grad kernel
      
      * Updated comments of TODO
      
      * Supported some special tests
      
      * Change code-format to follow CI std
      
      * Updated gradient_checker.py
      
      * Fix conflicts
      
      * Removed unnecessary printing log
      
      * Change code style to follow CI std
      
      * merge upstream
      
      * add priops.py
      
      * add_p
      
      * rm useless files
      
      * add sub_p mul_p div_p
      
      * add sqrt_p and tanh_p
      
      * add reshape_p
      
      * add broadcast_p
      
      * Add python primitive wrappers.
      
      * Jvp rules updated.
      
      * JVP rules done for all the 17 primops.
      
      * quick check and fixes.
      
      * add jvp(op, *args)
      
      * add broadcast_p fill_constant_p matmul_p reduce_p reshape_p transpose_p
      
      * add split_p and concat_p
      
      * add gather_p and scatter_add_p
      
      * add slice_select_p and slice_assign_p
      
      * Add transpose rules.
      
      * add multi input check for add_p, sub_p, mul_p, div_p
      
      * update concat_p
      
      * Linearize and transpose in progress..
      
      * refine gather_p and scatter_add_p
      
      * updated.
      
      * update transpose.
      
      * refine slice_assign_p and slice_select_p
      
      * init commit for lower
      
      * Merged with primitive ops.
      
      * small update
      
      * add rules for orig2prim and prim2orig
      
      * add 9 test for prim ops
      
      * add more test and fix some bug
      
      * add more test
      
      * register proto
      
      * Adding primops test.
      
      * add shape valid check for broadcast_p op, and add keepdim attr into reduce_p op proto
      
      * support multi input and multi output for split_p and concat_p
      
      * Test updated.
      
      * update
      
      * fix slice bug for slice_select_p and slice_assign_p
      
      * updated.
      
      * Ops updated.
      
      * Refactor and bug fixes.
      
      * updated.
      
      * finish orig2prim and prim2orig rules
      
      * dtype for axis attr should be long int
      
      * update dtype for axis attr int64_t
      
      * update for iscan CI
      
      * Update primx.
      
      * Refactor vars in primx.
      
      * update for lower transform
      
      * update primx.py
      
      * update
      
      * Fix linearize and transpose.
      
      * Update is_dot
      
      * Update is_dot
      
      * Update is_dot
      
      * add gradient aggregation, fix add_transpose.
      
      * pass first linearize+transpose test.
      
      * update test
      
      * add_prim_op_pywrapper
      
      * Add primops UT
      
      * Fix set_value and update
      
      * Fix code format and PR-CI-Coverage
      Co-authored-by: Nveyron95 <veyron_wu@163.com>
      Co-authored-by: NJiabin Yang <360788950@qq.com>
      Co-authored-by: NTongxin Bai <waffle.bai@gmail.com>
      Co-authored-by: N0x45f <wangzhen45@baidu.com>
      ebf4fe6e
  5. 14 4月, 2022 1 次提交
    • Z
      [DoubleGrad] Enabled test_autograd_functional_dynamic.py under eager mode (#41668) · ad9585b6
      Zhanlue Yang 提交于
      * [DoubleGrad] Enabled double grad test cases in eager_mode for test_imperative_double_grad
      
      * Fixed elementwise issue
      
      * Addressed CI failures
      
      * [DoubleGrad] Enabled test_imperative_triple_grad test cases under eager_mode
      
      * [DoubleGrad] Enabled test_autograd_functional_dynamic.py under eager mode
      
      * Enabled more test cases
      
      * Fixed performance issues
      
      * Fixed minor issue
      ad9585b6
  6. 02 4月, 2022 1 次提交
    • X
      Enhance vjp/jvp/Jacobian/Hessian API for supporting dynamic, static graph and... · 9e764d82
      Xiaoxu Chen 提交于
      Enhance vjp/jvp/Jacobian/Hessian API for supporting dynamic, static graph and batched, unbatched mode (#40692)
      
      * modify vjp/jvp for both dynamic and static graph
      
      * enforce jacobian class for supporting first/last batch
      
      * add unittest for jvp, jacobian withlast batch, jacobian with first batch
      
      * fix the incorrect shape when multi-index Jacobian
      
      * enforce Hessian class for supporting dynamic graph
      
      * add Hessian class unittest
      
      * bugfix, jvp double_backward_trick zeros_like return stop_gradient=True in static graph
      
      * add API beta warnnings
      
      * add white_list for cuda11.x ci windows.
      
      * optimize some code snippets and documments
      
      * set unittest timeout to 100 seconds
      
      * move vjp,jvp,Jacobian,Hessian to incubate
      
      * fix vjp,vjp import path of sample code
      
      * fix code style error of augtograd/__init__ file
      9e764d82
  7. 30 3月, 2022 1 次提交
    • W
      [Eager] Pylayer (#39989) · 157c1a28
      wanghuancoder 提交于
      * Supported Complex2Real Conversion for Eager Dygraph
      
      * Supported Complex2Real Conversion for Eager Dygraph
      
      * Enabled complex type promotion test for matmul_v2
      
      * pylayer, test=develop
      
      * Fix CI issues
      
      * Support initializing specific grad tensors to zero for selected operators
      
      * finish forward, test=develop
      
      * create grad node finish, test=develop
      
      * Merged adj_edges_ with GradSlotMeta
      
      * Fixed monir issue
      
      * backward finish, start dbg, test=develop
      
      * Adjusted num runs
      
      * Recovered Eager performance tests configurations
      
      * Recovered Eager performance tests configurations
      
      * finish, test=develop
      
      * polish, test=develop
      
      * polish, test=develop
      
      * refine, test=develop
      
      * eager, test=develop
      
      * Adjusted performance tests configurations
      
      * Fixed Minor Issues with performance tests
      
      * [Phi] Fix macro name typo
      
      * support set_materialize_grads, test=develop
      
      * suppotr mark_non_differentiable, test=develop
      
      * support once_differentiable, test=develop
      
      * refine, test=develop
      
      * refine, test=develop
      
      * Moved out Edge from GradSlotMeta
      
      * Fixed issues from merge
      
      * Fixed typo
      
      * Addressed review comments
      
      * Fixed merge issues
      
      * Fixed minor issues
      
      * Fixed minor issue
      
      * refine, test=develop
      
      * refine, test=develop
      
      * refine, test=develop
      
      * Fixed major issues and enabled auto_prune test cases
      
      * Fixed issues from merge
      
      * refine, test=develop
      
      * refine, test=develop
      
      * refine, test=develop
      
      * refine, test=develop
      
      * refine, test=develop
      Co-authored-by: Njim19930609 <jim19930609@gmail.com>
      Co-authored-by: NAurelius84 <zhangliujie@baidu.com>
      157c1a28
  8. 25 3月, 2022 1 次提交
    • J
      Refactor Dygraph Flags (#40786) · 3085d5e4
      Jiabin Yang 提交于
      * refactor eager flags
      
      * fix flags error when we switch from eager to dygraph
      
      * fix ci problem
      
      * fix ci
      
      * fix ci
      
      * merge develop and fix code style
      
      * merge develop and fix code style
      
      * fix op test error
      
      * fix op test error
      
      * fix op test error
      
      * fix op test error
      
      * fix op test error
      
      * merge develop
      3085d5e4
  9. 14 3月, 2022 1 次提交
    • J
      Support custom op and paddle.autograd.bacward in eager (#40423) · 227fa408
      Jiabin Yang 提交于
      * eager, test=develop
      
      * fix bug, test=develop
      
      * eager, test=develop
      
      * merge legacy to fluid
      
      * eager, test=develop
      
      * eager, test=develop
      
      * Refactor TensorAdd func by template and remove gradient_accumulation in eager
      
      * Remove needless target name
      
      * eager, test=develop
      
      * eager, test=develop
      
      * Use overload instead of template
      
      * Remove legacy code
      
      * Remove legacy code
      
      * selectedrows, test=develop
      
      * Remove DataType test
      
      * eager, test=develop
      
      * eager, test=develop
      
      * support gan, test=develop
      
      * Using Tensor directly instead of using EagerTensor
      
      * support gradient_accumulation
      
      * make test_imperative_lod_tensor_to_selected_rows longer
      
      * make test_imperative_lod_tensor_to_selected_rows longer
      
      * refine code
      
      * ptb, test=develop
      
      * Rename all EagerTensor to Tensor
      
      * Rename some EagerTensor to Tensor
      
      * rename EagerTensor to EagerVariable
      
      * eager, test=develop
      
      * eager, test=develop
      
      * eager, test=develop
      
      * eager, test=develop
      
      * add more test
      
      * eager, test=develop
      
      * Support copiable selected rows and merge develop
      
      * save load, eager, test=develop
      
      * save load, eager, test=develop
      
      * refine, test=develop
      
      * remove useless _set_value method
      
      * refine, test=develop
      
      * refine, test=develop
      
      * revert static_runner, test=develop
      
      * EagerTensor to Tensor, test=develop
      
      * refine, test=develop
      
      * refine, test=develop
      
      * clear grad, test=develop
      
      * merge, develop
      
      * merge, develop
      
      * merge, test=develop
      
      * merge, test=develop
      
      * Support quant and part of slice
      
      * support legacy static save
      
      * extend slim tests time
      
      * remove imperative on inference
      
      * remove imperative on inference
      
      * merge develop
      
      * fix typo
      
      * fix typo
      
      * split slice related code into 2 part for imperative and eager
      
      * split slice from inference
      
      * split slice from inference
      
      * fix test_tensor_register_hook
      
      * support custom op in eager mode
      
      * fix inference deps error
      
      * split eager utils from custom operator
      
      * fix type match
      
      * fix typo
      Co-authored-by: NWang Huan <wanghuan29@baidu.com>
      Co-authored-by: NWeilong Wu <veyron_wu@163.com>
      Co-authored-by: Nwanghuancoder <wanghuancoder@163.com>
      227fa408
  10. 27 2月, 2022 1 次提交
  11. 29 1月, 2022 1 次提交
    • T
      Symbolic Hessian (#39221) · 64e7c715
      Tongxin Bai 提交于
      * [autograd] static Jacobian pass tests.
      
      * [autograd] apply CR suggested changes.
      
      * [autograd] more tests.
      
      * [autograd] add CPUPlace in tests.
      
      * [autograd] bug fixes.
      
      * [autograd] reformatted.
      
      * [autograd] adding Hessian, in progress.
      
      * [autograd] Hessian passes. A double grad bug fixed.
      
      * [autograd] fix renaming conflict in double backward pass.
      
      * [autograd] polish test.s
      
      * fix a bug when using brackets
      
      * debug for ci
      
      * [autograd] fixing Hessian test.
      
      * polish format.
      Co-authored-by: Nlevi131 <83750468+levi131@users.noreply.github.com>
      Co-authored-by: Nlevi131 <limaolin01@baidu.com>
      64e7c715
  12. 24 1月, 2022 1 次提交
    • T
      [autograd] static Jacobian pass tests. (#39007) · d43655ba
      Tongxin Bai 提交于
      * [autograd] static Jacobian pass tests.
      
      * [autograd] apply CR suggested changes.
      
      * [autograd] more tests.
      
      * [autograd] add CPUPlace in tests.
      
      * [autograd] bug fixes.
      
      * [autograd] reformatted.
      d43655ba
  13. 23 12月, 2021 1 次提交
    • W
      add control/status API (#37885) · 21b7ed3e
      wuhuanzhou 提交于
      * add control/status API, test=develop
      
      * fix import error, test=develop
      
      * add is_grad_enabled unittest, test=develop
      
      * add code comment for example code and API, test=develop
      
      * add checking for type, test=develop
      
      * add api description, test=develop
      
      * fix docs index_en, test=document_fix
      
      * fix doc of is_floating_point, test=document_fix
      21b7ed3e
  14. 29 11月, 2021 1 次提交
    • W
      [New features] Support batch_jacobian and batch_hessian (#37547) · 4d24d352
      Weilong Wu 提交于
      * native commit for triple grad of sigmod
      
      * Updated unittests files
      
      * init functional jacobian api
      
      * Updated trible_test func
      
      * Updated gradient_checker & test_script
      
      * finish test with dtype float32
      
      * add float64 test case
      
      * polish code
      
      * use atol=1e-5 with dtype float64
      
      * fix for ci
      
      * set timeout for test_jacobian
      
      * fix dygraph grad to support high differential
      
      * polish API docstring
      
      * Updated gradient checker and some related files
      
      * fix double grad strip error for high differential
      
      * fix double grad strip error for high differential
      
      * Add Sigmoid triple grad tests
      
      * fix dygraph double grad dtype error when calling for high differential senario
      
      * Updated triple grad teses func
      
      * Use np.random to initialize ddx
      
      * Updated triple_grad_check func
      
      * add todo for gradient checker and refine some comments
      
      * remove additional code
      
      * add test for warnging in backward.py
      
      * format python code
      
      * support multi input in triple gradient checker
      
      * Add matmul triple grad kernel
      
      * Updated comments of TODO
      
      * Supported some special tests
      
      * Change code-format to follow CI std
      
      * Updated gradient_checker.py
      
      * Fix conflicts
      
      * Removed unnecessary printing log
      
      * Change code style to follow CI std
      
      * support batch in jacobian and hessian
      
      * add batch jacobian and batch hessian
      
      * Add batch_jacobian test, draft version
      
      * [New features] Add elementwise_mul triple grad kernel (#37152)
      
      * Add elementwise_mul triple grad kernel
      
      * Removed InplaceInferer and polished code
      
      * Add numerical_batch_jacobian,numerical_batch_hessian and tests
      
      * Support batch_jacobian and batch_numerical
      
      * Use pre-commit to check code format
      
      * Update doc, polish code, add unit test
      
      * Reset the TIMEOUT properties of test_jacobian to pass CI
      Co-authored-by: Nlevi131 <limaolin01@baidu.com>
      Co-authored-by: NJiabin Yang <360788950@qq.com>
      4d24d352
  15. 18 10月, 2021 2 次提交
    • L
      Lml/vhp (#36146) · 4c0ad772
      levi131 提交于
      * init functional jacobian api
      
      * finish test with dtype float32
      
      * add float64 test case
      
      * polish code
      
      * use atol=1e-5 with dtype float64
      
      * fix for ci
      
      * set timeout for test_jacobian
      
      * init hessian API
      
      * save status
      
      * polish API docstring
      
      * modify docstring
      
      * add utils.py
      
      * save status
      
      * fix dygraph double grad dtype error when calling for high differential senario
      
      * reinvoke ci
      
      * test_hessian.py is ok
      
      * polish hessian API
      
      * init vhp
      
      * Revert "init vhp"
      
      This reverts commit cbd4d3b66abe82b0ac10721b9eddeb7d82e0a1c8.
      
      * init vhp
      
      * finish vhp API logically
      
      * add test for partial_engine.cc
      
      * modify numerical_delta with dtype float32
      
      * merge fix for dtype float64
      
      * spell fix
      
      * save status
      
      * polish code
      
      * rm _stop_gradient_pre_process
      
      * save status
      
      * add example for vhp interface
      
      * add _compute_numerical_vjp and _compute_numerical_vhp
      
      * test is ok
      
      * vhp is ok
      
      * add testVHPFloat64
      
      * modify for comments
      
      * modify format
      
      * modify format
      
      * save status
      
      * test_vhp is ok
      
      * finish code polish
      
      * small modify for v is None
      Co-authored-by: NJiabinYang <360788950@qq.com>
      4c0ad772
    • T
      [autograd.functional] Fix a bug on handling v=None in vjp and jvp (#36445) · 79dbbcce
      Tongxin Bai 提交于
      * autograd.functional passed pylint checker.
      
      * autograd.functional: fix import errors.
      
      * autograd.functional: fixed unit tests.
      
      * autograd.functional minor format change
      
      * [autograd.functional] Fixed vjp and jvp's v=None bug.
      79dbbcce
  16. 14 10月, 2021 1 次提交
  17. 13 10月, 2021 1 次提交
  18. 12 10月, 2021 1 次提交
    • T
      [Autograd.functional] VJP and JVP (#36020) · 1e1aa197
      Tongxin Bai 提交于
      * autograd.functional passed pylint checker.
      
      * autograd.functional: fix import errors.
      
      * autograd.functional: fixed unit tests.
      
      * autograd.functional minor format change
      1e1aa197
  19. 29 9月, 2021 1 次提交
    • L
      Add functional autograd API:hessian (#36108) · 1f93582c
      levi131 提交于
      * init functional jacobian api
      
      * finish test with dtype float32
      
      * add float64 test case
      
      * polish code
      
      * use atol=1e-5 with dtype float64
      
      * fix for ci
      
      * set timeout for test_jacobian
      
      * init hessian API
      
      * save status
      
      * polish API docstring
      
      * modify docstring
      
      * add utils.py
      
      * save status
      
      * fix dygraph double grad dtype error when calling for high differential senario
      
      * reinvoke ci
      
      * test_hessian.py is ok
      
      * polish hessian API
      
      * init vhp
      
      * Revert "init vhp"
      
      This reverts commit cbd4d3b66abe82b0ac10721b9eddeb7d82e0a1c8.
      
      * add test for partial_engine.cc
      
      * modify numerical_delta with dtype float32
      
      * merge fix for dtype float64
      
      * spell fix
      
      * polish code
      
      * rm _stop_gradient_pre_process
      Co-authored-by: NJiabinYang <360788950@qq.com>
      1f93582c
  20. 27 9月, 2021 1 次提交
    • L
      Add functional autograd API: jacobian (#35917) · ec2f68e8
      levi131 提交于
      * init functional jacobian api
      
      * finish test with dtype float32
      
      * add float64 test case
      
      * polish code
      
      * use atol=1e-5 with dtype float64
      
      * fix for ci
      
      * set timeout for test_jacobian
      
      * polish API docstring
      
      * modify docstring
      ec2f68e8
  21. 16 9月, 2021 1 次提交
  22. 04 8月, 2021 1 次提交
    • C
      Add gradient with optimizer API (#34395) · d9e63a81
      chentianyu03 提交于
      * add gradients_with_optimizer api
      
      * modify gradients_with_optimizer
      
      * add gradients_with_optimizer api into paddle.auto.backward_mode
      
      * add gradients_with_optimizer test case
      
      * add doc for gradients_with_optimizer
      
      * add doc for gradients_with_optimizer
      d9e63a81
  23. 11 6月, 2021 1 次提交
  24. 25 4月, 2021 1 次提交
  25. 15 4月, 2021 1 次提交
    • W
      Customizable Python Layer in Dygraph (#32130) · 29f65225
      WeiXin 提交于
      * custom python backward
      
      * polish up the code
      
      * polish up the code
      
      * polish up the code.
      
      * Fix code format and comments.
      
      * Delete redundant files.
      
      * add unnittest.
      
      * edit unnittest.
      
      * edit unnittest.
      
      * Remove redundant header files.
      
      * Improve coverage and remove redundant code.
      
      * support saving for backward.
      
      * polish code according to comments.
      
      * Add support type for PyLayer.
      
      * Modify the DOC.
      
      * polish Doc.
      
      * polish Doc.
      
      * polish Doc.
      
      * polish Doc.
      
      * polish Doc.
      
      * polish Doc.
      
      * polish code and make the code robust.
      
      * Modify the code format.
      29f65225
  26. 01 4月, 2021 1 次提交
    • C
      add custom init grad for backward function (#31540) · 83b953f5
      chentianyu03 提交于
      * add custom init grad for backward function
      
      * add custom init grad for backward function
      
      * handle when the grad_tensor is none
      
      * handle when the grad_tensor is none
      
      * fix the args type error on windows platform
      
      * modify the args order and doc
      
      * format code
      
      * add grad_tensor to xpu
      
      * modify the grad_tensor type check
      
      * add paddle.backward api to support multi tensors gradient compute
      
      * add paddle.backward api to support multi tensors gradient compute
      
      * add paddle.atuograd module and backward api
      
      * change tensor.backward func args
      
      * modify tensor backward api
      
      * remove create_graph intputs args
      
      * add doc and examplex code for backward api
      
      * when have the same tensor, throw error
      
      * modify test Init func args
      
      * modify the execute.Init func args in test files
      
      * add paddle.autograd package in setup.py.in
      
      * modify error msg, remove _run_backward method in class Tensor
      
      * add test cases for backward api
      83b953f5