(num_samples: int, train_ratio: float = 0.1, test_ratio: float = 0.8)
| 7 | |
| 8 | |
| 9 | def get_split(num_samples: int, train_ratio: float = 0.1, test_ratio: float = 0.8): |
| 10 | assert train_ratio + test_ratio < 1 |
| 11 | train_size = int(num_samples * train_ratio) |
| 12 | test_size = int(num_samples * test_ratio) |
| 13 | indices = torch.randperm(num_samples) |
| 14 | return { |
| 15 | 'train': indices[:train_size], |
| 16 | 'valid': indices[train_size: test_size + train_size], |
| 17 | 'test': indices[test_size + train_size:] |
| 18 | } |
| 19 | |
| 20 | |
| 21 | def from_predefined_split(data): |