Jenis Pengoptimal dalam Pembelajaran Mendalam Yang Harus Diketahui Setiap Insinyur AI

Diterbitkan: 2020-12-01

Daftar isi

pengantar

Pembelajaran mendalam adalah kemajuan besar dibandingkan pembelajaran mesin dalam hal fleksibilitas, akurasi yang lebih tinggi, dan berbagai kemungkinan dalam aplikasi industri. Baik itu aplikasi obrolan, koreksi otomatis tata bahasa, terjemahan di antara berbagai bahasa, deteksi berita palsu, atau penulisan cerita otomatis berdasarkan beberapa susunan kata awal, Deep learning menemukan penggunaannya di hampir setiap sektor.

Dengan penggunaan sebanyak ini, menjadi penting bahwa algoritme ini berjalan di bawah sumber daya minimum sehingga kami dapat mengurangi biaya berulang dan memberikan hasil yang efisien dalam waktu yang lebih singkat. Pengoptimal adalah metode atau algoritme untuk memperbarui berbagai parameter yang dapat mengurangi kerugian dengan lebih sedikit usaha. Mari kita lihat beberapa pengoptimal pembelajaran mendalam populer yang memberikan hasil yang dapat diterima.

Pelajari Kursus AI ML dari Universitas top dunia. Dapatkan Master, PGP Eksekutif, atau Program Sertifikat Tingkat Lanjut untuk mempercepat karier Anda.

Keturunan Gradien (GD)

Ini adalah pengoptimal paling dasar yang secara langsung menggunakan turunan dari fungsi kerugian dan kecepatan pembelajaran untuk mengurangi kerugian dan mencapai minimum. Pendekatan ini juga diadopsi dalam backpropagation di jaringan saraf di mana parameter yang diperbarui dibagikan di antara lapisan yang berbeda tergantung pada saat kerugian minimum tercapai. Sangat mudah untuk menerapkan dan menginterpretasikan hasil, tetapi memiliki berbagai masalah.

Bobot diperbarui ketika seluruh gradien set data dihitung, yang memperlambat proses. Ini juga membutuhkan sejumlah besar memori untuk menyimpan data sementara ini, menjadikannya proses yang membutuhkan banyak sumber daya. Meskipun ide di balik algoritma ini sangat cocok, itu perlu diubah.

Penurunan Gradien Stokastik

Ini adalah versi metode GD yang diubah, di mana parameter model diperbarui pada setiap iterasi. Ini berarti bahwa setelah setiap sampel pelatihan, fungsi kerugian diuji dan model diperbarui. Pembaruan yang sering ini menghasilkan konvergensi ke minimum dalam waktu yang lebih singkat, tetapi hal itu menyebabkan peningkatan varians yang dapat membuat model melampaui posisi yang diperlukan.

Tetapi keuntungan dari teknik ini adalah kebutuhan memori yang rendah dibandingkan dengan yang sebelumnya karena sekarang tidak perlu menyimpan nilai-nilai sebelumnya dari fungsi kerugian.

Keturunan Gradien Batch Mini

Varian lain dari pendekatan GD ini adalah mini-batch, di mana parameter model diperbarui dalam ukuran batch kecil. Ini berarti bahwa setelah setiap n batch, parameter model akan diperbarui dan ini memastikan bahwa model berjalan menuju minimum dalam langkah yang lebih sedikit tanpa sering tergelincir. Ini menghasilkan penggunaan memori yang lebih sedikit dan varians yang rendah dalam model.

Baca: Ide Proyek Pembelajaran Mesin

Penurunan Gradien Berbasis Momentum

Mari kita tinjau kembali metode yang kita gunakan untuk memperbarui parameter. Berdasarkan turunan orde pertama dari fungsi kerugian, kami menyebarkan kembali gradien. Frekuensi pembaruan dapat terjadi setelah setiap iterasi, batch, atau terakhir, tetapi kami tidak mempertimbangkan berapa banyak pembaruan yang kami miliki dalam parameter.

