def main(): class_means = np.array([[0, 0], [2.5, 2.5]]) class_variances = [np.eye(2), np.eye(2)] num_components = 10 num_desired_points_per_class = 200 class_0, class_1 = DataGenerator.generate_gaussian_mixture( class_means, class_variances, num_components, num_desired_points_per_class ) combined_dataset = np.vstack((class_0, class_1)) combined_labels = np.hstack( (np.zeros(num_desired_points_per_class, dtype=np.int32), np.ones(num_desired_points_per_class, dtype=np.int32)) ) ln = LinearModel() ln.fit(train_data=combined_dataset, labels=combined_labels) r_linear_model = ln.predict(test_data=combined_dataset, extra_params_dict={"threshold": 0.5}) print_accuracy(r_linear_model, combined_labels) knn = KNN(num_neighbors=5) knn.fit(train_data=combined_dataset, labels=combined_labels) r_knn = knn.predict(test_data=combined_dataset) print_accuracy(r_knn, combined_labels) plot_results( combined_dataset, np.vstack((np.vstack((combined_labels[np.newaxis, :], r_linear_model[np.newaxis, :])), r_knn[np.newaxis, :])), titles=["gt", "lin", "knn"], ) return
def main(): class_means = np.array([[0, 0], [2.5, 2.5]]) class_variances = [np.eye(2), np.eye(2)] num_components = 10 num_desired_points_per_class = 200 class_0, class_1 = DataGenerator.generate_gaussian_mixture( class_means, class_variances, num_components, num_desired_points_per_class) combined_dataset = np.vstack((class_0, class_1)) combined_labels = np.hstack((np.zeros(num_desired_points_per_class, dtype=np.int32), np.ones(num_desired_points_per_class, dtype=np.int32))) ln = LinearModel() ln.fit(train_data=combined_dataset, labels=combined_labels) r_linear_model = ln.predict(test_data=combined_dataset, extra_params_dict={'threshold': 0.5}) print_accuracy(r_linear_model, combined_labels) knn = KNN(num_neighbors=5) knn.fit(train_data=combined_dataset, labels=combined_labels) r_knn = knn.predict(test_data=combined_dataset) print_accuracy(r_knn, combined_labels) plot_results(combined_dataset, np.vstack((np.vstack( (combined_labels[np.newaxis, :], r_linear_model[np.newaxis, :])), r_knn[np.newaxis, :])), titles=['gt', 'lin', 'knn']) return
def main(): limit=20 folder_path = '../data/cancer micro array data/' train_data_file = folder_path + '14cancer.xtrain' train_labels_file = folder_path + '14cancer.ytrain' test_data_file = folder_path + '14cancer.xtest' test_labels_file = folder_path + '14cancer.ytest' train_data = np.array(load_data(train_data_file), np.float64).T[:limit] train_labels = np.array(load_data(train_labels_file), np.float64).T[:limit] test_data = np.array(load_data(test_data_file), np.float64).T test_labels = np.array(load_data(test_labels_file), np.float64).T print train_data.shape, train_labels.shape, test_data.shape ln = LinearModel() ln.fit(train_data=train_data, labels=train_labels, extra_params_dict={'ridge_param':0.001}) ln.predict(test_data=test_data) return
def main(): limit = 20 folder_path = '../data/cancer micro array data/' train_data_file = folder_path + '14cancer.xtrain' train_labels_file = folder_path + '14cancer.ytrain' test_data_file = folder_path + '14cancer.xtest' test_labels_file = folder_path + '14cancer.ytest' train_data = np.array(load_data(train_data_file), np.float64).T[:limit] train_labels = np.array(load_data(train_labels_file), np.float64).T[:limit] test_data = np.array(load_data(test_data_file), np.float64).T test_labels = np.array(load_data(test_labels_file), np.float64).T print train_data.shape, train_labels.shape, test_data.shape ln = LinearModel() ln.fit(train_data=train_data, labels=train_labels, extra_params_dict={'ridge_param': 0.001}) ln.predict(test_data=test_data) return