Panduan untuk Pembelajaran Mendalam CNN

Diterbitkan: 2022-10-14

Kemampuan kecerdasan buatan untuk menutup kesenjangan antara keterampilan manusia dan mesin telah meningkat secara dramatis. Baik profesional maupun amatir fokus pada banyak aspek lapangan untuk mencapai hasil yang luar biasa. Bidang visi komputer adalah salah satu dari beberapa disiplin ilmu tersebut.

Daftar isi

Program AI & ML kami di AS

Master of Science dalam Pembelajaran Mesin & AI dari LJMU dan IIITB Program PG Eksekutif dalam Pembelajaran Mesin & Kecerdasan Buatan dari IIITB
Untuk Jelajahi semua kursus kami, kunjungi halaman kami di bawah ini.
Kursus Pembelajaran Mesin

Bidang ini bertujuan untuk memberikan komputer kemampuan untuk melihat dan memahami dunia seperti manusia dan menggunakan pemahaman ini untuk berbagai tugas, termasuk pengenalan gambar dan video, analisis dan kategorisasi gambar, rekreasi media, sistem rekomendasi, pemrosesan bahasa alami, dll. Convolutional Neural Network adalah algoritma utama yang digunakan untuk mengembangkan dan menyempurnakan peningkatan pembelajaran mendalam dalam visi komputer dari waktu ke waktu. Mari cari tahu lebih lanjut tentang algoritma pembelajaran mendalam!

Dapatkan Sertifikasi Machine Learning dari Universitas top dunia. Dapatkan Master, PGP Eksekutif, atau Program Sertifikat Tingkat Lanjut untuk mempercepat karier Anda.

Apa itu Jaringan Saraf Konvolusi?

Convolutional Neural Network atau CNN adalah metode pembelajaran mendalam yang dapat mengambil gambar input, memberikan berbagai elemen dan objek dalam kepentingan gambar, seperti bobot dan bias yang dapat dipelajari, dan membedakannya. Secara komparatif, CNN membutuhkan pra-pemrosesan yang jauh lebih sedikit daripada teknik klasifikasi lainnya. CNN memiliki kapasitas untuk mempelajari filter dan properti ini, sedangkan, dalam teknik primitif, filter dibuat dengan tangan.

Arsitektur CNN dipengaruhi oleh bagaimana Korteks Visual diatur dan menyerupai jaringan konektivitas neuron di otak manusia. Neuron individu bereaksi terhadap rangsangan hanya di area bidang visual terbatas ini, yang dikenal sebagai Bidang Reseptif. Serangkaian tumpang tindih tersebut menutupi seluruh bidang visual.

Arsitektur Jaringan Saraf Konvolusi

Arsitektur jaringan saraf convolutional berbeda dari jaringan saraf konvensional. Jaringan saraf biasa mengubah input, melewatinya melalui beberapa lapisan tersembunyi. Setiap lapisan terdiri dari sekumpulan neuron yang terhubung dengan semua neuron pada lapisan di bawahnya. Lapisan keluaran terakhir yang terhubung penuh adalah tempat prediksi direpresentasikan.

Jaringan saraf convolutional terstruktur sedikit berbeda. Lapisan pertama disusun dalam tiga dimensi: lebar, tinggi, dan kedalaman. Selain itu, hanya sebagian neuron di lapisan berikut yang terhubung dengan neuron di lapisan di bawahnya. Output tersebut kemudian akan diringkas menjadi satu vektor skor probabilitas dan dikelompokkan bersama dengan lapisan konvolusi.

CNN terdiri dari dua bagian:

Ekstraksi fitur dari lapisan tersembunyi

Jaringan akan melakukan serangkaian operasi convolutional dan pooling di bagian ini untuk mendeteksi fitur. Di sinilah jaringan akan mengidentifikasi garis-garis harimau, dua telinga, dan empat kaki jika Anda memiliki gambar satu.

Klasifikasi Bagian

Di atas fitur yang diambil ini, lapisan konvolusi akan berfungsi sebagai pengklasifikasi dalam kasus ini. Mereka akan memberikan kemungkinan bahwa objek gambar cocok dengan prediksi algoritme.

Ekstraksi fitur

