Normalisasi Batch: Pelaksanaan Teori dan Tensorflow
Latihan rangkaian saraf yang mendalam sering menghadapi halangan seperti kecerunan lenyap/meletup dan peralihan kovariat dalaman, melambatkan latihan dan menghalang pembelajaran. Teknik normalisasi menawarkan penyelesaian, dengan normalisasi batch (BN) yang sangat menonjol. BN mempercepatkan penumpuan, meningkatkan kestabilan, dan meningkatkan penyebaran dalam banyak seni bina pembelajaran mendalam. Tutorial ini menerangkan mekanik BN, asas matematiknya, dan pelaksanaan Tensorflow/Keras.
Normalisasi dalam pembelajaran mesin menyeragamkan data input, menggunakan kaedah seperti skala min-max, normalisasi z-skor, dan transformasi log kepada ciri-ciri rescale. Ini mengurangkan kesan luar, meningkatkan penumpuan, dan memastikan perbandingan ciri yang adil. Data yang dinormalisasi memastikan sumbangan ciri yang sama kepada proses pembelajaran, mencegah ciri-ciri skala yang lebih besar daripada mendominasi dan membawa kepada prestasi model suboptimal. Ia membolehkan model mengenal pasti corak yang bermakna dengan lebih berkesan.
Cabaran Latihan Pembelajaran Deep termasuk:
- Perubahan kovariat dalaman: perubahan pengedaran pengaktifan merentasi lapisan semasa latihan, menghalang penyesuaian dan pembelajaran.
- kecerunan lenyap/meletup: kecerunan menjadi terlalu kecil atau besar semasa backpropagation, menghalang kemas kini berat badan yang berkesan.
- Sensitiviti Inisialisasi: Berat awal mempengaruhi latihan; Inisialisasi yang lemah boleh menyebabkan penumpuan perlahan atau gagal.
normalisasi batch menangani ini dengan menormalkan pengaktifan dalam setiap batch mini, menstabilkan latihan dan meningkatkan prestasi model.
Normalisasi batch menormalkan pengaktifan lapisan dalam batch mini semasa latihan. Ia mengira min dan varians pengaktifan untuk setiap ciri, kemudian menormalkan menggunakan statistik ini. Skala parameter yang boleh dipelajari (γ dan β) dan mengalihkan pengaktifan yang dinormalisasi, yang membolehkan model mempelajari pengedaran pengaktifan optimum.
Bn biasanya digunakan selepas transformasi linear lapisan (mis., Multiplikasi matriks dalam lapisan yang disambungkan sepenuhnya atau konvolusi dalam lapisan konvolusi) dan sebelum fungsi pengaktifan bukan linear (mis., Relu). Komponen utama adalah statistik batch mini (min dan varians), normalisasi, dan skala/beralih dengan parameter yang boleh dipelajari.
BN menangani peralihan kovariat dalaman dengan menormalkan pengaktifan dalam setiap batch mini, membuat input ke lapisan berikutnya lebih stabil. Ini membolehkan penumpuan lebih cepat dengan kadar pembelajaran yang lebih tinggi dan mengurangkan kepekaan inisialisasi. Ia juga menghidupkan, mencegah overfitting dengan mengurangkan pergantungan pada corak pengaktifan tertentu.
Matematik normalisasi batch:
BN beroperasi secara berbeza semasa latihan dan kesimpulan.
Latihan:
- normalisasi: min (μ b ) dan varians (σ b 2 ) dikira untuk setiap ciri dalam mini-batch:
) dinormalisasi:
(ε adalah pemalar kecil untuk kestabilan berangka).
Pertimbangan pelaksanaan:
saiz batch: saiz batch kecil: statistik kelompok yang kurang dipercayai. Kesimpulan: Normalisasi batch adalah teknik yang kuat meningkatkan latihan rangkaian saraf yang mendalam. Ingat manfaat, butiran pelaksanaan, dan batasannya, dan pertimbangkan variannya untuk prestasi optimum dalam projek anda.
pengaktifan (x
parameter yang boleh dipelajari γ dan skala β dan peralihan:
statistik batch digantikan dengan statistik berjalan (berjalan min dan varians) yang dikira semasa latihan menggunakan purata bergerak (faktor momentum α):
3 statistik batch:
Statistik berjalan dan γ dan β yang dipelajari digunakan untuk normalisasi semasa kesimpulan. Pelaksanaan TensorFlow:
import tensorflow as tf
from tensorflow import keras
# Load and preprocess MNIST data (as described in the original text)
# ...
# Define the model architecture
model = keras.Sequential([
keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),
keras.layers.BatchNormalization(),
keras.layers.Conv2D(64, (3, 3), activation='relu'),
keras.layers.BatchNormalization(),
keras.layers.MaxPooling2D((2, 2)),
keras.layers.Flatten(),
keras.layers.Dense(128, activation='relu'),
keras.layers.BatchNormalization(),
keras.layers.Dense(10, activation='softmax')
])
# Compile and train the model (as described in the original text)
# ...
Atas ialah kandungan terperinci Normalisasi Batch: Pelaksanaan Teori dan Tensorflow. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Artikel ini mengkaji semula penjana seni AI atas, membincangkan ciri -ciri mereka, kesesuaian untuk projek kreatif, dan nilai. Ia menyerlahkan Midjourney sebagai nilai terbaik untuk profesional dan mengesyorkan Dall-E 2 untuk seni berkualiti tinggi dan disesuaikan.

Meta's Llama 3.2: Lompat ke hadapan dalam Multimodal dan Mobile AI META baru -baru ini melancarkan Llama 3.2, kemajuan yang ketara dalam AI yang memaparkan keupayaan penglihatan yang kuat dan model teks ringan yang dioptimumkan untuk peranti mudah alih. Membina kejayaan o

Artikel ini membandingkan chatbots AI seperti Chatgpt, Gemini, dan Claude, yang memberi tumpuan kepada ciri -ciri unik mereka, pilihan penyesuaian, dan prestasi dalam pemprosesan bahasa semula jadi dan kebolehpercayaan.

Hei ada, pengekodan ninja! Apa tugas yang berkaitan dengan pengekodan yang anda telah merancang untuk hari itu? Sebelum anda menyelam lebih jauh ke dalam blog ini, saya ingin anda memikirkan semua kesengsaraan yang berkaitan dengan pengekodan anda-lebih jauh menyenaraikan mereka. Selesai? - Let ’

Artikel ini membincangkan pembantu penulisan AI terkemuka seperti Grammarly, Jasper, Copy.ai, WriteSonic, dan Rytr, yang memberi tumpuan kepada ciri -ciri unik mereka untuk penciptaan kandungan. Ia berpendapat bahawa Jasper cemerlang dalam pengoptimuman SEO, sementara alat AI membantu mengekalkan nada terdiri

Landskap AI minggu ini: Badai kemajuan, pertimbangan etika, dan perdebatan pengawalseliaan. Pemain utama seperti Openai, Google, Meta, dan Microsoft telah melepaskan kemas kini, dari model baru yang terobosan ke peralihan penting di LE

Memo CEO Shopify Tobi Lütke baru -baru ini dengan berani mengisytiharkan penguasaan AI sebagai harapan asas bagi setiap pekerja, menandakan peralihan budaya yang signifikan dalam syarikat. Ini bukan trend seketika; Ini adalah paradigma operasi baru yang disatukan ke p

Artikel ini mengulas penjana suara AI atas seperti Google Cloud, Amazon Polly, Microsoft Azure, IBM Watson, dan Descript, memberi tumpuan kepada ciri -ciri mereka, kualiti suara, dan kesesuaian untuk keperluan yang berbeza.
