Panduan Lengkap Jaringan Saraf Buatan
Panduan Lengkap Jaringan Saraf Buatan
5- Jaringan Hopfield............................................................................................................... 46
6- Mesin Boltzmann..................................................................................................... 48
7- Jaringan Keyakinan Dalam.......................................................................................................... 49
8- Auto-Encoder Dalam........................................................................................................... 50
9- Jaringan Generatif Adversarial........................................................................................ 51
10- Kapsul Jaringan Saraf Dalam........................................................................................ 53
Dan minat terhadap Machine Learning semakin terlihat jelas oleh jumlah setiap
vez maior dari konferensi, meetup, artikel, buku, kursus, pencarian di Google dan
profesional dan perusahaan yang mencari untuk memahami apa itu dan bagaimana menggunakan pembelajaran dari
mesin, meskipun banyak yang masih bingung tentang apa yang bisa mereka lakukan dengan apa yang ingin mereka lakukan.
Tidak ada cara untuk tetap acuh tak acuh terhadap revolusi yang dibawa oleh pembelajaran mesin dan,
menurut Gartner, hingga 2020 semua perangkat lunak perusahaan akan memiliki beberapa
fungsionalitas yang terkait dengan Pembelajaran Mesin.
Jaringan syaraf buatan tidak selalu baru, sudah ada setidaknya sejak
dekade 1950. Tapi selama beberapa dekade, meskipun arsitektur model-model ini
meskipun telah berevolusi, masih ada bahan yang belum membuat model benar-benar
berfungsi. Dan bahan-bahan ini muncul hampir pada saat yang sama. Salah satunya mungkin sudah Anda ketahui.
ter nghe: Big Data. Volume data, dihasilkan dalam variasi dan kecepatan yang semakin
maiores, memungkinkan untuk membuat model dan mencapai tingkat akurasi yang tinggi. Tapi masih kurang satu
bahan. Kurang! Bagaimana memproses model Machine Learning besar dengan
jumlah besar data? CPU tidak dapat mengatasi tugas tersebut.
Itu adalah ketika para gamer dan hasrat mereka akan kekuatan komputasi dan grafik yang sempurna,
membantu menemukan bahan kedua: Pemrograman Paralel di GPU. Sebagai
unit pemrosesan grafis, yang memungkinkan melakukan operasi matematis dari
bentuk paralel, terutama operasi dengan matriks dan vektor, elemen yang ada
dalam model jaringan saraf buatan, mereka membentuk badai sempurna, yang memungkinkan untuk
evolusi di mana kita berada hari ini: Big Data + Pemrosesan Paralel + Model
Pembelajaran Mesin = Kecerdasan Buatan.
Unit dasar dari jaringan saraf buatan adalah sebuah simpul (atau neuron matematis),
yang pada gilirannya didasarkan pada neuron biologis. Konektivitas antara neuron-neuron ini
matematik juga terinspirasi oleh otak biologis, terutama dalam bentuk
bagaimana koneksi ini berkembang seiring waktu dengan "pelatihan". Di
pertengahan 1980-an dan awal 1990-an, banyak kemajuan penting dalam
arsitektur jaringan saraf buatan terjadi. Namun, jumlah waktu dan
Data yang diperlukan untuk mendapatkan hasil yang baik telah menunda adopsi dan, oleh karena itu, minat.
telah mendingin, dengan apa yang dikenal sebagai AI Winter (Musim Dingin AI).
Pada awal tahun 2000, kekuatan komputasi berkembang secara eksponensial dan
pasar melihat sebuah "ledakan" teknik komputasi yang sebelumnya tidak mungkin dilakukan
disso. Itu adalah ketika pembelajaran mendalam (Deep Learning) muncul dari pertumbuhan
komputasi eksplosif dekade ini sebagai mekanisme utama konstruksi
sistem Kecerdasan Buatan, memenangkan banyak kompetisi penting dari
pembelajaran mesin. Minat terhadap Pembelajaran Mendalam tidak berhenti tumbuh dan hari ini
kami melihat istilah pembelajaran mendalam disebutkan dengan semakin sering
solusi bisnis besar muncul setiap saat.
Buku online ini, gratis dan dalam bahasa Portugis, adalah inisiatif untuk membantu mereka yang
mencari pengetahuan yang mendalam dan berkualitas dalam bahasa kita. Akan ada lebih dari 50
bab, diterbitkan dalam bentuk pos dan dirilis setiap minggu. Dengan cara ini,
kami berharap dapat berkontribusi untuk pertumbuhan Deep Learning dan Kecerdasan Buatan di
Brasil.
Pada tahun 1943, neurofisiolog Warren McCulloch dan matematikawan Walter Pitts
mereka menulis sebuah artikel tentang bagaimana neuron bisa berfungsi dan untuk itu, mereka
membangun sebuah jaringan saraf sederhana menggunakan rangkaian listrik.
Warren McCulloch dan Walter Pitts menciptakan model komputasional untuk jaringan saraf
berbasis pada matematika dan algoritma yang disebut logika ambang (threshold logic).
Model ini membuka jalan untuk penelitian jaringan saraf yang dibagi menjadi dua
pendekatan: sebuah pendekatan yang berfokus pada proses biologis di otak, sementara
lain yang berfokus pada penerapan jaringan saraf dalam kecerdasan buatan.
Pada tahun 1949, Donald Hebb menulis The Organization of Behavior, sebuah karya yang menunjukkan
fakta bahwa jalur saraf diperkuat setiap kali digunakan, sebuah
konsep yang secara fundamental penting untuk cara manusia belajar. Jika
dua saraf menembak pada saat yang sama, ia berargumen, koneksi antara mereka adalah
diperbaiki.
Namun, sepanjang waktu ini, para pembela "mesin berpikir" terus melanjutkan
untuk mendukung penelitian Anda. Pada tahun 1956, Proyek Penelitian Musim Panas Dartmouth
Tentang Kecerdasan Buatan memberikan dorongan baik untuk Kecerdasan Buatan
seperti Jaringan Saraf. Salah satu hasil dari proses ini adalah mendorong penelitian di
IA di bagian pemrosesan saraf.
Pada tahun-tahun setelah Proyek Dartmouth, John von Neumann menyarankan untuk meniru fungsi
simples neuron menggunakan relai telegraf atau tabung vakum. Selain itu, Frank
Rosenblatt, seorang neurobiolog, mulai bekerja pada Perceptron. Dia merasa tertarik
dengan cara kerja mata lalat. Sebagian besar pemrosesan yang dilakukan oleh
sebuah lalat ketika memutuskan untuk melarikan diri, terbuat dari matanya. Perceptron, yang dihasilkan dari ini
penelitian, dibangun di perangkat keras dan merupakan jaringan saraf tertua yang masih digunakan sampai sekarang.
Sebuah perceptron lapisan tunggal berguna untuk mengklasifikasikan sekumpulan masukan nilai
berlanjut dalam salah satu dari dua kelas. Perceptron menghitung jumlah tertimbang dari
masukkan, kurangi sebuah batas dan berikan salah satu dari dua nilai yang mungkin sebagai hasil.
Sayangnya, oPerceptron terbatas dan telah dibuktikan seperti itu selama tahun-tahun
desiludidos" oleh Marvin Minsky dan buku Seymour Papert tahun 1969, Perceptrons.
Pada tahun 1959, Bernard Widrow dan Marcian Hoff dari Stanford, mengembangkan model
disebut "ADALINE" dan "MADALINE". Dalam sebuah tampilan khas cinta dari
Stanford merupakan singkatan dari penggunaan beberapa elemen ADAptif LINear.
ADALINE dikembangkan untuk mengenali pola biner sehingga, jika dia
Jika membaca bit transmisi dari saluran telepon, saya bisa memprediksi yang berikutnya.
bit. MADALINE adalah jaringan saraf pertama yang diterapkan pada masalah dunia nyata,
menggunakan filter adaptif yang menghilangkan gema di saluran telepon. Meskipun sistem
sebanyak lama sebagai sistem pengendalian lalu lintas udara, itu masih digunakan
komersial.
Semua diskusi ini tentang efek Kecerdasan Buatan terhadap kehidupan manusia, yang dipadukan
seiring dengan kemajuan, suara-suara yang dihormati mengkritik penelitian dalam jaringan saraf. O
hasilnya adalah pengurangan drastis sebagian besar pendanaan untuk penelitian. Ini
periode pertumbuhan yang atrofis berlangsung hingga 1981, yang dikenal sebagai Musim Dingin
IA (Musim Dingin AI).
Pada tahun 1982, berbagai peristiwa menyebabkan minat yang diperbarui. John Hopfield dari Caltech
mempersembahkan sebuah dokumen kepada Akademi Ilmu Pengetahuan Nasional. Pendekatan Hopfield
itu bukan sekadar memodelkan otak, tetapi menciptakan perangkat yang berguna. Dengan jelas dan
analisis matematis, ia menunjukkan bagaimana jaringan ini dapat berfungsi dan apa yang bisa mereka lakukan
melakukan. Namun, daya tarik terbesar Hopfield adalah karismanya. Dia sangat fasih dan
Simpati dan itu sangat membantu agar dia didengar.
Pada tahun 1985, Institut Fisika Amerika memulai apa yang menjadi pertemuan tahunan–
Jaringan Saraf untuk Komputasi. Pada tahun 1987, Konferensi Internasional pertama tentang
Redes Neurais dari Institute of Electrical and Electronic Engineer’s (IEEE) menarik lebih dari
1.800
Pada tahun 1986, dengan jaringan saraf berlapis-lapis dalam berita, masalahnya adalah bagaimana
memperluas aturan Widrow-Hoff untuk beberapa lapisan. Tiga kelompok independen dari
peneliti, di antaranya David Rumelhart, mantan anggota departemen
psikologi Stanford, menyajikan ide-ide serupa yang kini disebut sebagai
jaringan Backpropagation karena mendistribusikan kesalahan pengenalan pola di seluruh
jaringan. Jaringan hibrida hanya menggunakan dua lapisan, jaringan ini dari
Backpropagation menggunakan banyak. Hasilnya adalah bahwa jaringan Backpropagation
mempelajari dengan cara yang lebih lambat, karena kemungkinan mereka membutuhkan ribuan
iterasi untuk belajar, tetapi menghasilkan hasil yang sangat akurat.
Sekarang, jaringan saraf digunakan dalam berbagai aplikasi. Ide dasar di balik
dari sifat jaringan saraf adalah bahwa, jika ia berfungsi di alam, itu harus mampu
berfungsi di komputer. Namun, masa depan jaringan saraf terletak pada
pengembangan perangkat keras. Jaringan saraf yang cepat dan efisien bergantung pada
perangkat keras yang ditentukan untuk penggunaan yang mungkin.
Diagram di bawah menunjukkan beberapa tonggak penting dalam evolusi dan penelitian jaringan
jaringan saraf buatan. Faktanya, kami masih menulis kisah ini dan banyak evolusi
sedang terjadi saat ini, melalui kerja ribuan peneliti dan
profesional Kecerdasan Buatan di seluruh dunia. Dan Anda, tidak ingin membantu untuk
menulis cerita ini?
Fig3–Marcos dalam pengembangan jaringan saraf.
Kita dapat merangkum demikian tonggak utama dalam penelitian dan evolusi jaringan saraf
artifisial hingga kita mencapai Deep Learning:
1943: Warren McCulloch dan Walter Pitts menciptakan model komputasional untuk jaringan
neuron yang berbasis pada matematika dan algoritma yang disebut logika ambang.
1989: para ilmuwan berhasil menciptakan algoritma yang menggunakan jaringan saraf dalam,
tetapi waktu pelatihan untuk sistem diukur dalam hari, menjadikannya
tidak dapat digunakan di dunia nyata.
1992: Juyang Weng menerbitkan Cresceptron, sebuah metode untuk melakukan pengenalan
dari objek 3-D secara otomatis dari adegan yang berantakan.
2016: algoritma Google DeepMind, AlphaGo, memetakan seni dari permainan kompleks
papan Go dan mengalahkan juara dunia Go, Lee Sedol, dalam sebuah turnamen yang sangat
diungkapkan di Seoul.
2017: adopsi massal Deep Learning dalam berbagai aplikasi korporat dan
seluler, selain kemajuan dalam penelitian. Semua acara teknologi yang terkait dengan Data
Sains, IA, dan Big Data menunjuk Deep Learning sebagai teknologi utama untuk
pembuatan sistem cerdas.
Studi tentang jaringan saraf mengalami revolusi besar sejak tahun 80-an dan
bidang studi ini telah menonjol, baik karena karakteristik yang menjanjikan
diajukan oleh model jaringan saraf yang diusulkan, baik oleh kondisi
teknologi terkini dalam implementasi yang memungkinkan pengembangan yang berani
implementasi arsitektur neural paralel di perangkat keras yang didedikasikan, mendapatkan
kinerja yang sangat baik dari sistem-sistem ini (jauh lebih unggul dibandingkan sistem-sistem yang lain
konvensional). Evolusi alami dari jaringan saraf adalah jaringan saraf dalam
(ou Deep Learning). Mas isso é o que vamos discutir no próximo capítulo! Até lá.
Pembelajaran mendalam bertanggung jawab atas kemajuan terbaru dalam penglihatan komputer,
pengenalan suara, pemrosesan bahasa alami dan pengenalan
audio. Pembelajaran mendalam didasarkan pada konsep jaringan saraf buatan, atau
sistem komputer yang meniru cara kerja otak manusia.
Ekstraksi sumber daya adalah aspek lain dari Pembelajaran Mendalam. Ekstraksi dari
sumber daya menggunakan algoritma untuk membangun secara otomatis "sumber daya" yang berarti dari
data untuk tujuan pelatihan, pembelajaran, dan pemahaman. Biasanya, Ilmuwan
Data Scientist, atau Insinyur AI, bertanggung jawab untuk ekstraksi fitur.
Pada akhir dekade 1970-an, musim dingin pertama AI dimulai, hasil dari janji-janji
yang tidak dapat dipertahankan. Dampak dari kekurangan pendanaan ini membatasi
penelitian dalam Jaringan Saraf Dalam dan Kecerdasan Buatan. Untungnya, ada
individu yang melakukan penelitian tanpa pendanaan.
Gambar 6 - Para pionir Kecerdasan Buatan. Dari kiri ke kanan: Yann LeCun,
Geoffrey Hinton, Yoshua Bengio dan Andrew Ng
Namun, selama periode ini kami mengalami apa yang dikenal sebagai musim dingin kedua AI, yang
terjadi antara 1985-1990, yang juga memengaruhi penelitian di Jaringan Saraf dan
Pembelajaran Mendalam. Beberapa individu yang terlalu optimis telah melebih-lebihkan
potensi "segera" dari Kecerdasan Buatan, memecahkan harapan dan membuat marah
para para .
status pseudoscience. Untungnya, beberapa orang terus bekerja di AI dan
Deep Learning, dan beberapa kemajuan signifikan telah dibuat. Pada tahun 1995, Dana Cortes dan
Vladimir Vapnik mengembangkan mesin vektor penyangga atau Support Vector
Mesin (sistem untuk memetakan dan mengenali data yang serupa). LSTM (Long-
Memori Jangka Pendek) untuk jaringan saraf berulang dikembangkan pada tahun 1997, oleh
Sepp Hochreiter dan Juergen Schmidhuber.
Langkah evolusi signifikan berikutnya untuk Deep Learning terjadi pada tahun 1999, ketika
komputer mulai menjadi lebih cepat dalam memproses data dan
GPU (unitas pemrosesan grafik) telah dikembangkan. Penggunaan GPU
signifikansi peningkatan waktu pemrosesan, mengakibatkan peningkatan
kecepatan komputasi 1000 kali selama periode 10 tahun.
Selama periode ini, jaringan saraf mulai bersaing dengan mesin vektor.
dukungan. Sementara jaringan syaraf mungkin lambat dibandingkan dengan sebuah mesin
dari vektor dukungan, jaringan saraf menawarkan hasil yang lebih baik menggunakan yang sama
data. Jaringan saraf juga memiliki keuntungan untuk terus membaik seiring dengan
lebih banyak data pelatihan ditambahkan.
Sekitar tahun 2000, muncul masalah yang dikenal sebagai Gradien Menghilang. Itu adalah
ditemukan bahwa "fitur" yang dipelajari di lapisan yang lebih rendah tidak
dipelajari oleh lapisan atas, karena tidak ada tanda pembelajaran yang mencapai ini
lapisan. Ini bukan masalah mendasar untuk semua jaringan saraf, hanya
yang memiliki metode pembelajaran berbasis gradien. Asal usul masalah
berakhir menjadi fungsi aktivasi tertentu. Sekumpulan fungsi aktivasi
mengondensasi masukannya, mengurangi, pada gilirannya, jangkauan keluarnya dengan cara yang agak
kaotik. Ini menghasilkan area-area besar dari pintu masuk yang dipetakan dalam rentang yang sangat
kecil. Di area masuk ini, perubahan besar akan dikurangi menjadi kecil
perubahan pada keluaran, menghasilkan gradien menurun. Dua solusi yang digunakan untuk
mengatasi masalah ini adalah pra-latihan lapis demi lapis dan pengembangan
memori jangka panjang dan jangka pendek.
Pada tahun 2001, sebuah laporan penelitian dari Grup META (sekarang disebut Gartner)
menggambarkan tantangan dan peluang dalam pertumbuhan volume data. Laporan tersebut
menjelaskan peningkatan volume data dan kecepatan data yang semakin meningkat sebagai
peningkatan variasi sumber dan jenis data. Ini adalah seruan untuk bersiap-siap untuk
investasi Big Data, yang baru saja dimulai.
Pada tahun 2009, Fei-Fei Li, profesor IA di Stanford, California, meluncurkan ImageNet dan
membangun basis data gratis dengan lebih dari 14 juta gambar yang diberi label.
Diperlukan gambar yang ditandai untuk 'melatih' jaringan saraf. Profesor Li
kami percaya bahwa Big Data akan mengubah cara pembelajaran
mesin berfungsi. Data mendorong pembelajaran.". Dia benar-benar tepat!
Saat ini, pemrosesan Data Besar dan evolusi Kecerdasan Buatan adalah
keduanya bergantung pada Pembelajaran Mendalam. Dengan Pembelajaran Mendalam kita dapat membangun
sistem cerdas dan kami semakin mendekati penciptaan AI yang sepenuhnya
otonom. Ini akan menghasilkan dampak di semua segmen masyarakat dan mereka yang
siap bekerja dengan teknologi, akan menjadi pemimpin dunia baru ini yang
mempersembahkan di depan kami.
Di bab berikutnya, Anda akan mulai memahami secara teknis bagaimana cara kerjanya
Pembelajaran Mendalam. Sampai bab 4.
O Neurônio Biológico
Neuron adalah unit dasar otak manusia, yang merupakan sel yang khusus dalam
transmisi informasi, karena di dalamnya diperkenalkan sifat-sifat dari
eksitabilitas dan pengaliran pesan saraf. Neuron terdiri dari 3 bagian
utama: soma atau tubuh sel, dari mana beberapa percabangan berasal
disebut sebagai dendrit, dan oleh cabang turun lainnya dari jumlah, namun
lebih panjang, disebut akson. Di ujung-ujung akson terdapat saraf
terminais, di mana informasi disampaikan ke neuron lain.
Transmisi ini dikenal sebagai sinapsis.
Perhatikan bahwa soma dan dendrit membentuk permukaan masuk neuron dan
axônio adalah permukaan keluar dari aliran informasi (aliran informasi ini adalah
penting untuk memahami neuron matematis sebentar lagi). Informasi
ditransmisikan oleh neuron sebenarnya adalah impuls listrik. Impuls listrik adalah
pesan yang dikirimkan neuron satu sama lain, yaitu merupakan penyebaran dari sebuah
stimulasi sepanjang neuron yang dapat berupa sinyal apa pun yang diterima oleh reseptor
nervositas.
Dendrit memiliki fungsi untuk menerima informasi, atau impuls saraf, yang berasal dari
neuron-neuron lain dan membawanya ke tubuh sel. Di sana, informasi diproses dan
impuls baru dihasilkan. Impuls ini ditransmisikan ke neuron lainnya,
melewati akson dan mencapai dendrit neuron-neuron berikutnya. Tubuh dari
Neurónio bertanggung jawab untuk mengumpulkan dan menggabungkan informasi yang berasal dari neuron lainnya.
Titik kontak antara terminasi akson dari neuron dan dendrit dari neuron lain adalah
disebut sinapsis. Melalui sinapsis, neuron-neuron bergabung secara fungsional, membentuk
jaringan saraf. Sinapsis berfungsi sebagai katup, yang mampu mengendalikan
transmisi impuls, yaitu aliran informasi antara neuron dalam jaringan
neural. Efek sinapsis bervariasi dan variasi inilah yang memberi neuron kemampuan
adapatasi.
Sinyal listrik yang dihasilkan di sensor (retina mata, kuncup rasa, dll...) berjalan
pelos axônios. Se esses sinais forem superiores a um limiar de disparo (threshold),
mengikuti melalui akson. Jika tidak, mereka diblokir dan tidak melanjutkan (tidak ada)
diyakini tidak relevan). Perpindahan sinyal ini bukanlah listrik, tetapi kimia
(melalui zat serotonin). Jika sinyal melebihi batas tertentu (ambang), maka
di depan; jika tidak, itu diblokir dan tidak dilanjutkan. Kita sedang berbicara tentang neuron
biologis dan perhatikan baik-baik kata ambang, karena itu adalah inti dari neuron
matematik
Sebuah neuron menerima sinyal melalui banyak dendrit, yang diperhitungkan dan
dikirim ke akson, dapat melanjutkan atau tidak (ambang). Dalam perjalanannya melalui
sebuah neuron, sinyal dapat diperkuat atau dilemahkan, tergantung pada dendritnya
asal, karena setiap konduktor, dikaitkan dengan berat yang oleh mana sinyal dikalikan.
Bobot adalah apa yang kita sebut sebagai memori.
Setiap wilayah di otak memiliki spesialisasi dalam fungsi tertentu, seperti pemrosesan
sinyal auditori, suara, pengembangan pemikiran, keinginan, dll… Ini
proses terjadi melalui jaringan pribadi yang saling terhubung, melakukan
pemrosesan paralel. Setiap wilayah di otak memiliki arsitektur jaringan
berbeda: bervariasi jumlah neuron, sinapsis per neuron, nilai ambang dan
dua peso, dll... Nilai peso ditetapkan melalui pelatihan
diterima oleh otak sepanjang umur. Itu adalah penyimpanan memori.
Terinspirasi oleh neuron biologis, para peneliti mengembangkan sebuah model dari
neuron matematis yang menjadi dasar Kecerdasan Buatan. Ideanya sederhana:
Jika jaringan saraf membentuk kecerdasan manusia, mari kita reproduksi ini dan menciptakan
Kecerdasan Buatan. Dan begitulah neuron matematis lahir, yang kami deskripsikan
di bawah.
Neuron Matematis
Dalam model neuron matematis ini, impuls listrik yang berasal dari yang lain
neuron-neuron diwakili oleh apa yang disebut sinyal masukan (huruf x dalam diagram ini
di bawah ini, yang tidak lebih dari sekadar data yang memberi makan model jaringan saraf Anda
artifisial). Di antara berbagai rangsangan yang diterima, beberapa akan lebih membangkitkan dan yang lain kurang.
neurônio reseptor dan ukuran seberapa eksitatori rangsangan itu diwakili dalam
model Warren McCulloch dan Walter Pitts melalui bobot sinaptik. Semakin besar
nilai berat, lebih eksitatif adalah rangsangan. Berat sinaptik diwakili
pada diagram di bawah ini, di mana k mewakili indeks neuron yang dimaksud dan n
se refiere al terminal de entrada de la sinapsis al que se refiere el peso sináptico.
Soma atau tubuh sel diwakili oleh komposisi dari dua modul, yaitu
pertama adalah penggabungan aditif, jumlah dari rangsangan (sinyal masuk) yang dikalikan
melalui faktor eksitatori (berat sinaptiknya), dan kemudian fungsi aktivasi,
yang akan menentukan berdasarkan masukan dan bobot sinaptik, apa yang akan menjadi keluaran dari neuron. O
Axônio di sini direpresentasikan oleh keluaran (yk) yang diperoleh dari penerapan fungsi aktivasi.
Sama seperti dalam model biologis, rangsangan dapat bersifat eksitatori atau inhibititori,
diwakili oleh berat sinaptik positif atau negatif masing-masing.
Gambar 8 - Representasi Sederhana dari Neuron Matematika
Model yang diusulkan memiliki sifat biner. Baik sinyal masukan maupun
keluaran, adalah nilai biner. McCulloch percaya bahwa fungsi sistem
sistem saraf pusat memiliki karakter biner, yaitu, satu neuron mempengaruhi atau tidak mempengaruhi neuron lainnya
neurone, tetapi kemudian terbukti bahwa itu tidak seperti itu.
Neuron matematika adalah model yang disederhanakan dari neuron biologis. Model-model semacam itu
terinspirasi dari analisis pembangkitan dan penyebaran impuls listrik melalui
membran sel neuron. Neuron matematis menerima satu atau lebih sinyal dari
masuk dan mengembalikan satu sinyal output saja, yang dapat didistribusikan sebagai sinyal output
dari jaringan, atau sebagai sinyal masuk untuk satu atau beberapa neuron lainnya di lapisan
posterior (yang membentuk jaringan saraf buatan). Dendrit dan akson diwakili
matematis secara hanya melalui sinaps, dan intensitas hubungan diwakili oleh
sebuah besaran yang disebut berat sinaptik, dilambangkan dengan huruf w. Ketika
entradas, x disajikan kepada neuron, mereka dikalikan dengan bobot sinaptik
koresponden, menghasilkan entri yang dipertimbangkan, yaitu x1 yang mengalikan w1, dll...
Ini menggambarkan salah satu dasar matematis dari cara kerja jaringan saraf.
buatan, perkalian matriks:
Neuronal kemudian menjumlahkan semua produk menghasilkan satu hasil tunggal. Fungsi ini
disebut fungsi kombinasi. Nilai ini kemudian disajikan kepada sebuah fungsi
aktivasi atau fungsi transfer, yang memiliki, antara lain, tujuan untuk menghindari
peningkatan progresif nilai keluaran sepanjang lapisan jaringan, mengingat bahwa hal tersebut
fungsi memiliki nilai maksimum dan minimum yang terdapat dalam interval yang ditentukan. O
penggunaan fungsi transfer non-linear menjadikan jaringan saraf sebagai alat
kuat. Diketahui bahwa jaringan perceptron dengan dua lapisan dengan fungsi
transferensi non-linear seperti fungsi sigmoid (yang akan kita lihat lebih lanjut nanti), adalah
dikenal sebagai pengganti universal.
Sebuah neuron melepaskan impuls ketika jumlah rangsangan yang diterimanya melampaui ambang batasnya.
dari rangsangan yang disebut ambang. Tubuh neuron, pada gilirannya, disimulasi oleh
sebuah mekanisme sederhana yang menjumlahkan nilai xi dan wi yang diterima oleh neuron
(soma berbobot) dan memutuskan apakah neuron harus menembak atau tidak (keluaran sama dengan 1 atau 0)
membandingkan jumlah yang diperoleh dengan ambang atau threshold neuron. Aktivasi neuron adalah
diperoleh melalui penerapan "fungsi aktivasi", yang mengaktifkan keluaran atau tidak,
tergantung pada nilai jumlah tertimbang dari masukan Anda.
Perhatikan bahwa model matematis sederhana dari neuron ini adalah statis, yaitu tidak
pertimbangkan dinamika neuron alami. Di neuron biologis, sinyal dikirim
pada denyut dan beberapa komponen neuron biologis, seperti akson,
berfungsi sebagai filter frekuensi.
Model neuron matematis juga dapat menyertakan polarisasi atau bias dari
masukan. Variabel ini dimasukkan ke dalam penjumlahan fungsi aktivasi, dengan tujuan untuk
meningkatkan derajat kebebasan fungsi ini dan, akibatnya, kapasitas
pendekatan jaringan. Nilai bias disesuaikan dengan cara yang sama seperti bobot
sinapti. Bias memungkinkan neuron memiliki output tidak nol meskipun semua
sebagai masukan Anda adalah nol. Misalnya, jika tidak ada bias dan semua masukan
jika sebuah neuron bernilai nol, maka nilai fungsi aktivasi akan bernilai nol. Dengan demikian
misalnya, kita tidak bisa membuat neuron belajar hubungan
relevan untuk 'atau eksklusif' dari logika. Secara ringkas, kita memiliki komponen-komponen ini dalam sebuah
neuron matematik
Sinyal masukan { X1, X2, …, Xn }: Adalah sinyal eksternal yang biasanya dinormalisasi
untuk meningkatkan efisiensi komputasional algoritma pembelajaran. Mereka adalah
data yang memberi makan model prediktif Anda.
Bobot sinapsis { W1, W2, …, Wn }: Adalah nilai untuk membobot sinyal dari setiap
masuk jaringan. Nilai-nilai ini dipelajari selama pelatihan.
Combinator linear { Σ }: Menambahkan semua sinyal input yang telah diberi bobot oleh
berat sinaptik yang sesuai untuk menghasilkan potensi aktivasi.
Batas aktivasi { Θ }: Menentukan apa ambang yang tepat agar
hasil yang dihasilkan oleh pengkombinasi linier dapat menghasilkan nilai pemicu dari
aktivasi.
Potensial aktivasi { u }: Ini adalah hasil yang diperoleh dari selisih nilai yang dihasilkan antara
kombinator linear dan ambang aktivasi. Jika nilai positif, yaitu, jika u ≥ 0
maka neuron menghasilkan potensial eksitatori; jika tidak, potensialnya akan
inhibitor
Fungsi aktivasi { g }: Tujuannya adalah membatasi keluaran dari neuron dalam sebuah
intervalo nilai.
Nilai akhir keluaran yang dapat digunakan sebagai masukan untuk yang lain
neuron yang saling terhubung secara berurutan.
Model-model yang didasarkan pada jaringan saraf buatan adalah yang paling mendapatkan perhatian di
tahun terakhir karena berhasil menyelesaikan masalah AI yang sulit dipecahkan sebelumnya.
kemajuan dengan teknik-teknik lain. Dari konsepsi neuron matematis, berbagai
arsitektur dan model dengan kombinasi berbeda antara neuron-neuron ini, dan menerapkan
berbagai teknik matematika dan statistika, muncul dan memungkinkan penciptaan
arsitektur canggih Deep Learning seperti Jaringan Syaraf Konvolusional, Jaringan
Jaringan Saraf Rekuren, Auto Encoder, Jaringan Adversarial Generatif, Memori
Jaringan, antara lain, yang akan kita pelajari sepanjang buku online ini.
Sebagian besar orang mengenali tanpa usaha angka-angka ini sebagai 504192. Itu
kemudahan itu menipu. Di setiap belahan otak kita, manusia memiliki sebuah
korteks visual primer, juga dikenal sebagai V1, mengandung 140 juta
neurons, dengan puluhan miliar koneksi di antara mereka. Dan, meskipun, penglihatan
humana melibatkan tidak hanya V1, tetapi serangkaian seluruh korteks visual–V2, V3, V4
V5–melakukan pemrosesan gambar yang semakin kompleks. Kami
kita memuat dalam pikiran kita sebuah superkomputer, disetel oleh evolusi untuk
longo dari ratusan juta tahun, dan dengan anggun beradaptasi untuk memahami dunia
visual. Mengakui angka tulisan tangan tidaklah mudah. Sebaliknya, kami manusia
kami hebat, luar biasa baik, dalam memahami apa yang mata kami
kebanyakan kerja ini dilakukan secara tidak sadar. Dan, oleh karena itu,
Biasanya kita tidak menghargai seberapa sulitnya masalah pada sistem visual kita.
Kesulitan dalam mengenali pola visual menjadi jelas jika Anda mencoba
menulis program komputer untuk mengenali digit seperti di atas. Apa yang
terlihat mudah ketika kita sebagai manusia melakukannya, tiba-tiba, itu menjadi sangat sulit
sulit. Intuisi sederhana tentang bagaimana kita mengenali bentuk - “sebuah 9 memiliki lingkaran di
topo adalah kursus vertikal di sudut kanan bawah" –tidak begitu mudah untuk diungkapkan
algoritmik. Ketika Anda mencoba membangun aturan ini secara tepat, Anda akan merasa
hilang dengan cepat dalam berbagai pengecualian, pengecualian dan kasus khusus. Ini agak
menyengsarakan.
Jaringan saraf menangani masalah tersebut dengan cara yang berbeda. Idenya adalah untuk mengambil sebuah
jumlah besar digit tulisan tangan, yang dikenal sebagai contoh pelatihan, dan
kemudian, mengembangkan sistem yang dapat belajar dari contoh-contoh ini
pelatihan. Dengan kata lain, jaringan saraf menggunakan contoh-contoh untuk menyimpulkan
secara otomatis aturan untuk pengenalan digit tulisan tangan. Selain itu, saat
meningkatkan jumlah contoh pelatihan, jaringan dapat belajar lebih banyak tentang
kaligrafi, dan dengan demikian meningkatkan akurasinya. Kita bisa membangun pengenalan
angka tulisan tangan lebih baik menggunakan ribuan, juta atau miliar contoh dari
pelatihan.
Sepanjang beberapa bab berikutnya, kita akan memulai perjalanan kita menuju arsitektur yang lebih
lanjutan dari Deep Learning, mengembangkan sebuah program komputer
mengimplementasikan jaringan saraf yang belajar mengenali digit tulisan tangan.
program tidak akan menggunakan pustaka jaringan saraf khusus (kami hanya akan menggunakan bahasa
Python). Tetapi program ini dapat mengenali digit dengan akurasi lebih dari
96%, tanpa intervensi manusia. Selain itu, di bab-bab selanjutnya, kami akan mengembangkan
ide-ide yang dapat meningkatkan akurasi menjadi lebih dari 99%. Sebenarnya, jaringan terbaik
jaringan komersial sekarang begitu baik sehingga digunakan oleh bank untuk memproses
cek dan agen pos untuk mengenali alamat.
Kami sedang fokus pada pengenalan manuskrip karena ini adalah sebuah keunggulan
masalah prototipe untuk belajar tentang jaringan saraf secara umum. Sebagai prototipe, ia
menemukan titik menarik: ini adalah tantangan - tidak begitu sederhana untuk mengenali digit
naskah - tetapi juga tidak terlalu sulit dan tidak membutuhkan solusi yang sangat
rumit, atau kekuatan komputasi yang luar biasa. Selain itu, ini adalah cara yang bagus
untuk mengembangkan teknik yang lebih canggih, seperti pembelajaran mendalam. Dan begitu, saat
panjang buku, kita akan kembali berulang kali ke masalah pengenalan digit
naskah. Nanti, di buku ini, kita akan membahas bagaimana ide-ide ini dapat diterapkan
masalah lain dalam visi komputer, dan juga dalam pengenalan suara,
pemrosesan bahasa alami dan bidang lainnya.
Sepanjang jalan, kami akan mengembangkan banyak ide kunci tentang jaringan saraf,
termasuk dua jenis penting neuron buatan (perceptron dan neuron)
sigmoid) dan algoritma pembelajaran standar untuk jaringan saraf, dikenal sebagai
penurunan stokastik gradien. Kami akan menjelaskan mengapa hal-hal dilakukan dengan cara ini
apa mereka dan dalam membangun intuisi mereka tentang jaringan saraf. Ini memerlukan diskusi
lebih panjang daripada hanya memperkenalkan mekanika dasar tentang apa yang sedang terjadi, tetapi
vale a pena untuk pemahaman yang lebih mendalam yang akan Anda capai. Dan pada akhir ini
buku, Anda akan mendapatkan pemahaman yang baik tentang apa itu pembelajaran mendalam dan bagaimana ini
mengubah dunia!
Jika Anda tidak memiliki pengetahuan tentang bahasa Python, kami merekomendasikan kursus
gratisPython Dasar untuk Analisis Data. Diaakan memberikan dasar yang bagus
dari segala sesuatu yang Anda butuhkan untuk mulai mengembangkan jaringan saraf Anda.
Bab 6–Perceptron–Bagian 1
Apakah Anda tahu apa saja arsitektur utama dari jaringan saraf buatan? Tidak.
Jadi, analisislah gambar di bawah ini dengan saksama (pekerjaan luar biasa yang dibuat oleh
tim Institut Asimov, yang tautannya dapat Anda temukan di bagian referensi.
akhir dari bab ini):
Luar biasa, bukan? Ada berbagai arsitektur, digunakan untuk menyelesaikan berbagai jenis dari
masalah, seperti arsitektur jaringan saraf konvolusional yang digunakan
dalam masalah Penglihatan Komputer dan jaringan saraf berulang yang digunakan di
masalah Pemrosesan Bahasa Alami. Kami akan mempelajari hampir semua ini
arsitektur di sini di buku ini. Ya, itu benar yang Anda baca. Kami hanya
mulai!! Jika Anda ingin belajar membangun model dan proyek menggunakan ini
arsitektur dan bekerja dengan bahasa Python dan Google TensorFlow, klikdi sini.
Walaupun semua arsitektur ini adalah jaringan saraf buatan, tidak semuanya adalah
Pembelajaran Mendalam. Apa yang menjadi ciri model pembelajaran mendalam, seperti namanya
sugere, adalah jaringan saraf buatan dengan banyak lapisan tersembunyi (atau perantara).
Sebelum kita sampai di sana, kita perlu melewati arsitektur yang paling sederhana dari sebuah
jaringan saraf buatan, Perceptron. Seperti kata pepatah: “Setiap perjalanan besar
mulailah dengan langkah pertama.
Model Perceptron dikembangkan pada dekade 1950-an dan 1960-an oleh ilmuwan Frank
Rosenblatt, terinspirasi oleh karya-karya sebelumnya dari Warren McCulloch dan Walter Pitts.
Hari ini, lebih umum menggunakan model neuron buatan lainnya, tetapi Perceptron
memungkinkan pemahaman yang jelas tentang bagaimana sebuah jaringan saraf berfungsi dalam istilah
matematika, menjadi pengantar yang sangat baik.
Jadi, bagaimana cara kerja Perceptron? Sebuah Perceptron adalah model matematis yang
menerima beberapa masukan, x1, x2, … dan menghasilkan satu keluaran biner:
Pada contoh yang ditunjukkan, Perceptron memiliki tiga input: x1, x2, x3. Rosenblatt mengusulkan
sebuah aturan sederhana untuk menghitung keluaran. Dia memperkenalkan bobot, w1, w2, ..., angka nyata
mengungkapkan pentingnya setiap input untuk output. Output neuron, 0
ou 1, ditentukan oleh jumlah tertimbang, Σjwjxj, lebih kecil atau lebih besar dari nilai tertentu
limiar (ambang). Sama seperti bobot, ambang adalah angka riil yang merupakan
parameter neuron. Untuk menjelaskannya dalam istilah aljabar yang lebih tepat:
Ini adalah model matematis dasar. Salah satu cara untuk memikirkan tentang Perceptron adalah bahwa itu adalah
sebuah perangkat yang mengambil keputusan dengan membuktikan bukti. Biarkan saya memberi contoh.
Ini bukan contoh yang sangat realistis, tetapi mudah dipahami, dan segera kita akan sampai di
contoh yang lebih realistis. Anggaplah akhir pekan akan datang dan Anda mendengar
berbicara bahwa akan ada festival keju di kotamu. Kamu suka keju dan sedang
mencoba memutuskan apakah akan pergi ke festival atau tidak. Anda dapat mengambil keputusan Anda dengan mempertimbangkan tiga hal.
faktor-faktor:
Kita dapat mewakili ketiga faktor ini dengan variabel biner yang sesuai x1, x2 dan
x3. Misalnya, kita akan memiliki x1 = 1 jika cuacanya baik dan x1 = 0 jika cuacanya tidak baik.
ruim. Dengan cara yang sama, x2 = 1 jika pacar Anda ingin pergi ke festival dengan
anda, dan x2 = 0, jika tidak. Dan serupa untuk x3 dan transportasi publik.
Sekarang, anggaplah Anda sangat menyukai keju dan bersedia pergi ke festival, meskipun kau
pacar atau pacar tidak tertarik dan festival berlangsung di tempat yang sulit
akses dan transportasi umum tidak tersedia secara luas. Selain itu, Anda benar-benar
detesta cuaca buruk, dan tidak ada cara untuk pergi ke festival jika cuacanya buruk. Anda bisa menggunakan
Perceptron untuk memodelkan jenis pengambilan keputusan ini.
Salah satu cara untuk melakukan ini adalah dengan memilih berat w1 = 6 untuk waktu dan w2 = 2 serta w3 = 2
untuk kondisi lainnya. Nilai lebih besar dari w1 menunjukkan bahwa waktu sangat penting
bagi Anda, jauh lebih penting daripada apakah pacar Anda akan menemani Anda atau tidak
festival itu dekat dengan transportasi umum. Akhirnya, anggaplah Anda memilih sebuah
ambang 5 untuk Perceptron. Dengan pilihan ini, Perceptron mengimplementasikan
model pengambilan keputusan yang diinginkan, menghasilkan 1 setiap kali cuaca baik dan
0 setiap kali cuaca buruk. Tidak ada perbedaan untuk hasilnya jika pacar Anda
Apakah pacarmu ingin pergi, atau jika transportasi publik terjangkau.
Dengan memvariasikan bobot dan ambang batas, kita dapat memperoleh model pengambilan keputusan yang berbeda.
Misalnya, anggap kita memilih ambang batas 3. Jadi, Perceptron akan memutuskan
anda seharusnya pergi ke festival setiap kali cuaca baik atau ketika festival
berada dekat dengan transportasi umum dan pacar Anda bersedia untuk
bergabung dengan Anda. Dengan kata lain, itu akan menjadi model pengambilan keputusan yang berbeda.
Mengurangi ambang batas berarti Anda lebih cenderung untuk pergi ke festival.
Ngomong-ngomong, ketika kita mendefinisikan Perceptrons, kita mengatakan bahwa sebuah Perceptron hanya memiliki
sebuah keluaran. Di jaringan di atas, Perceptron tampaknya memiliki beberapa hasil. Sebenarnya,
mereka masih merupakan keluaran tunggal. Panah keluaran ganda hanyalah cara yang sederhana
berguna untuk menunjukkan bahwa keluaran dari sebuah Perceptron sedang digunakan sebagai masukan untuk beberapa
perceptron lainnya.
Anda dapat menganggap bias sebagai ukuran seberapa mudah mendapatkan Perceptron untuk
memproduksi satu. Atau untuk mengatakannya dengan istilah yang lebih biologis, bias adalah ukuran dari
betapa mudahnya membuat Perceptron terpicu. Untuk sebuah Perceptron dengan bias
sangat besar, sangat mudah bagi Perceptron untuk mengeluarkan 1. Tapi jika biasnya adalah
sangat negatif, jadi sulit bagi Perceptron untuk mengeluarkan 1. Jelas, pengenalan
do viés é apenas uma pequena mudança em como descrevemos Perceptrons, tetapi
kita akan melihat lebih lanjut bahwa ini mengarah pada penyederhanaan notasi lainnya. Karena itu, di
sisa buku, kita tidak akan menggunakan ambang batas, kita akan selalu menggunakan bias.
Sekarang mulai lebih mudah untuk memahami konsep di balik jaringan saraf
artifisial dan ini akan sangat berguna ketika kita mempelajari arsitektur yang lebih maju! Sebuah
Perseptron mengikuti model 'feed-forward', yang berarti bahwa input dikirim
untuk neuron, diproses dan menghasilkan keluaran. Pada diagram di bawah ini, itu
berarti bahwa jaringan (sebuah neuron) membaca dari kiri ke kanan.
Proses pelatihan model Perceptron terdiri dari membuat agar
model belajar nilai ideal dari bobot dan bias. Kami memperkenalkan data kepada model
masukan dan kemungkinan keluaran, kami melatih model dan bobot serta bias dipelajari. Dengan
model yang dilatih, kita dapat menyajikan data input baru dan model akan mampu
meramalkan keluaran. Kita akan melihat ini segera ketika kita membuat model pertama kita menggunakan
bahasa Python.
Perceptron adalah jaringan syaraf lapisan tunggal dan Perceptron multi-lapisan adalah
disebut Jaringan Syaraf Tiruan. Perceptron adalah pengklasifikasi linier (biner).
Selain itu, ini digunakan dalam pembelajaran terawasi dan dapat digunakan untuk mengklasifikasikan
data masukan yang diberikan.
Tetapi Perceptron masih memiliki karakteristik penting lainnya, seperti representasi dari
kondisi logis (dan, atau, xor), masalah dengan data yang tidak dapat dipisahkan secara non-linear dan
sebagai fungsi aktivasi. Tetapi itu adalah tema untuk bab selanjutnya. Sampai saat itu!
Bab 7–Perceptron–Bagian 2
Perceptron adalah model matematis dari neuron biologis. Sementara di antara kita
neuron sejati, dendrit menerima sinyal listrik dari akson neuron lain, di
Perceptron sinyal listrik ini direpresentasikan sebagai nilai numerik. Di dalam
sinapsis antara dendrit dan akson, sinyal listrik dimodulasi dalam berbagai
kuantitas. Ini juga dimodelkan di Perceptron dengan mengalikan setiap nilai dari
masuk dengan nilai yang disebut berat. Sebuah neuron nyata memicu sinyal keluaran
hanya ketika kekuatan total sinyal masukan melebihi ambang batas tertentu. Kami
kami memodelkan fenomena ini dalam sebuah Perceptron dengan menghitung jumlah tertimbang dari
entri untuk mewakili kekuatan total dari sinyal masukan dan menerapkan sebuah fungsi dari
aktivasi pada jumlah untuk menentukan output-nya. Seperti pada jaringan saraf biologis, ini
keluaran diberi makan ke dalam Perceptron lainnya. Kami mempelajari semua ini di bab sebelumnya.
Sekarang mari kita lanjutkan diskusi kita tentang Perceptron dengan memahami beberapa hal lagi.
konsep-konsep, yang akan menjadi fundamental nantinya ketika kita mempelajari arsitektur
lanjutan dari Deep Learning.
Sebelum memulai, mari kita definisikan dua konsep yang akan sering Anda lihat mulai sekarang.
dari sekarang, vektor input dan vektor bobot:
Vektor input - semua nilai input dari setiap Perceptron dikumpulkan secara kolektif
panggilan dari vektor input Perceptron ini. Ini adalah data inputnya.
Vektor bobot - dengan cara yang sama, semua nilai bobot dari setiap Perceptron adalah
secara kolektif disebut sebagai vektor bobot dari Perceptron ini. Kami memulai jaringan saraf kami
artificial dengan nilai acak dari bobot dan selama pelatihan jaringan saraf belajar
nilai berat ideal. Seperti yang akan kita lihat, ada banyak cara untuk melakukannya
proses.
Sebagian besar pekerjaan dari jaringan saraf akan berfokus pada operasi aljabar
antara vektor masukan dan vektor bobot. Selanjutnya, kita akan menambahkan yang lain
lapisan matematis atau statistik untuk melakukan berbagai operasi, sesuai dengan
masalah yang sedang kita coba selesaikan dengan model jaringan saraf. Anda akan
menyadari bahwa semuanya tidak lebih dari Matematika, yang dapat diterapkan dengan
bahasa pemrograman, kumpulan data besar dan pengolahan paralel, untuk
membentuk sistem Kecerdasan Buatan.
Kami menjelaskan Perceptron sebagai metode untuk menimbang bukti guna mengambil
keputusan. Cara lain di mana Perceptrons dapat digunakan adalah untuk menghitung
fungsi logika dasar seperti AND, OR, dan NAND (jika ada keraguan tentang
operasi logika, lihat referensi di akhir bab ini). Sebagai contoh, anggaplah
semoga kita memiliki Perceptron dengan dua input, masing-masing dengan bobot -2 dan bias 3.
Berikut adalah Perceptron kami:
Jadi kita melihat bahwa input 00 akan menghasilkan output 1, karena (-2) * 0 + (-2) * 0 + 3
= 3, adalah positif (hasil positif, menghasilkan keluaran 1 dari Perceptron, ingat bab
anterior?). Di sini, kami menyertakan simbol * untuk menjadikan perkalian eksplisit.
Perhitungan serupa menunjukkan bahwa input 01 dan 10 menghasilkan output 1. Tetapi input
11 menghasilkan keluaran 0, karena (-2) * 1 + (-2) * 1 + 3 = -1, itu negatif. Dan demikianlah kami
Perceptron mengimplementasikan sebuah "gerbang" NAND, atau operasi logika biner NAND.
Contoh NAND menunjukkan bahwa kita dapat menggunakan Perceptrons untuk menghitung fungsi logika
Sederhana. Sebenarnya, kita dapat menggunakan jaringan Perceptron untuk menghitung fungsi apa pun
logika. Alasan adalah bahwa gerbang NAND adalah universal untuk komputasi, yaitu, kita dapat
membangun sembarang komputasi dengan gerbang NAND.
Sebuah jaringan Perceptron dapat digunakan untuk mensimulasikan sebuah sirkuit yang mengandung banyak
gerbang NAND. Dan karena gerbang NAND bersifat universal untuk komputasi, maka diikuti
bahwa Perceptron juga bersifat universal untuk komputasi. Mengingat bahwa
Perceptron adalah model paling sederhana dari jaringan saraf, bayangkan apa yang bisa dilakukan dengan
model-model yang jauh lebih maju! Anda benar jika berpikir tentang Kecerdasan Buatan.
Namun, situasinya lebih baik daripada pandangan ini menyarankan. Ternyata kita dapat
mengembangkan algoritma pembelajaran yang dapat secara otomatis menyesuaikan bobot dan
berbagai jaringan neuron buatan. Penyesuaian ini terjadi sebagai respons terhadap rangsangan
eksternal, tanpa intervensi langsung dari seorang programmer. Algoritma pembelajaran ini
memungkinkan kita menggunakan neuron buatan dengan cara yang sangat berbeda
dua gerbang logika konvensional. Alih-alih meletakkan secara eksplisit sebuah rangkaian
NAND dan gerbang lainnya, jaringan saraf kami dapat dengan sederhana belajar menyelesaikan
masalah, kadang-kadang masalah yang akan sangat sulit untuk dirancang
langsung menggunakan sirkuit logika konvensional.
Sesuai yang disebutkan di atas, sebuah Perceptron menghitung jumlah tertimbang dari nilai-nilai
entrada. Untuk kesederhanaan, anggaplah ada dua nilai masukan, x dan y untuk
sebuah Perceptron P. Mari kita tentukan bobot x dan y, sebagai A dan B,
secara berurutan. Jumlah tertimbang dapat direpresentasikan sebagai: A x + B y.
Sebuah Perceptron tunggal hanya dapat menyelesaikan fungsi yang dapat dipisahkan secara linear.
fungsi tidak terpisah non-linear, Perceptron tidak dapat menghasilkan hiperplane,
garis ini di grafik di bawah, untuk memisahkan data. Masalahnya adalah di dunia nyata
jarang data dapat dipisahkan secara linier, sehingga Perceptron tidak
sangat berguna untuk kegiatan praktis (tetapi ideal untuk memulai studi jaringan
jaringan saraf buatan). Dan bagaimana kita memisahkan data yang tidak dapat dipisahkan secara non-linier? Lanjutkan
menyertai buku ini dan Anda akan menemukan.
Di grafik di atas, kedua sumbu adalah masukan yang dapat menghasilkan nilai 0 atau 1 dan
angka di grafik adalah keluaran yang diharapkan untuk input tertentu. Menggunakan vektor
berat yang sesuai untuk setiap kasus, sebuah Perceptron tunggal dapat melaksanakan semua ini
fungsi.
Namun, tidak semua operator logika dapat dipisahkan secara linier. Untuk
contoh, operator XOR tidak dapat dipisahkan secara linier dan tidak dapat dicapai oleh sebuah
perceptron tunggal. Namun, masalah ini dapat diatasi dengan menggunakan lebih dari satu
Perceptron yang diorganisir dalam jaringan saraf feed-forward, yang akan kita lihat lebih lanjut di depan.
bab-bab berikutnya.
Karena tidak mungkin untuk menggambar garis untuk membagi wilayah yang mengandung 1 atau 0, a
fungsi XOR tidak dapat dipisahkan secara linier, seperti yang dapat dilihat pada grafik di atas.
Sekarang lebih mudah untuk memahami mengapa kita membutuhkan arsitektur yang lebih maju
dari jaringan saraf buatan, karena kita memiliki masalah kompleks di dunia nyata,
seperti Visi Komputer, Pemrosesan Bahasa Alami, Terjemahan, Deteksi
tentang Penipuan, Klasifikasi dan banyak lainnya. Dan kita akan melihat arsitektur ini secara rinci.
Sebelum itu, kita perlu membicarakan tentang komponen dasar jaringan saraf, yaitu
Fungsi Aktivasi. Jangan lewatkan bab berikutnya. Sampai jumpa.
Lingkaran hitam pada gambar di atas adalah neuron. Setiap neuron ditandai oleh
bobot, bias dan fungsi aktivasi. Data masukan diberi makan ke lapisan
masukan. Neuron melakukan transformasi linier pada masukan melalui bobot dan bias. A
transformasi non-linier dilakukan oleh fungsi aktivasi. Informasi bergerak dari
lapisan input untuk lapisan tersembunyi. Lapisan tersembunyi melakukan pemrosesan
dan mengirimkan keluaran akhir ke lapisan keluaran. Ini adalah pergerakan langsung dari informasi
dikenal sebagai propagasi langsung. Tapi bagaimana jika hasil yang dihasilkan jauh dari nilai
Diharapkan? Dalam jaringan saraf, kami akan memperbarui bobot dan bias neuron berdasarkan
tidak ada kesalahan. Proses ini dikenal sebagai backpropagation. Setelah semua data
melalui proses ini, bobot dan bias akhir digunakan untuk prediksi.
Tenang, tenang, tenang. Banyak informasi dalam satu paragraf, saya tahu! Mari kita lanjutkan.
Bagian. Kita sudah membahas input, bobot, dan bias di bab sebelumnya. Fungsi
Kami akan membahas sekarang tentang deaktivasi dan propagasi langsung serta backpropagation yang telah kita diskusikan.
di bab-bab berikutnya!
Fungsi Aktivasi
Algoritma pembelajaran itu fantastis. Tetapi bagaimana kita dapat mengembangkan ini
algoritma untuk jaringan saraf buatan? Misalkan kita memiliki sebuah jaringan dari
Perceptron yang ingin kami gunakan untuk belajar menyelesaikan suatu masalah. Oleh
contoh, input untuk jaringan dapat berupa data piksel dari sebuah gambar
digitalisasi, ditulis tangan, dari satu digit. Kami ingin jaringan belajar bobot dan
bias agar keluaran jaringan mengklasifikasikan digit dengan benar. Untuk melihat bagaimana
pembelajaran bisa berfungsi, bayangkan kita melakukan sedikit perubahan pada beberapa
bobot (atau bias) di jaringan. Yang kita inginkan adalah agar perubahan bobot kecil ini menyebabkan
hanya sedikit perubahan yang sesuai di keluaran jaringan. Seperti yang akan kita lihat di sebuah
momen, properti ini akan memungkinkan pembelajaran. Secara skematis, di sini
ini adalah apa yang kita inginkan (jelas, jaringan ini sangat sederhana untuk melakukan pengenalan
dari penulisan, tetapi tenang saja kita akan melihat jaringan yang jauh lebih kompleks).
Jika benar bahwa perubahan kecil pada suatu bobot (atau bias) membuat
jika kita hanya memiliki sedikit perubahan pada hasilnya, maka kita bisa menggunakan fakta ini
untuk memodifikasi bobot dan nilai bias agar jaringan kita berperilaku lebih baik
cara yang kita inginkan. Misalnya, anggaplah jaringan mengklasifikasikan dengan salah
sebuah gambar seperti "8" ketika seharusnya menjadi "9". Kita bisa mencari tahu bagaimana cara membuat sebuah
perubahan kecil pada bobot dan bias agar jaringan sedikit lebih mendekati
klasifikasi gambar sebagai "9". Dan kemudian, kita akan mengulang ini, mengubah bobot dan
nilai bias berulang kali untuk menghasilkan hasil yang lebih baik dan lebih baik. Jaringan akan
belajar.
Masalahnya adalah bahwa ini bukan yang terjadi ketika jaringan kita hanya mengandung
Perceptron, seperti yang kita pelajari di bab sebelumnya. Sebenarnya, sebuah kecil
perubahan pada bobot dari satu Perceptron dalam jaringan kadang-kadang dapat membuat agar
keluar dari Perceptron ini berubah total, misalnya dari 0 ke 1. Perubahan ini bisa
jadi menyebabkan perilaku sisa jaringan berubah sepenuhnya dengan cara yang
sangat rumit. Jadi, sementara "9" Anda sekarang dapat diklasifikasikan dengan benar,
perilaku jaringan di semua gambar lainnya kemungkinan akan berubah
sepenuhnya dengan cara yang sulit dikendalikan. Mungkin ada cara pintar untuk
menyelesaikan masalah ini. Ya, ada. Dan itu dikenal sebagai fungsi aktivasi.
Fungsi aktivasi adalah elemen yang sangat penting dari jaringan saraf
artifisial. Mereka pada dasarnya memutuskan apakah neuron harus diaktifkan atau tidak. Dengan kata lain,
apakah informasi yang diterima neuron relevan dengan informasi yang diberikan
Anda harus diabaikan. Lihat pada rumus di bawah ini bagaimana fungsi aktivasi adalah satu lagi
lapisan matematika dalam pemrosesan.
Fungsi aktivasi adalah transformasi non-linear yang kita lakukan pada sinyal
keluaran. Keluaran yang diubah ini kemudian dikirim ke lapisan neuron berikutnya
sebagai input. Ketika kita tidak memiliki fungsi aktivasi, bobot dan bias dengan sederhana
membuat transformasi linier. Sebuah persamaan linier mudah diselesaikan, tetapi itu adalah
terbatas dalam kemampuannya untuk menyelesaikan masalah kompleks. Jaringan saraf tanpa
fungsi aktivasi pada dasarnya hanya model regresi linier. Fungsi dari
aktivasi membuat transformasi non-linier pada data masukan, menjadikannya mampu
belajar dan menjalankan tugas yang lebih kompleks. Kami ingin agar jaringan saraf kami
berfungsi dalam tugas-tugas rumit, seperti terjemahan bahasa (Pengolahan
Bahasa Alam) dan klasifikasi gambar (Penglihatan Komputer). Sebagai
transformasi linier tidak akan pernah mampu melakukan tugas-tugas seperti itu.
Namun tidak ada hanya satu jenis fungsi aktivasi. Sebenarnya ada beberapa, masing-masing
Apa yang akan digunakan dalam berbagai situasi. Mari kita lihat deskripsi singkat tentang jenis yang paling umum.
populer.
f(x) = 1, x>=0
f(x) = 0, x<0
Fungsi langkah biner adalah itu, sangat sederhana. Itu bisa digunakan saat
membuat klasifikasi biner. Ketika kita hanya perlu mengatakan ya atau tidak untuk
satu kelas tunggal, fungsi langkah akan menjadi pilihan terbaik, karena akan mengaktifkan neuron atau
akan menjadi nol.
Fungsi ini lebih teoretis daripada praktis, karena, dalam kebanyakan kasus, kita mengklasifikasikan yang
data dalam berbagai kelas daripada hanya satu kelas tunggal. Fungsi langkah tidak akan
mampu melakukan ini.
Selain itu, gradien fungsi langkah adalah nol. Ini membuat fungsi langkah
jangan terlalu berguna selama backpropagation ketika gradien dari fungsi-fungsi
aktivasi dikirim untuk perhitungan kesalahan untuk meningkatkan dan mengoptimalkan hasil. O
gradien dari fungsi langkah mengurangi semuanya menjadi nol dan peningkatan model benar-benar
tidak terjadi. Mengingat, sekali lagi, bahwa kita akan melihat secara rinci konsep-konsep dari
gradien dan backpropagation lebih lanjut, di bab-bab berikutnya!
Fungsi Linear
Kami melihat masalah dengan fungsi langkah, gradien yang nol, tidak mungkin untuk memperbarui
gradien selama backpropagation. Alih-alih fungsi langkah sederhana,
kita bisa mencoba menggunakan fungsi linear. Kita dapat mendefinisikan fungsi tersebut sebagai:
f(x) = ax
Derivatif dari fungsi linier adalah konstan, yaitu, tidak bergantung pada nilai masukan x.
Ini berarti bahwa setiap kali kita melakukan backpropagation, gradiennya akan sama. Dan
ini adalah masalah besar, kami sebenarnya tidak memperbaiki kesalahan, karena
gradiennya hampir sama. Dan bukan hanya menganggap bahwa kita sedang mencoba untuk melakukan
tugas yang rumit di mana kita membutuhkan beberapa lapisan di jaringan kita.
Sekarang, jika setiap lapisan memiliki transformasi linier, tidak masalah berapa banyak lapisan
kita memiliki, keluaran akhir hanyalah suatu transformasi linier dari masukan. Oleh karena itu, a
fungsi linier dapat ideal untuk tugas sederhana, di mana interpretabilitas sangat tinggi
diinginkan.
Sigmoid
f (x) = 1 / (1 + e ^ -x)
Ini adalah fungsi halus dan terus menerus dapat didiferensiasi. Keuntungan terbesar dibandingkan dengan
fungsi langkah dan fungsi linier adalah bahwa itu tidak linier. Ini adalah karakteristik
sangat menarik dari fungsi sigmoid. Ini secara esensial berarti bahwa ketika
saya memiliki beberapa neuron dengan fungsi sigmoid sebagai fungsi aktivasi - keluarannya
juga tidak linier. Fungsi ini bervariasi dari 0 hingga 1 dengan bentuk S.
Fungsi sigmoid masih banyak digunakan hingga hari ini, tetapi kita masih memiliki masalah.
yang perlu kita bahas. Dengan sigmoid, kita mengalami masalah ketika gradiennya
tornam sangat kecil. Ini berarti bahwa gradiennya mendekati nol dan a
jaringan tidak benar-benar belajar.
Masalah lain yang dihadapi fungsi sigmoid adalah nilai-nilainya hanya bervariasi dari 0 hingga 1.
Ukuran ini bahwa fungsi sigmoida tidak simetris di sekitar asal dan nilai-nilai
yang diterima semuanya positif. Tidak selalu kita ingin nilai yang dikirim ke
neurón siguiente sean todos del mismo signo. Esto puede abordarse mediante la ampliación
dari fungsi sigmoida. Ini adalah tepat apa yang terjadi pada fungsi tanh.
Tanh
Fungsi tanh sangat mirip dengan fungsi sigmoid. Sebenarnya, itu hanya versi
escalonada dari fungsi sigmoida.
Tanh berfungsi dengan cara yang mirip dengan fungsi sigmoida, tetapi simetris terhadap
asal. bervariasi dari -1 hingga 1.
Dasarnya, menyelesaikan masalah kita tentang nilai, yang semuanya memiliki tanda yang sama.
Semua properti lainnya adalah sama dengan fungsi sigmoid. Ini kontinu dan
diferensiasi di semua titik. Fungsi ini tidak linier, jadi kita dapat melakukan
backpropagation dengan mudah mengoreksi kesalahan.
ReLU
Fungsi ReLU adalah unit linier yang direktifikasi. Ini didefinisikan sebagai:
ReLU adalah fungsi aktivasi yang paling banyak digunakan saat merancang jaringan saraf.
saat ini. Pertama-tama, fungsi ReLU adalah non-linier, yang berarti kita dapat
mudah untuk menyalin kesalahan ke belakang dan memiliki berbagai lapisan neuron yang diaktifkan oleh
fungsi ReLU.
Keuntungan utama menggunakan fungsi ReLU dibandingkan dengan fungsi aktivasi lainnya adalah bahwa ia
tidak mengaktifkan semua neuron pada saat yang sama. Apa artinya ini? Jika Anda melihat ke
fungsi ReLU dan jika inputnya negatif, itu akan diubah menjadi nol dan neuron tidak
akan diaktifkan. Ini berarti bahwa, pada saat yang sama, hanya beberapa neuron yang diaktifkan,
mengembalikan jaringan yang jarang dan efisien serta mudah untuk komputasi.
Mas ReLU juga bisa mengalami masalah dengan gradien yang bergerak ke arah
nol. Tapi ketika kita memiliki masalah, kita selalu bisa berpikir tentang solusi. Ngomong-ngomong,
ini adalah apa yang paling dicari perusahaan saat ini: "pemecah masalah".
Jadilah seorang dan employabilitas Anda akan terjamin!
Leaky ReLU
Fungsi Leaky ReLU tidak lebih dari versi yang ditingkatkan dari fungsi ReLU. Pada fungsi
ReLU, gradiennya adalah 0 untuk x < 0, yang membuat neuron mati karena aktivasi ini.
wilayah. Leaky ReLU membantu mengatasi masalah ini. Alih-alih mendefinisikan fungsi Relu
sebagai 0 untuk x yang kurang dari 0, kami mendefinisikannya sebagai komponen linier kecil dari x. Bisa
didefinisikan sebagai:
f(x) = ax x < 0
f(x) = x, x >= 0
Apa yang kami lakukan di sini adalah kami hanya menggantikan garis horizontal dengan sebuah garis
tidak nol, tidak horizontal. Di sini satu adalah nilai kecil seperti 0,01 atau sesuatu yang serupa. A
keuntungan utama dari mengganti garis horizontal adalah menghilangkan gradien nol.
Softmax
Fungsi softmax juga merupakan jenis fungsi sigmoid, tetapi berguna ketika kita mencoba
lidar dengan masalah klasifikasi. Fungsi sigmoid seperti yang kita lihat sebelumnya adalah
mampu menangani hanya dua kelas. Apa yang harus kita lakukan ketika kita mencoba
lidar dengan berbagai kelas? Hanya mengklasifikasikan ya atau tidak untuk satu kelas saja tidak
fungsi softmax mengubah keluaran untuk setiap kelas menjadi nilai antara 0 dan
1 dan juga membagi dengan jumlah keluaran. Ini pada dasarnya memberikan probabilitas dari
masuk ke dalam kelas tertentu. Dapat didefinisikan sebagai:
Katakanlah, misalnya, kita memiliki keluaran seperti [1.2, 0.9, 0.75], ketika kita menerapkan
fungsi softmax, kita akan mendapatkan [0.42, 0.31, 0.27]. Jadi, sekarang kita bisa menggunakannya sebagai
probabilitas bahwa nilai berada di setiap kelas.
Sekarang kita sudah melihat begitu banyak fungsi aktivasi, kita perlu beberapa logika/heuristik
untuk mengetahui fungsi aktivasi mana yang harus digunakan dalam situasi tertentu. Tidak ada aturan
emas dan pilihan tergantung pada masalah yang sedang Anda kerjakan.
Namun, tergantung pada sifat masalah, kita dapat membuat yang lebih baik
pilih untuk konvergensi jaringan saraf yang mudah dan cepat.
Fungsi Sigmoid dan kombinasi mereka biasanya bekerja lebih baik pada kasus
klasifikator.
Fungsi Sigmoid dan Tanh kadang-kadang dihindari karena masalah Vanishing
Gradien (yang akan kita pelajari di bab tentang jaringan saraf berulang).
Fungsi ReLU adalah fungsi aktivasi umum dan digunakan dalam sebagian besar kasus
saat ini.
Jika kita menemukan kasus neuron yang defisit dalam jaringan kita, fungsi Leaky
ReLU adalah pilihan terbaik.
Selalu ingat bahwa fungsi ReLU hanya boleh digunakan di lapisan
tersembunyi.
Sebagai aturan umum, Anda dapat mulai menggunakan fungsi ReLU dan kemudian beralih ke
fungsi aktivasi lain dalam kasus ReLU tidak memberikan hasil yang optimal.
Apakah Anda mulai merasakan getaran dalam bekerja dengan Kecerdasan Buatan? Jadi
terus ikuti, karena kita baru saja memulai! Sampai bab berikutnya!
Lapisan paling kiri di jaringan ini disebut lapisan input dan neuron-neuronnya
di dalam lapisan disebut neuron input. Lapisan paling kanan atau
keluaran berisi neuron keluaran atau, seperti dalam kasus ini, satu neuron keluaran.
lapisan tengah disebut sebagai lapisan tersembunyi, karena neuron di lapisan ini tidak
itu adalah masuk atau keluar. Istilah “tersembunyi” mungkin terdengar sedikit misterius – yang pertama
sekali saya mendengar istilah tersebut, saya berpikir bahwa itu pasti memiliki beberapa makna filosofis atau
matemático profundo – mas isso realmente não significa nada mais do que “uma
lapisan yang bukan input atau output”. Jaringan di atas hanya memiliki satu lapisan
tersembunyi, tetapi beberapa jaringan memiliki beberapa lapisan tersembunyi. Misalnya, yang berikut
jaringan empat lapisan memiliki dua lapisan tersembunyi:
Jaringan lapisan ganda disebut Perceptron Multilapis atau MLP.
(Multi-Layer Perceptrons), yaitu jaringan saraf yang terdiri dari Perceptrons (meskipun pada
kebenaran adalah jaringan neuron sigmoid, seperti yang akan kita lihat lebih lanjut.
Desain lapisan input dan output dalam sebuah jaringan biasanya cukup langsung. Karena
contoh, anggaplah kita sedang mencoba menentukan apakah gambar tulisan tangan
mewakili sebuah “9” atau tidak. Sebuah cara alami untuk merancang jaringan adalah dengan mengodekan
intensitas piksel dari gambar di neuron input. Jika gambar tersebut adalah
gambar skala abu-abu 64 x 64, kita akan memiliki 64 × 64 = 4.096 neuron input,
dengan intensitas yang diukur secara tepat antara 0 dan 1. Lapisan keluaran
akan hanya memiliki satu neuron dengan nilai di bawah 0,5 yang menunjukkan bahwa "a
gambar input bukan 9" dan nilai lebih besar dari 0,5 menunjukkan bahwa "gambar dari
entrada adalah 9”.
Meskipun desain lapisan input dan output dari jaringan saraf adalah
sering langsung, bisa ada banyak variasi untuk desain lapisan tersembunyi.
Secara khusus, tidak mungkin merangkum proses desain lapisan tersembunyi dengan
beberapa aturan sederhana. Sebagai gantinya, peneliti jaringan saraf mengembangkan
banyak heuristik desain untuk lapisan tersembunyi, yang membantu orang untuk mendapatkan
perilaku yang mereka inginkan dari jaringan mereka. Kita akan mengenal berbagai heuristik desain
jenis ini nanti di sepanjang bab-bab berikutnya. Desain dari lapisan tersembunyi
ini adalah salah satu poin penting dalam model Deep Learning.
Sampai sekarang, kita sedang membahas jaringan saraf di mana keluaran dari satu lapisan digunakan sebagai
masuk ke lapisan berikutnya. Jaringan ini disebut jaringan saraf feedforward.
Ini berarti bahwa tidak ada loop di jaringan–informasi selalu diberikan untuk
di depan, tidak pernah dikirim kembali. Jika kita memiliki loop, kita akan menghadapi situasi di
bahwa input untuk fungsi σ akan tergantung pada output. Ini akan sulit dipahami dan,
Oleh karena itu, kami tidak mengizinkan loop seperti itu.
Namun, ada model lain dari jaringan syaraf buatan di mana sirkuit
umpan balik adalah mungkin. Model-model ini disebut jaringan saraf berulang. A
ideanya dalam model ini adalah memiliki neuron yang terpicu untuk jangka waktu tertentu
terbatas. Menembak dapat merangsang neuron lain, yang mungkin menembak sedikit lebih banyak
sore, juga untuk durasi yang terbatas. Ini membuat lebih banyak neuron
melepaskan dan, seiring waktu, kami berhasil menciptakan air terjun tembakan neuron.
Loop tidak menyebabkan masalah dalam model seperti itu, karena keluaran dari neuron mempengaruhi
hanya masuk Anda di beberapa titik kemudian, tidak langsung.
Ini adalah jenis jaringan saraf yang paling umum digunakan dalam aplikasi praktis. Lapisan pertama
adalah input dan lapisan terakhir adalah output. Jika ada lebih dari satu lapisan tersembunyi, kami
kami sebut sebagai jaringan saraf "dalam" (atau Deep Learning). Jenis-jenis jaringan ini
neuron menghitung serangkaian transformasi yang mengubah kesamaan antara
kasus. Aktivitas neuron di setiap lapisan adalah fungsi non-linear dari
aktivitas di lapisan sebelumnya.
2–Jaringan Berulang
Jenis jaringan saraf ini memiliki siklus terarah dalam grafik koneksinya. Ini
berarti bahwa terkadang Anda dapat kembali ke tempat Anda mulai mengikuti panah. Mereka
mereka bisa memiliki dinamika yang rumit dan ini bisa membuat mereka sangat sulit untuk dilatih.
Sementara itu, jenis-jenis ini lebih realistis secara biologis.
Saat ini, ada banyak minat untuk menemukan cara efisien dalam melatih jaringan
jaringan berulang. Jaringan saraf berulang adalah cara yang sangat alami untuk memodelkan
data berurutan. Mereka setara dengan jaringan yang sangat dalam dengan satu lapisan
tersembunyi di setiap potongan waktu; kecuali bahwa mereka menggunakan berat yang sama di setiap potongan
tempo dan menerima input di setiap irisan. Mereka memiliki kemampuan untuk mengingat informasi
dalam keadaan tersembunyi mereka untuk waktu yang lama, tetapi sangat sulit untuk melatih mereka untuk
memanfaatkan potensi ini.
Ini seperti jaringan berulang, tetapi koneksi antara unit-unit bersifat simetris
(mereka memiliki bobot yang sama di kedua arah). Jaringan simetris jauh lebih
lebih mudah dianalisis daripada jaringan berulang. Mereka juga lebih terbatas dalam hal
dapat dilakukan karena mematuhi fungsi energi. Jaringan terhubung
simetris tanpa unit tersembunyi disebut sebagai "Jaringan Hopfield". Jaringan
terhubung simetris dengan unit tersembunyi disebut sebagai 'Mesin'
Boltzmann
Dari 3 kategori ini, kita dapat mencantumkan 10 arsitektur utama dari jaringan saraf:
Ingin belajar membangun arsitektur jaringan saraf ini dengan cara yang efisien,
profesional dan sepenuhnya praktis, dengan mini-proyek untuk solusi masalah dari
dunia nyata, dalam visi komputer, pemrosesan bahasa alami, deteksi
penipuan, peramalan deret waktu dan banyak lagi? Jadi, cek satu-satunya kursus
daring di Brasil, 100% dalam bahasa Portugis, di mana Anda belajar semuanya tentang arsitektur ini.
Klik pada tautan di bawah ini untuk mengakses program lengkap:
Di bab berikutnya, kami akan memberikan gambaran umum tentang masing-masing dari 10 ini
arsitektur dan sepanjang bab-bab berikutnya, kita akan mempelajari semuanya. Masing-masing
dari arsitektur ini telah digunakan untuk menyelesaikan berbagai masalah dan membuat sistem
Kecerdasan Buatan. Mampu bekerja dengan AI secara efisien akan menjadi penentu.
untuk masa depan profesional Anda.
Sangat sulit untuk menulis program yang menyelesaikan masalah seperti mengenali sebuah
objek tiga dimensi dari sudut pandang baru dalam kondisi baru
pencahayaan di sebuah adegan yang berantakan. Kami tidak tahu program komputer mana
menulis mengapa kita tidak tahu bagaimana proses itu terjadi di otak kita. Bahkan jika
jika kita memiliki ide yang bagus tentang cara melakukannya, program ini bisa sangat luar biasa
rumit.
Beberapa contoh tugas yang lebih baik diselesaikan melalui pembelajaran mesin meliputi:
Pembelajaran Mesin adalah bidang yang luas dalam Kecerdasan Buatan. Tetapi satu
sub-area Pembelajaran Mesin, Deep Learning (atau Jaringan Saraf Dalam), datang
mendapatkan hasil pada tingkat seni untuk tugas-tugas yang disebutkan di atas. Di sini
di bab ini Anda akan menemukan 10 Arsitektur Jaringan Saraf Utama, di antaranya adalah
arsitektur utama Deep Learning.
Perseptron, sesuai yang kita pelajari di bab-bab sebelumnya, adalah algoritma sederhana
ditujukan untuk melakukan klasifikasi biner; yaitu, memprediksi apakah masukan termasuk dalam suatu
kategori yang ditentukan minat atau tidak: penipuan atau tidak_penipuan, kucing atau tidak_kucing.
Sebuah Perceptron adalah pengklasifikasi linier; dengan kata lain, ini adalah algoritma yang mengklasifikasikan
masuk memisahkan dua kategori dengan garis lurus. Masuk biasanya merupakan vektor
dari sumber daya dikalikan dengan bobot ditambahkan dengan bias (atau bias) b. Di sini sebuah
contoh Perceptron: y = w * x + b. Sebuah Perceptron menghasilkan satu keluaran dengan
berdasarkan beberapa input nilai nyata, membentuk kombinasi linier menggunakan bobot
(dan terkadang melewatkan keluaran melalui fungsi aktivasi non-linear).
Rosenblatt membangun sebuah Perceptron dengan satu lapisan. Dengan kata lain, algoritmanya tidak termasuk
berbagai lapisan, yang memungkinkan jaringan saraf untuk memodelkan sebuah hierarki dari
sumber daya. Ini menghambat Perceptron untuk melakukan klasifikasi non-linear, seperti
fungsi XOR (sebuah pemicu dari operator XOR ketika input menunjukkan suatu
karakteristik atau lain, tetapi tidak keduanya, berarti "ATAU eksklusif" "), seperti Minsky dan
Papert menunjukkan dalam bukunya.
Sebuah Multilayer Perceptron (MLP) adalah jaringan saraf buatan yang terdiri dari lebih dari satu
Perceptron. Mereka terdiri dari satu lapisan input untuk menerima sinyal, satu
lapisan output yang mengambil keputusan atau prediksi tentang input, dan di antara keduanya,
sejumlah lapisan tersembunyi yang arbitrer yang merupakan mekanisme sebenarnya
komputasional dari MLP. MLP dengan satu lapisan tersembunyi mampu mendekati
fungsi kontinu apa pun.
Jaringan feed forward, seperti MLP, mirip dengan ping-pong. Mereka terutama
terlibat dalam dua gerakan, sebuah konstanta pergi dan kembali. Dalam peralihan ke
frente, aliran sinyal bergerak dari lapisan input melalui lapisan tersembunyi ke
lapisan keluaran dan keputusan lapisan keluaran diukur terhadap keluaran
diharapkan.
Dalam proses mundur, menggunakan backpropagation dan aturan rantai (Chain Rule),
turunan parsial dari fungsi kesalahan dari berbagai bobot dan bias direproduksi melalui
MLP. Tindakan diferensiasi ini memberi kita gradien, di sepanjang mana parameter
dapat disesuaikan seiring mereka menggerakkan MLP selangkah lebih dekat ke kesalahan minimum.
Ini dapat dilakukan dengan algoritma optimisasi berbasis gradien mana pun, seperti
penurunan stokastik dari gradien. Jaringan terus bermain permainan ping-pong itu sampai
bahwa kesalahan tidak bisa lagi dikurangi (telah mencapai minimum yang mungkin). Keadaan ini adalah
dikenal sebagai konvergensi.
Tampaknya banyak sekali? Ya, memang. Kita akan melihat proses ini lebih rinci di sini.
buku dan jika Anda ingin belajar membangun model MLP untuk aplikasi praktis, melalui
untuk video dalam bahasa Portugis, klik di sini.
Pada tahun 1998, Yann LeCun dan rekan-rekannya mengembangkan sebuah pengenal,
benar-benar baik, untuk digit tertulis tangan yang disebut LeNet. Ia menggunakan backpropagation
dalam jaringan feed forward dengan banyak lapisan tersembunyi, banyak peta unit
direplikasi di setiap lapisan, mengelompokkan keluaran unit-unit yang berdekatan, membentuk sebuah
jaringan luas yang dapat menangani beberapa karakter sekaligus, bahkan jika mereka
menumpuk dan merupakan cara yang cerdas untuk melatih sistem secara keseluruhan, bukan hanya satu
pengenal. Kemudian, arsitektur ini diformalkan dengan nama jaringan saraf.
konvolusional.
Jaringan Saraf Konvolusional (ConvNets atau CNNs) adalah jaringan saraf buatan
profundas yang dapat digunakan untuk mengklasifikasikan gambar, mengelompokkannya berdasarkan kesamaan
(mencari foto) dan melakukan pengenalan objek dalam adegan. Ini adalah algoritma
yang dapat mengidentifikasi wajah, individu, rambu jalan, wortel, ornitorinkus, dan banyak lagi
aspek lain dari data visual.
Efektivitas jaringan konvolusional dalam pengenalan gambar adalah salah satu utama
alasan mengapa dunia menyaksikan efektivitas pembelajaran mendalam. Jenis ini
Jaringan sedang mendorong kemajuan besar dalam Visi Komputer, yang memiliki
aplikasi yang jelas dalam mobil otonom, robotika, drone, keamanan, diagnosis
dokter dan perawatan untuk penyandang disabilitas penglihatan.
Jaringan konvolusional mengonsumsi dan memproses gambar sebagai tensor dan tensor adalah
matriks angka dengan berbagai dimensi. Mereka bisa sulit untuk divisualisasikan, jadi
mari kita mendekatinya dengan analogi. Sebuah skalar hanyalah sebuah angka, seperti 7; sebuah vektor adalah
sebuah daftar angka (misalnya, [7,8,9]); dan sebuah matriks adalah sebuah kisi persegi panjang dari
angka yang menempati beberapa baris dan kolom seperti spreadsheet. Secara geometris, jika
sebuah skalar adalah titik berdimensi nol, jadi sebuah vektor adalah garis berdimensi satu,
sebuah matriks adalah sebuah bidang dua dimensi, sekumpulan matriks adalah sebuah kubus tiga dimensi
dan ketika setiap elemen dari matriks ini memiliki tumpukan peta sumber daya yang terhubung ke
ele, kamu masuk ke dimensi keempat. Tenang, jangan panik (belum). Kita akan melihat ini lebih lanjut
ke depan dengan tenang, ketika kita belajar secara eksklusif arsitektur ini. Dalam kami
kursus di Akademi Data Science kami mencakup kelas lengkap tentang Aljabar Linier, di mana
skalar, vektor, matriks, dan tensor dipelajari dalam teori dan praktik, karena ini
pengetahuan adalah dasar dalam membangun jaringan saraf dalam.
Hal pertama yang perlu diketahui tentang jaringan konvolusional adalah bahwa mereka tidak memahami gambar.
seperti manusia. Oleh karena itu, Anda harus berpikir dengan cara yang berbeda tentang apa yang
sebuah gambar berarti ketika diberi makan dan diproses oleh jaringan konvolusional.
Anda perlu memperhatikan dengan seksama ukuran setiap dimensi volume dari
gambar, karena mereka adalah dasar dari operasi aljabar linier yang digunakan untuk memproses
gambar. Kita bisa mendedikasikan dua bab penuh hanya untuk arsitektur ini. Omong-omong, itu adalah
apa yang akan kita lakukan di depan sini di buku dan apa yang sudah kita lakukan dalam praktik di sini.
3- Jaringan Saraf Berulang
Jaringan berulang adalah sekumpulan algoritma jaringan saraf buatan yang kuat
khususnya berguna untuk pemrosesan data berurutan, seperti suara, data dari
seri waktu atau bahasa alami. Sebuah versi dari jaringan berulang telah digunakan
pelo DeepMind no projeto video game dengan agen otonom.
Jaringan berulang berbeda dari jaringan feed forward karena mencakup sebuah loop.
umpan balik, di mana keluaran langkah n-1 disuplai kembali ke jaringan untuk mempengaruhi
hasil dari langkah n, dan seterusnya untuk setiap tahap berikutnya. Misalnya, jika
sebuah jaringan diuji dengan sebuah kata huruf demi huruf, dan diminta untuk menebak setiap hurufnya
melanjutkan, huruf pertama dari sebuah kata akan membantu menentukan apa itu jaringan ulang
pikirkan huruf kedua bisa jadi.
Ini berbeda dari jaringan feed forward, yang belajar mengklasifikasikan setiap angka tulisan tangan
misalnya, terlepas dari itu, dan sesuai dengan piksel yang terpapar dari
satu contoh, tanpa merujuk pada contoh sebelumnya untuk menyesuaikan prediksi Anda. Sebagai
jaringan feed forward menerima satu masukan pada satu waktu dan menghasilkan keluaran. Jaringan
rekursif tidak menghadapi batasan satu-untuk-satu yang sama.
Meskipun beberapa bentuk data, seperti gambar, tidak tampak sekuensial, mereka
dapat dipahami sebagai urutan ketika dimasukkan ke dalam jaringan berulang.
Pertimbangkan gambar kata yang ditulis tangan. Sama seperti jaringan berulang
proses penulisan manual, mengubah setiap gambar menjadi huruf dan menggunakan awal
dari sebuah kata untuk menebak bagaimana kata ini akan berakhir, maka jaringan bisa menangani
bagian dari gambar mana pun seperti huruf dalam urutan. Sebuah jaringan saraf yang melintasi
sebuah gambar besar dapat belajar dari setiap wilayah, apa yang dilakukan oleh wilayah tetangga,
lebih mungkin untuk menjadi.
Jaringan rekuren dan jaringan feed forward "mengingat" sesuatu tentang dunia,
memodelkan data yang terungkap. Tetapi mereka mengingat dengan cara yang sangat
berbeda. Setelah pelatihan, jaringan feed forward menghasilkan model statis dari
data dan model ini kemudian dapat menerima contoh baru dan mengklasifikasikannya atau mengelompokkannya
dengan akurasi.
Untuk lebih tepat, model rekursif mencakup status tersembunyi yang menentukan
klasifikasi sebelumnya dalam suatu seri. Di setiap tahap berikutnya, keadaan tersembunyi ini adalah
digabungkan dengan data input dari langkah baru untuk menghasilkan a) sebuah keadaan baru
tersembunyi dan kemudian b) sebuah klasifikasi baru. Setiap status yang tersembunyi didaur ulang untuk
memproduksi penerus modifikasi Anda.
Memori manusia juga sadar akan konteks, mendaur ulang kesadaran dari
status sebelumnya untuk menginterpretasikan data baru dengan benar. Misalnya, mari kita
pertimbangkan dua individu. Satu sadar bahwa dia dekat dengan rumah Bob. Yang lainnya
dia menyadari bahwa mereka telah naik pesawat. Mereka akan menafsirkan suara "Hai Bob!" dari dua
bentuk yang sangat berbeda, tepatnya karena mempertahankan keadaan tersembunyi yang dipengaruhi oleh mereka
memori jangka pendek dan sensasi sebelumnya.
Berbagai kenangan jangka pendek harus diceritakan kembali pada waktu yang berbeda,
akhir untuk memberikan makna yang tepat pada input saat ini. Beberapa dari ingatan ini mungkin telah
yang baru dibentuk dan kenangan lainnya akan membentuk banyak langkah sebelum menjadi
perlu. Jaringan berulang yang secara efektif mengaitkan ingatan dan input jarak jauh di
waktu disebut Memori Jangka Panjang (LSTM), yang akan kita lihat selanjutnya.
Pada pertengahan tahun 90-an, proposal para peneliti Jerman Sepp Hochreiter e
Juergen Schmidhuber memperkenalkan sebuah variasi dari jaringan recurrent yang disebut
unit-unit Memori Jangka Pendek dan Panjang, sebagai solusi untuk masalah
gradien yang menghilang, masalah umum dalam jaringan saraf berulang.
LSTM membantu menjaga kesalahan yang dapat disalin melalui waktu dan lapisan. Saat
mempertahankan kesalahan yang lebih konstan, mereka memungkinkan jaringan berulang untuk terus berjalan
belajar selama beberapa langkah waktu (lebih dari 1000), dengan demikian membuka saluran
untuk menghubungkan penyebab dan efek dari jarak jauh. Ini adalah salah satu tantangan utama untuk
pembelajaran mesin dan AI, karena algoritme sering kali
dihadapkan dengan lingkungan di mana sinyal penghargaan jarang dan tertunda,
seperti kehidupan itu sendiri. (Para pemikir religius membahas masalah yang sama ini dengan
ide-ide karma atau hadiah ilahi, mendalilkan konsekuensi yang tidak terlihat dan jauh
untuk tindakan kami).
LSTMs menyimpan informasi di luar aliran normal jaringan berulang dalam sebuah sel
ditutup. Informasi dapat disimpan, ditulis, atau dibaca dari sebuah
sel, seperti data dalam memori komputer. Sel tersebut membuat keputusan tentang apa yang
menyimpan, dan ketika mengizinkan pembacaan, penulisan, dan penghapusan, melalui gerbang yang terbuka
dan ditutup. Berbeda dengan penyimpanan digital di komputer, bagaimanapun, ini
pintu adalah analog, diimplementasikan dengan penggandaan elemen
sigmóides, yang semuanya berada dalam rentang 0-1. Analog memiliki keuntungan dibandingkan digital dalam
ser diferensial dan, oleh karena itu, sesuai untuk backpropagation.
Pintu-pintu ini berfungsi pada sinyal yang mereka terima dan, mirip dengan simpul jaringan
neural, mereka memblokir atau mentransmisikan informasi berdasarkan kekuatan dan kepentingannya,
yang mereka saring dengan set berat mereka sendiri. Berat ini, seperti berat yang
modulam a entrada e estados ocultos, são ajustados através do processo de
pembelajaran jaringan berulang. Artinya, sel-sel belajar ketika memungkinkan bahwa
data masuk, keluar atau dihapus melalui proses iteratif dari membuat
asumsi, menghitung kesalahan selama backpropagation dan menyesuaikan bobot melalui
penurunan gradien.
Diagram di bawah ini menggambarkan bagaimana data mengalir melalui sel memori dan adalah
dikendalikan oleh gerbang-gerbang mereka.
5- Jaringan Hopfield
Jaringan berulang dari unit non-linier biasanya sangat sulit untuk dianalisis.
Mereka dapat berperilaku dengan banyak cara berbeda: menetap dalam sebuah keadaan
stabil, berosilasi, atau mengikuti trajektori kaotik yang tidak dapat diprediksi di masa depan. Sebuah
Jaringan Hopfield terdiri dari unit batas biner dengan koneksi rekuren
di antara mereka. Pada tahun 1982, John Hopfield menyadari bahwa, jika koneksinya simetris, terdapat
sebuah fungsi energi global. Setiap "konfigurasi" biner dari seluruh jaringan memiliki
energi, sementara aturan keputusan dari batas biner membuat jaringan terkonformasi
dengan minimum dari fungsi energi ini. Cara yang sangat baik untuk menggunakan jenis ini
komputasi adalah menggunakan memori sebagai energi minimum untuk jaringan saraf. Menggunakan minimum dari
energi untuk merepresentasikan memori menghasilkan memori yang dapat diakses berdasarkan konten.
Sebuah item dapat diakses hanya dengan mengetahui sebagian dari isinya. Ini kuat
melawan kerusakan pada perangkat keras.
Setiap kali kami mengingat pengaturan, kami berharap dapat menciptakan minimum baru dari
energi. Tapi bagaimana jika dua minimum yang berdekatan berada di lokasi perantara? Ini membatasi
kapasitas Jaringan Hopfield. Jadi, bagaimana kita meningkatkan kapasitas Jaringan
Hopfield? Para fisikawan, ide bahwa matematika yang sudah mereka ketahui bisa
menjelaskan bagaimana otak berfungsi. Banyak artikel telah dipublikasikan di jurnal fisika
tentang Jaringan Hopfield dan kapasitas penyimpanannya. Pada akhirnya, Elizabeth
Gardner menemukan bahwa ada aturan penyimpanan yang jauh lebih baik yang menggunakan
kapasitas total dari berat. Alih-alih mencoba menyimpan vektor sekaligus, ia
melakukan pelatihan pada set data berkali-kali dan menggunakan prosedur
konvergensi Perceptron untuk melatih setiap unit untuk memiliki keadaan yang benar, diberikan
status dari semua unit lain dalam vektor ini. Para statistikawan, teknik ini disebut
pseudo-probabilitas
Ada peran komputasional lain untuk Jaringan Hopfield. Alih-alih menggunakan jaringan untuk
menyimpan memori, kami gunakan untuk membangun interpretasi dari masukan sensorik. S
masukan diwakili oleh unit yang terlihat, interpretasi diwakili oleh
negara bagian unit tersembunyi dan kesalahan interpretasi direpresentasikan oleh energi.
6- Mesin Boltzmann
Sebuah prosedur efisien untuk pembelajaran mini-batch telah diusulkan untuk Mesin
de Boltzmann oleh Salakhutdinov dan Hinton pada tahun 2012.
O backpropagation dianggap sebagai metode standar dalam jaringan saraf buatan untuk
menghitung kontribusi kesalahan setiap neuron setelah memproses sekumpulan data
(kita akan memiliki satu bab penuh tentang ini). Namun, ada beberapa masalah
penting dalam backpropagation. Pertama-tama, memerlukan data pelatihan
diberi label; sementara hampir semua data tidak memiliki label. Kedua, waktu
pembelajaran tidak berkembang dengan baik, yang berarti sangat lambat di jaringan dengan
beberapa lapisan tersembunyi. Ketiga, bisa terjebak dalam 'lokasi optimal'.
Oleh karena itu, untuk jaringan dalam, backpropagation jauh dari kata optimal.
Pila RBM ini dapat diakhiri dengan lapisan Softmax untuk membuat sebuah
klasifikator, atau bisa membantu mengelompokkan data yang tidak tercatat dalam sebuah
skenario pembelajaran tanpa pengawasan.
Dengan pengecualian lapisan awal dan akhir, setiap lapisan dalam Jaringan Keyakinan Dalam
memiliki fungsi ganda: ia berfungsi sebagai lapisan tersembunyi untuk node yang datang sebelumnya, dan
sebagai lapisan input (atau "terlihat") untuk simpul-simpul yang datang setelahnya. Ini adalah jaringan
dibangun dengan jaringan lapisan tunggal.
Jaringan Kepercayaan Dalam digunakan untuk mengenali, mengelompokkan, dan menghasilkan gambar,
urutan video dan data tangkapan gerakan. Aplikasi lain dari Deep
Jaringan Keyakinan adalah dalam Pengolahan Bahasa Alami. Jenis jaringan ini telah
diperkenalkan oleh Geoff Hinton dan murid-muridnya pada tahun 2006.
8- Auto-Encoder Dalam
Sebuah Deep Auto-Encoder terdiri dari dua jaringan simetris Deep Belief yang
biasanya memiliki empat atau lima lapisan dangkal yang mewakili setengah dari
pengkodean (encoder) dari jaringan dan kumpulan kedua dari empat atau lima lapisan yang
membentuk setengah dari dekoder.
Singkatnya, setiap dokumen dalam sebuah koleksi diubah menjadi Bag-of-Words (atau
sebuah, sekumpulan hitungan kata) dan hitungan kata ini adalah
dimensikan untuk desimal antara 0 dan 1, yang dapat dipikirkan sebagai probabilitas
dari suatu kata yang terjadi dalam dokumen.
Sekumpulan angka dari setiap dokumen, atau vektor, kemudian dimasukkan ke dalamnya
ruang vektor, dan jaraknya dari vektor dokumen lain yang diukur. Dalam
termos aproximados, os vetores de documentos próximos se enquadram no mesmo
topik. Sebagai contoh, sebuah dokumen bisa menjadi "pertanyaan" dan yang lainnya bisa menjadi
“respostas”, kombinasi yang akan dibuat perangkat lunak menggunakan ukuran ruang vektor.
Singkatnya, sekarang ada banyak cara berbeda untuk melakukan pra-pelatihan lapisan-
por-lapisan sumber daya. Untuk kumpulan data yang tidak memiliki jumlah besar
dari kasus yang diberi label, pra-pelatihan membantu pembelajaran diskriminatif selanjutnya.
Untuk kumpulan data yang sangat besar dan terlabel, tidak perlu menginisialisasi bobot
digunakan dalam pembelajaran terawasi dengan menggunakan pra-pelatihan tidak terawasi,
bahkan untuk jaringan mendalam. Pra-pelatihan adalah jalan pertama yang baik untuk
menginisialisasi bobot untuk jaringan dalam, tetapi sekarang ada cara lain. Tapi jika
Kami membangun jaringan yang jauh lebih besar, kami akan membutuhkan pelatihan ulang lagi! Jika
ingin belajar membangun Deep Auto-Encoders di Python, klik di sini.
GANs diperkenalkan dalam sebuah artikel oleh Ian Goodfellow dan peneliti lainnya
dari Universitas Montreal di Kanada, termasuk Yoshua Bengio, pada tahun 2014.
Merujuk pada GAN, direktur penelitian AI Facebook, Yann LeCun,
menyebutnya pelatihan adversarial "ide yang paling menarik dalam 10 tahun terakhir di
Pembelajaran Mesin
Potensi GAN sangat besar, karena mereka dapat belajar untuk meniru apa pun
distribusi data. Dengan kata lain, GAN dapat diajarkan untuk menciptakan dunia
aneh mirip dengan kami di bidang mana pun: gambar, musik, suara,
prosa. Mereka adalah seniman robot dalam suatu pengertian, dan produksi mereka mengesankan - bahkan
sama menyengat.
Untuk memahami GAN, Anda harus tahu bagaimana algoritma generator bekerja, dan
Untuk itu, membandingkannya dengan algoritma diskriminatif adalah berguna. Algoritma
diskriminatif mencoba mengklasifikasikan data masukan; yaitu, data dari fitur sebuah
instance data, they predict a label or category to which this data belongs.
Sebagai contoh, dengan mempertimbangkan semua kata dalam sebuah email, suatu algoritma
diskriminatif dapat memprediksi apakah pesan itu spam atau tidak_spam. Spam adalah salah satu
label, dan tas kata (Bag of Words) yang dikumpulkan dari email adalah fitur yang
merupakan data masukan. Ketika masalah ini dinyatakan secara matematis, maka
label disebut y dan sumber daya disebut x. Formulasi p (y | x) digunakan
untuk menunjukkan "probabilitas y diberikan x", yang dalam kasus ini akan diterjemahkan menjadi "a
probabilitas sebuah email menjadi spam dengan kata-kata yang terkandung.
Oleh karena itu, algoritma diskriminatif memetakan fitur ke label. Mereka berada
hanya khawatir tentang korelasi ini. Satu cara untuk memikirkan tentang algoritme
generatif adalah bahwa mereka melakukan sebaliknya. Alih-alih memprediksi sebuah label dengan tertentu
sumber daya, mereka mencoba memprediksi sumber daya dengan label tertentu.
Pertanyaan yang coba dijawab oleh algoritma penghasil adalah: mengasumsikan bahwa email ini adalah spam,
apa probabilitas sumber daya? Sementara model diskriminatif memperhatikan
dengan hubungan antara y dan x, model generatif memperhatikan "bagaimana Anda mendapatkan
x”. Mereka memungkinkan Anda untuk menangkap p (x | y), probabilitas x diberikan y, atau a
probabilitas karakteristik yang ditawarkan dalam sebuah kelas. (Dengan kata lain, algoritma
Generator juga dapat digunakan sebagai pengklasifikasi, meskipun mereka dapat membuat
lebih dari sekadar mengkategorikan data masukan.)
Cara lain untuk memikirkan tentang ini adalah membedakan diskriminatif dari generator seperti ini:
Sementara itu, generator sedang membuat gambar baru yang dikirim ke diskriminator.
Ini terjadi dengan harapan bahwa mereka juga dianggap otentik,
meskipun mereka palsu. Tujuan dari generator adalah untuk menghasilkan angka yang ditulis tangan oleh diri sendiri.
Tujuan dari diskriminator adalah untuk mengidentifikasi gambar yang berasal dari generator sebagai
palsu.
Berikut adalah langkah-langkah yang dilakukan oleh GAN:
Discriminasi berada dalam loop umpan balik dengan gambar asli, yang
kami kenal.
Generator berada dalam loop umpan balik dengan diskriminator.
Ingin belajar cara membangun GAN, salah satu arsitektur paling luar biasa dari Deep
Pembelajaran, 100% dalam bahasa Portugis dan 100% online, untuk menghasilkan gambar secara otomatis?
Klik di sini.
Pada akhir tahun 2017, Geoffrey Hinton dan timnya menerbitkan dua artikel yang
mengenalkan jenis baru dari jaringan saraf yang disebut Capsules. Selain itu, tim
mempublikasikan algoritma, yang disebut routing dinamis antar kapsul, yang memungkinkan
melatih jaringan ini.
Untuk semua orang di komunitas Deep Learning, ini adalah berita besar, dan untuk berbagai
alasan. Pertama-tama, Hinton adalah salah satu pendiri Deep Learning dan seorang
penemu berbagai model dan algoritma yang saat ini banyak digunakan. Di
di tempat kedua, artikel-artikel ini menghadirkan sesuatu yang benar-benar baru, dan itu sangat
menggembirakan karena kemungkinan akan merangsang gelombang tambahan penelitian dan
aplikasi yang sangat inovatif.
Seperti Kapsul memperkenalkan sebuah blok bangunan baru yang dapat digunakan di dalam
pembelajaran mendalam untuk memodelkan hubungan hierarkis dengan lebih baik di dalam
representasi pengetahuan internal dari jaringan syaraf. Intuisi di baliknya adalah
sangat sederhana dan elegan.
Hinton dan timnya mengusulkan cara untuk melatih jaringan yang terdiri dari kapsul ini
dia melatihnya dengan sukses di set data yang sederhana, mencapai kinerja
ponta. Ini sangat menggembirakan. Namun, ada tantangan. Implementasi saat ini adalah
jauh lebih lambat daripada model-model modern lainnya dalam pembelajaran mendalam. Waktu
akan menunjukkan bagaimana jaringan Capsules dapat dilatih dengan cepat dan efisien. Selain
disso, precisamos ver se mereka bekerja dengan baik dalam set data yang lebih sulit dan di
berbagai domain.
Dalam hal apa pun, jaringan Capsule adalah model yang sangat menarik dan sudah berfungsi.
yang pasti akan berkembang seiring waktu dan akan berkontribusi pada yang lebih besar
perluasan aplikasi pembelajaran mendalam.
Kami memasukkan Capsules di antara 10 arsitektur jaringan saraf utama, karena mereka
mewakili inovasi dan kemajuan di bidang Deep Learning yang luar biasa dan dinamis
sistem Kecerdasan Buatan. Profesional yang benar-benar ingin mengadopsi AI
sebagai karier, harus memperhatikan gerakan dan inovasi di bidang tersebut.
Ini bukan daftar definitif arsitektur dan ada yang lain, seperti Word2Vec,
Doc2vec, Neural Embeddings dan variasi arsitektur yang disajikan di sini,
seperti Denoising Autoencoders, Variational Autoencoders, serta kategori lainnya
seperti Pembelajaran Penguatan Dalam. Tepatnya untuk membantu mereka yang mencari
pengetahuan terdepan 100% dalam bahasa Portugis dan 100% online, yang kami ciptakan
a Formação Inteligência Artificial, satu-satunya program lengkap di Brasil, dengan semua
alat yang dibutuhkan siswa untuk belajar bekerja dengan AI secara efisien. O
siswa belajar pemrograman paralel di GPU, Pembelajaran Mendalam dan kerangkanya,
mempelajari arsitektur utama dengan aplikasi praktis dan mengembangkan aplikasi dari
Visi Komputer dan Pemrosesan Bahasa Alami. Klik di sini untuk melihat lebih banyak
rinci tentang program.
Ini menyimpulkan bagian pertama dari buku ini, dengan pengantar ke dalam alam semesta Deep
Pembelajaran. Di bab berikutnya kita akan mulai melihat jaringan saraf bekerja. Sampai saat itu;