您将如何应用 cnn 对静态图像进行年龄估计?

数据挖掘 机器学习 美国有线电视新闻网 计算机视觉 卷积神经网络
2022-03-10 02:20:56

在使用 IMDB wiki 数据集对年龄估计进行了一些阅读之后,我想在较小的规模上自己尝试一下,但我不太了解 CNN 的应用。任何澄清都会很棒。

1个回答

使用 CNN,一种典型(也是最简单)的方法是执行分类或回归:您使用一组标记图像(监督学习)训练一个网络,目的是在训练之后,网络将能够分配正确的标签(在训练集中的可用标签中)到新图像(以前从未见过)。

基本上,您需要:

  • 确定哪些是您的标签:它们的年龄可以从 0 到 100,因此您将拥有 101 个标签。您可以决定您有 10 个标签,0-10、10-20 等等...对于回归,您可以使用范围内的实数...
  • 训练标记数据:设置 o 对(img,l)在哪里img指图像和l到标签,即对于每个图像,您决定使用的标签中只存在一个标签
  • 测试标记数据:同上,但这些图像不会用于训练网络。它们将用于测试其性能
  • CNN:设计一个卷积神经网络(或完成一个)来执行分类或回归。那里有很多例子
  • 在您的训练数据集上训练 CNN,获得适当的性能指标
  • 训练后在您的测试集上测试 CNN,使用相同的性能指标
  • 将训练结果与测试结果进行比较,以评估网络的偏差、方差和过拟合问题

编辑(在 Mark.F 评论之后):

如果您尝试执行分类或回归,网络将略有不同:对于分类,网络只能分配训练数据中可用的值之一(在这种情况下通常为整数)。对于回归,网络将为每个图像分配一个范围内的某个值(例如 0-100)。两种类型或网络的成本函数不同,通常也是最后一层。这两种方法都需要标记数据。

CNN 用于图像,因为它们使用 2D 过滤来提取最重要的特征。基本上,CNN 可以学习最有助于执行所需任务的图像中最重要的“方面”