fix: plot unsorted data & mistake 0/1 error

This commit is contained in:
Ting-Jun Wang 2023-11-01 04:21:03 +08:00
parent b3ddd2d11e
commit 0c07cd70e1
Signed by: snsd0805
GPG Key ID: D175E969960C4B16
4 changed files with 19 additions and 19 deletions

View File

@ -22,7 +22,7 @@ def generate_data(N):
return x, y
def average_square_error(y, y_hat):
error = (y==y_hat)
error = (y!=y_hat)
return error.sum()/error.shape[0]
if __name__ == '__main__':
@ -42,10 +42,12 @@ if __name__ == '__main__':
errors.append(error)
print(times, error)
errors = sorted(errors)
median = ( errors[63] + errors[64] ) / 2
sorted_errors = sorted(errors)
median = ( sorted_errors[63] + sorted_errors[64] ) / 2
plt.hist(errors, bins=10)
plt.xlabel("Ein")
plt.title("median: {}".format(median))
plt.savefig("10.png")
plt.savefig("10.png")

View File

@ -77,13 +77,13 @@ if __name__ == '__main__':
print()
linear_regression_errors = sorted(linear_regression_errors)
logistic_regression_errors = sorted(logistic_regression_errors)
linear_regression_median = linear_regression_errors[63] + linear_regression_errors[64]
logistic_regression_median = logistic_regression_errors[63] + logistic_regression_errors[64]
sorted_linear_regression_errors = sorted(linear_regression_errors)
sorted_logistic_regression_errors = sorted(logistic_regression_errors)
linear_regression_median = sorted_linear_regression_errors[63] + sorted_linear_regression_errors[64]
logistic_regression_median = sorted_logistic_regression_errors[63] + sorted_logistic_regression_errors[64]
plt.scatter(linear_regression_errors, logistic_regression_errors)
plt.xlabel("linear regression error")
plt.xlabel("logistic regression error")
plt.title("linear regression: {}\nlogistic regression: {}".format(linear_regression_median, logistic_regression_median))
plt.savefig("11.png")
plt.savefig("11.png")

View File

@ -90,14 +90,13 @@ if __name__ == '__main__':
print(times, error)
print()
linear_regression_errors = sorted(linear_regression_errors)
logistic_regression_errors = sorted(logistic_regression_errors)
linear_regression_median = linear_regression_errors[63] + linear_regression_errors[64]
logistic_regression_median = logistic_regression_errors[63] + logistic_regression_errors[64]
sorted_linear_regression_errors = sorted(linear_regression_errors)
sorted_logistic_regression_errors = sorted(logistic_regression_errors)
linear_regression_median = sorted_linear_regression_errors[63] + sorted_linear_regression_errors[64]
logistic_regression_median = sorted_logistic_regression_errors[63] + sorted_logistic_regression_errors[64]
plt.scatter(linear_regression_errors, logistic_regression_errors)
plt.xlabel("linear regression error")
plt.xlabel("logistic regression error")
plt.title("linear regression: {}\nlogistic regression: {}".format(linear_regression_median, logistic_regression_median))
plt.savefig("12.png")
plt.savefig("12.png")

View File

@ -2,7 +2,6 @@ import numpy as np
import matplotlib.pyplot as plt
import time
def generate_data(N):
y = np.random.choice([1, -1], N)
@ -42,10 +41,10 @@ if __name__ == '__main__':
errors.append(error)
print(times, error)
errors = sorted(errors)
median = ( errors[63] + errors[64] ) / 2
sorted_errors = sorted(errors)
median = ( sorted_errors[63] + sorted_errors[64] ) / 2
plt.hist(errors, bins=10)
plt.xlabel("Ein")
plt.title("median: {}".format(median))
plt.savefig("9.png")
plt.savefig("9.png")