สถาปัตยกรรมโมเดลที่มีสองเอาต์พุต
ในแบบฝึกหัดนี้ คุณจะสร้างสถาปัตยกรรมโครงข่ายประสาทเทียมแบบ multi-output ที่สามารถพยากรณ์ตัวอักษร (character) และชุดตัวอักษร (alphabet) ได้พร้อมกัน
ทบทวนโครงสร้างทั่วไป: ในเมธอด .__init__() ให้กำหนดเลเยอร์ที่จะใช้ใน forward pass จากนั้นในเมธอด forward() ให้ส่งภาพอินพุตผ่านเลเยอร์ต่าง ๆ เพื่อให้ได้ embedding แล้วนำ embedding นั้นไปป้อนเข้า classifier แยกกันสองชั้น ชั้นละหนึ่งเอาต์พุต
torch.nn ถูก import ไว้แล้วภายใต้ alias ปกติ มาเริ่มสร้างโมเดลกันเลย!
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Deep Learning ระดับกลางด้วย PyTorch
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
class Net(nn.Module):
def __init__(self):
super().__init__()
self.image_layer = nn.Sequential(
nn.Conv2d(1, 16, kernel_size=3, padding=1),
nn.MaxPool2d(kernel_size=2),
nn.ELU(),
nn.Flatten(),
nn.Linear(16*32*32, 128)
)
# Define the two classifier layers
____ = ____
____ = ____