Apa definisi dari "peta fitur" (alias "peta aktivasi") dalam jaringan saraf convolutional?

32

 Latar Belakang Pengantar

Dalam jaringan saraf convolutional, kami biasanya memiliki struktur / aliran umum yang terlihat seperti ini:

  1. input gambar (yaitu vektor 2D x)

(Lapisan Konvolusional 1 (Konv1) dimulai di sini ...)

  1. menggabungkan satu set filter ( w1) di sepanjang gambar 2D (yaitu melakukan z1 = w1*x + b1penggandaan produk titik), di mana z13D, dan b1bias.
  2. menerapkan fungsi aktivasi (mis. ReLu) untuk membuat z1non-linear (mis. a1 = ReLu(z1)), di mana a13D.

(Lapisan Konvolusional ke-2 (Conv2) dimulai di sini ...)

  1. menggabungkan satu set filter di sepanjang aktivasi yang baru dihitung (mis. lakukan z2 = w2*a1 + b2penggandaan produk titik), di mana z23D, dan dan b2adalah bias.
  2. menerapkan fungsi aktivasi (mis. ReLu) untuk membuat z2non-linear (mis. a2 = ReLu(z2)), di mana a23D.

 Pertanyaan

Definisi istilah "peta fitur" tampaknya bervariasi dari satu literatur ke literatur lainnya. Secara konkret:

  • Untuk lapisan convolutional 1, apakah "peta fitur" bersesuaian dengan vektor input x, atau output dot produk z1, atau aktivasi keluaran a1, atau "proses" converting xke a1, atau sesuatu yang lain?
  • Demikian pula, untuk lapisan konvolusional ke-2, apakah "peta fitur" sesuai dengan aktivasi input a1, atau produk titik keluaran z2, atau aktivasi output a2, atau "proses" konversi a1menjadi a2, atau sesuatu yang lain?

Selain itu, apakah benar bahwa istilah "peta fitur" persis sama dengan "peta aktivasi"? (Atau apakah mereka benar-benar berarti dua hal yang berbeda?)

 Referensi tambahan:

Cuplikan dari Jaringan Saraf Tiruan dan Pembelajaran Dalam - Bab 6 :

* Nomenklatur ini digunakan secara longgar di sini. Secara khusus, saya menggunakan "peta fitur" bukan berarti fungsi yang dihitung oleh lapisan convolutional, melainkan aktivasi output neuron tersembunyi dari lapisan. Jenis penyalahgunaan nomenklatur yang ringan ini cukup umum dalam literatur penelitian.


Cuplikan dari Visualisasi dan Memahami Jaringan Konvolusional oleh Matt Zeiler :

Dalam makalah ini kami memperkenalkan teknik visualisasi yang mengungkapkan rangsangan input yang menggairahkan peta fitur individu pada setiap lapisan dalam model. [...] Pendekatan kami, sebaliknya, memberikan tampilan invarian non-parametrik, yang menunjukkan pola mana dari rangkaian pelatihan yang mengaktifkan peta fitur. [...] operasi kontras lokal yang menormalkan respons di seluruh peta fitur. [...] Untuk memeriksa aktivasi convnet yang diberikan, kami mengatur semua aktivasi lainnya di layer menjadi nol dan meneruskan peta fitur sebagai input ke lapisan deconvnet yang terlampir. [...] convnet menggunakan relu non-linearities, yang memperbaiki peta fitur sehingga memastikan fitur peta selalu positif. [...] The convnet menggunakan filter yang dipelajari untuk menggabungkan fitur peta dari lapisan sebelumnya. [...] Gambar 6, visualisasi ini adalah representasi akurat dari pola input yang merangsang peta fitur yang diberikan dalam model [...] ketika bagian-bagian dari gambar input asli yang sesuai dengan pola tersumbat, kita melihat penurunan aktivitas yang berbeda dalam peta fitur. [...]

Keterangan: juga memperkenalkan istilah "peta fitur" dan "peta fitur yang diperbaiki" pada Gambar 1.


Cuplikan dari Stanford CS231n Bab tentang CNN :

[...] Salah satu perangkap berbahaya yang dapat dengan mudah dilihat dengan visualisasi ini adalah bahwa beberapa peta aktivasi mungkin nol untuk banyak input yang berbeda, yang dapat menunjukkan filter mati, dan dapat menjadi gejala tingkat pembelajaran yang tinggi [...] Aktivasi yang tampak khas pada lapisan CONV pertama (kiri), dan lapisan 5 CONV (kanan) dari AlexNet yang terlatih melihat gambar seekor kucing. Setiap kotak menunjukkan peta aktivasi yang sesuai dengan beberapa filter. Perhatikan bahwa aktivasi jarang (sebagian besar nilai nol, dalam visualisasi ini ditampilkan dalam warna hitam) dan sebagian besar lokal.


Cuplikan dari A-Beginner's-Guide-To-Understanding-Convolutional-Neural-Networks

[...] Setiap lokasi unik pada volume input menghasilkan angka. Setelah menggeser filter ke semua lokasi, Anda akan mengetahui bahwa yang tersisa adalah array angka 28 x 28 x 1, yang kami sebut peta aktivasi atau peta fitur.

Atlas7
sumber

Jawaban:

27

Peta fitur, atau peta aktivasi, adalah aktivasi output untuk filter yang diberikan (a1 dalam kasus Anda) dan definisinya tetap sama, apa pun lapisannya.

Peta fitur dan peta aktivasi memiliki arti yang persis sama. Ini disebut peta aktivasi karena ini adalah pemetaan yang sesuai dengan aktivasi bagian gambar yang berbeda, dan juga peta fitur karena juga pemetaan di mana jenis fitur tertentu ditemukan dalam gambar. Aktivasi tinggi berarti fitur tertentu ditemukan.

"Peta fitur yang diperbaiki" hanyalah peta fitur yang dibuat menggunakan Relu. Anda mungkin dapat melihat istilah "peta fitur" yang digunakan untuk hasil dari produk titik (z1) karena ini juga benar-benar peta tempat fitur tertentu dalam gambar, tetapi itu tidak umum untuk dilihat.

Frobot
sumber
1
Terima kasih atas masukannya. Respons Anda sejalan dengan pemahaman saya (mis. Peta aktivasi adalah a1, a2dll.). Di Conv2, saya kira saya akan memanggil a1peta aktivasi input, dan a2peta aktivasi output. Di Conv1, saya xgambar input, dan a1peta aktivasi output.
Atlas7
4

sebelum berbicara tentang apa artinya peta fitur, biarkan tentukan saja istilah vektor fitur.

vektor fitur adalah representasi vektor objek. Misalnya, sebuah mobil dapat diwakili oleh [jumlah roda, pintu. windows, umur .. dll].

peta fitur adalah fungsi yang mengambil vektor fitur dalam satu ruang dan mengubahnya menjadi vektor fitur di ruang lain. Misalnya diberikan vektor fitur [volume, berat, tinggi, lebar] dapat mengembalikan [1, volume / berat, tinggi * lebar] atau [tinggi * lebar] atau bahkan hanya [volume]

HISI
sumber