0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan54 halaman

Panduan Lengkap Jaringan Saraf Buatan

1. Dokumen ini membahas sejarah dan konsep kunci dari jaringan saraf buatan, dari asal-usul yang terinspirasi oleh otak biologis hingga perkembangan modern yang dimungkinkan oleh big data dan perangkat keras GPU. 2. Dijelaskan bahwa jaringan saraf sudah ada sejak tahun 1950-an, tetapi potensinya baru saja terungkap baru-baru ini dengan ketersediaan kumpulan data besar dan pemrosesan paralel di GPU. 3. Bab-bab tersebut membahas topik seperti neuron biologis.

Diterjemahkan oleh

ScribdTranslations
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan54 halaman

Panduan Lengkap Jaringan Saraf Buatan

1. Dokumen ini membahas sejarah dan konsep kunci dari jaringan saraf buatan, dari asal-usul yang terinspirasi oleh otak biologis hingga perkembangan modern yang dimungkinkan oleh big data dan perangkat keras GPU. 2. Dijelaskan bahwa jaringan saraf sudah ada sejak tahun 1950-an, tetapi potensinya baru saja terungkap baru-baru ini dengan ketersediaan kumpulan data besar dan pemrosesan paralel di GPU. 3. Bab-bab tersebut membahas topik seperti neuron biologis.

Diterjemahkan oleh

ScribdTranslations
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

Ringkasan

Bab 1– Pembelajaran Mendalam dan Badai Sempurnaa ................................................................... 2


Bab 2– Sejarah Singkat Jaringan Saraf Buatan.................................................. 3
Bab 3– Apa Itu Jaringan Saraf Buatan Terkembang atau Deep Learning?....................... 8
Bab 4– O Neurônio, Biologis dan Matematis..................................................................... 13
O Neurônio Biológico ............................................................................................................. 13
Neuron Matematika.......................................................................................................... 15
Bab 5– Menggunakan Jaringan Saraf Untuk Mengenali Digit Tangan.............................. 18
Bab 6– O Perceptron– Bagian 1............................................................................................ 20
Bab 7– O Perceptron– Bagian 2............................................................................................ 25
Tapi apa yang bisa dilakukan oleh sebuah Perceptron sebenarnya?.......................................................................... 26

Operasi Logis dan Wilayah yang Dapat Dipisahkan Secara Linier.......................................................... 27

Bab 8– Fungsi Aktivasio ................................................................................................ 29


Fungsi Aktivasi................................................................................................................. 30
Jenis-Jenis Populer dari Fungsi Aktivasi................................................................................ 32
Fungsi Langkah Biner................................................................. 32
Fungsi Linear...................................................................................................................... 33
Sigmoida............................................................................................................................. 33
Tanh..................................................................................................................................... 34
ReLU ................................................................................................................................... 34
ReL BocorU ........................................................................................................................ 34
Softmax............................................................................................................................... 35
Memilih Fungsi Aktivasi yang Tepat.......................................................................... 35
Bab 9– Arsitektur Jaringan Saraf........................................................................... 36
1– Jaringan Saraf Feed-Forwardd ........................................................................................ 38
2– Jaringan Berulangs ......................................................................................................... 38
3– Jaringan Terkoneksi Simetris................................................................................ 38
Bab 10– 10 Arsitektur Jaringan Saraf Teratass.................................................. 39
1- Jaringan Multilayer Perceptrons ............................................................................................. 40

2- Jaringan Saraf Konvolusional........................................................................................... 42


3- Jaringan Syaraf Rekuren................................................................................................. 44
4- Memori Jangka Panjang Pendek (LSTM)................................................................................... 45

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

Bab 1–Pembelajaran Mendalam dan Badai Sempurna


Minat terhadap Pembelajaran Mesin (Machine Learning) meledak dalam beberapa tahun terakhir
dekade. Dunia di sekitar kita sedang mengalami transformasi dan kita melihat sebuah
interaksi yang semakin besar antara aplikasi komputer dengan manusia.
Perangkat lunak deteksi spam, sistem rekomendasi, penandaan foto di media sosial
sosial, asisten pribadi yang diaktifkan dengan suara, mobil otonom, smartphone dengan
pengenalan wajah dan lebih banyak lagi.

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.

Fundamentally, Machine Learning adalah penggunaan algoritma untuk mengekstrak


informasi data mentah dan mewakilinya melalui jenis model tertentu
matematik. Kami lalu menggunakan model ini untuk membuat inferensi dari yang lain.
kumpulan data. Ada banyak algoritma yang memungkinkan untuk melakukan ini, tetapi satu jenis
terutama jaringan saraf buatan.

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.

Bab 2–Sejarah Singkat Jaringan Syaraf Tiruan


Untuk memahami di mana kita berada hari ini, kita perlu melihat ke masa lalu dan menganalisis bagaimana
kita telah sampai di sini. Mari kita lihat Sejarah Singkat Jaringan Syaraf Buatan.

O cérebro humano é uma máquina altamente poderosa e complexa capaz de processar


sejumlah besar informasi dalam waktu yang minimum. Unit utama dari
otak adalah neuron dan melalui mereka informasi dikirimkan dan
diproses. Tugas yang dilakukan oleh otak menarik perhatian para peneliti, seperti
contoh, kemampuan otak untuk mengenali wajah yang dikenal di antara kerumunan
dalam hanya milidetik. Jawaban tentang beberapa teka-teki dari cara kerja
pertanyaan tentang otak masih belum terjawab dan terus berlanjut hingga hari ini. Apa itu
Dikenal tentang cara kerja otak adalah bahwa ia mengembangkan aturannya sendiri
melalui pengalaman yang diperoleh dari situasi-situasi yang dialami sebelumnya.
Gambar1–Otak manusia, mesin paling fantastis yang ada di Planet Bumi.

