โครงข่ายประสาทเทียมและเลเยอร์

Deep Learning เบื้องต้นด้วย PyTorch

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

เลเยอร์ของโครงข่ายประสาทเทียม

ไดอะแกรมแสดงโครงข่ายประสาทเทียมที่มีอินพุต เลเยอร์ซ่อน และเอาต์พุต

Deep Learning เบื้องต้นด้วย PyTorch

เลเยอร์ของโครงข่ายประสาทเทียม

ไดอะแกรมแสดงโครงข่ายประสาทเทียมที่มีอินพุต เลเยอร์ซ่อน และเอาต์พุต

Deep Learning เบื้องต้นด้วย PyTorch

เลเยอร์ของโครงข่ายประสาทเทียม

ไดอะแกรมแสดงโครงข่ายประสาทเทียมที่มีอินพุต เลเยอร์ซ่อน และเอาต์พุต

Deep Learning เบื้องต้นด้วย PyTorch

เลเยอร์ของโครงข่ายประสาทเทียม

ไดอะแกรมแสดงโครงข่ายประสาทเทียมที่มีอินพุต เลเยอร์ซ่อน และเอาต์พุต

Deep Learning เบื้องต้นด้วย PyTorch

โครงข่ายประสาทเทียมแรกของเรา

ไดอะแกรมแสดงโครงข่ายประสาทเทียมพื้นฐานที่มีเฉพาะอินพุตและเอาต์พุต

  • โครงข่ายแบบ fully connected
  • เทียบเท่ากับโมเดลเชิงเส้น
Deep Learning เบื้องต้นด้วย PyTorch

การออกแบบโครงข่ายประสาทเทียม

โหนด 3 โหนดแทนอินพุตของโครงข่ายประสาทเทียม

# 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

การออกแบบโครงข่ายประสาทเทียม

โหนด 3 โหนดแทนอินพุตของโครงข่ายประสาทเทียมพร้อมลูกศรชี้ไปข้างหน้าแทน linear layer

# 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

โครงข่ายแบบ fully connected ในทางปฏิบัติ

ไดอะแกรมแสดงโครงข่ายประสาทเทียมพื้นฐานที่มีเฉพาะอินพุตและเอาต์พุต

Deep Learning เบื้องต้นด้วย PyTorch

โครงข่ายแบบ fully connected ในทางปฏิบัติ

ไดอะแกรมแสดงโครงข่ายประสาทเทียมพื้นฐานที่มีเฉพาะอินพุตและเอาต์พุต

Deep Learning เบื้องต้นด้วย PyTorch

โครงข่ายแบบ fully connected ในทางปฏิบัติ

ไดอะแกรมแสดงโครงข่ายประสาทเทียมพื้นฐานที่มีเฉพาะอินพุตและเอาต์พุต

  • ฟีเจอร์ความชื้นจะมี weight สูงกว่า
  • Bias ใช้รองรับข้อมูลพื้นฐาน
Deep Learning เบื้องต้นด้วย PyTorch

มาฝึกกันเถอะ!

Deep Learning เบื้องต้นด้วย PyTorch

Preparing Video For Download...