def score_funct(coeff): """ Calculate the score with the specified coefficients. Use MSE error calculation. @param coeff: The coefficients. @return: The score. We are trying to minimize this score. """ global input_data global output_data # Calculate the actual output of the polynomial with the specified coefficients. actual_output = [] for input_data in training_input: x = input_data[0] output_data = poly(coeff, x) actual_output.append(output_data) return ErrorCalculation.sse(np.array(actual_output), training_ideal)
for row in xrange(0, rows): for col in xrange(0, cols): d = float(np.random.randint(low, high)) ideal[row][col] = d actual[row][col] = d + (np.random.normal() * distort) return result # Generate data sets. smallErrors = generate(SEED, ROWS, COLS, LOW, HIGH, 0.1) mediumErrors = generate(SEED, ROWS, COLS, LOW, HIGH, 0.5) largeErrors = generate(SEED, ROWS, COLS, LOW, HIGH, 1.0) hugeErrors = generate(SEED, ROWS, COLS, LOW, HIGH, 10.0) small_sse = ErrorCalculation.sse(smallErrors['actual'], smallErrors['ideal']) small_mse = ErrorCalculation.mse(smallErrors['actual'], smallErrors['ideal']) small_rms = ErrorCalculation.rms(smallErrors['actual'], smallErrors['ideal']) medium_sse = ErrorCalculation.sse(mediumErrors['actual'], mediumErrors['ideal']) medium_mse = ErrorCalculation.mse(mediumErrors['actual'], mediumErrors['ideal']) medium_rms = ErrorCalculation.rms(mediumErrors['actual'], mediumErrors['ideal']) large_sse = ErrorCalculation.sse(largeErrors['actual'], largeErrors['ideal']) large_mse = ErrorCalculation.mse(largeErrors['actual'], largeErrors['ideal']) large_rms = ErrorCalculation.rms(largeErrors['actual'], largeErrors['ideal']) huge_sse = ErrorCalculation.sse(hugeErrors['actual'], hugeErrors['ideal'])
for row in xrange(0, rows): for col in xrange(0, cols): d = float(np.random.randint(low, high)) ideal[row][col] = d actual[row][col] = d + (np.random.normal() * distort) return result # Generate data sets. smallErrors = generate(SEED, ROWS, COLS, LOW, HIGH, 0.1) mediumErrors = generate(SEED, ROWS, COLS, LOW, HIGH, 0.5) largeErrors = generate(SEED, ROWS, COLS, LOW, HIGH, 1.0) hugeErrors = generate(SEED, ROWS, COLS, LOW, HIGH, 10.0) small_sse = ErrorCalculation.sse(smallErrors['actual'], smallErrors['ideal']) small_mse = ErrorCalculation.mse(smallErrors['actual'], smallErrors['ideal']) small_rms = ErrorCalculation.rms(smallErrors['actual'], smallErrors['ideal']) medium_sse = ErrorCalculation.sse(mediumErrors['actual'], mediumErrors['ideal']) medium_mse = ErrorCalculation.mse(mediumErrors['actual'], mediumErrors['ideal']) medium_rms = ErrorCalculation.rms(mediumErrors['actual'], mediumErrors['ideal']) large_sse = ErrorCalculation.sse(largeErrors['actual'], largeErrors['ideal']) large_mse = ErrorCalculation.mse(largeErrors['actual'], largeErrors['ideal']) large_rms = ErrorCalculation.rms(largeErrors['actual'], largeErrors['ideal']) huge_sse = ErrorCalculation.sse(hugeErrors['actual'], hugeErrors['ideal']) huge_mse = ErrorCalculation.mse(hugeErrors['actual'], hugeErrors['ideal']) huge_rms = ErrorCalculation.rms(hugeErrors['actual'], hugeErrors['ideal'])