Introdução a aprendizado profundo com PyTorch

Introdução ao Aprendizado Profundo com o PyTorch

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Aprendizado profundo em toda parte!

Ilustração mostrando vários idiomas em um globo

Introdução ao Aprendizado Profundo com o PyTorch

Aprendizado profundo em toda parte!

Ilustração mostrando vários idiomas ao redor do mundo e um carro autônomo

Introdução ao Aprendizado Profundo com o PyTorch

Aprendizado profundo em toda parte!

Ilustração mostrando vários idiomas ao redor do mundo, um carro autônomo e diagnóstico médico

Introdução ao Aprendizado Profundo com o PyTorch

Aprendizado profundo em toda parte!

Ilustração mostrando vários idiomas ao redor do mundo, um carro autônomo e diagnóstico médico

Introdução ao Aprendizado Profundo com o PyTorch

O que é aprendizado profundo?

Um diagrama em camadas representando o aprendizado profundo como um subconjunto do aprendizado de máquina

Um diagrama de uma pequena rede neural

Introdução ao Aprendizado Profundo com o PyTorch

O que é aprendizado profundo?

Um diagrama em camadas representando o aprendizado profundo como um subconjunto do aprendizado de máquina

Um diagrama de uma rede neural com várias camadas

Introdução ao Aprendizado Profundo com o PyTorch

Redes de aprendizado profundo

$$

  • Inspirado em como o cérebro humano aprende

Uma ilustração de uma pessoa estudando o cérebro

Introdução ao Aprendizado Profundo com o PyTorch

Redes de aprendizado profundo

$$

  • Inspirado em como o cérebro humano aprende
  • Neurônios ➡ redes neurais
  • Os modelos exigem uma grande quantidade de dados
  • Ao menos 100.000 pontos de dados

Uma ilustração de uma pessoa estudando o cérebro, com foco nos neurônios

Introdução ao Aprendizado Profundo com o PyTorch

PyTorch: framework de aprendizado profundo

$$

$$

  • Um dos frameworks mais populares
  • Originalmente da Meta AI, agora parte da Linux Foundation
  • Intuitivo e fácil de usar
  • Semelhanças com o NumPy

 

O logotipo do PyTorch

Introdução ao Aprendizado Profundo com o PyTorch

Tensores do PyTorch

$$

  • Tensor:
    • Semelhante a array ou matriz
    • Bloco de construção de redes neurais

$$

import torch

my_list = [[1, 2, 3], [4, 5, 6]] tensor = torch.tensor(my_list) print(tensor)
tensor([[1, 2, 3],
        [4, 5, 6]])
Introdução ao Aprendizado Profundo com o PyTorch

Atributos do tensor

  • Forma do tensor
my_list = [[1, 2, 3], [4, 5, 6]]
tensor = torch.tensor(my_list)
print(tensor.shape)
torch.Size([2, 3])
  • Tipo de dados do tensor
print(tensor.dtype)
torch.int64
Introdução ao Aprendizado Profundo com o PyTorch

Introdução às operações com tensores

Formas compatíveis

a = torch.tensor([[1, 1], 
                  [2, 2]])

b = torch.tensor([[2, 2], 
                  [3, 3]])
  • Adição/subtração
print(a + b)
tensor([[3, 3],
        [5, 5]])

Formas incompatíveis

a = torch.tensor([[1, 1], 
                  [2, 2]])

c = torch.tensor([[2, 2, 4], 
                  [3, 3, 5]])
  • Adição/subtração
print(a + c)
RuntimeError: The size of tensor a
(2) must match the size of tensor b (3) 
at non-singleton dimension 1
Introdução ao Aprendizado Profundo com o PyTorch

Multiplicação por elementos

a = torch.tensor([[1, 1], 
                  [2, 2]])
b = torch.tensor([[2, 2], 
                  [3, 3]])
print(a * b)
tensor([[2,  2],
        [6, 6]])
Introdução ao Aprendizado Profundo com o PyTorch

Multiplicação de matrizes

Multiplicação de matrizes

Introdução ao Aprendizado Profundo com o PyTorch

Multiplicação de matrizes

Multiplicação de matrizes destacada

$$

  • $1 \cdot 2 + 1 \cdot 3 = 5$

$$

  • Realizar adição e multiplicação para processar dados e aprender padrões
Introdução ao Aprendizado Profundo com o PyTorch

Vamos praticar!

Introdução ao Aprendizado Profundo com o PyTorch

Preparing Video For Download...