@@ -20,7 +20,7 @@ impl Computation {
2020 }
2121
2222 fn shared ( value : Arc < Vec < DType > > ) -> Self {
23- Computation { value : Data :: Shared ( value) }
23+ Computation { value : Data :: Shared ( value) }
2424 }
2525
2626 fn pooled ( value : MPVec ) -> Self {
@@ -427,6 +427,10 @@ impl Node for Power {
427427 grad. iter ( ) . zip ( lx. zip ( ly) ) . for_each ( |( gi, ( xi, yi) ) | {
428428 out. add ( * gi * * yi * xi. powf ( * yi - 1f32 ) ) ;
429429 } ) ;
430+ println ! ( "x: {:?}" , x) ;
431+ println ! ( "y: {:?}" , y) ;
432+ println ! ( "grad: {:?}" , grad) ;
433+ println ! ( "dX: {:?}" , child_grads[ 0 ] ) ;
430434
431435 // df(x,y)/dy = ln(y) * x ^ y
432436 let ( lx, ly) = Broadcast :: from_pair ( x, y) ;
@@ -1147,6 +1151,18 @@ mod tests {
11471151 assert_eq ! ( Some ( & vec![ 0f32 , 2f32 , 4f32 ] ) , x_grad) ;
11481152 }
11491153
1154+ fn euclidean_distance ( x : & ANode , y : & ANode ) -> ANode {
1155+ let minus = x - y;
1156+ println ! ( "{:?}" , minus. get_id( ) ) ;
1157+ let pow = minus. pow ( 2f32 ) ;
1158+ println ! ( "{:?}" , pow. get_id( ) ) ;
1159+ let sum = pow. sum ( ) ;
1160+ println ! ( "{:?}" , sum. get_id( ) ) ;
1161+ let sqrt = sum. pow ( 0.5 ) ;
1162+ println ! ( "{:?}" , sqrt. get_id( ) ) ;
1163+ sqrt
1164+ }
1165+
11501166 #[ test]
11511167 fn test_backward_pass_complicated ( ) {
11521168 // (x+2) ^ 2
0 commit comments