问题标签 [image-classification]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 期望二进制值但预测浮点数
我创建了一个神经网络,它将人的图像作为 X_training 值,将他们各自的性别(二进制值)作为 Y_train 值,我的目标是在用户输入图像后预测相关性别。这是我将图像和性别值设置为训练数据的代码:
标签_f:
我基本上使用卷积层,因为我预测的是二进制值(男性或女性,0 或 1),所以我使用 sigmoid 作为我最终的密集层激活方法。
这是模型代码:
这是我适合值代码的地方:
现在,一旦我训练了模型,我就尝试调用模型并设置我自己的一张图像并进行预测。
我得到它的结果值:
对于每一个图像,我得到一个浮点值,但我期望一个二进制值。为什么?
python - 您如何看待 TensorFlow 图像分类模型对每个类别的准确度?
我正在阅读张量流网站上的图像分类教程:https ://www.tensorflow.org/tutorials/images/classification
该模型将花卉分为 5 类之一:雏菊、蒲公英、玫瑰、向日葵和郁金香。
我可以看到总体准确度是多少,但是有什么方法可以知道每个班级的准确度如何?
例如,我的模型可能非常擅长预测雏菊、蒲公英、玫瑰和向日葵(准确率接近 100%),而不能预测郁金香(接近 0%),我认为我仍然会看到 80% 的总体准确率(假设类是平衡的)。我需要知道各个类的准确度,才能将该性能与预测所有类的准确率大致相等的模型区分开来 80%。
python - 使用 Tensorflow Lite Model Maker 训练图像分类模型的问题
所以我是 ML 的新手,我有一个任务,我需要能够用我手机的摄像头识别一个特定的对象并在那一刻触发一个动作。我已经到了能够训练模型、将其与 Google 提供的示例 Android 应用程序连接并运行它的地步。所有这些都与我从不同站点下载的一些数据集完美配合,狗或花之类的东西都可以正常工作。现在,我正在尝试使用一组包含一个简单对象的图像来训练模型,在此示例中,我使用的是索尼蓝牙扬声器 XB12B。我在不同的环境中为它拍了一堆照片,但是当我训练模型时,我总是得到 1 的准确度,当我在手机中使用图像标签使用该模型时,它看到的任何东西都是 100% 的那个对象。
我只用一门课来训练模型。
正如我提到的,我是新手,我不确定我做错了什么,如果是对象的形状,数据集中缺少更多元素或我缺少的其他参数。非常感谢你们可能有的任何见解或线索
干杯
tensorflow - TypeError:“图像”对象不能使用 PIL 进行下标
我正在尝试在 google colab 上开发一个 Web 应用程序。我想在这个 Web 应用程序中使用我之前训练过的模型制作一个图像分类器。当我在 Web 应用程序中从浏览器中选择要分类的图像时,出现以下错误:
我的代码块:
tensorflow - 将主数据目录拆分为训练/验证/测试集
我正在研究 X 射线图像分类,我的数据存储在 1 个目录中,我需要将其分为训练集、验证集和测试集。我确实设法使用 ImagedDataGenerator 分离了训练集和验证集,但在分离测试集时遇到了麻烦。这是我的代码。
我厌倦了使用拆分文件夹,但它不起作用。我认为大多数情况下都没有正确使用它,因为我不知道在拆分数据后如何访问 3 个文件夹。或者有没有其他方法可以拆分我的测试集?
java - Android:与相同模型的 Python 相比,TFLite 给出了错误的预测
我正在创建一个需要运行 tensorflow 图像分类模型的 Android 应用程序。我在 Python 中创建了以下简单模型:
在这里,输入是通过以下方式从图像创建的:
模型的准确性非常好。我将模型保存为以下tflite
格式:
现在,我想在 Android 中使用这个模型。我正在使用 Android Studio 4.1。我tflite
从File > New > Others > TFLite
. 我通过以下方式启动了 TF 模型:
我有一个要测试的位图。为了向模型发送输入,我需要从该位图创建一个形状为 (1, 28, 28, 2) 的数组,并使用该数组创建一个 ByteBuffer 对象。我这样做的方式如下:
我通过以下方式将输入发送到模型:
然后我以以下方式创建输出:
我已经检查了两个不同的图像,通过模型在 Python 和 Android 中运行它们,但 Python 总是给出正确的结果(这是预期的),但 Android 给类提供了错误的概率。以下是 Python 和 Android 针对相同图像和相同模型的输出(Python 给出了正确答案):
我认为问题来了可能是因为我没有在 Android 中正确解析图像数据。有人可以在这方面帮助我。谢谢!
python - keras/tensorflow中图像分类的神经网络优化
我正在编写一个程序,用于将图像分为两类:“电线”和“非电线”。我手工标记了大约 5000 张显微镜图像,例如:
非电线
金属丝
我使用的神经网络改编自“Deep Learning with Python”,关于卷积网络的章节(我认为卷积网络在这里没有必要,因为没有明显的层次结构;密集网络应该更合适):
然而,在使用网络参数时,经过 10 个 epoch 训练后的测试准确率不会超过 92%。训练图像包含大约 1/3 的电线,2/3 的非电线。我的问题:您是否发现这种神经网络设计中有任何明显的错误会抑制准确性,或者您是否认为我受到图像质量的限制?我有大约 4000 个训练图像和 1000 个测试图像。
python - VGG16 模型输出不正确的维度 - 迁移学习
我正在尝试使用预训练的 VGG16 模型在 pyTorch 上对 CIFAR10 进行分类。该模型最初是在 ImageNet 上训练的。
以下是我导入和修改模型的方式:
这是模型的摘要
现在我想在 CIFAR10 上训练模型,我创建了批量大小 = 128 的 train loader。下面是训练函数,我添加了一些打印语句来检查一切是否正常。问题是模型为每个数据点输出 1000 个预测(作为原始 - 未修改版本)。
这是显示输出形状的输出的一部分:
我不明白为什么模型以这种方式输出结果。有什么我想念的吗?
python-3.x - 无法从 fetch_openml() 加载 MNIST 手写文本数据集
我开始知道fetch_mldata()不再起作用了。fetch_mldata( ) 已死,因为它依赖于已死的网站。我将其替换为fetch_openml(),它依赖于https://openml.org
但我面临以下错误:
有没有人有办法解决吗?提前致谢。