Salah satu komponen kunci CNN adalah konvolusi. Penggabungan matematis dua fungsi untuk menghasilkan fungsi ketiga disebut konvolusi. Ini menggabungkan dua set data. Peta fitur dibuat dengan melakukan konvolusi pada data input dalam kasus CNN menggunakan filter atau kernel. Konvolusi dilakukan dengan menggerakkan filter di atas input. Setiap lokasi melakukan perkalian matriks dan menjumlahkan output ke peta fitur.

Kami melakukan beberapa konvolusi pada input, menggunakan filter yang berbeda untuk setiap operasi. Akibatnya, berbagai peta fitur diproduksi. Output dari lapisan konvolusi pada akhirnya dirakit menggunakan semua peta fitur ini.

Seperti setiap jaringan saraf lainnya, kami menggunakan proses aktivasi untuk membuat output kami non-linear, di mana fungsi aktivasi digunakan untuk mengirim output dari konvolusi dalam jaringan saraf convolutional.

Jenis Jaringan Saraf Konvolusi

Lapisan Konvolusi:

Komponen dasar CNN adalah lapisan konvolusi. Ini membawa sebagian besar beban komputasi pada jaringan. Lapisan ini membuat produk titik antara dua matriks, salah satunya adalah kernel, kumpulan parameter yang dapat dipelajari, dan yang lainnya adalah area terbatas dari bidang reseptif. Dibandingkan dengan gambar, kernel lebih kecil dalam ruang tetapi lebih dalam. Hal ini menunjukkan bahwa lebar dan tinggi kerne akan menjadi kecil secara spasial jika citra terdiri dari tiga saluran; meskipun, kedalaman akan naik ke ketiga saluran.

Kernel bergerak melintasi tinggi dan lebar gambar selama umpan maju, menciptakan representasi gambar dari wilayah reseptif itu. Akibatnya, representasi dua dimensi dari gambar yang disebut peta aktivasi dibuat, mengungkapkan respons kernel di setiap lokasi dalam gambar. Sebuah langkah adalah nama untuk ukuran kernel yang dapat digeser.

Lapisan Pengumpulan:

Lapisan ini hanya mengurangi daya komputasi yang dibutuhkan untuk memproses data. Hal ini dicapai dengan lebih lanjut mengurangi dimensi matriks yang disorot. Kami mencoba mengekstrak fitur yang mendominasi dari sebagian kecil lingkungan di lapisan ini.

Average-pooling dan Max-pooling adalah dua jenis strategi pooling yang berbeda.

Berbeda dengan Max-pooling, yang hanya mengambil nilai tertinggi di antara semua yang ada di dalam pooling region, Average-pooling rata-rata semua nilai dalam pooling region.

Kami sekarang memiliki matriks dengan elemen kunci gambar setelah menyatukan lapisan, dan matriks ini memiliki dimensi yang lebih kecil, yang akan sangat membantu pada tahap berikutnya.

Lapisan Terhubung Sepenuhnya:

Metode murah untuk mempelajari permutasi non-linier dari karakteristik tingkat tinggi yang disediakan oleh output dari lapisan konvolusi adalah dengan menambahkan lapisan yang Terhubung Sepenuhnya. Di area itu, lapisan Fully-Connected sekarang mempelajari fungsi yang mungkin tidak linier.

Setelah mengonversinya ke format yang sesuai untuk perceptron multi-level kami, kami akan meratakan gambar input menjadi vektor kolom. Sebuah jaringan saraf feed-forward menerima output yang diratakan, dan backpropagation digunakan untuk setiap iterasi pelatihan. Model dapat mengkategorikan gambar menggunakan metode Klasifikasi Softmax dengan mengidentifikasi fitur tingkat rendah yang dominan dan spesifik di banyak zaman.

Lapisan Non-Linearitas:

Lapisan non-linier sering dimasukkan tepat setelah lapisan konvolusi untuk menambahkan non-linier ke peta aktivasi karena konvolusi adalah operasi linier, dan gambar sama sekali tidak linier.

Operasi non-linier datang dalam berbagai bentuk, yang paling umum adalah:

Sigmoid

