神经网络与层

使用 PyTorch 的深度学习入门

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

神经网络层

含输入、隐藏层和输出的神经网络示意图

使用 PyTorch 的深度学习入门

神经网络层

含输入、隐藏层和输出的神经网络示意图

使用 PyTorch 的深度学习入门

神经网络层

含输入、隐藏层和输出的神经网络示意图

使用 PyTorch 的深度学习入门

神经网络层

含输入、隐藏层和输出的神经网络示意图

使用 PyTorch 的深度学习入门

我们的第一个神经网络

仅含输入和输出的基础神经网络示意图

  • 全连接网络
  • 等价于线性模型
使用 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]])
  • 输入神经元 = 特征
  • 输出神经元 = 类别
使用 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
)
使用 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)
使用 PyTorch 的深度学习入门

设计神经网络

仅含输入和输出的基础神经网络示意图

$$ $$ $$

# Pass input through linear layer
output = linear_layer(input_tensor)
print(output)
tensor([[-0.2415, -0.1604]], 
    grad_fn=<AddmmBackward0>)
使用 PyTorch 的深度学习入门

权重与偏置

output = linear_layer(input_tensor)

线性运算示意

使用 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)

$$

$$

  • 为神经元提供基线输出
使用 PyTorch 的深度学习入门

全连接网络实战

仅含输入和输出的基础神经网络示意图

使用 PyTorch 的深度学习入门

全连接网络实战

仅含输入和输出的基础神经网络示意图

使用 PyTorch 的深度学习入门

全连接网络实战

仅含输入和输出的基础神经网络示意图

  • 湿度特征的权重更大
  • 偏置用于体现基线信息
使用 PyTorch 的深度学习入门

Ayo berlatih!

使用 PyTorch 的深度学习入门

Preparing Video For Download...