def main(): print("main started") samples, labels = load_trainingset() # Build a model using a class, and after the compilation we'll start the training model = LinearModel("my_model") model.compile_model() model.training(samples, labels) # Evaluate a sample using the model print(model.predict([30.0])) print("main finish")
from model_evaluation import r_squared data = pd.read_csv("boston_house_price.txt", sep='|') data = data[["LSTAT", "RM", "PTRATIO", "INDUS", "MEDV"]].values data = (data - np.min(data)) / (np.max(data) - np.min(data)) N = data.shape[0] RSQ = [] for step in range(1): np.random.shuffle(data) train = data[:int(N * 0.7), :] test = data[int(N * 0.7):, :] X_train = train[:, :-1] Y_train = train[:, [-1]] X_test = test[:, :-1] Y_test = test[:, [-1]] n_feat = X_train.shape[1] model = LinearModel(n_feat) model.training(X_train, Y_train, alpha=1.0, eps=0.001) hatY_train = model.predict(X_train) hatY_test = model.predict(X_test) r1 = r_squared(Y_train, hatY_train) r2 = r_squared(Y_test, hatY_test) print(r1, r2) sys.stdout.flush()