///|
pub(all) struct Mlp[T] {
hidden : Linear[T]
output : Linear[T]
}
///|
pub fn[T : @tensor.TensorOps] Mlp::forward(self : Mlp[T], input : T) -> T raise {
let hidden = self.hidden.forward(input).relu()
self.output.forward(hidden)
}
///|
pub(all) struct MlpParams {
weight1 : Array[Float]
bias1 : Array[Float]
weight2 : Array[Float]
bias2 : Array[Float]
}