Perkembangan otak manusia terjadi terutama dalam dua tahun pertama


de hidup, tapi terhanyut sepanjang hidup. Terinspirasi oleh model ini, berbagai
peneliti mencoba mensimulasikan fungsi otak, terutama proses
pembelajaran melalui pengalaman, untuk menciptakan sistem cerdas yang mampu melakukan
tugas seperti klasifikasi, pengenalan pola, pemrosesan gambar,
di antara kegiatan lainnya. Sebagai hasil dari penelitian ini lahirlah model neuron
buatan dan selanjutnya sebuah sistem dengan berbagai neuron yang saling terhubung, yang disebut
Jaringan Syaraf.

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.

Seiring dengan kemajuan komputer di tahun 1950-an,


akhirnya mungkin untuk mensimulasikan jaringan saraf hipotetis. Langkah pertama untuk itu
itu dibuat oleh Nathanial Rochester dari laboratorium penelitian IBM. Sayangnya
baginya, percobaan pertama untuk melakukannya gagal.

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.

Figur 2 - Beberapa Arsitektur Jaringan Syaraf

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.

Sayangnya, kesuksesan sebelumnya membawa orang-orang untuk melebih-lebihkan potensi dari


jaringan saraf, khususnya mengingat keterbatasan dalam elektronik, yang saat itu tersedia di
epoh. Kelebihan ini, yang berasal dari dunia akademis dan teknis, menginfeksi
literatur umum pada masa itu. Banyak janji dibuat, tetapi hasilnya adalah
kekecewaan. Selain itu, banyak penulis mulai merenungkan efek yang
“mesin berpikir” pada manusia. Seri Asimov tentang robot mengungkapkan efeknya
tentang moral dan nilai-nilai manusia ketika mesin mampu melakukan segalanya
pekerjaan manusia. Penulis lain menciptakan komputer yang lebih menakutkan, seperti
HAL dari film 2001.

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.

1958: Frank Rosenblatt menciptakan Perceptron, sebuah algoritma untuk pengenalan


pola berdasarkan pada jaringan saraf komputasi dua lapisan menggunakan sederhana
penjumlahan dan pengurangan. Dia juga mengusulkan lapisan tambahan dengan notasi matematika,
tetapi itu tidak akan dilakukan sampai 1975.

1980: Kunihiko Fukushima mengusulkan Neoconitron, sebuah jaringan saraf hierarki,


multilapis, yang digunakan untuk pengenalan tulisan tangan dan masalah lainnya
pengenalan pola.

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.

Pertengahan tahun 2000-an: istilah "pembelajaran mendalam" mulai mendapatkan


popularitas setelah sebuah artikel oleh Geoffrey Hinton dan Ruslan Salakhutdinov menunjukkan bagaimana
sebuah jaringan saraf multilapis dapat dilatih sebelumnya satu lapisan sekali.

2009: terjadi Workshop NIPS tentang Pembelajaran Mendalam untuk Pengenalan


dari Suara dan ditemukan bahwa dengan kumpulan data yang cukup besar, jaringan
jaringan saraf tidak perlu pra-pelatihan dan tingkat kesalahan menurun secara signifikan.

2012: algoritma pengenalan pola buatan mencapai kinerja di


tingkat manusia dalam tugas tertentu. Dan algoritma pembelajaran mendalam dari
Google mampu mengidentifikasi kucing.
2014: Google membeli Startup Kecerdasan Buatan bernama DeepMind.
Inggris Raya, seharga £ 400 juta

2015: Facebook mengimplementasikan teknologi pembelajaran mendalam yang disebut DeepFace.


dalam operasi untuk menandai dan mengidentifikasi pengguna Facebook secara otomatis di
fotografi. Algoritma menjalankan tugas yang lebih tinggi dalam pengenalan wajah menggunakan
jaringan dalam yang mempertimbangkan 120 juta parameter.

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.

Janji pembelajaran mendalam bukanlah bahwa komputer mulai berpikir


sebagai manusia. Ini seperti meminta sebuah apel untuk menjadi jeruk. Alih-alih
disso, menunjukkan bahwa, mengingat sekumpulan data yang cukup besar,
prosesor cepat dan algoritma yang cukup canggih, komputer
dapat mulai melakukan tugas yang sebelumnya hanya bisa dilakukan oleh
manusia, seperti mengenali gambar dan suara, membuat karya seni atau mengambil keputusan
itu sendiri.

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á.

Bab 3–Apa itu Jaringan Saraf Buatan Dalam


Pembelajaran Mendalam?

Pembelajaran Mendalam atau Deep Learning, adalah sub-bidang dari Pembelajaran


Mesin, yang menggunakan algoritma untuk memproses data dan meniru pemrosesan yang dilakukan
pada otak manusia. Tapi Apa Itu Jaringan Saraf Buatan Dalam atau Deep
Pembelajaran? Itu yang akan kita lihat di bab ini. Jangan khawatir jika beberapa istilah lebih
teknis tidak masuk akal sekarang. Semuanya akan dipelajari sepanjang buku ini
daring.

Deep Learning menggunakan lapisan neuron matematis untuk memproses data,


