Education, study and knowledge

Jaringan saraf yang dalam: apa itu dan bagaimana cara kerjanya

Jaringan saraf yang dalam adalah konsep yang merupakan arsitektur teknologi utama yang digunakan dalam model Deep Learning. Struktur ini tidak dapat dipahami tanpa memahami gagasan umum tentang jaringan syaraf tiruan, yang mendasar bagi Kecerdasan Buatan.

Jaringan saraf digunakan untuk seribu hal: mengenali plat nomor, lagu, wajah, suara, atau bahkan buah-buahan di dapur kita. Mereka adalah teknologi yang sangat berguna dan, terlepas dari kenyataan bahwa mereka baru saja menjadi praktis, mereka akan menjadi masa depan umat manusia.

Berikutnya Kita akan melihat secara mendalam gagasan tentang jaringan syaraf tiruan dan mendalam, memahami bagaimana mereka bekerja, bagaimana mereka dilatih dan bagaimana interaksi antara berbagai neuron yang menyusunnya terjadi.

  • Artikel terkait: "Apa itu ilmu kognitif? Gagasan dasar dan fase perkembangannya"

Apa itu jaringan saraf dalam dan apa ciri-cirinya?

Jaringan saraf yang dalam adalah salah satu arsitektur teknologi terpenting yang digunakan dalam Deep Learning atau Pembelajaran Mendalam

instagram story viewer
. Jaringan artifisial khusus ini mengalami pertumbuhan yang memusingkan dalam beberapa tahun terakhir karena mereka merupakan aspek mendasar dalam hal mengenali semua jenis pola. Kecerdasan Buatan ada berkat pengoperasian jaringan khusus ini yang, di Intinya, mereka menjadi replika cara kerja otak kita, meskipun dalam bentuk teknologi dan matematika.

Sebelum membahas lebih jauh apa itu jaringan syaraf dalam, pertama-tama kita perlu memahami bagaimana jaringan syaraf tiruan bekerja secara umum dan untuk apa jaringan itu. Ljaringan saraf adalah cabang dari "Pembelajaran Mesin" yang memiliki dampak besar dalam beberapa tahun terakhir, membantu pemrogram dan ilmuwan komputer membuat hal-hal seperti chatbot yang, saat kita berbicara dengan mereka, membuat kita berpikir bahwa kita sedang berbicara dengan manusia sungguhan.

Jaringan syaraf tiruan juga telah digunakan dengan mobil self-driving, aplikasi seluler yang mengenali wajah kita dan mengubahnya menjadi apa yang kita inginkan dan banyak lagi fungsi. Penerapannya sangat luas, berfungsi sebagai dasar Kecerdasan Buatan modern dan memiliki manfaat yang tak ada habisnya untuk kehidupan kita sehari-hari.

jaringan syaraf tiruan

Bayangkan kita berada di dapur dan memutuskan untuk mencari jeruk, tugas yang sangat sederhana.. Kami tahu cara mengidentifikasi jeruk dengan sangat mudah dan kami juga tahu cara membedakannya dari buah lain yang kami temukan di dapur, seperti pisang, apel, dan pir. Sebagai? Karena di otak kita, kita telah sangat mengasimilasi apa saja ciri khas jeruk: itu ukurannya, bentuknya, warnanya, baunya... Ini semua adalah parameter yang kita gunakan untuk menemukan a oranye.

Ini adalah tugas sederhana bagi manusia, tapi... Apakah komputer juga bisa? Jawabannya iya. Pada prinsipnya, cukup mendefinisikan parameter yang sama dan menetapkan nilai ke node atau sesuatu yang bisa kita sebut "neuron buatan". Kami akan memberi tahu neuron itu seperti apa jeruk itu, menunjukkan ukuran, berat, bentuk, warna, atau parameter lain apa pun yang kami kaitkan dengan buah ini. Dengan informasi ini, diharapkan neuron akan mengetahui cara mengidentifikasi jeruk saat disajikan.

Jika kita telah memilih parameter dengan baik, akan mudah bagi Anda untuk membedakan antara jeruk dan yang bukan jeruk hanya dengan mempertimbangkan karakteristik tersebut. Saat disodori gambar buah apa saja, neuron itu akan mencari ciri-cirinya terkait dengan jeruk dan putuskan apakah akan memasukkannya ke dalam kategori "oranye" atau ke dalam kategori "lainnya". buah". Dalam istilah statistik, itu akan menemukan wilayah dalam grafik parameter yang sesuai dengan apa yang sedang terjadi mencari wilayah yang mencakup semua potongan buah yang memiliki ukuran, bentuk, warna, berat, dan aroma yang sama jeruk.

