AlexNet adalah jaringan saraf convolutional untuk klasifikasi gambar. Pengembangan sistem pengenalan citra berbasis perangkat jaringan saraf tiruan Jaringan saraf multilayer

AlexNet adalah jaringan saraf convolutional yang memiliki dampak besar pada pengembangan pembelajaran mesin, terutama algoritma visi komputer. Jaringan memenangkan kompetisi pengenalan gambar ImageNet LSFRC-2012 dengan selisih besar pada tahun 2012 (dengan kesalahan 15,3% versus 26,2% di tempat kedua).

Arsitektur AlexNet mirip dengan LeNet milik Yann LeCum. Namun, AlexNet memiliki lebih banyak filter per lapisan dan lapisan konvolusi bersarang. Jaringan mencakup konvolusi, pengumpulan maksimum, putus sekolah, augmentasi data, aktivasi ReLU, dan penurunan gradien stokastik.

Fitur AlexNet

  1. Sebagai fungsi aktivasi, Relu digunakan sebagai pengganti arctangent untuk menambahkan nonlinier ke model. Karena itu, dengan akurasi metode yang sama, kecepatannya menjadi 6 kali lebih cepat.
  2. Menggunakan dropout alih-alih regularisasi memecahkan masalah overfitting. Namun, waktu pelatihan digandakan dengan tingkat putus sekolah 0,5.
  3. Tumpang tindih bergabung dilakukan untuk mengurangi ukuran jaringan. Karena ini, tingkat kesalahan tingkat pertama dan kelima berkurang masing-masing menjadi 0,4% dan 0,3%.

Kumpulan data ImageNet

ImageNet adalah kumpulan dari 15 juta gambar dengan tag resolusi tinggi yang dibagi menjadi 22.000 kategori. Gambar dikumpulkan secara online dan diberi tag secara manual menggunakan crowdsourcing Mechanical Turk Amazon. Sejak 2010, ImageNet Large-Scale Visual Recognition Challenge (ILSVRC) tahunan telah diadakan sebagai bagian dari Pascal Visual Object Challenge. Tantangannya menggunakan sebagian dari kumpulan data ImageNet dengan 1000 gambar di masing-masing dari 1000 kategori. Sebanyak 1,2 juta gambar untuk pelatihan, 50.000 gambar untuk validasi, dan 150.000 untuk pengujian diperoleh. ImageNet terdiri dari gambar dengan resolusi yang berbeda. Oleh karena itu, untuk kompetisi, mereka diskalakan ke resolusi tetap 256 × 256. Jika gambar aslinya berbentuk persegi panjang, maka gambar tersebut dipotong menjadi persegi di tengah gambar.

Arsitektur

Gambar 1

Arsitektur jaringan ditunjukkan pada Gambar 1. AlexNet berisi delapan lapisan berbobot. Lima yang pertama adalah konvolusi, dan tiga lainnya terhubung sepenuhnya. Output dilewatkan melalui fungsi softmax loss yang menghasilkan distribusi 1000 label kelas. Jaringan memaksimalkan regresi logistik multilinear, yang setara dengan memaksimalkan rata-rata atas semua kasus pelatihan logaritma dari probabilitas pelabelan yang benar atas distribusi harapan. Kernel dari lapisan konvolusi kedua, keempat dan kelima dikaitkan hanya dengan peta kernel di lapisan sebelumnya yang berada di GPU yang sama. Kernel lapisan konvolusi ketiga dikaitkan dengan semua peta kernel lapisan kedua. Neuron di lapisan yang terhubung penuh terhubung ke semua neuron di lapisan sebelumnya.

Dengan demikian, AlexNet berisi 5 lapisan konvolusi dan 3 lapisan yang terhubung penuh. Relu diterapkan setelah setiap lapisan convolutional dan sepenuhnya terhubung. Dropout diterapkan sebelum lapisan pertama dan kedua terhubung sepenuhnya. Jaringan berisi 62,3 juta parameter dan membutuhkan 1,1 miliar komputasi pada forward pass. Lapisan konvolusi, yang mencakup 6% dari semua parameter, melakukan 95% perhitungan.

Pendidikan

AlexNet melewati 90 era. Pelatihan ini memakan waktu 6 hari sekaligus pada dua GPU Nvidia Geforce GTX 580, yang menjadi alasan jaringan terbelah menjadi dua. Penurunan gradien stokastik digunakan dengan tingkat pembelajaran 0,01, impuls 0,9, dan peluruhan bobot 0,0005. Tingkat pembelajaran habis dibagi 10 setelah saturasi presisi, dan berkurang 3 kali selama pelatihan. Skema pembaruan koefisien pembobotan w seperti:

