
    &Vfb                     t    d Z ddlZddlZddlmZ ddlmZ ddlm	Z	 ddl
mZ  ed          d
d	            ZdS )z-CIFAR100 small images classification dataset.    N)backend)keras_export)
load_batch)get_filez!keras.datasets.cifar100.load_datafinec                 h   | dvrt          d|  d          d}d}t          ||dd          }t          j                            |d	          }t          || d
z             \  }}t          j                            |d          }t          || d
z             \  }}t          j        |t          |          df          }t          j        |t          |          df          }t          j
                    dk    r0|                    dddd          }|                    dddd          }||f||ffS )a  Loads the CIFAR100 dataset.

    This is a dataset of 50,000 32x32 color training images and
    10,000 test images, labeled over 100 fine-grained classes that are
    grouped into 20 coarse-grained classes. See more info at the
    [CIFAR homepage](https://www.cs.toronto.edu/~kriz/cifar.html).

    Args:
        label_mode: one of `"fine"`, `"coarse"`.
            If it is `"fine"`, the category labels
            are the fine-grained labels, and if it is `"coarse"`,
            the output labels are the coarse-grained superclasses.

    Returns:
        Tuple of NumPy arrays: `(x_train, y_train), (x_test, y_test)`.

    **`x_train`**: `uint8` NumPy array of grayscale image data with shapes
      `(50000, 32, 32, 3)`, containing the training data. Pixel values range
      from 0 to 255.

    **`y_train`**: `uint8` NumPy array of labels (integers in range 0-99)
      with shape `(50000, 1)` for the training data.

    **`x_test`**: `uint8` NumPy array of grayscale image data with shapes
      `(10000, 32, 32, 3)`, containing the test data. Pixel values range
      from 0 to 255.

    **`y_test`**: `uint8` NumPy array of labels (integers in range 0-99)
      with shape `(10000, 1)` for the test data.

    Example:

    ```python
    (x_train, y_train), (x_test, y_test) = keras.datasets.cifar100.load_data()
    assert x_train.shape == (50000, 32, 32, 3)
    assert x_test.shape == (10000, 32, 32, 3)
    assert y_train.shape == (50000, 1)
    assert y_test.shape == (10000, 1)
    ```
    )r   coarsezG`label_mode` must be one of `"fine"`, `"coarse"`. Received: label_mode=.zcifar-100-pythonz8https://www.cs.toronto.edu/~kriz/cifar-100-python.tar.gzT@85cd44d02ba6437773c5bbd22e183051d648de2e7d6b014e1ef29b855ba677a7)fnameoriginuntar	file_hashtrain_labels)	label_keytest   channels_lastr         )
ValueErrorr   ospathjoinr   npreshapelenr   image_data_format	transpose)	
label_modedirnamer   r   fpathx_trainy_trainx_testy_tests	            X/var/www/html/software/conda/lib/python3.11/site-packages/keras/src/datasets/cifar100.py	load_datar)      s\   T +++2$.2 2 2
 
 	

 !GGFN  D GLLw''E!%:	3IJJJGWGLLv&&Ei1GHHHNFFj3w<<"344GZVa 011F ""o55##Aq!Q//!!!Q1--W///    )r   )__doc__r   numpyr   	keras.srcr   keras.src.api_exportr   keras.src.datasets.cifarr   keras.src.utils.file_utilsr   r)    r*   r(   <module>r2      s    3 3 				           - - - - - - / / / / / / / / / / / / 122G0 G0 G0 32G0 G0 G0r*   