@@ -46,6 +46,45 @@ public static Tensor conv2d(Tensor inputs,
4646
4747 return layer . apply ( inputs ) ;
4848 }
49+
50+ /// <summary>
51+ /// Functional interface for the batch normalization layer.
52+ /// http://arxiv.org/abs/1502.03167
53+ /// </summary>
54+ /// <param name="inputs"></param>
55+ /// <param name="axis"></param>
56+ /// <param name="momentum"></param>
57+ /// <param name="epsilon"></param>
58+ /// <param name="center"></param>
59+ /// <param name="scale"></param>
60+ /// <param name="beta_initializer"></param>
61+ /// <param name="gamma_initializer"></param>
62+ /// <param name="moving_mean_initializer"></param>
63+ /// <param name="moving_variance_initializer"></param>
64+ /// <param name="training"></param>
65+ /// <param name="trainable"></param>
66+ /// <param name="name"></param>
67+ /// <param name="renorm"></param>
68+ /// <param name="renorm_momentum"></param>
69+ /// <returns></returns>
70+ public static Tensor batch_normalization ( Tensor inputs ,
71+ int axis = - 1 ,
72+ float momentum = 0.99f ,
73+ float epsilon = 0.001f ,
74+ bool center = true ,
75+ bool scale = true ,
76+ IInitializer beta_initializer = null ,
77+ IInitializer gamma_initializer = null ,
78+ IInitializer moving_mean_initializer = null ,
79+ IInitializer moving_variance_initializer = null ,
80+ Tensor training = null ,
81+ bool trainable = true ,
82+ string name = null ,
83+ bool renorm = false ,
84+ float renorm_momentum = 0.99f )
85+ {
86+ throw new NotImplementedException ( "batch_normalization" ) ;
87+ }
4988 }
5089 }
5190}
0 commit comments