如何使用训练有素的孪生网络为 100+ 类 的大型测试集预测标签?
How to use trained siamese network to predict labels for large test set with 100+ classes?
我是否必须将每个测试图像与每个 class 中的示例图像进行比较?测试集包含 104 classes 中的大约 7400 张图像。那么这将是 7400 x 104 预测?
在 tpu 上使用 tensorflow 我能够非常有效地训练模型。然而,使用上述方法预测标签需要很长时间,而且模型预测调用会导致内存泄漏,最终导致内核失败(内存可能会爆炸 30+gb 并且还在增加)。
您可以通过多种方式执行此操作:
- (不推荐)这是
基本上是你实际做的事情的一部分。你可以拿一些
每个 class 的图像并将其与您的测试图像进行比较。让我们说
你 select 每个 class 5 张图片所以你必须做 5*104
预测。
- 您可以使用 K - 最近邻模型,您只需对 7400 张(或这些图像的子集)图像进行一次预测,即创建一个 KNN 模型,然后直接使用 KNN 分类器来预测 class 图像。
如果你对KNN不是很了解或者想看代码实现,也可以参考Blog。
我是否必须将每个测试图像与每个 class 中的示例图像进行比较?测试集包含 104 classes 中的大约 7400 张图像。那么这将是 7400 x 104 预测?
在 tpu 上使用 tensorflow 我能够非常有效地训练模型。然而,使用上述方法预测标签需要很长时间,而且模型预测调用会导致内存泄漏,最终导致内核失败(内存可能会爆炸 30+gb 并且还在增加)。
您可以通过多种方式执行此操作:
- (不推荐)这是 基本上是你实际做的事情的一部分。你可以拿一些 每个 class 的图像并将其与您的测试图像进行比较。让我们说 你 select 每个 class 5 张图片所以你必须做 5*104 预测。
- 您可以使用 K - 最近邻模型,您只需对 7400 张(或这些图像的子集)图像进行一次预测,即创建一个 KNN 模型,然后直接使用 KNN 分类器来预测 class 图像。
如果你对KNN不是很了解或者想看代码实现,也可以参考Blog。