public IEnumerable <TrainingRow> GetAllRows() { var rows = new List <TrainingRow>(); using (OleDbConnection connection = new OleDbConnection(_connectionString)) { OleDbCommand command = new OleDbCommand(GetSelectStatement(), connection); connection.Open(); OleDbDataReader reader = command.ExecuteReader(); while (reader != null && reader.Read()) { var row = new TrainingRow(); var idColumn = reader[_idColumn]; if (idColumn != DBNull.Value) { row.IdColumn = idColumn.ToString(); row.Input = GetArrayOfVariables(reader, _inputVariables); row.Output = GetArrayOfVariables(reader, _outputVariables); rows.Add(row); } } reader?.Close(); } return(rows); }
private string GetUpdateStatement(TrainingRow entity) { var stringBuilder = new StringBuilder(); stringBuilder.AppendLine($"UPDATE [{_sheet}]"); stringBuilder.AppendLine($"SET {GetSetStatement(entity)}"); stringBuilder.AppendLine($"WHERE {_idColumn} = '{entity.IdColumn}'"); return(stringBuilder.ToString()); }
public void UpdateRow(TrainingRow row) { var updateStatement = GetUpdateStatement(row); using (OleDbConnection connection = new OleDbConnection(_connectionString)) { connection.Open(); OleDbCommand command = new OleDbCommand(updateStatement, connection); command.ExecuteNonQuery(); } }
public double getError(double[] weights) { //set the weights hidden1Neuron.inputs[0].weight = weights[0]; hidden1Neuron.inputs[1].weight = weights[1]; hidden2Neuron.inputs[0].weight = weights[2]; hidden2Neuron.inputs[1].weight = weights[3]; outputNeuron.inputs[0].weight = weights[4]; outputNeuron.inputs[1].weight = weights[5]; for (int i = 0; i < xor_template.rows.Count; i++) { TrainingRow row = xor_template.rows[i]; input1Neuron.inputs[0].reading = row.inputs[0]; input2Neuron.inputs[0].reading = row.inputs[1]; input1Neuron.fireNeuron(); input2Neuron.fireNeuron(); hidden1Neuron.fireNeuron(); hidden2Neuron.fireNeuron(); outputNeuron.fireNeuron(); errors[i] = row.outputs[0] - outputNeuron.output.weightedReading; } double sumError = 0; for (int i = 0; i < errors.Length; i++) { if (errors[i] > 0) { sumError += errors[i]; } else { sumError += errors[i] * -1; } } return(sumError); }
private string GetSetStatement(TrainingRow entity) { var setList = new List <string>(); if (_outputVariables.Count != entity.Output.Length) { throw new ArgumentException("Number of output columns different than the number of output variables. "); } for (var i = 0; i < _outputVariables.Count; i++) { var variable = _outputVariables[i]; var value = entity.Output[i]; setList.Add($"[{variable}] = {value}"); } return(string.Join($",{Environment.NewLine}", setList)); }
public void AddTrainingRow(TrainingRow row) { Rows.Add(row); }
public TrainingRowChangeEvent(TrainingRow row, global::System.Data.DataRowAction action) { eventRow = row; eventAction = action; }
public void RemoveTrainingRow(TrainingRow row) { Rows.Remove(row); }