di mana Saya- nomor iterasi, v Apakah variabel impuls, dan epsilon- kecepatan belajar. Selama seluruh tahap pelatihan, tingkat pembelajaran dipilih sama untuk semua lapisan dan disesuaikan secara manual. Heuristik berikutnya adalah membagi tingkat pembelajaran dengan 10 ketika jumlah kesalahan validasi berhenti menurun.

Contoh penggunaan dan implementasi

Hasilnya menunjukkan bahwa jaringan saraf convolutional yang besar dan dalam mampu mencapai hasil rekaman pada kumpulan data yang sangat kompleks hanya dengan menggunakan pembelajaran yang diawasi. Setahun setelah AlexNet diterbitkan, semua kontestan ImageNet mulai menggunakan jaringan saraf convolutional untuk memecahkan masalah klasifikasi. AlexNet adalah implementasi pertama dari jaringan saraf convolutional dan mengantarkan era baru penelitian. Sekarang menjadi lebih mudah untuk mengimplementasikan AlexNet menggunakan perpustakaan pembelajaran mendalam: PyTorch, TensorFlow, Keras.

Hasil

Jaringan mencapai tingkat kesalahan berikut dari tingkat pertama dan kelima: masing-masing 37,5% dan 17,0%. Performa terbaik yang dicapai dalam kompetisi ILSVRC-2010 adalah 47,1% dan 28,2% menggunakan pendekatan yang rata-rata prediksi dari enam model coding sparse yang dilatih pada vektor fitur yang berbeda. Sejak itu, hasil telah dicapai: 45,7% dan 25,7% menggunakan pendekatan yang rata-rata prediksi dua pengklasifikasi dilatih pada vektor Fisher. Hasil ILSVRC-2010 ditunjukkan pada Tabel 1.


Kiri: delapan gambar uji ILSVRC-2010 dan lima tag yang menurut model paling mungkin. Label yang benar ditulis di bawah setiap gambar, dan probabilitas ditunjukkan dengan bilah merah jika berada di lima besar. Kanan: lima gambar uji ILSVRC-2010 di kolom pertama. Kolom yang tersisa menunjukkan enam gambar pelatihan. 1

Jaringan syaraf tiruan adalah model matematika dan implementasinya dalam bentuk implementasi perangkat lunak atau perangkat keras-perangkat lunak, yang didasarkan pada pemodelan aktivitas jaringan saraf biologis, yang merupakan jaringan neuron dalam organisme biologis. Ketertarikan ilmiah pada struktur ini muncul karena studi modelnya memungkinkan seseorang memperoleh informasi tentang sistem tertentu. Artinya, model seperti itu dapat diterapkan secara praktis di sejumlah cabang ilmu pengetahuan dan teknologi modern. Artikel tersebut membahas masalah terkait penggunaan jaringan syaraf tiruan untuk pembangunan sistem identifikasi citra yang banyak digunakan dalam sistem keamanan. Masalah yang terkait dengan topik algoritma pengenalan gambar dan penerapannya diselidiki secara rinci. Secara singkat memberikan informasi tentang metodologi untuk melatih jaringan saraf.

jaringan saraf

belajar dengan jaringan saraf

pengenalan gambar

paradigma persepsi lokal

sistem keamanan

1. Yann LeCun, J.S. Denker, S. Solla, R.E. Howard dan L. D. Jackel: Kerusakan Otak Optimal, di Touretzky, David (Eds), Kemajuan dalam Sistem Pemrosesan Informasi Saraf 2 (NIPS * 89). - 2000 .-- 100 hal.

2. Zhigalov K.Yu. Metode vektorisasi fotorealistik data rentang laser untuk digunakan lebih lanjut di GIS // Izvestiya vysshikh uchebnykh zavod. Geodesi dan foto udara. - 2007. - No. 6. - Hal. 285–287.

3. Ranzato Marc'Aurelio, Christopher Poultney, Sumit Chopra dan Yann LeCun: Pembelajaran Efisien Representasi Jarang dengan Model Berbasis Energi, dalam J. Platt et al. (Eds), Kemajuan dalam Sistem Pemrosesan Informasi Saraf (NIPS 2006). - 2010 .-- 400 hal.

4. Zhigalov K.Yu. Persiapan peralatan untuk digunakan dalam sistem kontrol otomatis untuk konstruksi jalan // Ilmu alam dan teknik. - M., 2014. - No. 1 (69). - S.285–287.

