python - 训练准确度分数不同于后续测试准确度分数
问题描述
训练准确度在准确度阈值回调后报告为准确度:0.8500 但是当我返回并使用我的 TestFolder() 函数测试每张图像时,我得到完全不同的结果,这是为什么呢?
def TestFolder(TestFolderDir,TestItem):
dir_path = TestFolderDir
Wins=0
Losses=0
for i in os.listdir(dir_path):
img = image.load_img(dir_path+'//'+i,target_size=(Y_Dimensions,X_Dimensions,3))
#plt.imshow(img)
#plt.show()
X=image.img_to_array(img)
X=np.expand_dims(X,axis=0)
images=np.vstack([X])
val=float(model.predict(images))
val=round(val)
#print(val)
if val==0:
if TestItem==0:
Wins=Wins+1
else:
Losses=Losses+1
if val==1:
if TestItem==1:
Wins=Wins+1
else:
Losses=Losses+1
if Wins==0:
Wins=0.00001
if Losses==0:
Losses=0.00001
ratio=round(Wins/(Wins+Losses),2)
print("[LTM]["+TestFolderDir+"]Batch Accuracy: ",ratio)
WriteTxt("LTM_BatchAccuracy"+str(TestItem),str(ratio))
解决方案
推荐阅读
- npm - Gulp v4 监视任务
- driver - 如何安装 avssamp 和 avshws 驱动程序?
- php - 创建了行,但值未插入表中
- c# - 更新与另一个表对象 (NxN) 相关的实体对象(插入、删除)
- scala - Spark RDD 操作通过键对值求和
- python - 如何从列表中删除与同一列表中的其他字符串具有相同单词集(以混乱顺序)的字符串
- machine-learning - Keras 损失不减少的非线性回归:异常值和/或数据格式问题?
- python - 如何在不删除 Python 中的其余部分的情况下将信息添加到 Excel 工作表?
- javascript - Vuex,为什么突变?
- java - 如何在 OAuth 2.0 Spring Boot 中配置 Redis 会话?