public Tensor Forward(Tensor inputs) { Tensor weights = BuildWeightTensor(); Tensor biases = BuildBiases(); Tensor transposed = weights.Transpose(); Tensor result = inputs.Dot(transposed).VecSum(biases); switch (_activation) { case ActivationType.ReLU: Activations.ReLU(result); break; case ActivationType.Softmax: Activations.Softmax(result); break; } return(result); }