Jika elemen riwayat ini disertakan dalam pembaruan berikutnya, maka itu dapat mempercepat seluruh proses dan inilah arti momentum dalam pengoptimal ini. Unsur sejarah ini seperti bagaimana pikiran kita mengingat sesuatu. Jika Anda berjalan di jalan dan menempuh jarak yang cukup jauh, maka Anda akan yakin bahwa tujuan Anda agak jauh di depan dan Anda akan meningkatkan kecepatan Anda.

Elemen ini bergantung pada nilai sebelumnya, kecepatan pembelajaran, dan parameter baru yang disebut gamma, yang mengontrol pembaruan riwayat ini. Aturan pembaruan akan menjadi seperti w = w – v, di mana v adalah elemen riwayat.

Gradien Akselerasi Nesterov (NAG)

GD berbasis momentum memberikan dorongan kepada pengoptimal yang saat ini digunakan dengan konvergen ke minimum paling awal, tetapi hal itu menimbulkan masalah baru. Metode ini membutuhkan banyak putaran-u dan berosilasi masuk dan keluar di lembah minima yang menambah total waktu. Waktu yang dibutuhkan masih terlalu sedikit dari GD normal, tetapi masalah ini juga perlu diperbaiki dan ini dilakukan di NAG.

Pendekatan yang diikuti di sini adalah bahwa pembaruan parameter akan dilakukan dengan elemen riwayat terlebih dahulu dan kemudian hanya turunannya yang dihitung yang dapat memindahkannya ke arah maju atau mundur. Ini disebut pendekatan lihat ke depan, dan ini lebih masuk akal karena jika kurva mendekati minimum, maka turunannya dapat membuatnya bergerak perlahan sehingga osilasinya lebih sedikit dan karenanya menghemat lebih banyak waktu.

Baca Juga: Teknik Deep Learning yang Harus Anda Ketahui

Adagrad

Sampai sekarang kami hanya berfokus pada bagaimana parameter model mempengaruhi pelatihan kami, tetapi kami belum berbicara tentang parameter hiper yang diberi nilai konstan selama pelatihan. Salah satu parameter hiper penting adalah kecepatan belajar dan memvariasikan ini dapat mengubah kecepatan pelatihan.

Untuk input fitur sparse di mana sebagian besar nilainya nol, kami dapat membeli tingkat pembelajaran yang lebih tinggi yang akan meningkatkan gradien sekarat yang dihasilkan dari fitur sparse ini. Jika kita memiliki data yang padat, maka kita dapat memiliki pembelajaran yang lebih lambat.

Solusi untuk ini adalah memiliki tingkat pembelajaran adaptif yang dapat berubah sesuai dengan input yang diberikan. Pengoptimal Adagrad mencoba menawarkan adaptasi ini dengan mengurangi kecepatan pembelajaran secara proporsional dengan riwayat gradien yang diperbarui.

Artinya, ketika ada pembaruan yang lebih besar, elemen sejarah terakumulasi, sehingga mengurangi kecepatan belajar dan sebaliknya. Salah satu kelemahan dari pendekatan ini adalah bahwa tingkat pembelajaran meluruh secara agresif dan setelah beberapa waktu mendekati nol.

RMSProp

Ini adalah peningkatan dari pengoptimal Adagrad. Ini bertujuan untuk mengurangi agresivitas tingkat pembelajaran dengan mengambil rata-rata eksponensial dari gradien alih-alih jumlah kumulatif gradien kuadrat. Tingkat pembelajaran adaptif tetap utuh karena sekarang rata-rata eksponensial akan menghukum tingkat pembelajaran yang lebih besar dalam kondisi ketika ada lebih sedikit pembaruan dan tingkat yang lebih kecil dalam jumlah pembaruan yang lebih tinggi.

Adam

Estimasi Momen Adaptif menggabungkan kekuatan RMSProp (root-mean-square prop) dan GD berbasis momentum. Dalam pengoptimal Adam, kekuatan momentum GD untuk menyimpan riwayat pembaruan dan tingkat pembelajaran adaptif yang disediakan oleh RMSProp menjadikan pengoptimal Adam sebagai metode yang kuat. Ini juga memperkenalkan dua hiper-parameter beta1 dan beta2 baru yang biasanya disimpan di sekitar 0,9 dan 0,99 tetapi Anda dapat mengubahnya sesuai dengan kasus penggunaan Anda.