memahami ucapan manusia dan mengenali objek secara visual. Informasi disampaikan
melalui setiap lapisan, dengan keluaran dari lapisan sebelumnya memberikan masukan untuk
lapisan berikutnya. Lapisan pertama dalam sebuah jaringan disebut lapisan input,
sementara yang terakhir disebut sebagai lapisan keluaran. Semua lapisan di antara keduanya adalah
disebut sebagai lapisan tersembunyi. Setiap lapisan biasanya merupakan algoritma sederhana dan
uniform mengandung jenis fungsi aktivasi.

Fig4–Jaringan Saraf Sederhana dan Jaringan Saraf Dalam (Deep Learning)

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.

Peningkatan cepat dan tampaknya dominasi pembelajaran mendalam atas metode


tradisional pembelajaran mesin dalam berbagai tugas telah menjadi
menakjubkan untuk disaksikan dan, kadang-kadang, sulit untuk dijelaskan. Pembelajaran Mendalam adalah a
evolusi Jaringan Syaraf, yang pada gilirannya memiliki sejarah yang menarik yang
kembali ke tahun 1940-an, penuh dengan suka dan duka, liku-liku dan perubahan, teman-teman dan rival,
sukses dan kegagalan. Dalam sebuah cerita yang layak untuk film tahun 90-an, sebuah ide yang sudah
itu adalah semacam bebek jelek yang tumbuh menjadi bintang masa kini.

Akibatnya, minat dalam pembelajaran mendalam telah melambung,


cakupan konstan di media populer. Penelitian pembelajaran mendalam sekarang
muncul secara rutin di majalah seperti Science, Nature, Nature Methods, dan Forbes
hanya untuk menyebutkan beberapa. Pembelajaran mendalam telah mengalahkan Go, belajar mengemudikan sebuah
mobil, didiagnosis dengan kanker kulit dan autisme, menjadi seorang pemalsu seni ulung dan
bisa sampai berhalusinasi gambar fotorealistik.

Algoritma pembelajaran mendalam pertama yang memiliki beberapa lapisan dari


karakteristik non-linear dapat dilacak sampai Alexey Grigoryevich Ivakhnenko
(mengembangkan Metode Grup Manipulasi Data) dan Valentin Grigor'evich
Lapa (penulis Cybernetics and Forecasting Techniques) pada tahun 1965 (Gambar 5), yang
mereka menggunakan model yang lebih dalam dengan fungsi aktivasi polinomial
menganalisis dengan metode statistik. Di setiap lapisan, mereka memilih yang terbaik
sumber daya melalui metode statistik dan mengarahkan ke lapisan berikutnya. Mereka
mereka tidak menggunakan Backpropagation untuk melatih jaringan dari ujung ke ujung, tetapi mereka menggunakan
kuadrat minimum lapisan-demi-lapisan, di mana lapisan sebelumnya telah
terpisah diinstal di lapisan selanjutnya (proses yang lambat dan manual).

Fig5–Arsitektur jaringan dalam yang pertama dikenal dilatih oleh Alexey


Grigorevich Ivakhnenko pada tahun 1965.

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.

Jaringan saraf konvolusional pertama kali digunakan oleh Kunihiko Fukushima.


Fukushima merancang jaringan saraf dengan beberapa lapisan pengelompokan dan
konvolusi. Pada tahun 1979, ia mengembangkan jaringan saraf buatan, yang disebut
Neocognitron, yang menggunakan desain hierarkis dan multilapis. Desain ini memungkinkan
komputer "belajar" mengenali pola visual. Jaringan tersebut mirip dengan
versi modern, tetapi telah dilatih dengan strategi penguatan aktivasi
berulang dalam banyak lapisan, yang semakin kuat seiring waktu. Selain itu,
desain Fukushima memungkinkan sumber daya penting disesuaikan
secara manual meningkatkan 'berat' dari koneksi tertentu.

Banyak konsep Neocognitron masih digunakan. Penggunaan koneksi dari


cima para baixo e metode baru pembelajaran memungkinkan pelaksanaan sebuah
beragam jaringan saraf. Ketika lebih dari satu pola ditampilkan pada saat yang sama,
Model Attention Selektif dapat memisahkan dan mengenali pola individual
memindahkan perhatian Anda dari satu ke yang lain (proses yang sama yang kami gunakan di
multitasking). Neocognitron modern tidak hanya dapat mengidentifikasi pola dengan
informasi yang hilang (misalnya, angka 5 yang digambar secara tidak lengkap)
tetapi juga dapat melengkapi gambar dengan menambahkan informasi yang hilang. Ini
dapat digambarkan sebagai "inferensi".

O Backpropagation, penggunaan kesalahan dalam pelatihan model Deep Learning,


berkembang pesat pada tahun 1970. Saat itulah Seppo Linnainmaa menulis tesisnya
master, termasuk kode FORTRAN untuk Backpropagation. Sayangnya,
konsep itu tidak diterapkan pada jaringan saraf hingga 1985. Itu ketika Rumelhart, Williams dan
Hinton mendemonstrasikan Backpropagation dalam jaringan saraf yang dapat memberikan
representasi distribusi "menarik". Secara filosofis, penemuan ini membawa kepada
menyoroti pertanyaan dalam psikologi kognitif tentang apakah pemahaman manusia tergantung
dari logika simbolik (komputasionalisme) atau dari representasi yang terdistribusi (koneksi).
Pada tahun 1989, Yann LeCun memberikan demonstrasi praktis pertama dari Backpropagation.
tidak ada Bell Labs. Dia menggabungkan jaringan saraf konvolusional dengan Backpropagation untuk membaca
digit 'manuskrip' (topik bab selanjutnya). Sistem ini digunakan untuk membaca
jumlah cek tulisan tangan.

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!