Pada awalnya semua ini terdengar sangat mudah untuk dikodekan, dan ternyata memang begitu. Ini bekerja sangat baik untuk membedakan jeruk dari pisang atau apel, karena memiliki warna dan bentuk yang berbeda. Namun, bagaimana jika kami memberi Anda jeruk bali? dan jeruk keprok yang sangat besar? Mereka adalah buah-buahan yang bisa dikacaukan dengan jeruk. Akankah neuron buatan dapat membedakan sendiri antara jeruk dan jeruk bali? Jawabannya tidak, dan sebenarnya mereka mungkin dianggap sama.

Masalah dengan hanya menggunakan satu lapisan neuron buatan, atau yang sama, hanya menggunakan neuron sederhana terlebih dahulu, adalah itu menghasilkan batasan keputusan yang sangat tidak tepat ketika Anda disajikan dengan sesuatu yang memiliki banyak kesamaan karakteristik dengan apa yang seharusnya dapat Anda kenali, tapi kenyataannya tidak. Jika kita menghadirkan sesuatu yang terlihat seperti jeruk, seperti jeruk bali, meskipun itu bukan buah itu, itu akan mengidentifikasinya.

Batas keputusan ini, jika direpresentasikan dalam bentuk grafik, akan selalu linier. Menggunakan satu neuron buatan, yaitu satu node yang memiliki parameter terintegrasi konkret, tetapi tidak bisa belajar di luar mereka, batas keputusan yang sangat dekat akan diperoleh. membaur. Keterbatasan utamanya adalah menggunakan dua metode statistik, khususnya regresi multikelas dan regresi logistik, artinya jika ragu itu termasuk sesuatu yang tidak seperti yang kita harapkan. akan mengidentifikasi.

Jika kita membagi semua buah menjadi "jeruk" dan "bukan jeruk", hanya dengan menggunakan satu neuron, jelas bahwa pisang, pir, apel, semangka, dan buah apa pun yang tidak sesuai ukuran, warna, bentuk, aroma, dan sebagainya dengan jeruk, saya akan memasukkannya ke dalam kategori "tidak". jeruk". Namun, jeruk bali dan jeruk keprok akan menempatkannya dalam kategori "jeruk", melakukan pekerjaan yang desainnya buruk.

Dan ketika kita berbicara tentang jeruk dan jeruk bali, kita juga dapat berbicara tentang anjing dan serigala, ayam dan ayam, buku dan buku catatan... Semua Situasi ini adalah kasus di mana serangkaian sederhana "jika ..." ("jika ...") tidak akan cukup untuk membedakan dengan jelas antara yang satu dan yang lain. lainnya. Diperlukan sistem non-linear yang lebih kompleks, yang lebih tepat dalam hal membedakan antara elemen yang berbeda. Sesuatu yang memperhitungkan bahwa di antara kesamaan mungkin ada perbedaan. Di sinilah jaringan saraf masuk.

Lebih banyak lapisan, lebih mirip dengan otak manusia

Jaringan saraf tiruan, seperti namanya, adalah model buatan komputasi yang terinspirasi oleh di jaringan saraf otak manusia, jaringan yang sebenarnya meniru fungsi organ ini biologis. Sistem ini terinspirasi oleh fungsi saraf dan aplikasi utamanya adalah pengenalan semua jenis pola: identifikasi wajah, pengenalan suara, sidik jari, tulisan tangan, plat nomor… Pengenalan pola berfungsi untuk hampir semua hal..

Karena ada neuron yang berbeda, parameter yang diterapkan beragam dan tingkat presisi yang lebih tinggi diperoleh. Jaringan saraf ini adalah sistem yang memungkinkan kita memisahkan item ke dalam kategori saat perbedaan bisa halus, memisahkan mereka dengan cara non-linear, sesuatu yang tidak mungkin dilakukan sebaliknya tata krama.

Dengan satu simpul, dengan satu neuron, yang dilakukan saat menangani informasi adalah regresi multikelas. Dengan menambahkan lebih banyak neuron, karena masing-masing memiliki fungsi aktivasi non-linier sendiri yang, diterjemahkan ke dalam bahasa yang lebih sederhana, membuat mereka memiliki batas keputusan yang lebih tepatnya, direpresentasikan secara grafis dalam bentuk melengkung dan mempertimbangkan lebih banyak karakteristik saat membedakan antara "jeruk" dan "bukan jeruk", untuk melanjutkan contoh tersebut.