5. Y. LeCun dan Y. Bengio: Jaringan Konvolusi untuk Gambar, Ucapan, dan Deret Waktu, dalam Arbib, M. A. (Eds) // The Handbook of Brain Theory and Neural Networks. - 2005 .-- 150 hal.

6. Y. LeCun, L. Bottou, G. Orr dan K. Muller: BackProp yang Efisien, dalam Orr, G. dan K. Muller (Eds) // Neural Networks: Trik perdagangan. - 2008 .-- 200 hal.

Saat ini, kemajuan teknologi dan penelitian mencakup semua cakrawala baru, berkembang pesat. Salah satunya adalah memodelkan alam sekitar menggunakan algoritma matematika. Dalam aspek ini, ada yang sepele, misalnya, pemodelan getaran laut, dan tugas multikomponen yang sangat kompleks, non-sepele, misalnya, pemodelan fungsi otak manusia. Dalam proses mempelajari masalah ini, konsep terpisah diidentifikasi - jaringan saraf. Jaringan syaraf tiruan adalah model matematika dan implementasinya dalam bentuk implementasi perangkat lunak atau perangkat keras-perangkat lunak, yang didasarkan pada pemodelan aktivitas jaringan saraf biologis, yang merupakan jaringan neuron dalam organisme biologis. Ketertarikan ilmiah pada struktur ini muncul karena studi modelnya memungkinkan seseorang memperoleh informasi tentang sistem tertentu. Artinya, model seperti itu dapat diterapkan secara praktis di sejumlah cabang ilmu pengetahuan dan teknologi modern.

Sejarah singkat perkembangan jaringan saraf

Perlu dicatat bahwa awalnya konsep "jaringan saraf" berasal dari karya matematikawan Amerika, ahli neurolinguistik dan neuropsikolog W. McCulloch dan W. Pitts (1943), di mana penulis pertama kali menyebutkannya, mendefinisikannya, dan melakukan upaya pertama untuk membangun jaringan saraf model. Sudah pada tahun 1949 D. Hebb mengusulkan algoritma pembelajaran pertama. Kemudian ada sejumlah penelitian di bidang pembelajaran saraf, dan prototipe kerja pertama muncul sekitar tahun 1990-1991. abad terakhir. Namun demikian, kekuatan komputasi peralatan pada waktu itu tidak cukup untuk operasi jaringan saraf yang cukup cepat. Pada 2010, kekuatan kartu video GPU telah meningkat pesat dan konsep pemrograman langsung pada kartu video muncul, yang secara signifikan (3-4 kali) meningkatkan kinerja komputer. Pada tahun 2012, jaringan saraf memenangkan kejuaraan ImageNet untuk pertama kalinya, yang menandai perkembangan pesat mereka lebih lanjut dan munculnya istilah Deep Learning.

Di dunia modern, jaringan saraf memiliki cakupan yang sangat besar, para ilmuwan menganggap penelitian yang dilakukan di bidang mempelajari karakteristik perilaku dan keadaan jaringan saraf sangat menjanjikan. Daftar area di mana jaringan saraf telah menemukan aplikasi sangat besar. Ini termasuk pengenalan dan klasifikasi pola, dan peramalan, dan solusi masalah perkiraan, dan beberapa aspek kompresi data, analisis data dan, tentu saja, aplikasi dalam sistem keamanan yang sifatnya berbeda.

Studi tentang jaringan saraf secara aktif terjadi di komunitas ilmiah di berbagai negara. Dalam pertimbangan seperti itu, disajikan sebagai kasus khusus dari sejumlah metode pengenalan pola, analisis diskriminan, dan metode pengelompokan.

Perlu juga dicatat bahwa selama setahun terakhir, pendanaan telah dialokasikan untuk startup di bidang sistem pengenalan gambar selama lebih dari 5 tahun sebelumnya, yang menunjukkan permintaan yang cukup tinggi untuk jenis pengembangan ini di pasar akhir.

Aplikasi jaringan saraf untuk pengenalan gambar

Pertimbangkan tugas standar yang diselesaikan oleh jaringan saraf ketika diterapkan pada gambar:

● identifikasi objek;

● pengenalan bagian-bagian objek (misalnya, wajah, lengan, kaki, dll.);

● definisi semantik dari batas-batas objek (memungkinkan Anda hanya meninggalkan batas-batas objek dalam gambar);

● segmentasi semantik (memungkinkan Anda untuk membagi gambar menjadi berbagai objek terpisah);

