【问题标题】:Where we are passing labels to CNN Image Classifier?我们在哪里将标签传递给 CNN 图像分类器?
【发布时间】:2020-10-28 19:03:51
【问题描述】:

我有一个简单而基本的问题。当我们训练一个图像分类器模型(即使用 CNN)时,我们究竟在哪里告诉模型这是一只猫还是一只狗?在反向传播之前,模型知道它是狗还是猫,因为它正在相应地安排新的权重。 我们的数据被标记,但我们没有读取或传递这些信息到网络。我正在使用更复杂的图像字幕。感谢您的澄清,在此先感谢您!

【问题讨论】:

    标签: deep-learning neural-network label conv-neural-network image-classification


    【解决方案1】:

    它用于损失(又名成本)函数。当您将图像作为网络的输入并激活某些输出时,输出与真相之间的差异称为损失。因此,优化算法试图通过改变权重来最小化这些损失。

    【讨论】:

    • 谢谢你的回答,但我的问题是,当我开始用猫图片训练模型时,模型怎么知道这是一只猫,我只上传了图片。
    • 如果你在某个时候没有给出标签,那么你就没有训练它。损失函数必须具有计算损失(优化)的真实性。可能在代码的某个地方,它正在传递。如果您显示您的代码,它会有所帮助。
    • 我在帖子中添加了图片,training_set下有两个文件夹,分别是cat和dog。我相信它在从文件夹中读取的同时,也将 cat 文件夹下的所有图片标记为猫。但我不确定。
    • 没错。您会看到显示“training_set = ...”的单元格的输出。输出显示“找到属于 2 个类别的 5319 个图像”。这意味着 Keras 根据目录结构推断标签。标签是什么没有任何区别。它会称它们为 0 和 1(而不是 cat 和 dog)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-18
    • 2020-02-21
    • 2020-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多