Saya telah melihat beberapa pertanyaan di situs ini tentang Deep Dream, namun tidak satupun dari mereka yang benar-benar berbicara tentang apa yang dilakukan DeepDream, khususnya. Sejauh yang saya kumpulkan, mereka tampaknya telah mengubah fungsi tujuan, dan juga mengubah backpropagation sehingga alih-alih memperbarui bobot, mereka memperbarui gambar input.
Saya ingin tahu apakah ada yang tahu persis apa yang dilakukan Google. Mereka menyebutkan dalam salah satu artikel mereka yang memaksakan prior Bayesian ketika mereka melakukan optimasi mereka, dan dengan ini saya dapat membayangkan bahwa mendapatkan neural net untuk memuntahkan gambar untuk setiap label tidak begitu sulit - kita hanya dapat mengatur label, dan kemudian mengoptimalkan vektor input yang sesuai.
Namun, bagian yang menarik dari mimpi mendalam adalah bahwa ia melakukan ini per lapisan, dan dalam hal ini saya tidak begitu yakin bagaimana ini menekankan rincian dalam cara per lapisan.
Tentu saja, memberi makan dalam gambar akan memberi Anda nilai di setiap neuron, tetapi kemudian bagaimana kita dapat menggunakan informasi itu untuk membesar-besarkan detail dalam gambar asli? Saya kesulitan menemukan artikel terperinci tentang hal ini.
Referensi: Di sini vzn menjawab pertanyaan serupa: /cs//a/44857/49671
Dari tautan itu, ada implementasi Deepdream, di sini: http://auduno.com/post/125362849838/visualizing-googlenet-classes
Kecuali itu tidak menawarkan fitur yang berlebihan seperti yang dibahas di sini: http://googleresearch.blogspot.com/2015/06/inceptionism-going-deeper-into-neural.html
Di mana mereka berdua menunjukkan visualisasi kelas tertentu, dan lapisan tertentu, dan berkata:
Alih-alih menentukan secara tepat fitur mana yang kita inginkan untuk diperkuat jaringan, kita juga dapat membiarkan jaringan membuat keputusan itu. Dalam hal ini kami hanya memberi makan jaringan gambar atau foto sewenang-wenang dan membiarkan jaringan menganalisis gambar. Kami kemudian memilih layer dan meminta jaringan untuk meningkatkan apa pun yang terdeteksi.