Нейронні мережі та шари

Вступ до Deep Learning з PyTorch

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Шари нейронної мережі

Схема нейронної мережі з входом, прихованим шаром і виходом

Вступ до Deep Learning з PyTorch

Шари нейронної мережі

Схема нейронної мережі з входом, прихованим шаром і виходом

Вступ до Deep Learning з PyTorch

Шари нейронної мережі

Схема нейронної мережі з входом, прихованим шаром і виходом

Вступ до Deep Learning з PyTorch

Шари нейронної мережі

Схема нейронної мережі з входом, прихованим шаром і виходом

Вступ до Deep Learning з PyTorch

Наша перша нейронна мережа

Схема базової нейронної мережі лише зі входом і виходом

  • Повнозв'язна мережа
  • Еквівалент лінійної моделі
Вступ до Deep Learning з PyTorch

Проєктування нейронної мережі

Три вузли, що представляють вхід до нейронної мережі

# Importing as nn to avoid writing torch.nn
import torch.nn as nn


# Create input_tensor with three features input_tensor = torch.tensor( [[0.3471, 0.4547, -0.2356]])
  • Вхідні нейрони = ознаки
  • Вихідні нейрони = класи
Вступ до Deep Learning з PyTorch

Проєктування нейронної мережі

Три вузли на вході нейронної мережі зі стрілками вперед, що позначають лінійний шар

# Importing as nn to avoid writing torch.nn
import torch.nn as nn


# Create input_tensor with three features input_tensor = torch.tensor( [[0.3471, 0.4547, -0.2356]])
# Define our linear layer linear_layer = nn.Linear(
in_features=3,
out_features=2
)
Вступ до Deep Learning з PyTorch

Проєктування нейронної мережі

Схема базової нейронної мережі лише зі входом і виходом

# Importing as nn to avoid writing torch.nn
import torch.nn as nn


# Create input_tensor with three features input_tensor = torch.tensor( [[0.3471, 0.4547, -0.2356]])
# Define our linear layer linear_layer = nn.Linear( in_features=3, out_features=2 )
# Pass input through linear layer output = linear_layer(input_tensor) print(output)
Вступ до Deep Learning з PyTorch

Проєктування нейронної мережі

Схема базової нейронної мережі лише зі входом і виходом

$$ $$ $$

# Pass input through linear layer
output = linear_layer(input_tensor)
print(output)
tensor([[-0.2415, -0.1604]], 
    grad_fn=<AddmmBackward0>)
Вступ до Deep Learning з PyTorch

Ваги та зсуви

output = linear_layer(input_tensor)

Представлення лінійної операції

Вступ до Deep Learning з PyTorch

Ваги та зсуви

  • .weight
    print(linear_layer.weight)
    
Parameter containing:
tensor([[-0.4799,  0.4996,  0.1123],
        [-0.0365, -0.1855,  0.0432]], 
        requires_grad=True)

$$

  • Відображає важливість різних ознак
  • .bias
    print(linear_layer.bias)
    
Parameter containing:
tensor([0.0310, 0.1537], requires_grad=True)

$$

$$

  • Надає нейрону базове значення виходу
Вступ до Deep Learning з PyTorch

Повнозв'язна мережа в дії

Схема базової нейронної мережі лише зі входом і виходом

Вступ до Deep Learning з PyTorch

Повнозв'язна мережа в дії

Схема базової нейронної мережі лише зі входом і виходом

Вступ до Deep Learning з PyTorch

Повнозв'язна мережа в дії

Схема базової нейронної мережі лише зі входом і виходом

  • Ознака «вологість» матиме більшу вагу
  • Зсув враховує базову інформацію
Вступ до Deep Learning з PyTorch

Давайте потренуємось!

Вступ до Deep Learning з PyTorch

Preparing Video For Download...