Esempio n. 1
0
def TrainNetClassifier(Trained_labels, clusterAlg, df1Norm, fitmode, nclusters, prop):
    x_Train, x_Test, y_Train, y_Test = train_test_split(df1Norm.values, Trained_labels, test_size=prop,
                                                        shuffle=False)
    Features = len(x_Train[0])
    clf = MLPClassifier(hidden_layer_sizes=(Features, Features, Features), max_iter=500, alpha=0.001,
                        solver='adam', random_state=21, tol=0.00000001)
    predicted_cmeans = []
    classesT = [i for i in range(nclusters)]
    if fitmode.lower() == 'full' or fitmode == "":
        try:
            # experimental
            if 'cmeans' in clusterAlg or 'c-means' in clusterAlg or 'fuzzy' in clusterAlg:

                clf = clf.fit(x_Train, y_Train)
                predicted_cmeans = clf.predict(x_Test)
            else:
                clf.fit(x_Train, y_Train)
        except:
            clf.fit(x_Train, y_Train)
    else:
        # experimental
        for xa, ya in zip(x_Train, y_Train):
            varw = ya.reshape(1, )
            aarw = xa.reshape(1, -1)
            clf._partial_fit(aarw, varw, classes=classesT)
    return clf, predicted_cmeans, x_Test, x_Train, y_Test, y_Train