def check_split(X, y, X_train, y_train, X_val, y_val, test):
    assert (X_train.shape[1] == (X.shape[1] + 1)), (test + ": bias term wasn't added.")
    assert (X.shape[0] > X_train.shape[0]), (test + ": split didn't happen.")
    assert (X_train.shape[0] == y_train.shape[0]), (test + ': X, y shape mismatch.')
    assert (X_val.shape[0] == y_val.shape[0]), (test + ': X, y shape mismatch.')
    assert (X_train.shape[0] > X_val.shape[0]), (test + ': Train size not greater than test.')
def check_split(X, y, X_train, y_train, X_val, y_val, test):
    assert (X_train.shape[1] == (X.shape[1] + 1)), (test + ": bias term wasn't added.")
    assert (X.shape[0] > X_train.shape[0]), (test + ": split didn't happen.")
    assert (X_train.shape[0] == y_train.shape[0]), (test + ': X, y shape mismatch.')
    assert (X_val.shape[0] == y_val.shape[0]), (test + ': X, y shape mismatch.')
    assert (X_train.shape[0] > X_val.shape[0]), (test + ': Train size not greater than test.')