Hingga 2011, kecepatan GPU meningkat secara signifikan, memungkinkan untuk


pembentukan jaringan syaraf konvolusional "tanpa" pelatihan awal lapis demi lapis. Dengan
peningkatan kecepatan komputasi, menjadi jelas bahwa Deep Learning memiliki
keuntungan signifikan dalam hal efisiensi dan kecepatan. Salah satu contohnya adalah
AlexNet, sebuah jaringan saraf konvolusional, yang arsitekturnya telah memenangkan berbagai kompetisi
internasional selama 2011 dan 2012. Unit linier yang direktifikasi digunakan untuk
meningkatkan kecepatan.
Juga pada tahun 2012, Google Brain meluncurkan hasil dari sebuah proyek yang tidak biasa
dikenal sebagai The Cat Experiment. Proyek jiwa bebas ini mengeksplorasi
kesulitan 'pembelajaran tanpa pengawasan'. Pembelajaran mendalam menggunakan
"pembelajaran terawasi", yang berarti bahwa jaringan saraf konvolusional dilatih
menggunakan data berlabel. Menggunakan pembelajaran tanpa pengawasan, sebuah jaringan saraf
konvolusional diberi data tidak ter , dan kemudian diminta untuk mencari
pola berulang.
Eksperimen Kucing menggunakan jaringan saraf yang didistribusikan di lebih dari 1.000 komputer.
Sepuluh juta gambar "tanpa label" diambil secara acak dari YouTube,
ditampilkan ke sistem dan kemudian perangkat lunak pelatihan diizinkan untuk menjadi
diekskusi. Di akhir pelatihan, sebuah neuron di lapisan teratas ditemukan
para merespons dengan kuat terhadap gambar kucing. Andrew Ng, pendiri proyek tersebut,
dia berkata: "Kami juga menemukan neuron yang merespons kuat terhadap wajah
manusia”. Pembelajaran tanpa pengawasan tetap menjadi bidang aktif dari
penelitian dalam Pembelajaran Mendalam.

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.

Bab 4–Neuron, Biologis dan Matematis


Untuk memahami logika kerja jaringan saraf, beberapa konsep
dasar-dasar yang berkaitan dengan fungsi otak manusia dan komponennya, yaitu
neurôn adalah sangat penting. Pembentukan koneksi antara sel dan
beberapa pertimbangan tentang bagaimana konsep teoritis tentang cara kerjanya
matematikawan, membantu memahami dasar-dasar pembelajaran mesin dan jaringan
neural. Mari kita lihat bagaimana neuron biologis berfungsi dengan meninggalkan Pembelajaran Mesin dari
tunggu sejenak!

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.

Gambar7–Representasi Sederhana dari Neuron Biologis


Otak kita terdiri dari miliaran neuron. Tapi mereka tidak terpisah.
Sebaliknya, ada ratusan miliar koneksi antara mereka, membentuk sebuah yang besar
jaringan komunikasi, jaringan saraf. Setiap neuron memiliki tubuh pusat, berbagai
dendrit dan sebuah akson. Dendrit menerima sinyal listrik dari neuron lainnya
melalui sinapsis, yang merupakan proses komunikasi antara neuron. Tubuh
selular memproses informasi dan mengirimkannya ke neuron lain.

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

Berdasarkan struktur dan fungsi neuron biologis, para peneliti mencoba


mensimulasikan sistem ini di komputer. Model yang paling diterima diajukan oleh
Warren McCulloch dan Walter Pitts pada tahun 1943, yang menerapkan dengan cara yang disederhanakan
komponen dan cara kerja neuron biologis. Dalam istilah sederhana, sebuah
neuron matematis dari jaringan saraf buatan adalah komponen yang menghitung jumlah
rata-rata dari beberapa input, menerapkan fungsi dan meneruskan hasilnya.

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:

Gambar9–Perkalian Matriks Antara Sinyal Masukan x dan Bobot Sinaptik w


(versi sederhana)

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

Gambar10–Representasi Neuron Matematis

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.

Bab 5–Menggunakan Jaringan Saraf Untuk Mengenali Digit


Manuskrip
Sistem visual manusia adalah salah satu keajaiban dunia. Pertimbangkan yang berikut ini
urutan digit tulisan tangan:

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:

Apakah cuacanya baik?


Apakah pacar Anda ingin menemani Anda?
Apakah festival dekat dengan transportasi umum? (Anda tidak memiliki mobil)

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.

Jelas, Perceptron bukanlah model lengkap untuk pengambilan keputusan manusia!


Namun yang diilustrasikan oleh contoh adalah bagaimana sebuah Perceptron dapat memberikan bobot pada berbagai jenis
bukti untuk mengambil keputusan. Dan harus tampak masuk akal bahwa jaringan kompleks dari
Perceptron dapat mengambil keputusan yang cukup subtil.
Dalam jaringan ini, kolom pertama dari Perceptrons–yang akan kita sebut sebagai lapisan pertama
de Perceptrons–sedang mengambil tiga keputusan yang sangat sederhana, menimbang bukti dari
Masuk. Dan bagaimana dengan Perceptrons di lapisan kedua? Masing-masing dari Perceptrons ini
sedang membuat keputusan dengan mempertimbangkan hasil dari lapisan pertama pengambilan keputusan
keputusan. Dengan cara ini, sebuah Perceptron di lapisan kedua dapat mengambil keputusan di
tingkat yang lebih kompleks dan lebih abstrak daripada Perceptron di lapisan pertama. Dan
keputusan yang bahkan lebih kompleks dapat dibuat oleh Perceptron di ketiga
lapisan. Dengan cara ini, jaringan Perceptron multi-lapisan dapat terlibat dalam
sebuah pengambilan keputusan yang canggih.

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.