Kelengkungan batas keputusan ini akan secara langsung bergantung pada berapa banyak lapisan neuron yang kita tambahkan ke jaringan saraf kita. Lapisan-lapisan neuron itu, yang membuat sistem lebih kompleks dan lebih tepat, sebenarnya adalah jaringan saraf yang dalam. Pada prinsipnya, semakin banyak lapisan jaringan saraf dalam yang kita miliki, semakin akurat dan serupa program tersebut dibandingkan dengan otak manusia.

Singkatnya, jaringan saraf tidak lebih dari sistem cerdas yang memungkinkan pengambilan keputusan yang lebih tepat, dengan cara yang sangat mirip dengan cara kita manusia melakukannya. Manusia didasarkan pada pengalaman, belajar dari lingkungan kita. Misalnya, kembali ke kasus jeruk dan grapefruit, jika kita belum pernah melihatnya, kita akan salah mengartikannya sebagai jeruk. Ketika kita sudah mengenalnya, maka kita sudah tahu bagaimana mengidentifikasinya dan membedakannya dengan jeruk.

Hal pertama yang dilakukan adalah memberikan beberapa parameter ke jaringan saraf sehingga mereka tahu seperti apa yang ingin kita pelajari untuk mengidentifikasi. Kemudian tibalah fase pembelajaran atau pelatihan, sehingga semakin akurat dan semakin memiliki margin error yang semakin kecil. Inilah saatnya kami menyajikan jaringan saraf kami dengan jeruk dan buah-buahan lainnya. Pada tahap pelatihan mereka akan diberikan kasus di mana mereka berwarna oranye dan kasus di mana mereka tidak berwarna oranye, melihat apakah mereka menjawab dengan benar dan memberi tahu mereka jawaban yang benar.

Kami akan mencoba melakukan banyak upaya dan sedekat mungkin dengan kenyataan.. Dengan cara ini kami membantu jaringan saraf untuk beroperasi ketika kasus nyata tiba dan mengetahui cara mendiskriminasi dengan benar, dengan cara yang sama seperti yang dilakukan manusia dalam kehidupan nyata. Jika pelatihan telah memadai, telah memilih parameter pengenalan yang baik dan telah diklasifikasikan dengan baik, jaringan saraf akan memiliki tingkat keberhasilan pengenalan pola yang sangat tinggi. tinggi.

  • Anda mungkin tertarik pada: "Bagaimana cara kerja neuron?"

Apa itu dan bagaimana tepatnya cara kerjanya?

Sekarang kita telah melihat gambaran umum tentang apa itu jaringan saraf dan kita akan memahami lebih lengkap apa itu dan bagaimana caranya emulator dari neuron otak manusia ini bekerja dan di mana jaringan saraf yang dalam mewarnai semua ini proses.

Bayangkan kita memiliki jaringan saraf berikut: kita memiliki tiga lapisan neuron buatan. Katakanlah lapisan pertama memiliki 4 neuron atau simpul, lapisan kedua memiliki 3, dan lapisan terakhir hanya memiliki 2. Ini semua adalah contoh jaringan saraf tiruan, cukup mudah dimengerti.

Lapisan pertama adalah yang menerima data., yaitu informasi yang mungkin datang dalam bentuk suara, gambar, aroma, impuls listrik... Yang pertama ini layer adalah input layer, dan bertugas menerima semua data untuk nantinya bisa dikirim ke berikut ini lapisan. Selama pelatihan jaringan saraf kita, ini akan menjadi lapisan yang pertama kali akan kita gunakan untuk bekerja, memberikannya data yang akan kami gunakan untuk melihat seberapa baik Anda membuat prediksi atau mengidentifikasi informasi yang Anda berikan memberi.

Lapisan kedua dari model hipotetis kita adalah lapisan tersembunyi, yang terletak tepat di tengah lapisan pertama dan terakhir., seolah-olah jaringan saraf kita adalah sandwich. Dalam contoh ini kita hanya memiliki satu lapisan tersembunyi, tetapi bisa saja ada sebanyak yang kita inginkan. Kita bisa berbicara tentang 50, 100, 1000 atau bahkan 50.000 lapisan. Intinya, lapisan tersembunyi ini adalah bagian dari jaringan saraf yang kita sebut jaringan saraf dalam. Semakin besar kedalamannya, semakin kompleks jaringan sarafnya.

Akhirnya kita memiliki lapisan ketiga dari contoh kita yang merupakan lapisan keluaran. Lapisan ini, seperti namanya, bertugas menerima informasi dari lapisan sebelumnya, membuat keputusan dan memberi kita jawaban atau hasil.

