Mulai sekarangMulai gratis

Bekukan layer pada sebuah model

Anda akan melakukan fine-tuning sebuah model pada tugas baru setelah memuat bobot pra-latih. Model ini berisi tiga layer linear. Namun, karena himpunan data Anda kecil, Anda hanya ingin melatih layer linear terakhir dari model ini dan membekukan dua layer linear pertama.

Model telah dibuat dan disimpan dalam variabel model. Anda akan menggunakan metode named_parameters dari model untuk mencantumkan parameter-parameter model. Setiap parameter dideskripsikan oleh sebuah nama. Nama ini berupa string dengan konvensi penamaan berikut: x.name di mana x adalah indeks layer.

Ingat bahwa sebuah layer linear memiliki dua parameter: weight dan bias.

Latihan ini merupakan bagian dari kursus

Pengantar Deep Learning dengan PyTorch

Lihat Kursus

Instruksi latihan

  • Gunakan pernyataan if untuk memeriksa apakah suatu parameter adalah weight dari layer pertama atau kedua.
  • Bekukan weight dari dua layer pertama model ini.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

for name, param in model.named_parameters():
  
    # Check for first layer's weight
    if name == '____':
   
        # Freeze this weight
        param.____ = ____
        
    # Check for second layer's weight
    if name == '____':
      
        # Freeze this weight
        param.____ = ____
Edit dan Jalankan Kode