Mari kita menyederhanakan cara kita mendeskripsikan Perceptrons. Dalam batasan


kondisi Σjwjxj > ambang kita dapat melakukan dua perubahan notasi untuk menyederhanakan
lo. Perubahan pertama adalah menulis Σjwjxj sebagai produk (dot product), w⋅x≡Σjwjxj,
onde w e x são vektor yang komponenya adalah bobot dan input, masing-masing.
perubahan kedua adalah memindahkan ambang batas ke sisi lain dari persamaan dan menggantinya dengan
yang dikenal sebagai bias (bias) dari Perceptron, atau b ≡-threshold. Menggunakan bias dalam
melalui ambang, aturan Perceptron dapat ditulis ulang:

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.

Tapi apa yang bisa dilakukan oleh sebuah Perceptron sebenarnya?

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.

Keterpaduan komputasional Perceptrons adalah sekaligus menenangkan dan


mengecewakan. Ini menghibur karena memberi tahu kita bahwa jaringan Perceptron dapat menjadi begitu
kuat seperti perangkat komputer lainnya. Tapi juga adalah
mengecewakan, karena tampaknya Perceptrons hanyalah sejenis baru dari
gerbang NAND. Ini bukan berita besar!

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.

Operasi Logika dan Wilayah yang Dapat Dipisahkan Secara Linier

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.

Karena Perceptron menghasilkan nilai tidak nol hanya ketika jumlah


jika bobot melebihi batas tertentu C, keluaran dari Perceptron ini dapat dituliskan sebagai
cara berikut:

Mengingat bahwa A x + B y > C dan A x + B y < C adalah dua daerah di bidang xy


terpisah oleh garis A x + B y + C = 0, dan jika kita juga mempertimbangkan masukan (x, y) sebagai
sebuah titik di sebuah bidang, jadi Perceptron benar-benar memberi tahu kita wilayah mana di bidang yang
titik ini milik. Wilayah-wilayah tersebut, karena dipisahkan oleh satu garis, adalah
panggilan dari wilayah yang dapat dipisahkan secara linier.

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.

Namun, Perceptron masih memiliki kegunaannya, karena menghasilkan beberapa fungsi


logika, seperti operator boolean AND, OR dan NOT, yang secara linier
dapat dipisahkan, yaitu, mereka dapat dilakukan menggunakan satu Perceptron. Kita dapat
ilustrasikan mengapa mereka dapat dipisahkan secara linier dengan menggambar masing-masing di grafik:

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.

Bab 8–Fungsi Aktivasi


Dalam bab ini kita akan mempelajari komponen penting dari jaringan saraf buatan, yaitu
Fungsi Aktivasi. Bab ini adalah pengantar untuk tema ini dan kita akan kembali ke dalamnya lebih lanjut.
Pada saat kita mempelajari arsitektur canggih dari deep learning. Bab ini
ini bisa sedikit menantang, karena kita akan mulai memperkenalkan konsep yang lebih
lanjutan, yang akan sangat berguna dalam urutan bab-bab. Santai, bacalah dan
pelajari sedikit lebih lanjut tentang jaringan saraf buatan.

Sebelum menyelami rincian fungsi aktivasi, mari kita lakukan sedikit


tinjauan tentang apa itu jaringan saraf buatan dan bagaimana cara kerjanya. Jaringan saraf adalah sebuah
mekanisme pembelajaran mesin (Machine Learning) yang sangat kuat yang meniru
pada dasarnya bagaimana otak manusia belajar. Otak menerima rangsangan dari dunia
eksterior, melakukan pemrosesan dan menghasilkan hasil. Seiring dengan tugas menjadi
kompleks, berbagai neuron membentuk jaringan yang rumit, mengirimkan informasi
antar mereka. Menggunakan jaringan saraf buatan, kami mencoba meniru perilaku
mirip. Jaringan yang Anda lihat di bawah adalah jaringan neural buatan yang terdiri dari
neuron yang saling terhubung.

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.

Kita bisa mengatasi masalah ini melalui pengenalan komponen matematis


dalam neuron buatan kita, yang disebut fungsi aktivasi. Fungsi aktivasi
izinkan perubahan kecil pada bobot dan bias hanya menyebabkan sedikit
perubahan pada output. Ini adalah fakta krusial yang akan memungkinkan jaringan neuron
yang dibuat oleh manusia belajar.

Mari kita lihat bagaimana ini berfungsi:

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.

Fungsi aktivasi memungkinkan propagasi selanjutnya selama gradien


sejam fornecidos bersama dengan kesalahan untuk memperbarui bobot dan bias. Tanpa fungsi
tidak diferensial non linier, itu tidak akan mungkin. Jika istilah gradien tidak menjadi
akrab, tunggu bab-bab berikutnya, ketika kita akan menjelaskan konsep ini di
detail, mengingat bahwa ia adalah inti dari proses pembelajaran dalam jaringan saraf
buatan.

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.

Jenis-Jenis Populer dari Fungsi Aktivasi


Fungsi aktivasi adalah komponen matematis yang dimasukkan dalam struktur jaringan
jaringan saraf buatan untuk memungkinkan solusi masalah kompleks. Ada
berbagai jenis fungsi aktivasi dan ini adalah area penelitian yang aktif, seiring dengan
Kecerdasan Buatan berkembang (bukankah luar biasa dapat berpartisipasi dalam evolusi ini,
yang akan sepenuhnya mengubah dunia?). Mari kita lihat apa saja jenis yang paling
populer.