Di jaringan saraf, setiap neuron buatan terhubung ke semua neuron berikut. Dalam contoh kami, di mana kami telah berkomentar bahwa kami memiliki tiga lapisan 4, 3 dan 2 neuron, 4 dari lapisan masukan adalah terhubung dengan 3 dari lapisan tersembunyi, dan 3 dari lapisan tersembunyi dengan 2 dari output, memberi kita total 18 koneksi.

Semua neuron ini terhubung dengan neuron di lapisan berikutnya, mengirimkan informasi dalam arah input->hidden->output.. Jika ada lebih banyak lapisan tersembunyi, kita akan berbicara tentang lebih banyak koneksi, mengirimkan informasi dari lapisan tersembunyi ke lapisan tersembunyi hingga mencapai lapisan keluaran. Lapisan keluaran, setelah menerima informasi, yang akan dilakukannya adalah memberi kita hasil berdasarkan informasi yang diterimanya dan cara memprosesnya.

Saat kami melatih algoritme kami, yaitu jaringan saraf kami, proses yang baru saja kami jelaskan ini akan dilakukan berkali-kali. Kami akan mengirimkan beberapa data ke jaringan, kami akan melihat apa yang diberikan hasilnya kepada kami dan kami akan menganalisisnya dan membandingkannya dengan hasil yang kami harapkan. Jika ada perbedaan besar antara apa yang diharapkan dan apa yang diperoleh, itu berarti ada margin kesalahan yang tinggi dan oleh karena itu perlu dilakukan beberapa modifikasi.

Bagaimana cara kerja neuron buatan?

Sekarang kita akan memahami fungsi individu dari neuron yang bekerja dalam jaringan saraf. Neuron menerima input informasi dari neuron sebelumnya. Misalkan neuron ini menerima tiga input informasi, masing-masing berasal dari tiga neuron di lapisan sebelumnya. Pada gilirannya, neuron ini menghasilkan output, dalam hal ini katakanlah hanya terhubung ke neuron dari lapisan berikutnya.

Setiap koneksi yang dimiliki neuron ini dengan tiga neuron dari lapisan sebelumnya membawa nilai "x", yang merupakan nilai yang dikirimkan oleh neuron sebelumnya kepada kita.; dan juga memiliki nilai "w", yang merupakan bobot dari koneksi ini. Bobot adalah nilai yang membantu kita lebih mementingkan satu koneksi daripada yang lain. Singkatnya, setiap koneksi dengan neuron sebelumnya memiliki nilai “x” dan “w”, yang dikalikan (x·w).

Kami juga akan memiliki sebuah nilai yang disebut “bias” atau bias yang direpresentasikan dengan “b” yang merupakan jumlah error yang mendorong neuron tertentu untuk aktif lebih mudah daripada yang lainnya. Selain itu, kami memiliki fungsi aktivasi di dalam neuron, yang membuat tingkat klasifikasi elemen yang berbeda (hal. g., jeruk) tidak linier. Sendiri, setiap neuron memiliki parameter berbeda untuk diperhitungkan, yang membuat seluruh sistem, ini adalah jaringan saraf, diklasifikasikan secara non-linear.

Bagaimana neuron mengetahui apakah harus aktif atau tidak? yaitu, kapan Anda tahu jika Anda harus mengirimkan informasi ke lapisan berikutnya? Nah, keputusan ini diatur oleh persamaan berikut:

jaringan syaraf

Rumus ini berarti bahwa jumlah semua bobot "w" dikalikan dengan semua nilai "x" yang diterima neuron dari lapisan sebelumnya harus dibuat. Ditambahkan ke ini, bias "b" ditambahkan.

Hasil persamaan ini dikirim ke fungsi aktivasi, yang merupakan fungsi sederhana yang menyatakan bahwa, jika hasil persamaan ini lebih besar dari a nomor tertentu, neuron akan mengirim sinyal ke lapisan berikutnya dan jika kurang, maka tidak untuk mengirimkannya Jadi, beginilah cara neuron buatan memutuskan apakah akan mengirim informasi ke neuron atau tidak sebagai berikut: lapisan melalui output yang akan kita sebut "y", output yang, pada gilirannya, adalah input "x" dari berikut ini neuron.

Dan bagaimana Anda melatih seluruh jaringan?

Hal pertama yang dilakukan adalah mengirimkan data ke lapisan pertama, seperti yang telah kami komentari sebelumnya. Layer ini akan mengirimkan informasi ke layer berikutnya yaitu hidden layer atau deep neural network. Neuron dari lapisan ini akan aktif atau tidak tergantung pada informasi yang diterima. Terakhir, lapisan keluaran akan memberi kita hasil, yang akan kita bandingkan dengan nilai yang kita tunggu untuk melihat apakah jaringan saraf telah mempelajari apa yang harus dilakukan dengan benar.

