public void Train(bool[] pattern) { Matrix m2 = Matrix.CreateRowMatrix(BiPolarUtil.Bipolar2Double(pattern)); Matrix m1 = MatrixMath.Transpose(m2); Matrix m3 = MatrixMath.Multiply(m1, m2); Matrix identity = MatrixMath.CreateIdentityMatrix(m3.Rows); Matrix m4 = MatrixMath.Subtract(m3, identity); this._weightMatrix = MatrixMath.Add(this._weightMatrix, m4); }
public HopfieldNetwork(int size) { this._weightMatrix = new Matrix(size, size); }