Senin, 18 Januari 2021

Mengapa Deep Learning?

Ini pertanyaan yang sering dipertanyakan. Tidak ada kekurangan dalam algoritme machine learning, jadi mengapa seorang data scientist harus tertarik pada algoritme Deep Learning? Apa yang ditawarkan jaringan neural yang tidak ditawarkan oleh algoritme pembelajaran mesin tradisional?

Pertanyaan umum lainnya yang saya lihat beredar - jaringan neural memerlukan banyak daya komputasi, jadi apakah benar-benar layak untuk digunakan? Sementara pertanyaan itu dipenuhi dengan nuansa, inilah jawaban singkatnya - ya!

Berbagai jenis jaringan saraf dalam Deep Learning , seperti Convolutional Neural Network (CNN), recurrent neural network (RNN), artificial neural network (ANN), dll. Mengubah cara kita berinteraksi dengan dunia. Berbagai jenis jaringan saraf ini merupakan inti dari revolusi pembelajaran mendalam, yang memberdayakan aplikasi seperti kendaraan udara tak berawak, mobil yang dapat mengemudi sendiri, pengenalan suara, dll.

jenis jaringan saraf

Wajar untuk bertanya-tanya - tidak bisakah algoritma machine learning melakukan hal yang sama? Nah, berikut adalah dua alasan utama mengapa peneliti dan pakar cenderung lebih memilih Pembelajaran Mendalam daripada Pembelajaran Mesin:

  • Batas Keputusan
  • Rekayasa Fitur

Ingin tahu? Bagus - biar saya jelaskan.

 

1. Pembelajaran Mesin vs. Pembelajaran Mendalam: Batasan Keputusan

Setiap algoritme Pembelajaran Mesin mempelajari pemetaan dari input ke output. Dalam kasus model parametrik, algoritme mempelajari fungsi dengan beberapa set bobot:

        Masukan -> f (w 1 , w 2 … ..w n ) -> Output

Dalam kasus masalah klasifikasi, algoritme mempelajari fungsi yang memisahkan 2 kelas - ini dikenal sebagai batas Keputusan . Batas keputusan membantu kita dalam menentukan apakah titik data tertentu termasuk dalam kelas positif atau kelas negatif.

Misalnya, dalam kasus regresi logistik , fungsi pembelajaran adalah fungsi sigmoid yang mencoba memisahkan 2 kelas:

regresi logistik

Batas keputusan regresi logistik

Seperti yang Anda lihat di sini, algoritme regresi logistik mempelajari batas keputusan linier. Itu tidak dapat mempelajari batasan keputusan untuk data nonlinier seperti ini:

non linier

Data nonlinier

Demikian pula, setiap algoritma Pembelajaran Mesin tidak mampu mempelajari semua fungsi. Ini membatasi masalah yang dapat diselesaikan algoritme ini yang melibatkan hubungan yang kompleks.

 

2. Pembelajaran Mesin vs. Pembelajaran Mendalam: Rekayasa Fitur

Rekayasa fitur adalah langkah kunci dalam proses pembuatan model. Ini adalah proses dua langkah:

  1. Ekstraksi fitur
  2. Pemilihan fitur

Dalam ekstraksi fitur, kami mengekstrak semua fitur yang diperlukan untuk pernyataan masalah kami dan dalam pemilihan fitur, kami memilih fitur penting yang meningkatkan kinerja model pembelajaran mesin atau pembelajaran mendalam kami .

Pertimbangkan masalah klasifikasi gambar . Mengekstrak fitur secara manual dari suatu gambar membutuhkan pengetahuan yang kuat tentang subjek serta domainnya. Ini adalah proses yang sangat memakan waktu. Berkat Deep Learning, kami dapat mengotomatiskan proses Rekayasa Fitur!

rekayasa fitur pembelajaran mendalam

Perbandingan antara Machine Learning & Deep Learning

Sekarang setelah kita memahami pentingnya pembelajaran mendalam dan mengapa ini melampaui algoritme pembelajaran mesin tradisional, mari masuk ke inti artikel ini. Kami akan membahas berbagai jenis jaringan saraf yang akan Anda gunakan untuk memecahkan masalah pembelajaran yang mendalam.

Jika Anda baru saja memulai Machine Learning dan Deep Learning, berikut adalah kursus untuk membantu Anda dalam perjalanan Anda:

Berbagai jenis Jaringan Neural dalam Pembelajaran Mendalam

Artikel ini berfokus pada tiga jenis jaringan neural penting yang menjadi dasar untuk sebagian besar model terlatih dalam pembelajaran mendalam:

  • Jaringan Syaraf Tiruan (JST)
  • Convolution Neural Networks (CNN)
  • Jaringan Neural Berulang (RNN)

Mari kita bahas setiap jaringan saraf secara mendetail.

 

Jaringan Syaraf Tiruan (JST) - Apa itu JST dan mengapa Anda harus menggunakannya?

