cifar10_n

  • Açıklama :

CIFAR-10'un gerçek insan açıklama hatalarıyla yeniden etiketlenmiş bir versiyonu. Orijinal CIFAR-10 tren setindeki her çift (resim, etiket) için, gerçek insan notlayıcılar tarafından verilen birkaç ek etiket sağlar.

  • Anasayfa : https://ucsc-real.soe.ucsc.edu:1995/Home.html/

  • Kaynak kodu : tfds.image_classification.cifar10_n.Cifar10N

  • sürümler :

    • 1.0.0 : İlk sürüm.
    • 1.0.1 : worse_label anahtarındaki yazım hatası düzeltildi.
    • 1.0.2 : Ek açıklamalar ve resimler arasındaki yazışmalar düzeltildi.
    • 1.0.3 : MANUAL_DIR içindeki dosyalar düzeltildi.
    • 1.0.4 (varsayılan): Yan bilgilerin yüklenmesi düzeltildi.
  • İndirme boyutu : 162.17 MiB

  • Veri kümesi boyutu : 147.91 MiB

  • Manuel indirme talimatları : Bu veri kümesi, kaynak verileri manuel olarak download_config.manual_dir içine download_config.manual_dir gerektirir (varsayılan olarak ~/tensorflow_datasets/downloads/manual/ ):
    https://github.com/UCSC-REAL/cifar-10-100n adresinden 'side_info_cifar10N.csv', 'CIFAR-10_human_ordered.npy' ve 'image_order_c10.npy' dosyalarını indirin

Ardından 'CIFAR-10_human_ordered.npy' dosyasını 'CIFAR-10_human_annotations.csv' CSV dosyasına dönüştürün. Bu, aşağıdaki kodla yapılabilir:

import numpy as np
from tensorflow_datasets.core.utils.lazy_imports_utils import pandas as pd
from tensorflow_datasets.core.utils.lazy_imports_utils import tensorflow as tf

human_labels_np_path
= '<local_path>/CIFAR-10_human_ordered.npy'
human_labels_csv_path
= '<local_path>/CIFAR-10_human_annotations.csv'

with tf.io.gfile.GFile(human_labels_np_path, "rb") as f:
  human_annotations
= np.load(f, allow_pickle=True)

df
= pd.DataFrame(human_annotations[()])

with tf.io.gfile.GFile(human_labels_csv_path, "w") as f:
  df
.to_csv(f, index=False)
  • Otomatik önbelleğe alınmış ( belgeleme ): Evet

  • bölmeler :

Bölmek örnekler
'test' 10.000
'train' 50.000
  • Özellik yapısı :
FeaturesDict({
   
'aggre_label': ClassLabel(shape=(), dtype=int64, num_classes=10),
   
'id': Text(shape=(), dtype=string),
   
'image': Image(shape=(32, 32, 3), dtype=uint8),
   
'label': ClassLabel(shape=(), dtype=int64, num_classes=10),
   
'random_label1': ClassLabel(shape=(), dtype=int64, num_classes=10),
   
'random_label2': ClassLabel(shape=(), dtype=int64, num_classes=10),
   
'random_label3': ClassLabel(shape=(), dtype=int64, num_classes=10),
   
'worker1_id': int64,
   
'worker1_time': float32,
   
'worker2_id': int64,
   
'worker2_time': float32,
   
'worker3_id': int64,
   
'worker3_time': float32,
   
'worse_label': ClassLabel(shape=(), dtype=int64, num_classes=10),
})
  • Özellik belgeleri :
Özellik Sınıf Şekil Dtipi Tanım
ÖzelliklerDict
agre_label SınıfEtiketi int64
İD Metin sicim
görüntü resim (32, 32, 3) uint8
etiket SınıfEtiketi int64
rastgele_etiket1 SınıfEtiketi int64
rastgele_etiket2 SınıfEtiketi int64
rastgele_etiket3 SınıfEtiketi int64
işçi1_kimliği tensör int64
işçi1_zamanı tensör şamandıra32
işçi2_kimliği tensör int64
işçi2_zamanı tensör şamandıra32
işçi3_kimliği tensör int64
işçi3_time tensör şamandıra32
daha kötü_etiket SınıfEtiketi int64

görselleştirme

  • Alıntı :
@inproceedings{wei2022learning,
  title
={Learning with Noisy Labels Revisited: A Study Using Real-World Human
 
Annotations},
  author
={Jiaheng Wei and Zhaowei Zhu and Hao Cheng and Tongliang Liu and Gang
 
Niu and Yang Liu},
  booktitle
={International Conference on Learning Representations},
  year
={2022},
  url
={https://openreview.net/forum?id=TBWA6PLJZQm}
}