static void saveLSTMLayer(string dir, LstmLayer layer) { Directory.CreateDirectory(dir); //make infoFile using (StreamWriter sw = new StreamWriter(Path.Combine(dir, "info.csv"))) { sw.WriteLine(layer._inputDimension); sw.WriteLine(layer._outputDimension); } //saving matrixes saveMatrix(Path.Combine(dir, "wix.csv"), layer._wix); saveMatrix(Path.Combine(dir, "wih.csv"), layer._wih); saveMatrix(Path.Combine(dir, "inputBias.csv"), layer._inputBias); saveMatrix(Path.Combine(dir, "wfx.csv"), layer._wfx); saveMatrix(Path.Combine(dir, "wfh.csv"), layer._wfh); saveMatrix(Path.Combine(dir, "forgetBias.csv"), layer._forgetBias); saveMatrix(Path.Combine(dir, "wox.csv"), layer._wox); saveMatrix(Path.Combine(dir, "woh.csv"), layer._woh); saveMatrix(Path.Combine(dir, "outputBias.csv"), layer._outputBias); saveMatrix(Path.Combine(dir, "wcx.csv"), layer._wcx); saveMatrix(Path.Combine(dir, "wch.csv"), layer._wch); saveMatrix(Path.Combine(dir, "cellWriteBias.csv"), layer._cellWriteBias); saveMatrix(Path.Combine(dir, "hiddenContext.csv"), layer._hiddenContext); saveMatrix(Path.Combine(dir, "cellContext.csv"), layer._cellContext); }
private void InitializeElementOfLstmAndGates() { BaseLayerLstm = new LstmLayer(CellsParameters, new SigmoidActivation(Parameters.ActivationCoefficient), new HyperbolicActivation(Parameters.ActivationCoefficient)); GatesForLayer = new LstmGatesForLayer(CellsParameters); }