





from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_tokenizers_available,
    is_torch_available,
    is_vision_available,
)


__A									=				{
    "configuration_perceiver": ["PERCEIVER_PRETRAINED_CONFIG_ARCHIVE_MAP", "PerceiverConfig", "PerceiverOnnxConfig"],
    "tokenization_perceiver": ["PerceiverTokenizer"],
}

try:
     if not is_vision_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     __A									=				["PerceiverFeatureExtractor"]
     __A									=				["PerceiverImageProcessor"]

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     __A									=				[
         "PERCEIVER_PRETRAINED_MODEL_ARCHIVE_LIST",
         "PerceiverForImageClassificationConvProcessing",
         "PerceiverForImageClassificationFourier",
         "PerceiverForImageClassificationLearned",
         "PerceiverForMaskedLM",
         "PerceiverForMultimodalAutoencoding",
         "PerceiverForOpticalFlow",
         "PerceiverForSequenceClassification",
         "PerceiverLayer",
         "PerceiverModel",
         "PerceiverPreTrainedModel",
     ]


if TYPE_CHECKING:
     from .configuration_perceiver import PERCEIVER_PRETRAINED_CONFIG_ARCHIVE_MAP, PerceiverConfig, PerceiverOnnxConfig
     from .tokenization_perceiver import PerceiverTokenizer

     try:
          if not is_vision_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .feature_extraction_perceiver import PerceiverFeatureExtractor
          from .image_processing_perceiver import PerceiverImageProcessor

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_perceiver import (
              PERCEIVER_PRETRAINED_MODEL_ARCHIVE_LIST,
              PerceiverForImageClassificationConvProcessing,
              PerceiverForImageClassificationFourier,
              PerceiverForImageClassificationLearned,
              PerceiverForMaskedLM,
              PerceiverForMultimodalAutoencoding,
              PerceiverForOpticalFlow,
              PerceiverForSequenceClassification,
              PerceiverLayer,
              PerceiverModel,
              PerceiverPreTrainedModel,
          )

else:
     import sys

     __A									=				_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)






import numpy as np
from matplotlib import pyplot as plt
from sklearn.datasets import load_iris
from sklearn.metrics import ConfusionMatrixDisplay
from sklearn.model_selection import train_test_split
from xgboost import XGBClassifier






def     a(      A       :    dict       )		->       tuple:
					"""simple docstring"""





					return (data["data"], data["target"])






def     a(      A       :    np.ndarray ,     A       :    np.ndarray       )		->       XGBClassifier:
					"""simple docstring"""





					a					     =   XGBClassifier()
					classifier.fit(A ,     A       )
					return classifier






def     a(      )		->       None:
					"""simple docstring"""





					a					     =   load_iris()
					a     ,				a					     =   data_handling(A       )
					a     ,				a     ,				a     ,				a					     =   train_test_split(
					    A ,     A ,     test_size=0.25       )

					a					     =   iris["target_names"]

					# Create an XGBoost Classifier from the training data
					a					     =   xgboost(A ,     A       )

					# Display the confusion matrix of the classifier with both training and test sets
					ConfusionMatrixDisplay.from_estimator(
					    A ,     A ,     A ,     display_labels=A ,     cmap="Blues" ,     normalize="true" ,     )
					plt.title("Normalized Confusion Matrix - IRIS Dataset"       )
					plt.show()


if __name__ == "__main__":
				import doctest

				doctest.testmod(verbose=True)
				main()
