Penjelasan Deep Learning : Perceptron – Menuju AI

Abstract representation of the brain structure with brain cells and neurons similar to the perceptron

Author(s): Clément Delteil

Awalnya diterbitkan di Menuju AI.

Deep Learning Dijelaskan: Perceptron

Konsep kunci di balik setiap jaringan saraf.

Representasi abstrak dari struktur otak dengan sel-sel otak dan neuron mirip dengan perceptronSumber: Gambar oleh Gerd Altmann dari Pixabay

Saat ini, kerangka kerja seperti Keras, TensorFlow, atau PyTorch menyediakan akses siap pakai ke sebagian besar solusi deep learning tanpa harus memahaminya secara mendalam.

Tapi ini bisa menjadi masalah segera setelah model Anda tidak berfungsi seperti yang diharapkan. Anda mungkin perlu menyesuaikannya sendiri.

Jadi, jika Anda di sini untuk memahami konsep Perceptron dalam pembelajaran mendalam, saya pikir Anda berada di jalur yang benar jika suatu hari Anda ingin dapat berkontribusi pada ekosistem ini dengan cara apa pun, penting untuk memahami akar dari ini. sistem.

Sebaliknya, jika Anda sudah terbiasa dengan konsep Perceptron, itu bukan masalah besar. Saya masih berharap untuk mengejutkan Anda!

Pada artikel ini, saya akan memperkenalkan ide tentang Perceptron. Kita akan melihat bagaimana hal itu dipikirkan pada tahun 1950 dan bagaimana cara kerjanya.

Mari kita masuk ke dalamnya.

Sedikit sejarah

Awal

Kembali pada tahun 1943, McCulloch dan Pitts menerbitkan sebuah makalah berjudul Kalkulus logis dari ide-ide yang imanen dalam aktivitas saraf — yang sekarang dikenal sebagai model matematika pertama dari jaringan saraf.

Gagasan artikel ini merupakan bagian dari dinamika zaman yang ingin menciptakan mesin cerdas dengan mereproduksi fungsi otak manusia.

Saya mengambil sebagai bukti awal dari abstraknya.

Karena karakter aktivitas saraf “semua atau tidak sama sekali”, peristiwa saraf dan hubungan di antara mereka dapat diperlakukan melalui logika proposisional.

Saat itu, fungsi otak manusia dipopulerkan sebagai sel saraf yang saling berhubungan yang mengirimkan sinyal listrik dan kimia seperti gerbang logika sederhana!

Gambar chip Raspberry Pi untuk mengilustrasikan gerbang logikaSumber: Gambar oleh Wisnu Mohanan dari Unsplash

Perceptron itu sendiri

Sekarang mari kita lompat ke 14 tahun ke tahun 1957 dan penerbitan sebuah artikel oleh Rosenblatt berjudul The Perceptron — A Perceiving and Recognizing Automaton.

Dalam artikel inilah kita menemukan perceptron seperti yang dipahami saat ini.

Sebuah sistem untuk mempelajari bobot optimal untuk dikalikan dengan input untuk menentukan apakah sebuah neuron aktif atau tidak.

Di bawah ini Anda dapat melihat perceptron pertama yang dilatih untuk mengenali objek atau pola, dalam hal ini huruf alfabet.

Foto ini menunjukkan Perceptron Mark I, sebuah mesin eksperimental yang dapat dilatih untuk mengidentifikasi objek atau pola secara otomatis, seperti huruf abjad.Sumber: Flickr — Sistem kamera Mark 1 Perceptron (Domain Publik)

Sekarang setelah Anda memiliki gambaran tentang sejarah konsep ini, mari beralih ke penerapannya dalam pembelajaran mendalam.

Perceptron diterapkan pada Deep Learning.

Perceptron dasar digunakan untuk klasifikasi biner dalam pembelajaran mesin yang diawasi.

Sebagai pengingat, klasifikasi biner menyiratkan bahwa hanya ada dua kelas untuk memprediksi 1 dan -1, misalnya.

Dan pembelajaran mesin yang diawasi mengacu pada pelatihan model melalui data yang sudah diberi label (dengan kelas terkait).

Definisi matematika

Kami mendefinisikan input 𝑥, output y, dan bobot 𝑤 dengan cara berikut.

Vektor input x, vektor output y, vektor bobot wSumber: Gambar oleh penulis