Rumus matematika untuk non-linier sigmoid adalah () = 1/(1+e ). Ini menghancurkan bilangan real-nilai ke dalam kisaran antara 0 dan 1. Gradien sigmoid menjadi hampir nol ketika aktivasi baik di ekor, yang merupakan fitur sigmoid yang sangat tidak menguntungkan. Backpropagation secara efektif akan membunuh gradien jika gradien lokal menjadi terlalu kecil. Selain itu, misalkan input ke neuron secara eksklusif positif. Dalam hal ini, output sigmoid akan secara eksklusif positif atau negatif secara eksklusif, yang mengarah ke dinamika zigzag dari pembaruan gradien untuk bobot.

Tanho

Tanh memadatkan bilangan bernilai nyata ke kisaran [-1, 1]. Seperti neuron sigmoid, aktivasi jenuh, tetapi tidak seperti mereka, outputnya berpusat pada nol.

ReLU

Rectified Linear Unit (ReLU) baru-baru ini mendapatkan banyak popularitas. Ia melakukan fungsi ()=max (0,) perhitungan. Dengan kata lain, aktivasi hanya ada di ambang nol. ReLU mempercepat konvergensi sebanyak enam kali dan lebih dapat diandalkan daripada sigmoid dan tanh.

Sayangnya, ReLU bisa rapuh selama pelatihan, yang merupakan kelemahannya. Gradien yang kuat dapat memperbaruinya dengan mencegah neuron memperbarui lebih lanjut. Namun, kita dapat membuat ini berhasil dengan memilih tingkat pembelajaran yang sesuai.

Blog Pembelajaran Mesin dan Kecerdasan Buatan Populer

IoT: Sejarah, Sekarang & Masa Depan Tutorial Pembelajaran Mesin: Belajar ML Apa itu Algoritma? Sederhana & Mudah
Gaji Insinyur Robotika di India : Semua Peran Sehari dalam Kehidupan Seorang Insinyur Pembelajaran Mesin: Apa yang mereka lakukan? Apa itu IoT (Internet of Things)
Permutasi vs Kombinasi: Perbedaan antara Permutasi dan Kombinasi 7 Tren Teratas dalam Kecerdasan Buatan & Pembelajaran Mesin Pembelajaran Mesin dengan R: Semua yang Perlu Anda Ketahui

Mulailah panduan Anda ke CNN Deep Learning dengan UpGrad

Mendaftar untuk Magister Sains dalam Pembelajaran Mesin dan Kecerdasan Buatan di UpGrad bekerja sama dengan LJMU.

Program sertifikat mempersiapkan siswa untuk peran teknis saat ini dan prospektif dengan menyediakan topik yang relevan dengan industri. Proyek nyata, beberapa studi kasus, dan akademisi internasional yang ditawarkan oleh para ahli materi pelajaran juga sangat ditekankan dalam program ini.

Dengan mendaftar, Anda dapat memanfaatkan fitur eksklusif UpGrad, seperti pemantauan jaringan, sesi belajar, dan dukungan pembelajaran 360 derajat.

Apa algoritma pembelajaran mendalam CNN?

Cara CNN beroperasi adalah untuk mendapatkan gambar, menetapkan bobot tergantung pada berbagai item dalam gambar, dan kemudian memisahkannya satu sama lain. Dibandingkan dengan algoritma pembelajaran mendalam lainnya, CNN membutuhkan sangat sedikit pra-pemrosesan data.

Apa yang membedakan CNN dari pembelajaran mendalam?

Pembelajaran mendalam lebih sering digunakan dalam pemasaran agar terdengar lebih profesional daripada yang sebenarnya. Ada banyak jenis jaringan saraf dalam, termasuk CNN. CNN sangat disukai karena banyak kegunaannya yang menguntungkan dalam identifikasi gambar.

Mengapa CNN lebih unggul daripada terhubung sepenuhnya?

Konvolusi tidak memiliki koneksi yang padat, dan tidak semua node input berdampak pada setiap node output. Berkat ini, lapisan convolutional sekarang dapat belajar dengan lebih fleksibel. Selain itu, bobot per lapisan lebih sedikit, yang menguntungkan input berdimensi tinggi seperti data gambar.

Apakah CNN hanya digunakan untuk gambar?

Ya. Setiap array data 2D dan 3D dapat diproses menggunakan CNN.