src/sagemaker_defect_detection/dataset/neu.py [58:71]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        n_items = len(self.samples)
        np.random.seed(seed)
        perm = np.random.permutation(list(range(n_items)))
        # TODO: add split ratios as parameters
        train_end = int(0.6 * n_items)
        val_end = int(0.2 * n_items) + train_end
        if split == "train":
            self.samples = [self.samples[i] for i in perm[:train_end]]
        elif split == "val":
            self.samples = [self.samples[i] for i in perm[train_end:val_end]]
        elif split == "test":
            self.samples = [self.samples[i] for i in perm[val_end:]]
        else:
            raise ValueError(f"Unknown split mode. Choose from `train`, `val` or `test`. Given {split}")
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



src/sagemaker_defect_detection/dataset/neu.py [118:130]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        n_items = len(self.samples)
        np.random.seed(seed)
        perm = np.random.permutation(list(range(n_items)))
        train_end = int(0.6 * n_items)
        val_end = int(0.2 * n_items) + train_end
        if split == "train":
            self.samples = [self.samples[i] for i in perm[:train_end]]
        elif split == "val":
            self.samples = [self.samples[i] for i in perm[train_end:val_end]]
        elif split == "test":
            self.samples = [self.samples[i] for i in perm[val_end:]]
        else:
            raise ValueError(f"Unknown split mode. Choose from `train`, `val` or `test`. Given {split}")
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