Sebuah perceptron (atau neuron) dapat dibayangkan sebagai Regresi Logistik. Jaringan Syaraf Tiruan, atau JST, adalah sekelompok beberapa perceptron / neuron di setiap lapisan. ANN juga dikenal sebagai jaringan Neural Feed-Forward karena input hanya diproses ke arah depan:

Jaringan Neural

ANN

Seperti yang Anda lihat di sini, ANN terdiri dari 3 lapisan - Input, Hidden dan Output. Lapisan masukan menerima masukan, lapisan tersembunyi memproses masukan, dan lapisan keluaran menghasilkan hasilnya. Pada dasarnya, setiap lapisan mencoba mempelajari bobot tertentu.

Jika Anda ingin menjelajahi lebih lanjut tentang cara kerja ANN, saya sarankan untuk membaca artikel di bawah ini:

ANN dapat digunakan untuk menyelesaikan masalah yang berkaitan dengan:

  • Data tabel
  • Data gambar
  • Data teks

 

Keuntungan Jaringan Saraf Tiruan (JST)

Jaringan Syaraf Tiruan mampu mempelajari fungsi nonlinier apa pun. Oleh karena itu, jaringan ini dikenal sebagai Pengukur Fungsi Universal . JST memiliki kapasitas untuk mempelajari bobot yang memetakan masukan apa pun ke keluaran.

Salah satu alasan utama di balik pendekatan universal adalah fungsi aktivasi . Fungsi aktivasi memperkenalkan properti nonlinier ke jaringan. Ini membantu jaringan mempelajari hubungan kompleks apa pun antara masukan dan keluaran.

Umpan maju Neural Network

Perceptron

Seperti yang Anda lihat di sini, keluaran di setiap neuron adalah aktivasi sejumlah masukan yang berbobot. Tapi tunggu - apa yang terjadi jika tidak ada fungsi aktivasi? Jaringan hanya mempelajari fungsi linier dan tidak pernah dapat mempelajari hubungan yang kompleks. Itu sebabnya:

Fungsi aktivasi adalah pembangkit tenaga listrik ANN!

 

Tantangan dengan Artificial Neural Network (ANN)

  • Saat menyelesaikan masalah klasifikasi gambar menggunakan JST, langkah pertama adalah mengonversi gambar 2 dimensi menjadi vektor 1 dimensi sebelum melatih model. Ini memiliki dua kelemahan:
    • Jumlah parameter yang dapat dilatih meningkat secara drastis dengan peningkatan ukuran gambar

Klasifikasi gambar MLP

ANN: Klasifikasi gambar

                   Pada skenario di atas, jika ukuran citra 224 * 224, maka jumlah parameter yang dapat dilatih pada hidden layer pertama dengan hanya 4 neuron adalah 602.112. Itu luar biasa!

    •  ANN kehilangan fitur spasial gambar. Fitur spasial mengacu pada pengaturan piksel dalam sebuah gambar. Saya akan menyentuh ini secara rinci di bagian berikut
  • Satu masalah umum di semua jaringan saraf ini adalah Gradien Lenyap dan Meledak . Masalah ini terkait dengan algoritma propagasi mundur . Bobot jaringan neural diperbarui melalui algoritme propagasi mundur ini dengan menemukan gradien:

FFN

Propagasi Mundur

           Jadi, dalam kasus jaringan neural yang sangat dalam (jaringan dengan banyak lapisan tersembunyi), gradien menghilang atau meledak saat menyebar ke belakang yang mengarah ke gradien menghilang dan meledak.

  • JST tidak dapat menangkap informasi sekuensial dalam data masukan yang diperlukan untuk menangani data sekuens

Sekarang, mari kita lihat cara mengatasi keterbatasan MLP menggunakan dua arsitektur berbeda - Jaringan Neural Berulang (RNN) dan Jaringan Saraf Tiruan (CNN).

 

Recurrent Neural Network (RNN) - Apa itu RNN dan mengapa Anda harus menggunakannya?

Mari kita coba memahami perbedaan antara RNN dan ANN dari perspektif arsitektur:

Batasan perulangan pada lapisan tersembunyi ANN berubah menjadi RNN.

RNN

Seperti yang Anda lihat di sini, RNN memiliki koneksi berulang pada status tersembunyi. Batasan perulangan ini memastikan bahwa informasi sekuensial ditangkap dalam data masukan.

Anda harus melalui tutorial di bawah ini untuk mempelajari lebih lanjut tentang bagaimana RNN bekerja di bawah tenda (dan cara membuatnya dengan Python):

Kami dapat menggunakan jaringan saraf berulang untuk menyelesaikan masalah yang terkait dengan:

  • Data Time Series
  • Data teks
  • Data audio

 

Keuntungan dari Recurrent Neural Network (RNN)

  • RNN menangkap informasi sekuensial yang ada dalam data input, yaitu ketergantungan antara kata-kata dalam teks saat membuat prediksi:

seq2seq

