cifar10_n

  • विवरण :

वास्तविक मानव एनोटेशन त्रुटियों के साथ CIFAR-10 का पुनः लेबल किया गया संस्करण। मूल CIFAR-10 ट्रेन सेट में प्रत्येक जोड़ी (छवि, लेबल) के लिए, यह वास्तविक मानव एनोटेटर द्वारा दिए गए कई अतिरिक्त लेबल प्रदान करता है।

  • होमपेज : https://ucsc-real.soe.ucsc.edu:1995/Home.html/

  • स्रोत कोड : tfds.image_classification.cifar10_n.Cifar10N

  • संस्करण :

    • 1.0.0 : प्रारंभिक रिलीज।
    • 1.0.1 : worse_label कुंजी में निश्चित टाइपो।
    • 1.0.2 : एनोटेशन और छवियों के बीच निश्चित पत्राचार।
    • 1.0.3 : MANUAL_DIR में फिक्स्ड फाइलें।
    • 1.0.4 (डिफ़ॉल्ट): साइड जानकारी की निश्चित लोडिंग।
  • डाउनलोड आकार : 162.17 MiB

  • डेटासेट का आकार : 147.91 MiB

  • मैन्युअल डाउनलोड निर्देश : इस डेटासेट के लिए आपको स्रोत डेटा को मैन्युअल रूप से download_config.manual_dir (डिफ़ॉल्ट रूप से ~/tensorflow_datasets/downloads/manual/ ) में डाउनलोड करना होगा:
    https://github.com/UCSC-REAL/cifar-10-100n से 'side_info_cifar10N.csv', 'CIFAR-10_human_ordered.npy' और 'image_order_c10.npy' डाउनलोड करें

फिर 'CIFAR-10_human_ordered.npy' को CSV फ़ाइल 'CIFAR-10_human_annotations.csv' में बदलें। यह निम्नलिखित कोड के साथ किया जा सकता है:

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)
विभाजित करना उदाहरण
'test' 10,000
'train' 50,000
  • फ़ीचर संरचना :
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),
})
  • फ़ीचर दस्तावेज़ीकरण :
विशेषता कक्षा आकार डीटाइप विवरण
विशेषताएं डिक्ट
agre_लेबल क्लासलेबल int64
पहचान मूलपाठ डोरी
छवि छवि (32, 32, 3) uint8
लेबल क्लासलेबल int64
random_label1 क्लासलेबल int64
random_label2 क्लासलेबल int64
random_label3 क्लासलेबल int64
कार्यकर्ता1_आईडी टेन्सर int64
कार्यकर्ता1_समय टेन्सर फ्लोट32
कार्यकर्ता2_आईडी टेन्सर int64
कार्यकर्ता2_समय टेन्सर फ्लोट32
कार्यकर्ता3_आईडी टेन्सर int64
कार्यकर्ता3_समय टेन्सर फ्लोट32
bad_label क्लासलेबल int64

VISUALIZATION

  • उद्धरण :
@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}
}