tr = StandardScaler() pca = PCA(n_components=10) lr = LinearSVC(penalty='l1',dual=False) pipe = Pipeline([('tr',tr),('pca',pca),('lr',lr)]) clf = GridSearchCV(pipe, parms, scoring='f1', n_jobs=5) clf.fit(X,Y) import pickle f = open('%s.model' % __fname__,'wb') pickle.dump(clf, f) f.close() pred = clf.predict(X) summary.clf_summary(clf, feature_names) summary.summary(Y, pred) F1, P, R = TestModel() util.notify_me('%s.F1:%.2f,P:%.2f,R:%.2f' % (__fname__, F1*100, P*100, R*100))
f.close() return clf if __name__ == '__main__': X, Y = GetData() parms = { 'C':np.logspace(-6,0,10), #'class_weight':[{0:1,1:200}] #[{0:1,1:50},{0:1,1:70},{0:1,1:85},{0:1,1:100},{0:1,1:120},{0:1,1:150}] } lr = LogisticRegression() clf = GridSearchCV(lr, parms, scoring='f1', n_jobs=10) clf.fit(X,Y) import pickle f = open('model0.model','wb') pickle.dump(clf, f) f.close() pred = clf.predict(X) from summary import summary,clf_summary,TestModel clf_summary(clf) summary(Y, pred) TestModel('model0')
if __name__ == '__main__': X, Y = GetData() parms = { 'C':np.logspace(-6,0,10), #'class_weight':[{0:1,1:200}] #[{0:1,1:50},{0:1,1:70},{0:1,1:85},{0:1,1:100},{0:1,1:120},{0:1,1:150}] } lr = LogisticRegression(penalty='l1') clf = GridSearchCV(lr, parms, scoring='f1', n_jobs=10) clf.fit(X,Y) import pickle f = open('model4.model','wb') pickle.dump(clf, f) f.close() pred = clf.predict(X) from summary import summary,clf_summary,TestModel clf_summary(clf) summary(Y, pred) TestModel('model4')