Many2Many model Seq2Seq

           Seperti yang Anda lihat di sini, keluaran (o1, o2, o3, o4) pada setiap langkah waktu tidak hanya bergantung pada kata saat ini tetapi juga pada kata sebelumnya.

  • RNN berbagi parameter di seluruh langkah waktu yang berbeda. Ini dikenal sebagai Berbagi Parameter . Hal ini menghasilkan lebih sedikit parameter untuk dilatih dan menurunkan biaya komputasi

RNN

RNN yang tidak digulung

            Seperti yang ditunjukkan pada gambar di atas, 3 matriks bobot - U, W, V, adalah matriks bobot yang digunakan bersama di semua langkah waktu.

 

Tantangan dengan Recurrent Neural Networks (RNN)

Deep RNN (RNN dengan jumlah langkah waktu yang besar) juga mengalami masalah gradien yang menghilang dan meledak yang merupakan masalah umum di semua jenis jaringan neural yang berbeda.

menghilangnya gradien

Vanishing Gradient (RNN)

Seperti yang Anda lihat di sini, gradien yang dihitung pada langkah terakhir kali menghilang saat mencapai langkah waktu awal.

 

Convolution Neural Network (CNN) - Apa itu CNN dan Mengapa Anda Harus Menggunakannya?

Jaringan saraf konvolusional (CNN) sedang populer di komunitas deep learning saat ini. Ini CNN model yang digunakan di seluruh aplikasi dan domain yang berbeda, dan mereka terutama terjadi dalam proyek-proyek pengolahan gambar dan video.

Blok pembangun CNN adalah filter alias kernel. Kernel digunakan untuk mengekstrak fitur yang relevan dari input menggunakan operasi konvolusi. Mari kita coba memahami pentingnya filter menggunakan gambar sebagai data masukan. Menggabungkan gambar dengan hasil filter dalam peta fitur:

Hasil Konvolusi

Ingin menjelajahi lebih lanjut tentang Convolution Neural Networks? Saya sarankan untuk melalui tutorial di bawah ini:

Anda juga dapat mendaftar di kursus gratis ini di CNN untuk mempelajarinya lebih lanjut: Convolutional Neural Networks from Scratch

Meskipun jaringan saraf konvolusional diperkenalkan untuk memecahkan masalah yang terkait dengan data gambar, jaringan tersebut juga bekerja secara mengesankan pada masukan berurutan.

 

Keuntungan dari Convolution Neural Network (CNN)

  • CNN mempelajari filter secara otomatis tanpa menyebutkannya secara eksplisit. Filter ini membantu mengekstraksi fitur yang tepat dan relevan dari data masukan

CNN - Klasifikasi Gambar

CNN - Klasifikasi Gambar

  • CNN menangkap fitur spasial dari sebuah gambar. Fitur spasial mengacu pada susunan piksel dan hubungan antar piksel dalam sebuah gambar. Mereka membantu kita dalam mengidentifikasi objek secara akurat, lokasi suatu objek, serta hubungannya dengan objek lain dalam sebuah gambar

dravid

Pada gambar di atas, kita dapat dengan mudah mengidentifikasi bahwa itu adalah wajah manusia dengan melihat ciri-ciri khusus seperti mata, hidung, mulut, dan sebagainya. Kami juga dapat melihat bagaimana fitur-fitur spesifik ini diatur dalam sebuah gambar. Itulah yang mampu ditangkap CNN .

  • CNN juga mengikuti konsep berbagi parameter. Filter tunggal diterapkan di berbagai bagian input untuk menghasilkan peta fitur:

cnn

Menyatukan gambar dengan filter

Perhatikan bahwa peta fitur 2 * 2 dihasilkan dengan menggeser filter 3 * 3 yang sama melintasi bagian gambar yang berbeda.

 

Jadi, Perbandingan Berbagai Jenis Jaringan Neural (ANN) vs. RNN vs. CNN).

Di sini, saya telah merangkum beberapa perbedaan di antara berbagai jenis jaringan saraf:

mlp vs cnn vs rnn

 

Catatan Akhir

Pada artikel ini, saya telah membahas pentingnya pembelajaran mendalam dan perbedaan di antara berbagai jenis jaringan saraf. Saya sangat percaya bahwa berbagi pengetahuan adalah bentuk pembelajaran yang paling utama. Jika ada yang ditanyakan silahkan tinggalkan komentar anda dibawah ini...

ref : analyticsvidhya.com


Date

temen-temenku

dot_exe

Promosi dikit neh... ^_^

Jika anda ingin meningkatkan kinerja perusahaan atu tempat anda bekerja, saya penulis dapat memenuhi kebutuhan anda . baik atas nama kelompok (CV) atau perorangan:
penulis menyediakan softaware-software seperti:
1. Dinas pemerintahan / Swasta
2. Percetakan
3. Toko / swalayan
4. Dinas pendidikan
5. dll

software dapat berbentuk desktop atau model jaringan (client server).
Selain itu menerima pemesanan pembuatan Website baik yang pribadi maupun perusahaan.

bagi yang berminat dapat mengirim e-mail ke alamat dotexe.chili@gmail.com

Popular Posts

Daftar Komentar

Daftar Kunjungan

sejak tanggal 11 agustus 2010