● pemilihan normal permukaan (memungkinkan Anda untuk mengubah gambar dua dimensi menjadi gambar tiga dimensi);

● menyoroti objek perhatian (memungkinkan Anda menentukan apa yang akan diperhatikan seseorang dalam gambar tertentu).

Perlu dicatat bahwa masalah pengenalan citra memiliki karakter yang mencolok, penyelesaian masalah ini adalah proses yang kompleks dan luar biasa. Saat melakukan pengenalan, objek tersebut dapat berupa wajah manusia, angka tulisan tangan, serta banyak objek lain yang dicirikan oleh sejumlah fitur unik, yang secara signifikan mempersulit proses identifikasi.

Dalam penelitian ini, sebuah algoritma untuk membuat dan belajar mengenali simbol tulisan tangan dari jaringan saraf akan dipertimbangkan. Gambar akan dibaca oleh salah satu input dari jaringan saraf, dan salah satu output akan digunakan untuk mengeluarkan hasilnya.

Pada tahap ini, perlu untuk membahas secara singkat klasifikasi jaringan saraf. Saat ini ada tiga jenis utama:

● jaringan saraf convolutional (CNN);

● jaringan berulang (pembelajaran mendalam);

● pembelajaran penguatan.

Salah satu contoh paling umum dari membangun jaringan saraf adalah topologi jaringan saraf klasik. Jaringan saraf semacam itu dapat direpresentasikan sebagai grafik yang terhubung sepenuhnya, fitur karakteristiknya adalah perambatan informasi ke depan dan perambatan balik dari pensinyalan kesalahan. Teknologi ini tidak memiliki sifat rekursif. Sebuah jaringan saraf ilustratif dengan topologi klasik dapat digambarkan pada Gambar. 1.

Beras. 1. Jaringan syaraf tiruan dengan topologi paling sederhana

Beras. 2. Jaringan saraf dengan 4 lapisan neuron tersembunyi

Salah satu kelemahan yang jelas signifikan dari topologi jaringan ini adalah redundansi. Karena redundansi saat memasok data dalam bentuk, misalnya, matriks dua dimensi ke input, dimungkinkan untuk mendapatkan vektor satu dimensi. Jadi, untuk gambar huruf latin tulisan tangan yang dideskripsikan menggunakan matriks 34x34, diperlukan 1156 input. Hal ini menunjukkan bahwa daya komputasi yang dikeluarkan untuk implementasi solusi perangkat lunak dan perangkat keras dari algoritma ini akan terlalu besar.

Masalahnya dipecahkan oleh ilmuwan Amerika Ian Le Koon, yang menganalisis karya pemenang Hadiah Nobel dalam bidang kedokteran T. Wtesel dan D. Hubel. Sebagai bagian dari penelitian mereka, objek penelitian adalah korteks visual dari otak kucing. Analisis hasil menunjukkan bahwa korteks mengandung sejumlah sel sederhana, serta sejumlah sel kompleks. Sel sederhana bereaksi terhadap gambar garis lurus yang diterima dari reseptor visual, dan sel kompleks terhadap gerakan translasi dalam satu arah. Akibatnya, prinsip membangun jaringan saraf, yang disebut convolutional, dikembangkan. Ide prinsip ini adalah bahwa untuk mengimplementasikan fungsi jaringan saraf, pergantian lapisan konvolusi, yang biasanya dilambangkan sebagai C - Lapisan, lapisan subsampling S - Lapisan, dan lapisan yang terhubung penuh F - Lapisan pada output dari jaringan saraf, digunakan.

Inti dari membangun jaringan semacam ini adalah tiga paradigma - paradigma persepsi lokal, paradigma bobot bersama, dan paradigma subsampling.

Inti dari paradigma persepsi lokal adalah bahwa tidak seluruh matriks gambar diumpankan ke setiap neuron input, tetapi sebagian darinya. Sisa bagian diumpankan ke neuron input lainnya. Dalam hal ini, Anda dapat mengamati mekanisme paralelisasi, menggunakan metode ini, Anda dapat menyimpan topologi gambar dari lapisan ke lapisan, memprosesnya secara multidimensi, yaitu, sejumlah jaringan saraf dapat digunakan selama pemrosesan.

Paradigma bobot bersama menunjukkan bahwa sejumlah kecil bobot dapat digunakan untuk banyak hubungan. Set ini juga disebut "inti". Untuk hasil akhir pemrosesan gambar, kita dapat mengatakan bahwa bobot bersama memiliki efek positif pada properti jaringan saraf, studi tentang perilaku yang meningkatkan kemampuan untuk menemukan invarian dalam gambar dan menyaring komponen noise tanpa memprosesnya.

