避免对未经CNN训练的输入给出预测

时间:2020-05-26 05:52:13

标签: python cnn

我已经使用CNN训练了5种不同的手势。他们运作良好,并给出正确的预测。但是,当我做的手势不是这5种受过训练的手势时,系统仍会将手势归类为受过训练的手势之一。意思是,给出的结果是错误的,因为不应预测手势。我该如何克服这个问题?

我拍摄了一些随机照片,并将它们归类为“无”,然后用手势训练它们以减少错误检测。但这并没有太大帮助。

那么我认为也许可以使用概率分数来限制预测,就像只有在概率大于70%时才给出预测一样。但这是行不通的,因为未经训练的手势总会得到100%。

1 个答案:

答案 0 :(得分:0)

当您给模型一个新手势时,您期望发生什么 ?您已经对其进行了训练,以将手势区分为五类之一,而第六类是 nothing ,该类由完全没有手的图像组成。修改我上面的评论(错误地计数),根据您的功能定义,现在为您呈现的图像与这六个类的任何不符。

您遇到的问题是您尚未建立可行的培训套件。与“无手”课程相比,有手的东西与前五类的匹配要紧密得多,您可能已经将其训练为“无手”的概念。因此,由于有很多相似点,而且几乎没有区别,因此您将获得最佳的匹配:“竖起大拇指”手势与您提供的“随机”照片有什么共同之处?< / p>

从信息论的角度来看, no 模型可能会从提供的训练图像中学习您想要的差异。如果您希望模型学习手势并将其与其他手势区别开来,那么您必须对其进行适当的训练。正如您已经意识到的那样,给它一个弱的“其他”概念是行不通的。

您将需要使用包含所需信息的训练套:该训练套中至少10%必须是“无”图像的手部姿势。您可能需要超过10%,甚至比其他任何班级都更多。您可能需要升级拓扑。实验-这是模型开发的常用方法。