Criando Tensores Aleatórios
Tensores aleatórios são úteis para inicializar dados ou pesos em modelos de aprendizado de máquina (o caso de uso mais comum).
Tensores Aleatórios Uniformes
A função torch.rand() é utilizada para criar um tensor com valores aleatórios extraídos de uma distribuição uniforme entre 0 e 1. De forma semelhante às funções zeros() e ones(), os argumentos especificam o formato do tensor.
1234import torch # Create a 6x8 tensor with random values between 0 and 1 random_tensor = torch.rand(6, 8) print(random_tensor)
Tensores Aleatórios Normais
A função torch.randn() é utilizada para criar um tensor com valores aleatórios extraídos de uma distribuição normal padrão (média = 0, desvio padrão = 1).
1234import torch # Create a 2x2 tensor with random values from a normal distribution normal_tensor = torch.randn(2, 2) print(normal_tensor)
Tensores Aleatórios de Inteiros
A função torch.randint() é utilizada para criar um tensor com valores inteiros aleatórios extraídos de uma distribuição uniforme discreta.
Os dois primeiros parâmetros desta função (low, que é igual a 0 por padrão, e high) especificam o intervalo de valores (de low até high, exclusivo). O próximo parâmetro especifica o formato do tensor como uma tupla.
1234import torch # Create a 4x3 tensor with random integers between 0 and 10 integer_tensor = torch.randint(0, 10, (4, 3)) print(integer_tensor)
Definição de Semente Aleatória
Para garantir a reprodutibilidade, é possível definir uma semente manualmente. Isso fixa os números aleatórios gerados, tornando-os os mesmos toda vez que o código é executado.
123456import torch # Set the random seed torch.manual_seed(42) # Create a 2x3 tensor with random values seeded_tensor = torch.rand(2, 3) print(seeded_tensor)
Você pode definir a semente para qualquer inteiro arbitrário, e o valor real do inteiro não importa para a maioria dos propósitos — ele simplesmente determina a sequência de números aleatórios gerados. O ponto principal é que, ao usar a mesma semente, sempre será produzida a mesma sequência de números aleatórios.
Casos de Uso Práticos para Tensores Aleatórios
- Inicialização de pesos: tensores aleatórios são frequentemente usados para inicializar pesos em redes neurais;
- Simulação de dados: gerar conjuntos de dados aleatórios para testes e experimentação;
- Amostragem aleatória: utilizar tensores aleatórios para tarefas como dropout e adição de ruído em modelos.
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Incrível!
Completion taxa melhorada para 5
Criando Tensores Aleatórios
Deslize para mostrar o menu
Tensores aleatórios são úteis para inicializar dados ou pesos em modelos de aprendizado de máquina (o caso de uso mais comum).
Tensores Aleatórios Uniformes
A função torch.rand() é utilizada para criar um tensor com valores aleatórios extraídos de uma distribuição uniforme entre 0 e 1. De forma semelhante às funções zeros() e ones(), os argumentos especificam o formato do tensor.
1234import torch # Create a 6x8 tensor with random values between 0 and 1 random_tensor = torch.rand(6, 8) print(random_tensor)
Tensores Aleatórios Normais
A função torch.randn() é utilizada para criar um tensor com valores aleatórios extraídos de uma distribuição normal padrão (média = 0, desvio padrão = 1).
1234import torch # Create a 2x2 tensor with random values from a normal distribution normal_tensor = torch.randn(2, 2) print(normal_tensor)
Tensores Aleatórios de Inteiros
A função torch.randint() é utilizada para criar um tensor com valores inteiros aleatórios extraídos de uma distribuição uniforme discreta.
Os dois primeiros parâmetros desta função (low, que é igual a 0 por padrão, e high) especificam o intervalo de valores (de low até high, exclusivo). O próximo parâmetro especifica o formato do tensor como uma tupla.
1234import torch # Create a 4x3 tensor with random integers between 0 and 10 integer_tensor = torch.randint(0, 10, (4, 3)) print(integer_tensor)
Definição de Semente Aleatória
Para garantir a reprodutibilidade, é possível definir uma semente manualmente. Isso fixa os números aleatórios gerados, tornando-os os mesmos toda vez que o código é executado.
123456import torch # Set the random seed torch.manual_seed(42) # Create a 2x3 tensor with random values seeded_tensor = torch.rand(2, 3) print(seeded_tensor)
Você pode definir a semente para qualquer inteiro arbitrário, e o valor real do inteiro não importa para a maioria dos propósitos — ele simplesmente determina a sequência de números aleatórios gerados. O ponto principal é que, ao usar a mesma semente, sempre será produzida a mesma sequência de números aleatórios.
Casos de Uso Práticos para Tensores Aleatórios
- Inicialização de pesos: tensores aleatórios são frequentemente usados para inicializar pesos em redes neurais;
- Simulação de dados: gerar conjuntos de dados aleatórios para testes e experimentação;
- Amostragem aleatória: utilizar tensores aleatórios para tarefas como dropout e adição de ruído em modelos.
Obrigado pelo seu feedback!