Fungsi Langkah Biner (Binary Step Function)


Hal pertama yang terlintas dalam pikiran kita ketika kita memiliki fungsi aktivasi adalah sebuah
klasifikator berbasis ambang (threshold), yaitu, apakah neuron harus atau tidak
Diaktifkan. Jika nilai Y melebihi batas nilai tertentu, aktifkan neuron
kalau tidak, biarkan dinonaktifkan. Sederhana! Itulah aturannya:

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

Sigmóide adalah fungsi aktivasi yang banyak digunakan. Bentuknya adalah:

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 ini pada dasarnya mencoba untuk mendorong nilai Y ke ujung-ujung.


kualitas yang sangat diinginkan saat kita mencoba mengklasifikasikan nilai untuk sebuah kelas
spesifik.

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 (x) = 2sigmoid (2x) -1

Dapat ditulis langsung sebagai:

tanh (x) = 2 / (1 + e ^ (- 2x)) -1

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:

f(x) = max (0, x)

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.

Fungsi softmax secara ideal digunakan di lapisan keluaran pengklasifikasi, di mana


kami benar-benar sedang mencoba menghasilkan probabilitas untuk menentukan kelas masing-masing
masuk

Memilih Fungsi Aktivasi yang Tepat


Ufa! Banyak hal, kan? Dan kita belum melihat pertanyaan matematika yang terlibat di dalamnya.
fungsi. Tetapi tidak perlu terburu-buru, tidak ada jalan pintas untuk belajar dan kita akan belajar
semua langkah demi langkah, item demi item, sesuai dengan standar kursus diAkademi Data Science.

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!

Bab 9–Arsitektur Jaringan Saraf


Di bab 11 kita akan mengembangkan jaringan saraf untuk klasifikasi digit
manuskrip, menggunakan bahasa Python (jika Anda belum tahu cara bekerja dengan
bahasa, mulai sekarang juga dengan kursus online kami yang sepenuhnya gratis Python
Fundamentals untuk Analisis Data. Tapi sebelumnya, mari kita memahami terminologi
yang akan sangat berguna ketika kita mengembangkan model kita, belajar
Arsitektur Jaringan Saraf. Misalkan kita memiliki jaringan di bawah ini:

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.

Umumnya, arsitektur jaringan saraf dapat dibagi menjadi 3 kategori


spesifik:

1–Jaringan Saraf Feed-Forward

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.

3–Jaringan Terhubung Simetris

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:

Jaringan Multilayer Perceptron


Jaringan Saraf Konvolusional
Jaringan Saraf Rekuren
Memori Jangka Panjang Pendek (LSTM)
Jaringan Hopfield
Mesin Boltzmann
Jaringan Keyakinan Mendalam
Auto-Encoder Deep
Jaringan Adversarial Generatif
Kapsul Jaringan Saraf Dalam (ini adalah jenis jaringan saraf yang sepenuhnya baru,
diluncurkan pada akhir 2017)

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.

Bab 10–10 Arsitektur Jaringan Saraf Utama


Pembelajaran Mesin (Machine Learning) diperlukan untuk menyelesaikan tugas-tugas yang
sangat kompleks untuk manusia. Beberapa tugas begitu kompleks sehingga adalah
tidak praktis, jika tidak mustahil, bahwa manusia mampu menjelaskan semua
nuansa yang terlibat. Jadi, daripada itu, kami memberikan sejumlah besar data
untuk algoritma pembelajaran mesin dan membiarkan algoritma berfungsi,
mengeksplorasi data ini dan mencari model yang mencapai apa yang para Ilmuwan
Data dan Insinyur AI telah menentukan tujuan. Mari kita lihat dua contoh ini:

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.

Sulit untuk menulis program untuk menghitung probabilitas transaksi kartu


oleh kredit yang bersifat penipuan. Mungkin tidak ada aturan yang sederhana dan dapat diandalkan.
Kita perlu menggabungkan sejumlah besar aturan lemah. Penipuan adalah sebuah target di
gerakan, tetapi program perlu terus berubah.
Ini adalah tempat di mana Machine Learning dapat diterapkan dengan sukses. Alih-alih menulis sebuah
programa tangan untuk setiap tugas spesifik, kami mengumpulkan banyak contoh yang
menentukan keluaran yang benar untuk suatu masukan tertentu. Sebuah algoritma dari
pembelajaran mesin menerima contoh-contoh ini dan menghasilkan sebuah program yang melakukan
pekerjaan. Program yang dihasilkan oleh algoritme pembelajaran dapat terlihat sangat
berbeda dari program khas yang ditulis dengan tangan. Dapat memuat jutaan angka. Jika
Jika kita melakukannya dengan benar, program ini akan berfungsi untuk kasus-kasus baru (data baru). Jika
data dapat berubah, program juga dapat berubah saat dilatih dengan data baru. Dan dengan
pengurangan biaya komputasi (terutama menggunakan pemrosesan di awan),
jumlah besar data (Big Data) dan pemrosesan paralel di GPU, kita memiliki
kondisi sempurna untuk evolusi Machine Learning. Masalah terbesar, karena
incrível que pareça, será a falta de profissionais qualificados em número suficiente para
memenuhi permintaan pasar.

Beberapa contoh tugas yang lebih baik diselesaikan melalui pembelajaran mesin meliputi:

Pengenalan pola: objek di adegan nyata, identitas wajah atau ekspresi


wajah, kata-kata yang tertulis atau diucapkan.
Deteksi anomali: urutan transaksi kartu kredit yang tidak biasa,
pola-pola tidak biasa dari pembacaan sensor di mesin-mesin suatu industri tekstil.
Perkiraan: harga saham di masa depan atau kurs valuta, film apa yang ingin ditonton seseorang
de melihat, proyeksi penjualan.

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.

1- Jaringan Multilayer Perceptron

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.

Multilayer Perceptron adalah sejenis 'Hello World' dari pembelajaran dalam-dalam:


cara yang baik untuk memulai ketika Anda belajar tentang Pembelajaran Mendalam.

MLP sering diterapkan pada masalah pembelajaran terawasi:


melatih pada sekumpulan pasangan input-output dan belajar untuk memodelkan korelasi (atau
ketergantungan) antara input dan output ini. Pelatihan melibatkan penyesuaian dari
parameter, atau bobot dan bias, dari model untuk meminimalkan kesalahan. Backpropagation adalah
digunakan untuk melakukan penyesuaian bobot dan bias terkait dengan kesalahan, dan kesalahan itu sendiri dapat
diukur dengan berbagai cara, termasuk dengan mean squared error (MSE–Rata-rata)
Kesalahan Kuadrat).

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.

