เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

สร้าง Generator และ Discriminator

ที่ PyBooks คุณได้รับมอบหมายให้พัฒนาระบบสร้างข้อความอัตโนมัติ เพื่อช่วยให้นักเขียนผ่านพ้นช่วงที่ไม่มีแรงบันดาลใจในการเขียน โดยใช้ GAN หรือ Generative Adversarial Networks เพื่อสร้างระบบที่ประกอบด้วยโครงข่ายสองส่วน ได้แก่ generator ที่สร้างข้อความใหม่ และ discriminator ที่ประเมินความน่าเชื่อถือของข้อความนั้น ขั้นแรกต้องกำหนดค่าเริ่มต้นให้ทั้ง generator และ discriminator จากนั้นโครงข่ายทั้งสองจะถูกฝึกสอนแข่งขันกัน เพื่อสร้างข้อความใหม่ที่ดูสมจริง

มีการนำเข้าสิ่งต่อไปนี้ให้แล้ว: torch, torch.nn as nn.

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Deep Learning สำหรับข้อความด้วย PyTorch

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดคลาส Generator โดยใช้ linear layer สำหรับข้อมูลแบบลำดับต่อเนื่อง และฟังก์ชัน activation แบบ sigmoid
  • ส่ง input ผ่านโมเดลที่กำหนดไว้ในเมธอด forward() ของคลาส Generator
  • กำหนดคลาส Discriminator โดยใช้เลเยอร์และฟังก์ชัน activation แบบเดียวกัน โดยให้ความสำคัญกับการกำหนดขนาดมิติให้ถูกต้อง

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Define the generator class
class Generator(nn.Module):
    def __init__(self):
        super().__init__()
        self.model = nn.____(nn.____(____), nn.____())
    def forward(self, x):
        return self.____(x)

# Define the discriminator networks
class Discriminator(nn.Module):
    def __init__(self):
        super().__init__()
        self.model = nn.____(nn.____(____), nn.____())
    def forward(self, x):
        return self.model(x)
แก้ไขและรันโค้ด