Berdasarkan hal di atas, kita dapat menyimpulkan bahwa ketika menerapkan prosedur pelipatan gambar berdasarkan kernel, sebuah gambar keluaran akan muncul, elemen-elemen yang akan menjadi karakteristik utama dari tingkat kesesuaian dengan filter, yaitu, a peta fitur akan dibuat. Algoritma ini ditunjukkan pada Gambar. 3.

Beras. 3. Algoritma untuk menghasilkan peta fitur

Paradigma subsampling adalah bahwa gambar input dikurangi dengan mengurangi dimensi spasial dari ekuivalen matematisnya - matriks n-dimensi. Kebutuhan untuk subsampling dinyatakan dalam invarian terhadap skala gambar asli. Saat menerapkan teknik lapisan bergantian, menjadi mungkin untuk menghasilkan peta fitur baru dari yang sudah ada, yaitu, implementasi praktis dari metode ini terdiri dari fakta bahwa kemampuan untuk mengubah matriks multidimensi menjadi matriks vektor, dan kemudian sepenuhnya menjadi nilai skalar, akan diperoleh.

Menerapkan pelatihan jaringan saraf

Jaringan yang ada dibagi menjadi 3 kelas arsitektur dalam hal pembelajaran:

● pembelajaran yang diawasi (persepsi);

● pembelajaran tanpa pengawasan (jaringan resonansi adaptif);

● pembelajaran campuran (jaringan fungsi radial-basis).

Salah satu kriteria terpenting untuk mengevaluasi kinerja jaringan syaraf tiruan dalam hal pengenalan citra adalah kualitas pengenalan citra. Perlu dicatat bahwa untuk penilaian kuantitatif kualitas pengenalan gambar menggunakan fungsi jaringan saraf, algoritma kesalahan root-mean-square paling sering digunakan:

(1)

Dalam ketergantungan ini, Ep adalah kesalahan pengenalan ke-p untuk sepasang neuron,

Dp adalah output yang diharapkan dari jaringan saraf (biasanya jaringan harus berusaha untuk pengakuan 100%, tetapi ini tidak terjadi dalam praktiknya), dan konstruksi O (Ip, W) 2 adalah kuadrat dari output jaringan, yang tergantung pada input ke-p dan atur koefisien bobot W. Konstruksi ini mencakup kernel konvolusi dan koefisien bobot semua lapisan. Perhitungan kesalahan terdiri dalam menghitung nilai rata-rata aritmatika untuk semua pasangan neuron.

Sebagai hasil dari analisis, diperoleh keteraturan bahwa nilai nominal bobot, ketika nilai kesalahannya minimal, dapat dihitung berdasarkan hubungan (2):

(2)

Dari ketergantungan ini, kita dapat mengatakan bahwa masalah menghitung bobot optimal adalah perbedaan aritmatika dari turunan fungsi kesalahan orde pertama terhadap bobot, dibagi dengan turunan dari fungsi kesalahan orde kedua.

Ketergantungan yang diberikan memungkinkan untuk menghitung kesalahan yang ada di lapisan keluaran. Perhitungan error pada lapisan tersembunyi neuron dapat diimplementasikan dengan menggunakan metode error backpropagation. Ide utama dari metode ini adalah untuk menyebarkan informasi, dalam bentuk pensinyalan kesalahan, dari neuron output ke neuron input, yaitu dalam arah yang berlawanan dengan perambatan sinyal melalui jaringan saraf.

Perlu juga dicatat bahwa pelatihan jaringan dilakukan pada basis data gambar yang disiapkan secara khusus yang diklasifikasikan ke dalam sejumlah besar kelas, dan itu membutuhkan waktu yang cukup lama.
Saat ini database terbesar adalah ImageNet (www.image_net.org). Ini memiliki akses gratis ke institusi akademik.

Kesimpulan

Sebagai hasil dari hal di atas, perlu dicatat bahwa jaringan saraf dan algoritme, yang diimplementasikan berdasarkan prinsip fungsinya, dapat menemukan penerapannya dalam sistem pengenalan kartu sidik jari untuk badan urusan internal. Seringkali, komponen perangkat lunak dari kompleks perangkat lunak dan perangkat keras yang ditujukan untuk mengenali gambar kompleks yang unik seperti gambar, yang merupakan data identifikasi, yang tidak sepenuhnya menyelesaikan tugas yang diberikan padanya. Sebuah program berdasarkan algoritma berdasarkan jaringan saraf akan jauh lebih efisien.

