Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Equipment >> Robot industri

Arsitektur Jaringan Neural untuk Implementasi Python

Artikel ini membahas konfigurasi Perceptron yang akan kita gunakan untuk eksperimen dengan pelatihan dan klasifikasi jaringan saraf, dan kita juga akan melihat topik terkait node bias.

Selamat datang di rangkaian artikel teknis All About Circuits neural network. Dalam seri sejauh ini—tertaut di bawah—kita telah membahas cukup banyak teori seputar jaringan saraf.

  1. Bagaimana Melakukan Klasifikasi Menggunakan Jaringan Syaraf Tiruan:Apa Itu Perceptron?
  2. Cara Menggunakan Contoh Jaringan Neural Perceptron Sederhana untuk Mengklasifikasikan Data
  3. Cara Melatih Jaringan Neural Perceptron Dasar
  4. Memahami Pelatihan Jaringan Syaraf Sederhana
  5. Pengantar Teori Pelatihan untuk Jaringan Neural
  6. Memahami Kecepatan Pembelajaran di Jaringan Neural
  7. Pembelajaran Mesin Tingkat Lanjut dengan Perceptron Multilayer
  8. Fungsi Aktivasi Sigmoid:Aktivasi di Jaringan Neural Perceptron Multilayer
  9. Cara Melatih Jaringan Neural Perceptron Multilayer
  10. Memahami Rumus Pelatihan dan Backpropagation untuk Perceptron Multilayer
  11. Arsitektur Jaringan Saraf untuk Implementasi Python
  12. Cara Membuat Jaringan Neural Perceptron Multilayer dengan Python
  13. Pemrosesan Sinyal Menggunakan Jaringan Saraf Tiruan:Validasi dalam Desain Jaringan Saraf Tiruan
  14. Pelatihan Kumpulan Data untuk Jaringan Neural:Cara Melatih dan Memvalidasi Jaringan Neural Python

Sekarang kami siap untuk mulai mengubah pengetahuan teoretis ini menjadi sistem klasifikasi Perceptron yang fungsional.

Pertama saya ingin memperkenalkan karakteristik umum dari jaringan yang akan kita implementasikan dalam bahasa pemrograman tingkat tinggi; Saya menggunakan Python, tetapi kodenya akan ditulis dengan cara yang memfasilitasi terjemahan ke bahasa lain seperti C. Artikel berikutnya memberikan panduan rinci tentang kode Python, dan setelah itu kita akan menjelajahi berbagai cara pelatihan , menggunakan, dan mengevaluasi jaringan ini.

Arsitektur Jaringan Syaraf Python

Perangkat lunak tersebut sesuai dengan Perceptron yang digambarkan dalam diagram berikut.


Berikut adalah karakteristik dasar jaringan:

\[f(x)=\frac{1}{1+e^{-x}}\]

Apa Itu Bias Node? (AKA Bias Baik Jika Anda Perceptron)

Saat kita membahas arsitektur jaringan, saya harus menunjukkan bahwa jaringan saraf sering memasukkan sesuatu yang disebut simpul bias (atau Anda dapat menyebutnya hanya "bias," tanpa "simpul"). Nilai numerik yang terkait dengan simpul bias adalah konstanta yang dipilih oleh perancang. Misalnya:

Node bias dapat dimasukkan ke dalam lapisan input atau lapisan tersembunyi, atau keduanya. Bobotnya sama seperti bobot lainnya dan diperbarui menggunakan prosedur propagasi balik yang sama.

Penggunaan node bias adalah alasan penting untuk menulis kode jaringan saraf yang memungkinkan Anda dengan mudah mengubah jumlah input node atau hidden node—bahkan jika Anda hanya tertarik pada satu tugas klasifikasi tertentu, input variabel, dan dimensi lapisan tersembunyi. memastikan bahwa Anda dapat dengan mudah bereksperimen dengan penggunaan node bias.

Di Bagian 10, saya menunjukkan bahwa sinyal praaktivasi node dihitung dengan melakukan produk titik—yaitu, Anda mengalikan elemen yang sesuai dari dua larik (atau vektor, jika Anda mau) dan kemudian menjumlahkan semua produk individual. Larik pertama menyimpan nilai pascaaktivasi dari lapisan sebelumnya, dan larik kedua menyimpan bobot yang menghubungkan lapisan sebelumnya ke lapisan saat ini. Jadi, jika larik pascaaktivasi lapisan sebelumnya dilambangkan dengan x dan vektor bobot dilambangkan dengan w, nilai praaktivasi dihitung sebagai berikut:

\[S_{preA} =w \cdot x =sum(w_1x_1 + w_2x_2 + \cdots + w_nx_n)\]

Anda mungkin bertanya-tanya apa hubungannya ini dengan node bias. Nah, bias (dilambangkan dengan b) memodifikasi prosedur ini sebagai berikut:

\[S_{preA} =( w \cdot x)+b =jumlah(w_1x_1 + w_2x_2 + \cdots + w_nx_n)+b\]

Bias menggeser sinyal yang diproses oleh fungsi aktivasi, dan dengan demikian dapat membuat jaringan lebih fleksibel dan kuat. Penggunaan huruf b untuk menunjukkan nilai bias mengingatkan pada “perpotongan y” dalam persamaan standar untuk garis lurus:y =mx + b . Dan ini bukan kebetulan yang sia-sia. Biasnya memang seperti perpotongan y, dan Anda mungkin juga memperhatikan bahwa susunan bobot ekuivalen dengan kemiringan:

\[S_{preA} =( w \cdot x)+b\]

\[y =mx + b\]

Bobot, Bias, dan Aktivasi

Jika kita berpikir tentang nilai numerik yang dikirimkan ke fungsi aktivasi node selama pelatihan, bobot menambah atau mengurangi kemiringan data input, dan bias menggeser data input secara vertikal. Tapi bagaimana ini mempengaruhi output node? Nah, mari kita asumsikan bahwa kita menggunakan fungsi logistik standar untuk aktivasi:

Transisi dari fA (x) =0 hingga fA (x) =1 berpusat pada nilai input x =0. Jadi, dengan menggunakan bias untuk menambah atau mengurangi sinyal praaktivasi, kita dapat mempengaruhi terjadinya transisi dan dengan demikian menggeser fungsi aktivasi ke kiri atau kanan . Bobot, di sisi lain, menentukan seberapa "cepat" nilai input melewati x =0, dan ini mempengaruhi kecuraman transisi dalam fungsi aktivasi.

Kesimpulan

Kami telah membahas node bias dan karakteristik menonjol dari jaringan saraf pertama yang akan kami terapkan dalam perangkat lunak. Sekarang kita siap untuk melihat kode yang sebenarnya, dan itulah yang akan kita lakukan di artikel berikutnya.


Robot industri

  1. 5 Metrik Jaringan untuk Dunia Awan
  2. Pengantar Arsitektur Jaringan di AWS Cloud
  3. Python untuk Loop
  4. Perincian Arsitektur NB-IoT Untuk Arsitek IoT
  5. Mencari Alternatif Gelombang-Z?
  6. CEVA:prosesor AI generasi kedua untuk beban kerja jaringan saraf dalam
  7. Infrastruktur jaringan adalah kunci untuk mobil tanpa pengemudi
  8. Python - Pemrograman Jaringan
  9. 5 Tips Keamanan Jaringan Dasar untuk Bisnis Kecil
  10. Penjelasan:Mengapa 5G Sangat Penting untuk IoT?