2- Jaringan Saraf Konvolusional

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.

Jaringan konvolusional melakukan pengenalan karakter optik (OCR) untuk


mendigitalisasi teks dan memungkinkan pemrosesan bahasa alami dalam dokumen
analogi dan manuskrip, di mana gambar adalah simbol yang harus ditranskripsi. CNN.
juga dapat diterapkan pada file audio ketika ini direpresentasikan
secara visual seperti sebuah spektrogram. Baru-baru ini, jaringan konvolusional
diterapkan secara langsung pada analisis teks, serta data grafis.

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.

Jaringan konvolusional mengamati gambar sebagai volume; yaitu, objek


tiga dimensi, alih-alih struktur datar yang hanya diukur berdasarkan lebar dan
tinggi. Ini karena gambar warna digital memiliki pengkodean merah-hijau-
biru (RGB–Merah-Hijau-Biru), mencampurkan ketiga warna ini untuk memproduksi spektrum dari
warna yang dapat dilihat oleh manusia. Sebuah jaringan konvolusional menerima gambar seperti
tiga lapisan terpisah berwarna ditumpuk satu di atas yang lain.
Dengan demikian, jaringan konvolusional menerima gambar sebagai kotak persegi panjang yang
lebar dan tinggi diukur dalam jumlah piksel di sepanjang dimensi ini dan yang
profundidade adalah tiga lapisan dalam, satu untuk setiap huruf dalam RGB. Lapisan-lapisan ini
dari kedalaman disebut sebagai saluran.

Seiring dengan gambar bergerak melalui jaringan konvolusional, kami menggambarkan


dalam hal volume masuk dan keluar, mengekspresikannya secara matematis sebagai
matriks berdimensi banyak dalam bentuk ini: 30x30x3. Dari lapisan ke lapisan, suas
dimensi berubah saat melewati jaringan saraf konvolusional hingga menghasilkan sebuah
seri probabilitas di lapisan keluaran, dengan satu probabilitas untuk setiap kemungkinan
kelas keluaran. Kelas dengan probabilitas tertinggi akan menjadi kelas yang ditentukan untuk gambar
sebagai contoh, seekor burung.

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.

Sebaliknya, jaringan berulang menghasilkan model dinamis—yaitu, model yang


berubah seiring waktu - dengan cara yang menghasilkan klasifikasi yang akurat
bergantung pada konteks contoh yang ditampilkan.

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.

4- Memori Jangka Panjang Jangka Pendek (LSTM)

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.

LSTM memiliki banyak aplikasi praktis, termasuk pemrosesan bahasa


alami, generasi otomatis teks dan analisis deret waktu. Jika ingin melihat ini
contoh dalam praktik, klik di sini. Kami akan memiliki satu bab penuh yang didedikasikan untuk LSTM.
di sini di buku.

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

Mesin Boltzmann adalah jenis jaringan neural berulang stokastik. Dapat di


dilihat sebagai kontra partai stokastik dan generatif dari Jaringan Hopfield. Itu adalah salah satu
jaringan saraf pertama yang mampu belajar representasi internal dan dapat
mewakili dan menyelesaikan masalah kombinatorial yang sulit.

Tujuan dari pembelajaran algoritma Mesin Boltzmann adalah untuk memaksimalkan


produk dari probabilitas yang diberikan oleh Mesin Boltzmann kepada vektor biner di
himpunan pelatihan. Ini setara dengan memaksimalkan jumlah probabilitas log
yang Mesin Boltzmann atribusi kepada vektor pelatihan. Juga setara
memaksimalkan probabilitas untuk mendapatkan tepat N kasus pelatihan jika
melakukan hal berikut: 1) Membiarkan jaringan mencapai distribusi stasionernya
tidak ada tempo N yang berbeda, tanpa masukan eksternal dan 2) Mengubah vektor yang terlihat sekali di setiap
lewat.

Sebuah prosedur efisien untuk pembelajaran mini-batch telah diusulkan untuk Mesin
de Boltzmann oleh Salakhutdinov dan Hinton pada tahun 2012.

Dalam Mesin Boltzmann umum, pembaruan stokastik unit