Jika dia tidak belajar dengan baik maka kami akan melakukan interaksi lain, yaitu, kami akan memberi Anda informasi lagi dan melihat bagaimana perilaku jaringan saraf. Bergantung pada hasil yang diperoleh, nilai "b" akan disesuaikan, yaitu bias setiap neuron, dan "w", ini adalah bobot setiap koneksi dengan setiap neuron untuk mengurangi kesalahan. Untuk mengetahui seberapa besar kesalahan itu, kita akan menggunakan persamaan lain, yaitu sebagai berikut:

jaringan syaraf

Persamaan ini adalah root mean square error. Kita akan melakukan penjumlahan dari y (x) yang merupakan nilai yang diberikan jaringan kita dalam interaksi dikurangi "a", yang merupakan nilai yang kita harapkan untuk diberikan kepada kita, dinaikkan menjadi kuadrat. Terakhir, kita akan mengalikan jumlah ini dengan 1/2n, yaitu “n” jumlah interaksi yang telah kita kirim untuk melatih jaringan saraf kita.

Sebagai contoh, misalkan kita memiliki nilai-nilai berikut

jaringan syaraf

Kolom pertama "y (x)" mewakili apa yang telah diberikan jaringan kami di masing-masing dari empat interaksi yang telah kami uji. Nilai yang kami peroleh, seperti dapat dilihat, tidak sesuai dengan kolom kedua "a", yang merupakan nilai yang diinginkan untuk setiap interaksi yang diuji. Kolom terakhir mewakili kesalahan dari setiap interaksi.

Menerapkan rumus yang disebutkan di atas dan menggunakan data ini di sini, perlu diingat bahwa dalam hal ini n = 4 (4 interaksi) memberi kita nilai 3,87, yang merupakan kesalahan kuadrat rata-rata yang dimiliki jaringan saraf kita momen. Mengetahui kesalahannya, yang harus kita lakukan sekarang adalah, seperti yang telah kita komentari sebelumnya, mengubah bias dan bobot masing-masing neuron dan interaksinya dengan maksud bahwa dengan cara ini kesalahannya mengurangi.

Pada titik ini, insinyur dan ilmuwan komputer melamar sebuah algoritma yang disebut gradient descent yang dengannya mereka dapat memperoleh nilai untuk menguji dan memodifikasi bias dan bobot setiap neuron buatan sehingga diperoleh error yang semakin rendah mendekati prediksi atau hasil diinginkan. Ini adalah masalah pengujian dan semakin banyak interaksi dibuat, semakin banyak pelatihan yang akan ada dan semakin banyak jaringan yang akan dipelajari.

Setelah jaringan saraf cukup terlatih, itu akan memberi kita prediksi dan identifikasi yang akurat dan andal. Pada titik ini kita akan memiliki jaringan yang akan memiliki nilai di setiap neuronnya bobot yang ditentukan, dengan bias yang terkontrol dan dengan kapasitas keputusan yang akan membuat sistem bekerja.

Referensi bibliografi:

  • Puig, A. [Teknologi AMP] (2017, 28 Juli). Bagaimana cara kerja jaringan saraf? [Berkas video]. Sembuh dari https://www.youtube.com/watch? v=IQMoglp-fBk&ab_channel=AMPTech
  • Santaolala, J. [Beri diri Anda Vlog] (2017, 11 April) CienciaClip Challenge - Apa itu jaringan saraf? [Berkas video]. https://www.youtube.com/watch? v=rTpr6DuY4LU&ab_channel=DateunVlog
  • Schmidhuber, J. (2015). "Pembelajaran Mendalam di Jaringan Neural: Tinjauan". Jaringan Neural. 61: 85–117. arXiv: 1404.7828. doi: 10.1016/j.neunet.2014.09.003. PMID 25462637. S2CID 11715509

Teks drama: apa itu, jenis, karakteristik, dan contoh

Sejak tulisan ditemukan, miliaran baris dan teks telah ditulis. Beberapa untuk tujuan informasi s...

Baca lebih banyak

15 film yang dapat Anda tonton bersama anak-anak Anda

Setelah seminggu bekerja, perjalanan yang melelahkan dari rumah, kelas dan ujian yang melelahkan,...

Baca lebih banyak

34 buku Psikologi terbaik yang tidak boleh Anda lewatkan

34 buku Psikologi terbaik yang tidak boleh Anda lewatkan

Psikologi adalah disiplin ilmu yang menarik karena memberikan informasi untuk memahami perilaku o...

Baca lebih banyak