Beispiel #1
0
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
from data_preprocessing import getEcoliX, getEcoliY, getAdultX, getAdultY, getEcoliTestX, getEcoliTestY
import time

if __name__ == "__main__":
    acc = {}
    np.random.seed(0)
    ecoliX = getEcoliX()
    ecoliY = getEcoliY()
    ecoliTestX = getEcoliTestX()
    ecoliTestY = getEcoliTestY()

    adultX = getAdultX()
    adultX, adultTestX = adultX.iloc[:6000, :], adultX.iloc[6000:, :]
    adultY = getAdultY()
    adultY, adultTestY = adultY[:6000, ], adultY[6000:, ]

    start_time = time.clock()
    mlp = MLPClassifier(hidden_layer_sizes=(4, ),
                        learning_rate='constant',
                        learning_rate_init=0.2,
                        max_iter=500,
                        early_stopping=True,
                        random_state=5)
    mlp.fit(ecoliX, ecoliY)
    print("ecoli", time.clock() - start_time, "seconds")
    acc['ecoli-train'] = accuracy_score(ecoliY, mlp.predict(ecoliX))
    acc['ecoli-test'] = accuracy_score(ecoliTestY, mlp.predict(ecoliTestX))

    start_time = time.clock()
from clustertesters import adult_KMeansTestCluster as kmtc
from data_preprocessing import getAdultX, getAdultY
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
import numpy as np

if __name__ == "__main__":
    X = getAdultX()
    y = getAdultY()

    tester = kmtc.KMeansTestCluster(X,
                                    y,
                                    clusters=range(1, 11),
                                    plot=True,
                                    targetcluster=2,
                                    stats=True)
    tester.run()

    # plot clustering
    kmeans = KMeans(n_clusters=3, max_iter=500, init='k-means++')
    labels = kmeans.fit_predict(X)

    # View the results
    # Set the size of the plot
    plt.figure(figsize=(14, 7))

    # Create a colormap
    colormap = np.array(['red', 'lime', 'black', 'blue', 'yellow'])
    x1 = X.iloc[:, 0]
    x2 = X.iloc[:, 1]
    plt.scatter(x=x1, y=x2, c=colormap[labels], s=40)