Peraturan Penyiaran yang Menjimatkan Gelung
Gabungkan tensor yang berlainan bentuk secara unsur demi unsur.
Peraturan Penyiaran yang Menjimatkan Gelung ialah pelajaran Deep Learning Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Deep Learning Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Deep Learning Academy merangkumi sejumlah 4 pelajaran.
Gabungkan Tanpa Memadankan Bentuk
Penyiaran membolehkan PyTorch meregangkan tensor yang lebih kecil agar sepadan dengan tensor yang lebih besar, jadi Anda tidak perlu menulis gelung untuk mengulangi nilai.
Tambah Skalar pada Segalanya
Penyiaran yang paling mudah: tambah satu nombor pada seluruh tensor. PyTorch menerapkannya pada setiap elemen serentak. ✨
x = torch.tensor([1, 2, 3])
print(x + 10) # tensor([11, 12, 13])Bandingkan Bentuk dari Kanan ke Kiri
Penyiaran menjajarkan dimensi bermula dari kanan. Kemudian, ia menyemak setiap pasangan untuk menentukan sama ada pasangan itu boleh digabungkan.
Peraturan Satu: Saiz Sama Sepadan
Dua dimensi serasi apabila nilainya sama. Saiz yang sepadan dijajarkan satu demi satu tanpa memerlukan regangan.
Peraturan Dua: Saiz 1 Meregang
Jika satu dimensi ialah 1, dimensi itu berkembang agar sepadan dengan dimensi yang satu lagi. Nilai tunggal itu digunakan semula pada seluruh paksi.
a = torch.tensor([[1], [2], [3]])
b = torch.tensor([10, 20])
print((a + b).shape) # torch.Size([3, 2])Dimensi yang Hilang Dikira sebagai 1
Apabila satu tensor mempunyai dimensi yang lebih sedikit, PyTorch menambah ones pada bahagian hadapan. Dengan cara ini, vektor boleh disiarkan terhadap matriks.
m = torch.ones(2, 3)
v = torch.tensor([1, 2, 3])
print((m + v).shape) # torch.Size([2, 3])Tambah Bias Merentasi Baris
Kegunaan klasik: tambahkan bias baris pada setiap sampel dalam kelompok. Satu vektor kecil mencapai setiap baris tanpa kos tambahan.
batch = torch.zeros(4, 3)
bias = torch.tensor([1.0, 2.0, 3.0])
print((batch + bias).shape) # torch.Size([4, 3])Normalkan Lajur Sekaligus
Tolak min bagi setiap lajur dengan penyiaran dan pusatkan data Anda dalam satu baris, tanpa memerlukan gelung merentasi baris.
x = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
m = x.mean(dim=0)
print(x - m)Apabila Bentuk Tidak Boleh Disiarkan
Jika dua dimensi berbeza dan kedua-duanya bukan 1, penyiaran gagal dan PyTorch menghasilkan ralat saiz yang jelas.
Tambah Dimensi untuk Mengarahkan Penyiaran
Gunakan unsqueeze untuk menyisipkan paksi bersaiz 1 tepat pada tempat yang diperlukan. Ini mengarahkan penyiaran kepada bentuk yang Anda inginkan.
col = torch.tensor([1, 2, 3]).unsqueeze(1)
print(col.shape) # torch.Size([3, 1])Mengapa Penyiaran Pantas
Penyiaran tidak pernah menyalin nilai yang diregangkan; ia menggunakannya semula. Oleh itu, pengiraan tervektor jauh lebih pantas berbanding gelung Python. 🚀
Semakan Pantas
Bolehkah Anda meramalkan sama ada dua bentuk boleh disiarkan?
Ringkasan: Peraturan Penyiaran
Anda telah mempelajari dua peraturan: dimensi sepadan apabila sama atau apabila salah satunya ialah 1. Kuasai perkara ini dan gelung akan bertukar menjadi pengiraan tensor yang kemas serta pantas. 💪
Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Soalan Lazim
Adakah pelajaran “Peraturan Penyiaran yang Menjimatkan Gelung” percuma?
Ya — teks penuh “Peraturan Penyiaran yang Menjimatkan Gelung” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Deep Learning Academy, tingkat taraf kepada CoddyKit PRO. Kursus Deep Learning Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Peraturan Penyiaran yang Menjimatkan Gelung”?
Gabungkan tensor yang berlainan bentuk secara unsur demi unsur. Anda berlatih Deep Learning Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Deep Learning Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Deep Learning Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.
Berapa lamakah pelajaran “Peraturan Penyiaran yang Menjimatkan Gelung” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Deep Learning Academy ini?
Ya. Setiap pelajaran Deep Learning Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Bentuk, Jenis Data dan Pengindeksan
- Ubah Bentuk, Paparan, Squeeze dan Unsqueeze
- Peraturan Penyiaran yang Menjimatkan Gelung
- Tensor Berhubung dengan NumPy