Untuk meringkas, kita dapat meringkas sebagai berikut:

● jaringan saraf dapat menemukan aplikasi, baik dalam masalah pengenalan gambar dan teks;

● teori ini memungkinkan untuk berbicara tentang penciptaan kelas model baru yang menjanjikan, yaitu model berdasarkan pemodelan cerdas;

● jaringan saraf mampu belajar, yang menunjukkan kemungkinan mengoptimalkan proses agar tidak berfungsi. Kemungkinan ini merupakan pilihan yang sangat penting untuk implementasi praktis dari algoritma;

● Evaluasi algoritma pengenalan pola menggunakan studi jaringan saraf dapat memiliki nilai kuantitatif, masing-masing, ada mekanisme untuk menyesuaikan parameter dengan nilai yang diperlukan dengan menghitung koefisien bobot yang diperlukan.

Saat ini, penelitian lebih lanjut tentang jaringan saraf tampaknya menjadi bidang penelitian yang menjanjikan yang akan berhasil diterapkan di lebih banyak cabang ilmu pengetahuan dan teknologi, serta aktivitas manusia. Penekanan utama dalam pengembangan sistem pengenalan modern sekarang beralih ke bidang segmentasi semantik gambar 3D dalam geodesi, kedokteran, pembuatan prototipe, dan bidang aktivitas manusia lainnya - ini adalah algoritma yang agak rumit dan ini disebabkan oleh:

● kurangnya jumlah database gambar referensi yang memadai;

● kurangnya jumlah ahli gratis yang memadai untuk pelatihan awal sistem;

● gambar tidak disimpan dalam piksel, yang memerlukan sumber daya tambahan dari komputer dan pengembang.

Perlu juga dicatat bahwa saat ini ada sejumlah besar arsitektur standar untuk membangun jaringan saraf, yang sangat memudahkan tugas membangun jaringan saraf dari awal dan menguranginya menjadi pemilihan struktur jaringan yang cocok untuk tugas tertentu.

Saat ini, ada cukup banyak perusahaan inovatif di pasar yang terlibat dalam pengenalan gambar menggunakan teknologi pembelajaran jaringan saraf untuk sistem. Diketahui dengan pasti bahwa mereka mencapai akurasi pengenalan gambar di wilayah 95% menggunakan database 10.000 gambar. Namun demikian, semua pencapaian terkait dengan gambar statis, dengan urutan video saat ini semuanya jauh lebih rumit.

Referensi bibliografi

Markova S.V., Zhigalov K.Yu. APLIKASI JARINGAN SARAF UNTUK PEMBUATAN SISTEM PENGENALAN CITRA // Penelitian dasar. - 2017. - No.8-1. - S.60-64;
URL: http://fundamental-research.ru/ru/article/view?id=41621 (tanggal akses: 03.24. Kami menyampaikan kepada Anda jurnal-jurnal yang diterbitkan oleh "Academy of Natural Sciences"

Teman, kami melanjutkan cerita tentang jaringan saraf, yang kami mulai terakhir kali, dan tentang.

Apa itu jaringan saraf?

Dalam kasus yang paling sederhana, jaringan saraf tiruan adalah model matematika yang terdiri dari beberapa lapisan elemen yang melakukan perhitungan paralel. Awalnya, arsitektur seperti itu dibuat dengan analogi dengan elemen komputasi terkecil dari otak manusia - neuron. Elemen komputasi terkecil dari jaringan saraf tiruan juga disebut neuron. Jaringan saraf biasanya terdiri dari tiga atau lebih lapisan: lapisan input, lapisan tersembunyi (atau lapisan) dan lapisan output (Gbr. 1), dalam beberapa kasus lapisan input dan output tidak diperhitungkan, dan kemudian jumlah lapisan dalam jaringan dihitung dengan jumlah lapisan tersembunyi. Jenis jaringan saraf ini disebut perceptron.

Beras. 1. Perceptron paling sederhana

Fitur penting dari jaringan saraf adalah kemampuannya untuk belajar dengan contoh, ini disebut pembelajaran terawasi. Jaringan saraf dilatih pada sejumlah besar contoh yang terdiri dari pasangan input-output (input dan output yang sesuai satu sama lain). Dalam masalah pengenalan objek, pasangan seperti itu akan menjadi gambar input dan label yang sesuai - nama objek. Pelatihan jaringan saraf adalah proses berulang yang mengurangi penyimpangan keluaran jaringan dari "jawaban guru" yang diberikan - label yang sesuai dengan gambar yang diberikan (Gbr. 2). Proses ini terdiri dari langkah-langkah yang disebut zaman pembelajaran (biasanya dalam ribuan), di mana masing-masing "bobot" jaringan saraf - parameter lapisan tersembunyi jaringan - disesuaikan. Setelah menyelesaikan proses pelatihan, kualitas jaringan saraf biasanya cukup baik untuk melakukan tugas yang dilatihnya, meskipun set parameter optimal yang secara sempurna mengenali semua gambar seringkali tidak mungkin ditemukan.


