Olá e bem-vindo ao primeiro tutorial da série "Programando em 10 minutos" sobre Redes Neurais em PyTorch! Neste tutorial, vamos abordar o básico de como criar e treinar redes neurais utilizando a biblioteca PyTorch em apenas 10 minutos. Vamos lá!
O PyTorch é uma biblioteca de aprendizado de máquina de código aberto que oferece suporte a computação numérica eficiente utilizando tensores. Ele também é conhecido por sua facilidade de uso e flexibilidade para desenvolvimento de modelos de aprendizado profundo. Vamos começar instalando o PyTorch em seu ambiente Python:
!pip install torch torchvision
Agora que temos o PyTorch instalado, vamos começar a construir nossa rede neural. Vamos criar uma rede simples com uma camada de entrada, uma camada oculta e uma camada de saÃda. Aqui está o código para isso:
import torch
import torch.nn as nn
class RedeNeural(nn.Module):
def __init__(self):
super(RedeNeural, self).__init__()
self.camada_oculta = nn.Linear(784, 128) # 784 é o número de features de entrada, 128 é o número de neurônios na camada oculta
self.camada_saida = nn.Linear(128, 10) # 10 é o número de classes de saÃda
def forward(self, x):
x = torch.flatten(x, 1) # Achatando os dados de entrada
x = torch.relu(self.camada_oculta(x)) # Aplicando a função de ativação ReLU na camada oculta
x = self.camada_saida(x) # Camada de saÃda
return x
Agora que temos nossa rede neural definida, vamos instanciá-la e definir a função de perda e otimizador que usaremos para treinar o modelo. Vamos usar o conjunto de dados MNIST para este tutorial:
from torchvision import datasets, transforms
# Carregando o dataset MNIST
transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5,), (0.5,))]) # Normalizando os dados
train_dataset = datasets.MNIST('data', train=True, download=True, transform=transform)
train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=64, shuffle=True)
# Instanciando a rede neural
rede = RedeNeural()
# Definindo a função de perda e o otimizador
criterio = nn.CrossEntropyLoss()
otimizador = torch.optim.Adam(rede.parameters(), lr=0.001)
Agora vamos treinar nosso modelo! Vamos executar o loop de treinamento por 10 épocas e imprimir a precisão do modelo a cada época:
# Treinamento do modelo
for epoch in range(10):
for batch_idx, (x, y) in enumerate(train_loader):
saida = rede(x)
perda = criterio(saida, y)
otimizador.zero_grad()
perda.backward()
otimizador.step()
if batch_idx % 100 == 0:
print('Época {}: Perda: {:.6f}'.format(epoch, perda.item()))
# Avaliando o modelo
rede.eval()
acuracia = 0
total = 0
for x, y in train_loader:
saida = rede(x)
_, pred = torch.max(saida, 1)
acuracia += (pred == y).sum().item()
total += y.size(0)
print('Acurácia do modelo: {:.2f}%'.format(100 * acuracia/total))
E é isso! Em apenas 10 minutos, você aprendeu como criar e treinar uma rede neural simples utilizando o PyTorch. Este é apenas o começo e há muito mais para explorar com o PyTorch. Continue praticando e experimentando para aprimorar suas habilidades em redes neurais. Espero que este tutorial tenha sido útil e que você esteja motivado a continuar aprendendo! Obrigado por ler e boa sorte em sua jornada de aprendizado de aprendizado de máquina com PyTorch.
Oi Mila! Excelente seu curso lá na Alura! Muito didático, acessÃvel. Cobriu com excelência os aspecto histórico, matemático e computacional! Parabéns!
você ensina muito bem o porém é que você lembra muito minha ex e eu nao consigo prestar atenção … e isso é mto verdade kkkk
top dms
O único ponto em questão é que não foi feita a rede. Como posso usar o python programando em "baixo nÃvel" uma Multlayer Perceptron (MLP) e usar a GPU compartilhada do google colab?
Moça qual cursos voce indica para inteligência artificial? Fique impressionado com o chatgpt, queria aprender
Tem como usar isso no mercado financeiro pra pegar padrão?
Treinei a rede normalizando os dados. Quando faço teste com dados na aplicação não dá certo já que não estão normalizados. Como faço?
Olá gostaria de parabeniza-la pelo belÃssimo conteúdo! Bem eu gostaria de criar uma rede neural que pudesse pegar alguns indicadores técnicos do mercado financeiro e deixar ela me mostrar quais as melhores configurações deste mesmo indicador técnico? Desde já agradeço!
Vc pode me ajudar a criar um comparador de marcas? Com base em uma imagem modelo ele pesquisa em meio a outras a mais parecida.
amei o video
Criar um software que dialoga com si proprio como 2 nucleo em 1. Dar capacidade de si auto programar updates . Simular um ego + learn . Com pequeno banco de dados
Acho que o "eu existo" da i.a vira do auto polimento do softwar que simula o ego !! É o que quero fazer ..
Nossa adorei seu vÃdeo muito top tomara que vire um quadro 🙂
Se for pra contar 10 minutos, não vale fazer corte nenhum, quanto mais um a cada 5 segundos. Kkkk Não queria ser chato. Valeu o like. 🙂
Dá pra entender o que acontece nos 32 neurônios ocultos?
Chegou a sair o video mostrando como fazer dataset no pytorch?
Parabens, muito inteligente continue assim, precisamos de pessoas desse jeito na área
Ganhou mais um inscrito. 💯✨
Arrasou!
ta dando erro nesta parte do código… "playlist_uploads = channel_by_id.items[0].to_dict()['contentDetails'] ['relatedPlaylist'] ['uploads']" ainda não encontrei o motivo—> TypeError Traceback (most recent call last)
<ipython-input-35-037e36404ce1> in <module>()
8 ##acessando playlist principal do canal
9 channel_by_id = api.get_channel_info(channel_name = channel)
—> 10 playlist_uploads = channel_by_id.items[0].to_dict()['contentDetails'] ['relatedPlaylist'] ['uploads']
11 ##coletando o id dos ultimos 200 vÃdeos de cada canal – count
12 playlist_item_by_playlist = api.get_playlist_items(playlist_id = playlist_uploads, count = 150)
TypeError: 'NoneType' object is not subscriptable
ja saiu a parte dois ? nao acho