def cross_validate_Softmax(dataFile, X, Y, pooledFile, imageDim, sgd, save=True, n_folds=5):
from sklearn.cross_validation import KFold
m = len(np.squeeze(Y))
CGrid = [0.1, 0.03, 0.01, 0.003, 0.001, 3e-4, 1e-4, 3e-5, 1e-5]
kf = KFold(m, n_folds=n_folds)
mean_FoMs = []
for C in CGrid:
fold = 1
FoMs = []
for train, test in kf:
print("[+] training Softmax: LAMBDA : %e, fold : %d" % (C, fold))
prefix = "cv/cv_fold%d" % fold
FoM, threshold = train_Softmax(C, dataFile, X[train], Y[train], X[test], Y[test], \
pooledFile, imageDim, sgd, prefix=prefix)
FoMs.append(FoM)
fold += 1
mean_FoMs.append(np.mean(FoMs))
best_FoM_index = np.argmin(mean_FoMs)
print("[+] Best performing classifier: C : %lf" % CGrid[best_FoM_index])
return CGrid[best_FoM_index]
convolutional_sparseFiltering.py 文件源码
python
阅读 26
收藏 0
点赞 0
评论 0
评论列表
文章目录