precisam ser sequenciais. Existe uma arquitetura especial que permite alternar
pembaruan paralel yang jauh lebih efisien (tanpa koneksi di dalam satu
mini-batch, tanpa koneksi lapisan yang diabaikan). Prosedur mini-lot ini membuat
pembaruan Mesin Boltzmann yang lebih paralel. Ini disebut Deep
Mesin Boltzmann (DBM), sebuah Mesin Boltzmann umum, tetapi dengan banyak
koneksi tidak ada.
Pada tahun 2014, Salakhutdinov dan Hinton mempersembahkan pembaruan lain untuk model mereka,
menyebutnya sebagai Mesin Boltzmann Terbatas. Mereka membatasi konektivitas untuk
memfasilitasi inferensi dan pembelajaran (hanya satu lapisan unit tersembunyi dan
dengan koneksi antara unit-unit tersembunyi). Dalam RBM, hanya dibutuhkan satu langkah untuk
mencapai keseimbangan.
7- Jaringan Keyakinan Mendalam

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.

Untuk mengatasi keterbatasan dari backpropagation, para peneliti mempertimbangkan penggunaan


pendekatan pembelajaran tanpa pengawasan. Ini membantu menjaga efisiensi dan
kesederhanaan menggunakan metode gradien untuk mengatur bobot, tetapi juga menggunakannya
untuk memodelkan struktur dari masukan sensorik. Secara khusus, mereka menyesuaikan bobot untuk
memaksimalkan probabilitas model generator telah menghasilkan input sensorik. A
pertanyaannya adalah jenis model generatif apa yang harus kita pelajari? Bisa jadi sebuah model
berbasis energi seperti Mesin Boltzmann? Atau model kausal yang terbuat dari
neuron? Atau hibrida dari keduanya?

Sebuah Jaringan Kepercayaan Mendalam dapat didefinisikan sebagai tumpukan Mesin


Boltzmann Terbatas (RBM–Mesin Boltzmann Terbatas), di mana setiap lapisan
RBM berkomunikasi dengan lapisan sebelumnya dan sesudahnya. Node dari lapisan mana pun
unik tidak berkomunikasi secara lateral.

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.

As camadas são Mesin Boltzmann Terbatas, blok bangunan dari Deep


Jaringan Keyakinan, dengan berbagai keunikan yang akan kita bahas di bawah ini. Berikut ini adalah
skema sederhana dari struktur Deep Auto-Encoder:

Deep Auto-Encoders adalah cara yang sangat menyenangkan untuk mengurangi


dimensi non linier karena beberapa alasan: mereka memberikan pemetaan
fleksibel dalam kedua arah. Waktu pembelajaran adalah linier (atau lebih baik) di
jumlah kasus pelatihan. Dan model pengkodean akhir cukup kompak dan
cepat. Namun, bisa sangat sulit untuk mengoptimalkan Deep Auto-Encoders menggunakan
backpropagation. Dengan bobot awal yang kecil, gradien dari backpropagation mati.
Tetapi kita memiliki cara untuk mengoptimalkannya, menggunakan pra-pelatihan lapisan demi lapisan tanpa
pengawasan atau hanya menginisialisasi bobot dengan hati-hati.

Deep Auto-Encoders berguna dalam pemodelan topik atau pemodelan statistik


dari topik abstrak yang didistribusikan di sebuah koleksi dokumen. Ini, karena
Ini adalah langkah penting dalam sistem tanya jawab seperti IBM Watson.

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.

Penghitungan kata dalam skala kemudian dimasukkan ke dalam Deep Belief


Jaringan, satu tumpukan Mesin Boltzmann Terbatas, yang mereka sendiri hanya
sebuah subset dari Autoencoders. Jaringan Keyakinan Dalam, atau DBNs, mengompresi
setiap dokumen untuk satu set 10 angka melalui serangkaian
transformasi sigmoid yang memetakan Anda di ruang fitur.

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.

9- Jaringan Generatif Adversarial

Sebagai Jaringan Adversarial Generatif (GAN) adalah arsitektur jaringan saraf


profundas terdiri dari dua jaringan, meletakkan satu melawan yang lain (dari situ namanya,
"adversária".

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:

Model diskriminatif belajar batas antara kelas-kelas


Model generatif memodelkan distribusi kelas individu
Sebuah jaringan saraf, yang disebut sebagai generator, menghasilkan instansi data baru, sementara yang lainnya,
discriminador, ia menilai berdasarkan keaslian; dengan kata lain, diskriminator memutuskan apakah masing-masing
instância data yang mereview termasuk dalam set data pelatihan atau tidak.
Katakanlah kita sedang mencoba melakukan sesuatu yang lebih sepele daripada meniru Mona Lisa. Mari kita
menghasilkan angka yang ditulis tangan seperti yang ditemukan dalam kumpulan data MNIST, yang adalah
retirado dari dunia nyata. Tujuan dari diskriminator, ketika ditunjukkan sebuah instansi dari
data set MNIST yang sebenarnya, adalah mengenali mereka sebagai asli.

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:

Generator menerima angka acak dan mengembalikan gambar.


Gambar yang dihasilkan ini dimasukkan ke dalam diskriminator di samping aliran gambar.
tiradas dari himpunan data nyata.
Discriminador menerima gambar nyata dan palsu dan mengembalikan probabilitas, sebuah angka
antara 0 dan 1, dengan 1 mewakili prediksi keaslian dan 0 mewakili
salah.

Jadi Anda memiliki loop umpan balik ganda:

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.

10- Kapsul Jaringan Saraf Dalam

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;

Anda mungkin juga menyukai