2024-07-11
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Cuplikan kode ini menunjukkan cara menginisialisasi bobot jaringan saraf menggunakan PyTorch, menggunakan distribusi normal terpotong. Distribusi normal terpotong berarti nilai yang dihasilkan terpotong dalam suatu rentang untuk mencegah nilai ekstrim.digunakan di sinitorch.fmod
Sebagai solusi untuk mencapai efek ini.
Distribusi normal terpotong merupakan modifikasi dari distribusi normal yang memastikan bahwa nilai yang dihasilkan berada dalam rentang tertentu. Secara khusus,torch.fmod
Fungsi ini mengembalikan sisa tensor masukan dibagi 2 (yaitu, nilai yang dihasilkan antara -2 dan 2).
Dalam kode tersebut, keempat tensor bobot dihitung berdasarkan deviasi standar yang berbeda (init_sd_first
, init_sd_middle
, init_sd_last
) dihasilkan dari distribusi normal terpotong. Dimensi spesifiknya adalah:
(x_dim, width n_double)
(width, width n_double)
(width, 1)
Tensor bobot ini dihasilkan sebagai berikut:
initial_weights = [
torch.fmod(torch.normal(0, init_sd_first, size=(x_dim, width n_double)), 2),
torch.fmod(torch.normal(0, init_sd_middle, size=(width, width n_double)), 2),
torch.fmod(torch.normal(0, init_sd_middle, size=(width, width n_double)), 2),
torch.fmod(torch.normal(0, init_sd_last, size=(width, 1)), 2)
]