bpytorch balanced random split code example
Example: torch split classes stratified
X = np.random.randn(1000, 2)
y = np.random.randint(0, 10, size=1000)
X_train, X_val, y_train, y_val = train_test_split(X, y, test_size=0.1, stratify=y)
np.unique(y_train, return_counts=True)
np.unique(y_val, return_counts=True)
train_dataset = Dataset(X_train, y_train, ...)
train_loader = DataLoader(train_dataset, ...)