void ConvolutionalNeuralNetwork::FP(int index){
    MatrixD Z = Inputs.at(index).reshape(1,1).t();
    for(int i = 0; i < network.size(); i++){
        (network.at(i)->ForwardPropargation(Z)).copyTo(Z);
    }
    Z.copyTo(ZL);
}
MatrixD ConvolutionalNeuralNetwork::FP(MatrixD X){
    MatrixD Z;
    X.copyTo(Z);
    for(int i = 0; i < network.size(); i++){
        network.at(i)->ForwardPropargation(Z).copyTo(Z);
    }
    return Z;
}