ncxlib
  • ⚡Welcome
  • Getting Started
    • Quickstart
    • API Documentation
      • Overview
        • Neural Network
          • _compile
          • add_layer
          • forward_propagate_all
          • forward_propagate_all_no_save
          • back_propagation
          • train
          • predict
          • evaluate
          • save_model
          • load_model
        • Activation
          • ReLU
          • LeakyReLU
          • Sigmoid
          • Softmax
          • Tanh
        • Layer
          • InputLayer
          • FullyConnectedLayer
          • OutputLayer
        • LossFunction
          • MeanSquaredError
          • BinaryCrossEntropy
          • CategoricalCrossEntropy
        • Optimizer
          • SGD
          • SGDMomentum
          • RMSProp
          • Adam
        • Initializer
          • HeNormal
          • Zero
        • PreProcessor
          • OneHotEncoder
          • MinMaxScaler
          • Scaler
          • ImageRescaler
          • ImageGrayscaler
        • DataLoader
          • CSVDataLoader
          • ImageDataLoader
        • Generators
          • random_array
          • integer_array
          • generate_training_data
        • Utils
          • train_test_split
          • k_fold_cross_validation
Powered by GitBook
On this page
  1. Getting Started
  2. API Documentation
  3. Overview
  4. DataLoader

ImageDataLoader

class ImageDataLoader(DataLoader):
    def __init__(
        self,
        directory_path: str,
        shuffle=False,
        preprocessors: Optional[list[Preprocessor]] = [],
        non_data_columns: Optional[list[str]] = ["target", "title"],
        target_column: Optional[str] = "target",
        label_numeric=False
    ):
        super().__init__(shuffle, preprocessors)
        self.dataset = ImageDataset(directory_path)
        self.dataset.target_column = target_column
        self.dataset.label_numeric=True
        self.non_data_columns = non_data_columns
        self.target_column = target_column
        self.set_indices(len(self.dataset))

        self.preprocess()

    def get_data(self):
        """
        Extracts features (X) and target (y) from the dataset.

        Returns:
        - X (np.ndarray): Feature matrix.
        - y (np.ndarray): Target variable array.
        """
        df = self.dataset.data
        X = df.drop(columns=self.non_data_columns).values
        y = df[self.target_column].values

        X = np.array([arr[0] for arr in X]) 

        return X, y
PreviousCSVDataLoaderNextGenerators

Last updated 7 months ago