def test_som(): cur = enable_connection() companies_data = data_fetch.get_data(cur) companies_names = data_fetch.get_names(cur) #print(companies_data.shape) #print(companies_data) most_similar_companies = similarity_func(companies_data[13], companies_data, companies_names, 5) #print(most_similar_companies) print(list(most_similar_companies.values())) for company_id, company_distance in most_similar_companies.items(): #print(company_id) print(companies_names[int(company_id)]) print(company_distance) #print(companies_names[list(most_similar_companies.keys())]) # c1 = np.random.rand(50, 3)/5 # c2 = (0.6, 0.1, 0.05) + np.random.rand(50, 3)/5 # c3 = (0.4, 0.1, 0.7) + np.random.rand(50, 3)/5 # data = np.float32(np.concatenate((c1, c2, c3))) # fig = plt.figure() # ax = Axes3D(fig) # ax.scatter(data[:, 0], data[:, 1], data[:, 2], c=colors) # labels = range(150) dim_multiplier = 2 n_rows, n_columns = companies_data.shape[0] * dim_multiplier, \ companies_data.shape[1] * dim_multiplier som = somoclu.Somoclu(n_columns, n_rows, maptype="toroid", compactsupport=False) colors = ["red"] * 60 colors.extend(["green"] * 60) colors.extend(["blue"] * 61) unit_labels = range(181) som.train(companies_data, epochs=1) som.view_umatrix(bestmatches=True, labels=companies_names) activation_map = som.get_surface_state() # bestmatchs = som.get_bmus(activation_map) # print(activation_map) # print(bestmatchs) # #print(som.activation_map) # som.view_component_planes() plt.savefig('pic8.png')
criterion = boundary_distance_BCE elif LOSS_NUM == 4: print("Using distance weighted Dice") criterion = boundary_distance_dice elif LOSS_NUM == 5: print("Using Lovasz") criterion = lovasz_hinge_loss elif LOSS_NUM == 6: criterion = lovasz_hinge # Pick optimizer optimizer = Adam(model.parameters(), lr=LR) print("Reading data") all_data, labels, img_name, class_labels = get_data(num_points_fetch) all_data = all_data / 255.0 print("Loaded data") if LOSS_NUM == 3 or LOSS_NUM == 4: print("calculating weights") obj = DistToBoundary(labels) rowWts, colWts = obj.computeWeights() weights = 5 * np.exp(-(rowWts + colWts)/50.0) # Split data into train and test test_data = all_data[train_num_pts:] test_label = labels[train_num_pts:] all_data = all_data[:train_num_pts]
from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import cross_validate from data_fetch import get_data data_sets = [ "Breast Cancer", "Blood Transfusion", "Diabetes", "Credit Scores", "Oil Spill" ] ##################### Set varibles ########################### dataset = data_sets[0] # pick data set FOLDS = 5 # set # of folds for cross validation clf = RandomForestClassifier() # choose classifier #################### Get data ########################### features, labels = get_data(dataset) ################### Fit classifier ########################### result = cross_validate(clf, features, labels, cv=FOLDS) ################### Display result ########################### print("Cv results") for res in result["test_score"]: print(res)