训练完模型,我一开始自己体验的时候,感觉准确率还挺高的,大部分表情都能识别对。但用测试数据算出来的准确率,比我主观感觉的要低一些,差别还挺明显的。
我觉得主要是因为,训练的时候我拍的照片都是光线、角度差不多的,模型对这些熟悉的情况很敏感;但测试的时候,环境变了,比如光线不一样、我换了个角度,模型就容易认错,这就叫‘过拟合’——它记住了训练时的细节,却没学会真正识别表情。
这次测试让我体会到,AI模型不是越‘死记硬背’越好,得让它见更多不一样的情况,才能在真实场景里用得好  

 2我觉得不行。题目里说的这个比喻特别形象:训练数据是考前刷的题,测试数据是真正的考试题。如果我们用测试数据来训练,就相当于考试前先把考试题和答案背下来,再去考试,这样考出来的高分根本不代表你学会了知识,只是背会了题目而已。
这样的模型在新的、没见过的数据上表现会很差,完全失去了评估的意义。所以,测试数据只能用来评估模型的真实能力,绝对不能参与训练 

3 我测试的时候,发现‘高兴’的准确率比‘无表情’要高一些,两个类别差别挺大的。
我猜原因有几个:第一,‘高兴’的表情特征很明显,嘴角上扬、眼睛弯弯的,模型很容易学到;但‘无表情’的特征很模煳,有时候稍微动一下脸,模型就会误判。第二,我拍‘高兴’的照片时,动作、表情都很标准,而拍‘无表情’的时候,姿势、光线变化更多,数据没那么均匀。第三,可能两个类别的训练数据数量不一样,我拍的‘高兴’照片更多,模型学得更充分

4 我尝试了不同的方式训练,发现了几个有意思的现象:
第一,数据量少的时候,模型很不稳定,换个光线就认错;数据量越多,尤其是拍了不同角度、不同光线的照片,模型准确率会明显变高。
第二,如果训练数据里只有一种光线和角度,模型就会‘认死理’,比如在室内灯光下拍的‘高兴’,到自然光下就识别不出来了;但如果训练时故意拍了各种环境的照片,模型就‘聪明’很多,适应力更强。
第三,两个类别的数据数量要差不多,如果一个类别拍得多,另一个拍得少,模型就会更偏向拍得多的那个类别,比如总把‘无表情’当成‘高兴’。
这些发现让我明白,AI模型的效果好不好,很大程度上取决于训练数据的质量和多样性,不是越多越好,而是要‘又多又杂’,才能让模型真正学会识别

 

 

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!