def trainAndCrossValidate(self):
num_folds = min(self.num_cross_folds, len(self.crossVal_X))
accs = []
aucs = []
f1s = []
precisions = []
recalls = []
for f in range(num_folds):
val_X = self.crossVal_X[f]
val_Y = self.crossVal_y[f]
train_folds_X = [self.crossVal_X[x] for x in range(num_folds) if x != f]
train_folds_Y = [self.crossVal_y[x] for x in range(num_folds) if x != f]
train_X = train_folds_X[0]
train_Y = train_folds_Y[0]
for i in range(1,len(train_folds_X)):
train_X = np.concatenate((train_X,train_folds_X[i]))
train_Y = np.concatenate((train_Y,train_folds_Y[i]))
self.train_X = train_X
self.train_y = train_Y
self.val_X = val_X
self.val_y = val_Y
acc, auc, f1, precision, recall = self.trainAndValidate()
accs.append(acc)
aucs.append(auc)
f1s.append(f1)
precisions.append(precision)
recalls.append(recall)
if PRINT_CROSS_VAL_FOLDS: print "\t\tPer-fold cross-validation accuracy: ", accs
return np.nanmean(accs), np.nanmean(aucs), np.nanmean(f1s), np.nanmean(precisions), np.nanmean(recalls)
tensorFlowNetwork.py 文件源码
python
阅读 30
收藏 0
点赞 0
评论 0
评论列表
文章目录