<jupyter_start><jupyter_text>Dataset<jupyter_code>class SquareDataset(Dataset):
    def __init__(self, size):
        self.size = size
        self.X = torch.randint(255, (size, 9), dtype=torch.float)

        real_w = torch.tensor([[1,1,1,0,0,0,0,0,0],
                               [0,0,0,1,1,1,0,0,0],
                               [0,0,0,0,0,0,1,1,1]], 
                               dtype=torch.float)

        y = torch.argmax(self.X.mm(real_w.t()), 1)
        
        self.Y = torch.zeros(size, 3, dtype=torch.float) \
                      .scatter_(1, y.view(-1, 1), 1)

    def __getitem__(self, index):
        return (self.X[index], self.Y[index])

    def __len__(self):
        return self.size
squares = SquareDataset(256)
print(squares[34])
print(squares[254])
print(squares[25])
dataloader = DataLoader(squares, batch_size=5)

for batch, (X, Y) in enumerate(dataloader):
    print(X, '\n\n', Y)
    break<jupyter_output>tensor([[152., 127., 155., 219.,  81., 140., 112.,  77., 102.],
        [ 77.,  58., 228., 164., 229., 155., 111., 223., 141.],
        [106., 250.,  87.,  62., 105., 254.,   0., 210., 136.],
        [190., 108., 134., 204., 145., 251., 146., 171.,  99.],
        [ 88.,  36., 190., 108., 122.,   4., 231.,  22.,  70.]]) 

 tensor([[0., 1., 0.],
        [0., 1., 0.],
        [1., 0., 0.],
        [0., 1., 0.],
        [0., 0., 1.]])<jupyter_text>DigitsTransforms!<jupyter_code>digits = datasets.MNIST('data', train=True, download=True,
                    transform=transforms.Compose([
                        transforms.ToTensor(),
                        transforms.Lambda(lambda x: x.view(28*28))
                    ]),
                    target_transform=transforms.Compose([
                        transforms.Lambda(lambda y: 
                                          torch.zeros(10, dtype=torch.float).scatter_(0, torch.tensor(y), value=1))
                    ])
                 )
dataloader = DataLoader(digits, batch_size=10, shuffle=True)

for batch, (X, Y) in enumerate(dataloader):
    print(X, '\n\n', Y)
    break<jupyter_output>tensor([[0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        ...,
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.],
        [0., 0., 0.,  ..., 0., 0., 0.]]) 

 tensor([[1., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
        [1., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 1., 0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0., 0., 1., 0., 0.],
        [0., 0., 0., 0., 0., 0., 0., 0., 1., 0.],
        [0., 0., 0., 0., 0., 1., 0., 0., 0., 0.],
        [0., 0., 0., 1., 0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0., 1., 0., 0., 0.],
        [1., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0., 0., 1., 0., 0.]])
{'fraction_non_alphanumeric': 0.25342225342225344, 'fraction_numerical': 0.11547911547911548, 'mean_word_length': 1.3969722455845248, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 23, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '2', 'dir': 'jupyter-structured-clean-dedup', 'id': '235001', 'license': 'MIT', 'n_tokens_mistral': 1364, 'n_tokens_neox': 1084, 'n_words': 279, 'path': 'data.ipynb', 'repo_name': 'AzureAdvocateBit/DeepLearningWithPyTorch-1', 'size': '2849'}