- 03 12月, 2020 1 次提交
-
-
由 liym27 提交于
[Dy2stat] Add a decorator paddle.jit.not_to_static to support that not to convert a function in Dynamic-to-Static. (#29253) Usage scenarios:A function could have run successfully in static mode, you can use it to decorate a function in the following cases: 1. An unknown error occurs in the dynamic-to-static conversion process of the function; 2. In the internal implementation of the function, it has two branches: dynamic branch and static branch; 3. Users don't want to convert the function in the process of dynamic to static.
-
- 02 12月, 2020 1 次提交
-
-
由 Huihuang Zheng 提交于
This PR fixes several problems in dy2stat for Deoldify model in PaddleGan. In model, software engineer wrote if x.shape == y.shape, the Tenser shape is a tuple in dygraph so the == returns True/False, but in static graph the == becomes element-wise comparison, which is a different behavior. In this PR we reduce the element-wise comparison result. If software engineer write computations which uses parameters in hooks, the static graph can loss the parameter variable because we put param_guard at forward of a Layer. In this PR we made param_guard cover pre-hook and post-hook. In PaddleGan, software engineer calculated some parameter values in __init__ by running some dygraph code. Those code also run during dy2stat. So some variables may be assign as a VarBase (Tensor) first and then Variable, which raised an error. We fixed the bug in this PR by handling the case. TODO: We just added testcase for the 1. shape comparison. Should add test case for 2. and 3. But since we are chasing 2.0RC, I will do it in the near future PR
-
- 30 11月, 2020 1 次提交
-
-
由 WeiXin 提交于
* Changed a variable name error * Add comments * Move member functions of TranslatedLayer out of function * edit code according to review * Edit input argument of '_run_static_graph' * reset due to Segmentation fault * rename variables when stitching graph * modify code according CI * Add comments to '__i_m_p_l__' * remove blanks befor 'Get...' * edit code according to review * Add a comment to '_execution_method_creator' * Edit a comment to '_execution_method_creator'
-
- 28 11月, 2020 2 次提交
- 27 11月, 2020 1 次提交
-
-
由 liym27 提交于
[Dynamic-to-Static] Support **kwargs as input of the function which is decorated by `jit.save.to_static` (#29098)
-
- 25 11月, 2020 1 次提交
-
-
由 liym27 提交于
* Support pop for dict in dy2stat * Move convert_pop to convert_operators.py and polish convert_pop
-
- 24 11月, 2020 3 次提交
-
-
由 Huihuang Zheng 提交于
Add support for using tuple as tensor.shape (For example: a, b, c, d = x.shape)
-
由 liym27 提交于
[Dynamic-to-Static] Fix bug of convert_logical_and/convert_logical_or: the operands are executed sequentially(#28993) 1) The operands are executed sequentially according to the running logic of Python. 2) If the left hand operand is True(for convert_logical_or)/False(for convert_logical_and), the right hand operand should be executed.
-
由 Huihuang Zheng 提交于
The PR description is long. See details in the PR link.
-
- 19 11月, 2020 4 次提交
-
-
由 liym27 提交于
-
由 liym27 提交于
[Dynamic-to-Static] Fix bug in loop_transformer: loop vars should contain the var from ancestor-for-node (#28735)
-
由 liym27 提交于
[Dynamic-to-Static ErrorMessage] Support dy2stat error message when call jit.save and polish error message (#28713) * Support dy2stat error message when call jit.save; * Polish dy2stat error message: (1) the original dygraph code is marked with (* user code *) ; (2) "In user code:" -> "In transformed code:"
-
由 Huihuang Zheng 提交于
Fix convert_callmMay be called multiple times in Dy2stat. Also strip some strings to make sure no influence from blank spaces.
-
- 17 11月, 2020 1 次提交
-
-
由 Huihuang Zheng 提交于
Fix a bug that used in PaddleGAN model which used `isinstance` in a for loop
-
- 11 11月, 2020 2 次提交
-
-
由 liym27 提交于
1. Remove 'fluid'; 2. Variable -> Tensor APIs: sum, convert_call, convert_ifelse, convert_logical_and, convert_logical_or, convert_logical_not
-
由 Huihuang Zheng 提交于
Modify ProgramTranslator and TracedLayer Doc for API 2.0
-
- 10 11月, 2020 1 次提交
-
-
由 Huihuang Zheng 提交于
Remove "fluid", "variable" in 2.0 API doc
-
- 05 11月, 2020 1 次提交
-
-
由 Aurelius84 提交于
* Fix bug in convert_call * refine unittest * refine code * refine code * fix unittest failed * add assert
-
- 27 10月, 2020 1 次提交
-
-
由 liym27 提交于
[Dy2Stat-log] Call warnings.warn() to display the warning-message only once when calling StaticFunc.__call__ or ProgramTranslator().get_output (#28260)
-
- 26 10月, 2020 1 次提交
-
-
由 Aurelius84 提交于
* Join break cond with while cond * remove usless code * refine the if code * Split into BreakTransfromOptimizer * add BreakTransformOptimizer in ast_transformer * add more comment
-
- 22 10月, 2020 1 次提交
-
-
由 Aurelius84 提交于
* remove some judgement * fix len(outputs) == 1
-
- 20 10月, 2020 1 次提交
-
-
由 Aurelius84 提交于
* refine code of DygraphToStaticAst * add __init__ function
-
- 17 10月, 2020 1 次提交
-
-
由 Aurelius84 提交于
* fix test_lstm unittest failed * add more unittest * modify cmakelist * fix judgement
-
- 16 10月, 2020 2 次提交
-
-
由 Guo Sheng 提交于
* Incorporate cudnn_lstm into LSTM api. test=develop * Make coalesce_tensor support alignment optionally. test=develop * Reorganize RNN apis. test=develop * Fix cudnn rnn layout conversion. test=develop * Add sequence_length support for RNN cudnn implement. Add optional init_h and init_c gradient for cudnn_lstm_op. test=develop * Use create_parameter for rnn cudnn impl. test=develop * Move `self._flat_weight = self.create_parameter()` in RNNBase to main_program. test=develop * Update RNN api unittest to use set_device. test=develop * Fix set_place for unit tests of RNN apis. test=develop * Fix use_align in coalesce_tensor_op. test=develop * Adjust RNN apis arguments according to comments. test=develop * Polish documents for SimpleRNN apis. test=develop * Refine random seed in cudnn_lstm_op. Expose rnn params from sublayers to RNN. test=develop * Fix RNN saving for jit.save. Refine cudnn_lstm dropout behavior. test=develop * Fix doc of GRU. test=develop * Use ShareDataWith to avoid copying for cudnn_lstm_op test. test=develop * Remove updates on cudnn_lstm temporarily. test=develop * Use ShareDataWith to avoid copying for cudnn_lstm_op test. test=develop * Refine random seed in cudnn_lstm_op. test=develop * Fix test_lstm by adjust ConcreteProgram buffer getter. test=develop * Use create_parameter instead of create_var for rnn._flat_weight for static graph usage. test=develop * Remove W input for cudnn_lstm to pass unused_var_check. test=develop * Add test_predict for RNN unit tests coverage. test=develop * Fix code style of rnn. test=develop * Fix F.rnn usage in rnn.py. test=develop
-
由 Aurelius84 提交于
* Fix save in eval mode * remove assert statement * fix test_partial_program failed * add more test * modify back into _train_program
-
- 14 10月, 2020 1 次提交
-
-
由 chentianyu03 提交于
* modify cond while_loop to paddle.static.nn.cond * modify crop_tensor to paddle.crop * modify Variable to paddle.static.Variable * remove nn.beam_search, nn.beam_search_decode, nn.gather_tree * remove bpr_loss, center_loss, rank_loss, smooth_l1, teacher_student_sigmoid_loss, edit_distance, sampled_softmax_with_cross_entropy in nn.functional * remove apis in nn.functional.learn_rate.py * remove pool2d, pool3d, adaptive_pool2d, adaptive_pool3d in nn.functional * remove apis in nn.functional.vision * remove erf, soft_relu in nn.functional.activation * remove apis in nn.functional.extension * remove nn.functional.rnn * remove hash from nn.functional.lod * remove row_conv from nn.functional.extension * remove one_hot, pad2d, pad_constant_like from nn.functional.common * remove nn.gather_tree, nn.BilinearTensorProduct, nn.Pool2D, nn.Pad2D * remove apis from optimizer.__init * remove tensor.creation.fill_constant * remove elementwise_mul in nn.functional.common and modify to paddle.multiply * remove tensor.stat.reduce_mean * remove reduce_all, reduce_any in tensor.logic * remove apis in tensor.math * remove apis in tensor.__init__ * remove has_inf, has_nan in tensor.search * remove apis in framework.__init__ * remove apis in paddle.__init__ * remove apis in nn.functional.__init__ * modify removed alias apis to raw api in doc and unittests * fix remove grid_sample bug * modify removed alias apis to raw api in doc and unittests * modify removed alias apis to raw api in doc and unittests * modify removed alias apis to raw api in doc and unittests * modify removed alias apis to raw api in doc and unittests * modify removed alias apis to raw api in doc and unittests * modify removed alias apis to raw api in doc and unittests * delete alias api relastions in doc * reserve paddle.compat, paddle.sysconfig * remove unittest for paddle.reduce_all, paddle.reduce_any * modify removed alias apis to raw api in doc and unittests * recover paddle.save and paddle.load * resolve conflicts * fix sample code missing paddle.enable_static() bug * fix sample code missing paddle.enable_static() bug * fix to_string sample code error
-
- 13 10月, 2020 1 次提交
-
-
由 Huihuang Zheng 提交于
As the title
-
- 30 9月, 2020 1 次提交
-
-
由 liym27 提交于
-
- 29 9月, 2020 2 次提交
-
-
由 Huihuang Zheng 提交于
Refine Dy2stat APIs to 2.0rc After discussion, we accepted 3 key points from reviewers: 1. In 2.0rc we changed dygraph_to_static folder to dy2static 2. Keep the three files: convert_call_func.py, convert_operators.py, variable_trans_func.py 3. Remove convert_operators path when users import convert_xxx. After this PR, users can import convert_xxx APIs by: `import paddle.jit.dy2static.convert_xxx` The file structure will be: ``` jit dy2static convert_operators.py convert_func_call.py variable_trans_func.py ``` Detail changed API in files: In python/paddle/jit/dygraph_to_static/convert_call_func.py: from ...fluid.dygraph.dygraph_to_static.convert_call_func import convert_call #DEFINE_ALIAS In python/paddle/jit/dygraph_to_static/convert_operators.py: from ...fluid.dygraph.dygraph_to_static.convert_operators import cast_bool_if_necessary #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_assert #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_ifelse #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_len #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_logical_and #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_logical_not #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_logical_or #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_print #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_var_dtype #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_var_shape #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_while_loop #DEFINE_ALIAS In python/paddle/jit/dygraph_to_static/variable_trans_func.py: from ...fluid.dygraph.dygraph_to_static.variable_trans_func import create_fill_constant_node #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.variable_trans_func import create_static_variable_gast_node #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.variable_trans_func import data_layer_not_check #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.variable_trans_func import to_static_variable #DEFINE_ALIAS from ...fluid.dygraph.dygraph_to_static.variable_trans_func import to_static_variable_gast_node #DEFINE_ALIAS
-
由 Huihuang Zheng 提交于
This PR fixed two bugs when converting LSTM in dy2stat: is_unsupported has a condition can trigger Python syntax error LSTM API's implementation in _rnn_static_graph doesn't include parameter initialization, which can cause dy2stat error.
-
- 24 9月, 2020 1 次提交
-
-
由 Aurelius84 提交于
* rename StaticLayer * rename
-
- 22 9月, 2020 1 次提交
-
-
由 Aurelius84 提交于
* refine error mesg
-
- 17 9月, 2020 2 次提交
-
-
由 liym27 提交于
* Add env value to log to stdout; 2.Add logger name * Optimize log messages in dygraph-to-static * Replace logging.warn and warnings.warn with logging_utils.warn
-
由 Huihuang Zheng 提交于
Change ProgramTranslator.enable_declarative to ProgramTranslator.enable_to_static to meet API 2.0
-
- 11 9月, 2020 1 次提交
-
-
由 liym27 提交于
-
- 09 9月, 2020 2 次提交
-
-
由 liym27 提交于
-
由 Aurelius84 提交于
* Add naming rule if not specific InputSpec.name * fix function name typo * refine comment * remove print statement
-
- 07 9月, 2020 1 次提交
-
-
由 Aurelius84 提交于
* add descriptor cache * fix self arugments * deal case if instance is None * clean code * fix usage
-
- 02 9月, 2020 1 次提交
-
-
由 liym27 提交于
Raise RuntimeError if run the callable object decorated by '@paddle.jit.to_static' not in dynamic mode. (#26750)
-