Wajib Dibaca: Regularisasi dalam Deep Learning

Kesimpulan

Dalam artikel ini, kita melihat 8 pengoptimal pembelajaran mendalam dalam urutan kemudahan penggunaannya dan bagaimana batasan satu pengoptimal diatasi oleh pengoptimal berikutnya, dan seterusnya. Ada lebih banyak modifikasi dari satu atau pengoptimal lain yang disebutkan di sini, tetapi ini adalah yang mendasar yang harus Anda pertimbangkan sebelum mencari solusi yang kompleks.

Memilih pemenang di antara ini sangat subyektif untuk kasus penggunaan dan masalah yang Anda hadapi, tetapi seseorang pasti dapat menempatkan Adam Optimizer di atas karena kombinasinya dengan konsep momentum yang mengubah bagaimana parameter model harus diperbarui dan mengadaptasi perubahan tingkat pembelajaran untuk skenario yang berbeda memungkinkan pemrosesan yang efisien dari semua jenis input.

Tren umum menunjukkan bahwa untuk kerugian yang sama, pengoptimal ini bertemu pada minimum lokal yang berbeda. Sementara pengoptimal pembelajaran adaptif bertemu pada minima yang lebih tajam, jenis teknik lain berkumpul pada minima yang lebih datar yang lebih baik untuk generalisasi. Teknik-teknik ini hanya dapat membantu sampai batas tertentu karena jaringan saraf dalam menjadi lebih besar, metode yang lebih efisien diperlukan untuk mendapatkan hasil yang baik.

Jika Anda ingin menguasai pembelajaran Mesin dan AI, tingkatkan karir Anda dengan gelar Master of Science kami dalam Pembelajaran Mesin & AI dengan IIIT-B & Liverpool John Moores University.

Bagaimana cara kerja pengoptimal pembelajaran mendalam?

Sementara jaringan saraf adalah semua hype saat ini, pengoptimal adalah sesuatu yang jauh lebih mendasar untuk pembelajaran jaringan saraf. Sementara jaringan saraf dapat belajar sendiri, tanpa pengetahuan sebelumnya, pengoptimal adalah program yang berjalan dengan jaringan saraf, dan memungkinkannya untuk belajar lebih cepat. Singkatnya, ia melakukan ini dengan mengubah parameter jaringan saraf sedemikian rupa sehingga membuat pelatihan dengan jaringan saraf itu jauh lebih cepat dan lebih mudah. Pengoptimal inilah yang memungkinkan jaringan saraf bekerja secara real-time dan pelatihan hanya membutuhkan waktu beberapa menit. Tanpa mereka, pelatihan akan dengan mudah memakan waktu berhari-hari.

Mengapa sulit untuk mengoptimalkan algoritma deep learning?

Sistem pembelajaran mendalam umumnya dianggap sulit untuk dioptimalkan, karena besar dan kompleks, sering kali melibatkan banyak lapisan dan non-linier. Pengoptimal perlu berurusan dengan sistem besar, yang tidak mudah dipahami. Beberapa alat pembelajaran mendalam hanya menyediakan sejumlah parameter terbatas yang dapat disetel, yang membatasi kegunaannya. Namun, ada beberapa cara efektif untuk mengoptimalkan model pembelajaran mendalam dan meningkatkan generalisasinya.

Apa saja pengoptimal berbeda dalam pembelajaran mendalam?

Dalam pembelajaran mendalam, pengoptimal digunakan untuk menyesuaikan parameter untuk model. Tujuan dari pengoptimal adalah untuk menyesuaikan bobot model untuk memaksimalkan fungsi kerugian. Fungsi kerugian digunakan sebagai cara untuk mengukur seberapa baik kinerja model. Pengoptimal harus digunakan saat melatih model jaringan saraf. Ada berbagai pengoptimal berbeda yang dapat digunakan dengan model pembelajaran yang mendalam. Beberapa pengoptimal paling populer adalah RMSprop, momentum, dan Adam