Dimana m adalah ukuran vektor 𝑤, 𝑥 atau y.

Biarkan 𝑧 menjadi input bersih yang terdiri dari kombinasi linear dari 𝑥 dan 𝑤.

z input bersih terdiri dari kombinasi linear dari vektor w dan xSumber: Gambar oleh penulis Klasifikasi ditentukan oleh fungsi aktivasi phi: 𝜙 (𝑧) dengan ambang batas theta: 𝜃 sesuai dengan apa yang disebut bias, kita akan melihatnya nanti.

Phi dari z, fungsi aktivasi yang mengaktifkan neuron jika z ≥ 0Sumber: Gambar oleh penulis

Fungsi aktivasi mendefinisikan dengan cara bagaimana elemen yang masuk akan diklasifikasikan.

Jika neuron aktif, artinya, jika z ≥ 𝜃, maka input saat ini akan diberi kelas 1, -1 sebaliknya.

Fungsi semacam ini disebut fungsi langkah Heaviside.

Ilustrasi grafis dari fungsi step Heaviside yang berpusat pada 0Sumber: Gambar oleh penulis — Ilustrasi fungsi langkah Heaviside

Di atas, theta sama dengan 0. Dengan mengubah nilai ini, kita menggeser kurva ke kiri atau ke kanan.

Singkatnya, sekarang kita telah menambahkan theta, persamaan untuk input bersih z berubah sedikit.

Kami sekarang memiliki:

Nilai awal bias sama dengan thetaSumber: Gambar oleh penulis

Dengan :

z input bersih terdiri dari kombinasi linier vektor w dan x ditambah angka bobot 0 dengan biasSumber: Gambar oleh penulis

Selamat! Anda sekarang tahu definisi matematis dari perceptron.

Berikut adalah persamaan grafisnya:

Ilustrasi seluruh proses pelatihan dan penyesuaian bobot perceptronSumber: Chang et al — Creative Commons Attribution 4.0 International — ilustrasi Perceptron

Tapi bagaimana Anda melatih perceptron?

Melatih perceptron

Berikut langkah-langkah latihannya:

Inisialisasi bobot ke 0 (atau angka acak kecil)

2. Untuk setiap contoh pelatihan x⁽ⁱ⁾ :

– Hitung perkiraan output ŷ⁽ⁱ⁾
– Perbarui bobot

Pembaruan setiap bobot vektor w

Setiap bobot diperbarui sesuai dengan delta yang dijelaskan di bawah iniSumber: Gambar oleh penulis

dilakukan sebagai berikut :

Delta dihitung dengan mengurangkan dari nilai y yang benar, nilai yang diperkirakan oleh perceptron dan dikalikan dengan laju pembelajaran dan nilai x saat iniSumber: Gambar oleh penulis

Di mana kami memperkenalkan eta: 𝜂, laju pembelajaran (antara 0,0 dan 1,0).

Bergantung pada apakah Anda merasa nyaman atau tidak dengan notasi ini, Anda mungkin kesulitan membayangkan bagaimana perceptron dilatih.

Mari kita ambil beberapa contoh.

Contoh

Demi kesederhanaan, mari kita asumsikan bahwa kecepatan pembelajaran sama dengan 1 dan kita mengetahui nilai-nilai berikut.

Tabel nilai untuk membeberkan contoh perhitungan bobot di bawah iniSumber: Gambar oleh penulis

Kami menganggap hanya ada satu fitur dalam kumpulan data untuk menyederhanakan perhitungan. Berikut beberapa contoh perhitungan delta bobot pertama pada perceptron.

Perhitungan delta bobot pertama menggunakan tabel nilai yang ditentukan di atasSumber: Gambar oleh penulis

Anda dapat melihat bahwa perkiraan nilai keluaran yang diberikan oleh fungsi aktivasi secara sistematis dikurangi dari nilai keluaran sebenarnya.

Ketika nilai taksiran sama dengan nilai sebenarnya, sama dengan 0 sehingga tidak ada pembaruan.

Jika tidak, bobot harus diperbarui.

Ini adalah kasus dalam dua contoh terakhir. Kita dapat melihat bahwa skala nilai input 𝑥 membuat pembaruan bobot lebih atau kurang bervariasi.