Beras. 2. Melatih jaringan saraf

Apa itu jaringan saraf dalam

Deep, atau deep, neural network adalah jaringan saraf yang terdiri dari beberapa lapisan tersembunyi (Gbr. 3). Angka ini adalah penggambaran jaringan saraf yang dalam, memberikan pembaca gambaran umum tentang seperti apa jaringan saraf itu. Namun, arsitektur sebenarnya dari jaringan saraf dalam jauh lebih kompleks.


Beras. 3. Jaringan saraf dengan banyak lapisan tersembunyi

Pencipta jaringan saraf convolutional, tentu saja, pada awalnya terinspirasi oleh struktur biologis sistem visual. Model komputasi pertama berdasarkan konsep organisasi hierarkis aliran visual primata dikenal sebagai Fukushima Neocognitron (Gbr. 4). Pemahaman modern tentang fisiologi sistem visual mirip dengan jenis pemrosesan informasi dalam jaringan konvolusi, setidaknya untuk pengenalan objek yang cepat.


Beras. 4. Diagram yang menunjukkan hubungan antar lapisan dalam model Neocognitron.

Kemudian, konsep ini diimplementasikan oleh peneliti Kanada Ian LeCune dalam jaringan saraf convolutionalnya, yang ia buat untuk mengenali karakter tulisan tangan. Jaringan saraf ini terdiri dari dua jenis lapisan: lapisan convolutional dan lapisan subsampling (atau lapisan penyatuan). Di dalamnya, setiap lapisan memiliki struktur topografi, yaitu, setiap neuron dikaitkan dengan titik tetap dari gambar asli, serta dengan bidang reseptif (area gambar input yang diproses oleh neuron ini). Di setiap lokasi di setiap lapisan, ada sejumlah neuron yang berbeda, masing-masing dengan set bobot inputnya sendiri yang terkait dengan neuron di irisan persegi panjang dari lapisan sebelumnya. Fragmen persegi panjang masukan yang berbeda dengan set bobot yang sama dikaitkan dengan neuron dari lokasi yang berbeda.

Arsitektur umum jaringan saraf dalam untuk pengenalan pola ditunjukkan pada Gambar 5. Gambar input direpresentasikan sebagai sekumpulan piksel atau area kecil gambar (misalnya, 5-kali-5 piksel)


Beras. 5. Diagram jaringan saraf convolutional

Sebagai aturan, jaringan saraf dalam digambarkan dalam bentuk yang disederhanakan: sebagai tahap pemrosesan, yang kadang-kadang disebut filter. Setiap tahap berbeda dari yang lain dalam sejumlah karakteristik, seperti ukuran bidang reseptif, jenis fitur yang dipelajari jaringan untuk dikenali dalam lapisan tertentu, dan jenis perhitungan yang dilakukan pada setiap tahap.

Bidang penerapan jaringan saraf dalam, termasuk jaringan konvolusi, tidak terbatas pada pengenalan wajah. Mereka banyak digunakan untuk pengenalan sinyal suara dan audio, pemrosesan pembacaan dari berbagai jenis sensor, atau untuk segmentasi gambar multi-layer yang kompleks (seperti peta satelit) atau gambar medis (gambar sinar-X, gambar fMRI - lihat).

Jaringan saraf dalam biometrik dan pengenalan wajah

Untuk mencapai akurasi pengenalan yang tinggi, jaringan saraf telah dilatih sebelumnya pada sejumlah besar gambar, misalnya, seperti dalam database MegaFace. Ini adalah metode pelatihan utama untuk pengenalan wajah.


Beras. 6. Basis data MegaFace berisi 1 juta gambar lebih dari 690 ribu orang

