def basicconn(skf,X,y): total_score = 0 for train_index, test_index in skf: #print("TRAIN:", train_index, "TEST:", test_index) # Feature selection #selectf = SelectFpr().fit(X[train_index],y[train_index]) #selectf = SelectKBest(f_classif, k=750).fit(X[train_index],y[train_index]) #tmp_x = selectf.transform(X[train_index]) # Train #clf = RandomForestClassifier(n_estimators=20) #clf = clf.fit(tmp_x, y[train_index]) #clf.feature_importances_ # SVM #clf = svm.LinearSVC() #clf = svm.SVC() #clf.fit(tmp_x, y[train_index]) clf = plib.classif(X[train_index], y[train_index]) #clf.support_vec() # Test #pred = clf.predict(selectf.transform(X[test_index])) pred = clf.predict(X[test_index]) print "Target : ", y[test_index] print "Prediction : ", pred matchs = np.equal(pred, y[test_index]) score = np.divide(np.sum(matchs), np.float64(matchs.size)) total_score = score + total_score return np.divide(total_score, skf.n_folds)
def basicconn(skf, X, y): total_score = 0 for train_index, test_index in skf: #print("TRAIN:", train_index, "TEST:", test_index) # Feature selection #selectf = SelectFpr().fit(X[train_index],y[train_index]) #selectf = SelectKBest(f_classif, k=750).fit(X[train_index],y[train_index]) #tmp_x = selectf.transform(X[train_index]) # Train #clf = RandomForestClassifier(n_estimators=20) #clf = clf.fit(tmp_x, y[train_index]) #clf.feature_importances_ # SVM #clf = svm.LinearSVC() #clf = svm.SVC() #clf.fit(tmp_x, y[train_index]) clf = plib.classif(X[train_index], y[train_index]) #clf.support_vec() # Test #pred = clf.predict(selectf.transform(X[test_index])) pred = clf.predict(X[test_index]) print "Target : ", y[test_index] print "Prediction : ", pred matchs = np.equal(pred, y[test_index]) score = np.divide(np.sum(matchs), np.float64(matchs.size)) total_score = score + total_score return np.divide(total_score, skf.n_folds)
def splitconn(skf,X,y): total_score = 0 for train_index, test_index in skf: # Train clf1 = plib.classif(X[train_index, 0:2475:1], y[train_index]) clf2 = plib.classif(X[train_index, 2475:4950:1], y[train_index]) pred1 = clf1.decision_function(X[train_index, 0:2475:1]) pred2 = clf2.decision_function(X[train_index, 2475:4950:1]) clf3 = svm.SVC() y[train_index].shape np.array([pred1, pred2]) clf3.fit(np.array([pred1, pred2]).transpose(), y[train_index]) #clf3 = plib.classif(np.matrix([pred1,pred2]).transpose(),y[train_index]) # Test pred1 = clf1.decision_function(X[test_index, 0:2475:1]) pred2 = clf2.decision_function(X[test_index, 2475:4950:1]) predfinal = clf3.predict(np.matrix([pred1, pred2]).transpose()) print "Target : ", y[test_index] print "Prediction : ", predfinal matchs = np.equal(predfinal, y[test_index]) score = np.divide(np.sum(matchs), np.float64(matchs.size)) total_score = score + total_score return np.divide(total_score, skf.n_folds)
def splitconn(skf, X, y): total_score = 0 for train_index, test_index in skf: # Train clf1 = plib.classif(X[train_index, 0:2475:1], y[train_index]) clf2 = plib.classif(X[train_index, 2475:4950:1], y[train_index]) pred1 = clf1.decision_function(X[train_index, 0:2475:1]) pred2 = clf2.decision_function(X[train_index, 2475:4950:1]) clf3 = svm.SVC() y[train_index].shape np.array([pred1, pred2]) clf3.fit(np.array([pred1, pred2]).transpose(), y[train_index]) #clf3 = plib.classif(np.matrix([pred1,pred2]).transpose(),y[train_index]) # Test pred1 = clf1.decision_function(X[test_index, 0:2475:1]) pred2 = clf2.decision_function(X[test_index, 2475:4950:1]) predfinal = clf3.predict(np.matrix([pred1, pred2]).transpose()) print "Target : ", y[test_index] print "Prediction : ", predfinal matchs = np.equal(predfinal, y[test_index]) score = np.divide(np.sum(matchs), np.float64(matchs.size)) total_score = score + total_score return np.divide(total_score, skf.n_folds)
def multisplit(skf, X, y, stepsize=1000): total_score = 0 for train_index, test_index in skf: wl = [] pred1 = np.matrix([]) # Training for x in range(0, len(X[0]), stepsize): clf1 = plib.classif(X[train_index, x:x + stepsize], y[train_index]) tmp_p = np.matrix( clf1.decision_function(X[train_index, x:x + stepsize])) if pred1.size == 0: pred1 = tmp_p else: pred1 = np.concatenate((pred1, tmp_p), axis=1) wl.append(clf1) #selectf = SelectKBest(f_classif, k=5).fit(pred1, y[train_index]) selectf = SelectFpr().fit(pred1, y[train_index]) clf3 = AdaBoostClassifier(n_estimators=100) #clf3 = svm.SVC(class_weight='auto') #clf3 = RandomForestClassifier(n_estimators=20) clf3.fit(selectf.transform(pred1), y[train_index]) # Testing predtest = np.matrix([]) k = 0 for x in range(0, len(X[0]), stepsize): tmp_p = np.matrix(wl[k].decision_function(X[test_index, x:x + stepsize])) if predtest.size == 0: predtest = tmp_p else: predtest = np.concatenate((predtest, tmp_p), axis=1) k += 1 # Final prediction predfinal = clf3.predict(selectf.transform(predtest)) print "Target : ", y[test_index] print "Prediction : ", predfinal matchs = np.equal(predfinal, y[test_index]) score = np.divide(np.sum(matchs), np.float64(matchs.size)) total_score = score + total_score return np.divide(total_score, skf.n_folds)
def multisplit(skf,X,y,stepsize=1000): total_score = 0 for train_index, test_index in skf: wl = [] pred1 = np.matrix([]) # Training for x in range(0, len(X[0]), stepsize): clf1 = plib.classif(X[train_index, x:x + stepsize], y[train_index]) tmp_p = np.matrix(clf1.decision_function(X[train_index, x:x + stepsize])) if pred1.size == 0: pred1 = tmp_p else: pred1 = np.concatenate((pred1, tmp_p), axis=1) wl.append(clf1) #selectf = SelectKBest(f_classif, k=5).fit(pred1, y[train_index]) selectf = SelectFpr().fit(pred1, y[train_index]) clf3 = AdaBoostClassifier(n_estimators=100) #clf3 = svm.SVC(class_weight='auto') #clf3 = RandomForestClassifier(n_estimators=20) clf3.fit(selectf.transform(pred1), y[train_index]) # Testing predtest = np.matrix([]) k = 0 for x in range(0, len(X[0]), stepsize): tmp_p = np.matrix(wl[k].decision_function(X[test_index, x:x + stepsize])) if predtest.size == 0: predtest = tmp_p else: predtest = np.concatenate((predtest, tmp_p), axis=1) k += 1 # Final prediction predfinal = clf3.predict(selectf.transform(predtest)) print "Target : ", y[test_index] print "Prediction : ", predfinal matchs = np.equal(predfinal, y[test_index]) score = np.divide(np.sum(matchs), np.float64(matchs.size)) total_score = score + total_score return np.divide(total_score, skf.n_folds)