@@ -79,7 +79,7 @@ public override Operation _apply_dense(Tensor grad, RefVariable var)
7979 use_locking : _use_locking ) . op ;
8080 }
8181
82- private Operation _apply_sparse_shared ( Tensor grad , RefVariable var , Tensor indices , Func < RefVariable , Tensor , Tensor , Tensor > scatter_add )
82+ private Operation _apply_sparse_shared ( Tensor grad , IVariableV1 var , Tensor indices , Func < IVariableV1 , Tensor , Tensor , Tensor > scatter_add )
8383 {
8484 var ( beta1_power_v , beta2_power_v ) = _get_beta_accumulators ( ) ;
8585 Tensor beta1_power = math_ops . cast ( beta1_power_v , var . dtype . as_base_dtype ( ) ) ;
@@ -91,15 +91,15 @@ private Operation _apply_sparse_shared(Tensor grad, RefVariable var, Tensor indi
9191 var lr = ( lr_t * math_ops . sqrt ( 1 - beta2_power ) / ( 1 - beta1_power ) ) ;
9292 var m = get_slot ( var , "m" ) ;
9393 var m_scaled_g_values = grad * ( 1 - beta1_t ) ;
94- var m_t = state_ops . assign ( m , m * beta1_t , use_locking : _use_locking ) ;
94+ var m_t = state_ops . assign ( m . AsTensor ( ) , m . AsTensor ( ) * beta1_t , use_locking : _use_locking ) ;
9595 tf_with ( ops . control_dependencies ( new [ ] { m_t } ) , delegate
9696 {
9797 m_t = scatter_add ( m , indices , m_scaled_g_values ) ;
9898 } ) ;
9999
100100 var v = get_slot ( var , "v" ) ;
101101 var v_scaled_g_values = ( grad * grad ) * ( 1 - beta2_t ) ;
102- var v_t = state_ops . assign ( v , v * beta2_t , use_locking : _use_locking ) ;
102+ var v_t = state_ops . assign ( v . AsTensor ( ) , v . AsTensor ( ) * beta2_t , use_locking : _use_locking ) ;
103103 tf_with ( ops . control_dependencies ( new [ ] { v_t } ) , delegate
104104 {
105105 v_t = scatter_add ( v , indices , v_scaled_g_values ) ;
@@ -132,8 +132,8 @@ public override Operation _finish(Operation[] update_ops, string name_scope)
132132 {
133133 var ( beta1_power , beta2_power ) = _get_beta_accumulators ( ) ;
134134 ops . colocate_with ( beta1_power ) ;
135- var update_beta1 = beta1_power . assign ( beta1_power * _beta1_t , use_locking : _use_locking ) ;
136- var update_beta2 = beta2_power . assign ( beta2_power * _beta2_t , use_locking : _use_locking ) ;
135+ var update_beta1 = beta1_power . assign ( beta1_power . AsTensor ( ) * _beta1_t , use_locking : _use_locking ) ;
136+ var update_beta2 = beta2_power . assign ( beta2_power . AsTensor ( ) * _beta2_t , use_locking : _use_locking ) ;
137137
138138 operations . Add ( update_beta1 ) ;
139139 operations . Add ( update_beta2 ) ;
@@ -142,12 +142,12 @@ public override Operation _finish(Operation[] update_ops, string name_scope)
142142 return control_flow_ops . group ( operations . ToArray ( ) , name : name_scope ) ;
143143 }
144144
145- private ( RefVariable , RefVariable ) _get_beta_accumulators ( )
145+ private ( IVariableV1 , IVariableV1 ) _get_beta_accumulators ( )
146146 {
147147 ops . init_scope ( ) ;
148148 var graph = ops . get_default_graph ( ) ;
149- return ( _get_non_slot_variable ( "beta1_power" , graph : graph ) as RefVariable ,
150- _get_non_slot_variable ( "beta2_power" , graph : graph ) as RefVariable ) ;
149+ return ( _get_non_slot_variable ( "beta1_power" , graph : graph ) ,
150+ _get_non_slot_variable ( "beta2_power" , graph : graph ) ) ;
151151 }
152152
153153 public override void _prepare ( )
0 commit comments