Setelah jaringan dilatih untuk mengenali wajah, proses pengenalan wajah dapat digambarkan sebagai berikut (Gambar 7). Pertama, gambar diproses menggunakan detektor wajah: algoritma yang mendeteksi bagian persegi panjang dari gambar dengan wajah. Fragmen ini dinormalisasi agar lebih mudah diproses oleh jaringan saraf: hasil terbaik akan dicapai jika semua gambar masukan memiliki ukuran, warna, dll yang sama. Gambar yang dinormalisasi diumpankan ke masukan jaringan saraf untuk diproses oleh algoritma. Algoritma ini biasanya merupakan pengembangan unik dari perusahaan untuk meningkatkan kualitas pengakuan, tetapi ada juga solusi "standar" untuk masalah ini. Jaringan saraf membangun vektor fitur unik, yang kemudian ditransfer ke database. Mesin pencari membandingkannya dengan semua vektor fitur yang disimpan dalam database, dan memberikan hasil pencarian dalam bentuk sejumlah nama atau profil pengguna dengan fitur wajah serupa, yang masing-masing diberi nomor tertentu. Angka ini mewakili tingkat kesamaan vektor fitur kami dengan yang ditemukan di database.


Beras. 7. Proses pengenalan wajah

Menentukan kualitas algoritma

Ketepatan

Ketika kita memilih algoritma mana yang akan diterapkan pada objek atau masalah pengenalan wajah, kita harus memiliki cara untuk membandingkan efektivitas algoritma yang berbeda. Pada bagian ini kami akan menjelaskan alat yang digunakan untuk melakukannya.

Kualitas sistem pengenalan wajah dinilai menggunakan seperangkat metrik yang sesuai dengan skenario umum untuk menggunakan sistem untuk otentikasi menggunakan biometrik.

Sebagai aturan, kinerja jaringan saraf apa pun dapat diukur dalam hal akurasi: setelah mengatur parameter dan menyelesaikan proses pelatihan, jaringan diuji pada set tes yang kami memiliki respons guru, tetapi yang terpisah dari perlengkapan latihan. Biasanya, parameter ini adalah ukuran kuantitatif: angka (seringkali dalam persentase) yang menunjukkan seberapa baik sistem mampu mengenali objek baru. Ukuran umum lainnya adalah kesalahan (dapat dinyatakan sebagai persentase atau setara numerik). Namun, ada ukuran yang lebih tepat untuk biometrik.

Dalam biometrik pada umumnya dan biometrik untuk pengenalan wajah pada khususnya, ada dua jenis aplikasi: verifikasi dan identifikasi. Verifikasi adalah proses konfirmasi identitas tertentu dengan membandingkan gambar individu (vektor fitur wajah atau vektor fitur lainnya, misalnya retina atau sidik jari) dengan satu atau lebih template yang disimpan sebelumnya. Identifikasi adalah proses untuk menentukan identitas seseorang. Sampel biometrik dikumpulkan dan dibandingkan dengan semua template dalam database. Ada identifikasi dalam kumpulan fitur tertutup jika diasumsikan bahwa seseorang ada dalam database. Dengan demikian, pengakuan menggabungkan satu atau kedua istilah - verifikasi dan identifikasi.

Seringkali, selain hasil langsung dari perbandingan, diperlukan untuk menilai tingkat "kepercayaan" sistem dalam keputusannya. Nilai ini disebut "skor kesamaan" (atau skor kesamaan). Nilai kemiripan yang lebih tinggi menunjukkan bahwa dua sampel biometrik yang dibandingkan lebih mirip.

Ada beberapa metode untuk menilai kualitas sistem (baik untuk tugas verifikasi dan identifikasi). Kami akan berbicara tentang mereka lain kali. Dan Anda tinggal bersama kami dan jangan ragu untuk meninggalkan komentar dan mengajukan pertanyaan.

CATATAN

  1. Fukushima (1980) "Neocognitron: A self-organizing neural network model untuk mekanisme pengenalan pola yang tidak terpengaruh oleh pergeseran posisi," Biological Cybernetics.
  2. LeCun, B. Boser, J.S. Denker, D. Henderson, R.E. Howard, W. Hubbard dan L.D. Jackel (1989) "Backpropagation Diterapkan pada Pengenalan Kode Pos Tulisan Tangan", Neural Computation, vol. 1, hal., 541-551.
  3. Jiaxuan You, Xiaocheng Li, Melvin Low, David Lobell, Stefano Ermon Proses Gaussian Deep untuk Prediksi Hasil Tanaman Berdasarkan Data Penginderaan Jauh.
  4. Ian Goodfellow, Yoshua Bengio, Aaron Courville (2016) Pembelajaran Mendalam. MIT pers.
  5. Poh, C-H. Chan, J. Kittler, Julian Fierrez (UAM), dan Javier Galbally (UAM) (2012) Deskripsi Metrik Untuk Evaluasi Kinerja Biometrik.