gpt4 book ai didi

machine-learning - 使用数据集中的重复项进行训练

转载 作者:行者123 更新时间:2023-11-30 09:18:57 25 4
gpt4 key购买 nike

我有一个用于分类目的的图像数据集。数据集非常大,并且大多数图像都是彼此重复的。因此本质上,同一个图像会出现多次。此外,数据集不平衡。我理解清理重复数据集的动机。但这是一项广泛且非常耗时的工作。有没有一种方法可以在此数据集上训练网络,并且不会过度拟合模型?实现更严格的正则化、退出、惩罚损失是否仍能产生可用的模型?

最佳答案

正如 Jon.H 在评论中所建议的,您可以使用图像哈希来检测并从数据集中删除它们,而不是在具有重复项的数据集上训练模型。虽然加密哈希(如 MD5 和 SHA1)足以找到精确重复项,但根据您的评论,您还想删除相似的图像,而不仅仅是精确的重复项(您真的想这样做吗?这个?拥有更大的数据集通常更适合训练,并且保留具有较小变化(例如颜色)的相似图像并不一定是坏事 - 请参阅“数据增强”)。

Generating a hash for images is not robust to slight changes in pixel values, say minor lighting changes which aren't visible to the eye but the pixel value differs. - Ronica Jethwa

解决此问题的一种方法是使用 perceptual hashing它对于图像的颜色、旋转、纵横比等方面的微小差异非常鲁棒。我特别建议您尝试基于离散余弦变换的 pHash 算法,如 Looks-Like-It 中所述。 。有一个Python库可以实现它,称为imagehash。使用方法如下:

from PIL import Image
import imagehash

# Compute the perception-hash values (64 bit) for two images
phash_1 = imagehash.phash(Image.open('image_1')) # e.g. d58e11ce51ee15aa
phash_2 = imagehash.phash(Image.open('image_2')) # e.g. d58e01ae519e559e

# Compare the images using the Hamming distance of their perception hashes
dist = phash_1 - phash_2

然后由您选择汉明距离的相似度阈值。

关于machine-learning - 使用数据集中的重复项进行训练,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47104491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com