Pada contoh nomor 3, 𝑥 = 3, maka selisih bobotnya adalah 6, sedangkan pada contoh nomor 4, 𝑥 = 0,5 maka selisih bobotnya hanya 1.

Bias

Sebelumnya saya sengaja melewatkan penjelasan bias agar tidak membebani Anda dengan informasi.

Seperti yang dijelaskan di atas, bias adalah nilai skalar yang ditambahkan ke input bersih z sebelum melewati fungsi aktivasi.

Ini memungkinkan batas keputusan perceptron digeser menjauh dari asalnya, yang dapat berguna dalam situasi di mana data tidak dapat dipisahkan secara linear.

Ilustrasi data yang dapat dipisahkan secara linier dan tidak dapat dipisahkan secara linierSumber: M.Grove dan J.Blinkhor — CC BY — Data yang dapat dipisahkan secara linear vs data yang tidak dapat dipisahkan secara linear

Bias merupakan tambahan dari perceptron yang memiliki bobot tersendiri. Bobot ini juga dipelajari selama fase pembelajaran.

Tingkat pembelajaran

Tingkat pembelajaran adalah nilai skalar yang mengontrol ukuran langkah pembaruan bobot selama proses pelatihan.

Bergantung pada nilainya, bobot sedikit banyak dimodifikasi ketika ada kesalahan prediksi.

Nilainya ditentukan sebelum proses pelatihan. Jadi, Anda harus berhati-hati karena nilainya tetap sama selama seluruh pelatihan.

Jika Anda menetapkan nilainya terlalu tinggi, perceptron mungkin melampaui solusi optimal dan mungkin tidak konvergen ke solusi yang baik. Artinya, ini akan mengambil langkah besar dalam ruang bobot, yang dapat mengakibatkan pergerakan melewati titik optimal dan berakhir di wilayah ruang bobot yang lebih buruk daripada solusi optimal.

Selain itu, jika Anda menyetel nilainya terlalu rendah, perceptron akan menyatu terlalu lambat, dan mungkin butuh waktu lama untuk melatihnya. Selain itu, mungkin macet di minimum lokal dan gagal menemukan minimum global.

Ilustrasi minimum dan maksimum global dan lokal pada kurvaSumber: KSmrq melalui Wikimedia Commons

Nilai optimal dari learning rate tergantung pada banyak faktor. Adalah umum untuk bereksperimen dengan nilai yang berbeda selama pelatihan untuk menemukan nilai yang memberikan kinerja terbaik.

Kesimpulan…

Konsep perceptron kembali ke tahun 40-an dan 50-an. Ini didasarkan pada pemahaman kita tentang otak manusia. Ini awalnya digunakan untuk klasifikasi biner. Neuron atau perceptron aktif ketika nilai input bersih saat ini melewati uji fungsi aktivasi. Artinya, bila lebih besar dari bias: theta. Bias mengontrol batas keputusan dari perceptron. Tingkat pembelajaran menentukan berapa banyak bobot disesuaikan sebagai respons terhadap kesalahan prediksi.

Referensi

[1] McCulloch, WS dan Pitts, W. (1943) “Kalkulus logis dari ide-ide yang imanen dalam aktivitas saraf,” Buletin Biofisika Matematika, 5(4), hlm. 115–133. Tersedia di: https://doi.org/10.1007/bf02478259.

[2] Rosenblatt, F. (1957) “The Perceptron: A Perceiving and Recognizing Automaton,” Cornell Aeronautical Laboratory, Laporan 85–60–1. Tersedia di: https://blogs.umass.edu/brain-wars/files/2016/03/rosenblatt-1957.pdf

[3] Grove, M. dan Blinkhorn, J. (2020) “Jaringan saraf membedakan antara kumpulan litik zaman batu tengah dan akhir di Afrika Timur,” PLOS ONE, 15(8). Tersedia di: https://doi.org/10.1371/journal.pone.0237528.

Saya harap Anda menikmati membaca ini. Jika Anda ingin mendukung saya sebagai penulis, pertimbangkan untuk mengikuti saya dan memberi saya umpan balik atas tulisan saya ✨.

Penjelasan Deep Learning : Perceptron awalnya diterbitkan di Towards AI on Medium, di mana orang melanjutkan percakapan dengan menyoroti dan menanggapi cerita ini.

Diterbitkan melalui Menuju AI

Author: Scott Anderson