Dalam dekad yang lalu, pembelajaran mendalam telah mencapai kejayaan yang menakjubkan, dan kaedah penurunan kecerunan stokastik dengan sejumlah besar parameter dan data telah terbukti berkesan. Keturunan kecerunan biasanya menggunakan algoritma perambatan belakang, jadi isu seperti sama ada otak mengikuti perambatan balik dan sama ada terdapat cara lain untuk mendapatkan kecerunan yang diperlukan untuk melaraskan berat sambungan sentiasa menarik perhatian ramai.
Geoffrey Hinton, pemenang Anugerah Turing dan perintis pembelajaran mendalam, sebagai salah seorang pencadang backpropagation, telah berulang kali mencadangkan dalam beberapa tahun kebelakangan ini bahawa backpropagation tidak dapat menjelaskan cara otak berfungsi. Sebaliknya, dia mencadangkan kaedah pembelajaran rangkaian saraf baharu - Algoritma Hadapan-Hadapan (FF).
Pada persidangan NeurIPS 2022 baru-baru ini, Hinton menyampaikan ucapan khas bertajuk "Algoritma Hadapan-Hadapan untuk Melatih Rangkaian Neural Dalam", membincangkan Kelebihan algoritma hadapan berbanding sebaliknya algoritma. Draf pertama kertas kerja "The Forward-Forward Algorithm: Some Preliminary Investigations" telah diletakkan di laman utama Universiti Toronto:
Alamat Kertas: https://www.cs.toronto.edu/~hinton/FFA13.pdf
dan algoritma perambatan belakang menggunakan satu hantaran ke hadapan + satu ke belakang lulus Secara berbeza, algoritma FF terdiri daripada dua hantaran ke hadapan, satu menggunakan data positif (iaitu sebenar) dan satu lagi menggunakan data negatif yang dijana oleh rangkaian itu sendiri.
Hinton percaya bahawa kelebihan algoritma FF ialah ia menerangkan dengan lebih baik pembelajaran kortikal otak dan boleh mensimulasikan perkakasan dengan penggunaan kuasa yang sangat rendah.
Hinton menyokong bahawa bentuk komputer yang memisahkan perisian dan perkakasan harus ditinggalkan Komputer masa hadapan harus direka bentuk untuk menjadi "bukan fana", dengan itu menjimatkan sumber pengkomputeran, dan Algoritma FF ialah kaedah pembelajaran terbaik yang boleh berjalan dengan cekap dalam perkakasan jenis ini.
Ini mungkin cara yang ideal untuk menyelesaikan kekangan pengiraan model besar dengan trilion parameter pada masa hadapan.
Dalam algoritma FF, setiap lapisan mempunyai fungsi objektif tersendiri, yang mempunyai kebaikan tinggi untuk data positif dan kebaikan rendah untuk data negatif. Jumlah aktiviti kuasa dua dalam satu lapisan boleh digunakan sebagai ukuran kebaikan, dan terdapat banyak kemungkinan lain, seperti menolak jumlah aktiviti kuasa dua.
Jika hantaran positif dan negatif boleh dipisahkan mengikut masa, hantaran negatif boleh dilakukan di luar talian, pembelajaran hantaran positif akan menjadi lebih mudah dan membolehkan video dihantar melalui rangkaian tanpa perlu untuk menyimpan aktiviti atau menamatkan derivatif pembiakan.
Hinton percaya bahawa algoritma FF adalah lebih baik daripada perambatan balik dalam dua aspek:
Pertama, FF adalah untuk menerangkan pembelajaran korteks serebrum Model yang lebih baik;
Kedua, FF lebih memakan tenaga, ia menggunakan perkakasan simulasi kuasa yang sangat rendah tanpa menggunakan pembelajaran pengukuhan.
Tiada bukti nyata bahawa korteks merambat derivatif ralat atau menyimpan aktiviti saraf untuk perambatan balik berikutnya. Sambungan atas ke bawah dari satu kawasan kortikal ke kawasan lebih awal dalam laluan visual tidak mencerminkan sambungan bawah ke atas yang dijangkakan apabila perambatan belakang digunakan dalam sistem visual. Sebaliknya, mereka membentuk gelung di mana aktiviti saraf melalui dua kawasan, kira-kira enam korteks, dan kemudian kembali ke tempat ia bermula.
Sebagai salah satu cara untuk mempelajari urutan, penyebaran balik melalui masa tidak begitu boleh dipercayai. Untuk memproses aliran input deria tanpa jeda yang kerap, otak perlu menghantar data melalui peringkat pemprosesan deria yang berbeza dan juga memerlukan proses yang boleh belajar dengan cepat. Perwakilan kemudian dalam saluran paip mungkin memberikan maklumat atas ke bawah kemudian dalam masa yang mempengaruhi perwakilan dalam peringkat awal saluran paip, tetapi sistem persepsi perlu membuat alasan dan belajar dalam masa nyata, bukannya berhenti dan melakukan penyebaran balik.
Satu lagi had serius perambatan belakang ialah ia memerlukan pengetahuan lengkap tentang pengiraan yang dilakukan oleh perambatan hadapan untuk memperoleh terbitan yang betul. Jika kita memasukkan kotak hitam dalam perambatan ke hadapan, perambatan belakang tidak boleh dilakukan melainkan model kotak hitam yang boleh dibezakan dipelajari.
Dan kotak hitam tidak akan menjejaskan proses pembelajaran algoritma FF, kerana tidak perlu perambatan balik melaluinya.
Apabila tiada model perambatan ke hadapan yang sempurna, kita boleh bermula daripada pelbagai kaedah pembelajaran peneguhan. Satu idea adalah untuk melakukan gangguan rawak pada pemberat atau aktiviti saraf dan mengaitkan gangguan ini dengan perubahan yang terhasil dalam fungsi hasil. Walau bagaimanapun, disebabkan masalah varians yang tinggi dalam pembelajaran pengukuhan: apabila pembolehubah lain terganggu pada masa yang sama, adalah sukar untuk melihat kesan mengganggu pembolehubah tunggal. Untuk melakukan ini, untuk mengeluarkan purata bunyi yang disebabkan oleh semua gangguan lain, kadar pembelajaran perlu berkadar songsang dengan bilangan pembolehubah yang terganggu, yang bermaksud bahawa pembelajaran pengukuhan berskala buruk kepada rangkaian besar yang mengandungi berjuta-juta atau berbilion-bilion.
Maksud Hinton ialah rangkaian saraf yang mengandungi ketaklinearan yang tidak diketahui tidak perlu menggunakan pembelajaran pengukuhan.
Algoritma FF adalah setanding dengan perambatan belakang dalam kelajuan Kelebihannya ialah ia boleh digunakan apabila butiran tepat pengiraan hadapan tidak diketahui, dan ia juga boleh digunakan dalam saraf. rangkaian. Pembelajaran berlaku semasa saluran paip memproses data berurutan tanpa perlu menyimpan aktiviti saraf atau menamatkan derivatif ralat perambatan.
Walau bagaimanapun, dalam aplikasi terhad kuasa, algoritma FF belum lagi menggantikan perambatan balik Sebagai contoh, untuk model yang sangat besar yang dilatih pada set data yang sangat besar, ia masih boleh dilakukan kepada Terutamanya backpropagation.
Algoritma ke hadapan-ke hadapan ialah prosedur pembelajaran berbilang lapisan tamak yang diilhamkan oleh mesin Glass Oltzmann dan anggaran kontrastif hingar.
Ganti hantaran hadapan+undur bagi rambatan belakang dengan dua hantaran hadapan, yang beroperasi pada data yang berbeza dan sasaran bertentangan, beroperasi dengan cara yang sama antara satu sama lain . Antaranya, saluran hadapan beroperasi pada data sebenar dan melaraskan pemberat untuk meningkatkan kelebihan setiap lapisan tersembunyi, dan saluran belakang melaraskan pemberat "data negatif" untuk mengurangkan kelebihan setiap lapisan tersembunyi.
Artikel ini meneroka dua metrik berbeza - jumlah kuasa dua aktiviti saraf dan jumlah kuasa dua aktiviti negatif.
Anggapkan bahawa fungsi kebaikan lapisan tertentu ialah jumlah kuasa dua aktiviti neuron linear yang diperbetulkan dalam lapisan, dan tujuan pembelajaran adalah untuk menjadikan kebaikannya lebih tinggi daripada ambang tertentu bagi data sebenar , dan jauh di bawah ambang data negatif. Iaitu, kebarangkalian bahawa vektor input adalah positif (iaitu, benar) apabila ia dikelaskan dengan betul sebagai data positif atau negatif boleh ditentukan dengan menggunakan fungsi logistik σ kepada kebaikan-kebaikan tolak beberapa ambang θ:
di mana, ialah aktiviti unit tersembunyi j sebelum penormalan lapisan. Data negatif boleh diramalkan dengan sambungan atas ke bawah rangkaian saraf atau disediakan secara luaran.
Mudah untuk melihat bahawa penjajaran boleh dicapai dengan membuat jumlah aktiviti kuasa dua unit tersembunyi Tinggi untuk data dan rendah untuk data negatif untuk mempelajari satu lapisan tersembunyi. Tetapi apabila aktiviti lapisan tersembunyi pertama digunakan sebagai input kepada lapisan tersembunyi kedua, hanya panjang vektor aktiviti lapisan tersembunyi pertama digunakan untuk membezakan data positif dan negatif tanpa mempelajari ciri baharu.
Untuk mengelakkan ini, FF akan menormalkan panjang vektor tersembunyi sebelum menggunakannya sebagai input lapisan seterusnya, mengalih keluar semua maklumat yang digunakan untuk menentukan maklumat lapisan tersembunyi pertama dalam tersembunyi pertama lapisan, sekali gus memaksa lapisan tersembunyi seterusnya menggunakan maklumat aktiviti relatif neuron dalam lapisan tersembunyi pertama, yang tidak terjejas oleh normalisasi lapisan.
Maksudnya, Vektor aktiviti lapisan tersembunyi pertama mempunyai panjang dan arah Panjang digunakan untuk mentakrifkan jinak lapisan, dan hanya arah diteruskan ke seterusnya lapisan.
Kebanyakan percubaan dalam artikel ini menggunakan set data MNIST digit tulisan tangan: 50,000 untuk latihan, 10,000 untuk pengesahan semasa mencari hiperparameter yang baik dan 10,000 untuk mengira kadar ralat ujian. Rangkaian saraf konvolusi yang direka dengan beberapa lapisan tersembunyi boleh mencapai ralat ujian kira-kira 0.6%.
Dalam versi tugasan "permutasi-invarian", rangkaian saraf tidak mendapat maklumat tentang reka letak spatial piksel Jika sebelum latihan bermula, semua imej latihan dan ujian terjejas dengan variasi piksel rawak yang sama, maka rangkaian saraf akan berfungsi dengan baik.
Untuk versi "invarian pilih atur" tugas ini, ralat ujian rangkaian saraf suapan hadapan dengan unit linear diperbetulkan (ReLU) dengan beberapa lapisan tersembunyi yang disambungkan sepenuhnya ialah kira-kira 1.4%, di mana Ia mengambil masa kira-kira 20 zaman untuk melatih. Menggunakan pelbagai penyelaras seperti keciciran (yang melambatkan latihan) atau pelicinan label (yang mempercepatkan latihan), ralat ujian boleh dikurangkan kepada sekitar 1.1%. Di samping itu, ralat ujian boleh dikurangkan lagi dengan menggabungkan pembelajaran penyeliaan label dengan pembelajaran tanpa pengawasan.
Versi tugasan "permutasi-invarian" mencapai ralat ujian sebanyak 1.4% tanpa menggunakan penyelaras kompleks, menunjukkan bahawa proses pembelajaran adalah berkesan seperti perambatan balik .
Rajah 1: Imej bercampur digunakan sebagai data negatif
FF mempunyai dua soalan utama untuk dijawab: Memandangkan sumber data negatif yang baik, adakah ia akan mempelajari perwakilan berbilang lapisan yang cekap untuk menangkap struktur data? Dari mana datangnya data negatif?
Mula-mula gunakan data negatif manual untuk menjawab soalan pertama. Cara biasa untuk menggunakan pembelajaran kontrastif untuk tugasan pembelajaran yang diselia ialah mengubah vektor input kepada vektor perwakilan tanpa menggunakan sebarang maklumat tentang label, dan belajar untuk mengubah secara linear vektor perwakilan ini menjadi vektor logit menggunakan, dalam softmax, untuk menentukan taburan kebarangkalian daripada label. Walaupun tidak linear yang jelas, ini masih dipanggil pengelas linear, di mana pembelajaran transformasi linear vektor logits diawasi, kerana ia tidak melibatkan pembelajaran sebarang lapisan tersembunyi dan tiada perambatan balik derivatif diperlukan. FF boleh melaksanakan pembelajaran perwakilan ini dengan menggunakan vektor data sebenar sebagai contoh positif dan vektor data rosak sebagai contoh negatif.
Untuk menjadikan FF fokus pada mencirikan korelasi jangka panjang imej bentuk, kita perlu mencipta data negatif dengan korelasi jangka panjang yang berbeza, tetapi korelasi jangka pendek yang sangat serupa dilakukan dengan mencipta Lengkap dengan topeng yang agak besar kawasan 1 dan 0. Imej hibrid kemudian dicipta untuk data negatif dengan menambahkan imej digital pada topeng dan imej digital yang berbeza untuk mendarab sisi bertentangan topeng (Rajah 1).
Mula mencipta topeng daripada peta bit rawak, mengaburkan imej berulang kali menggunakan penapis dalam bentuk [1/4, 1/2, 1/4] dalam kedua-dua arah mendatar dan menegak. Ambang untuk imej berulang kali kabur ditetapkan kepada 0.5. Selepas latihan selama 100 zaman menggunakan empat lapisan tersembunyi (setiap lapisan tersembunyi mengandungi 2000 ReLU), jika vektor aktiviti normal bagi tiga lapisan tersembunyi terakhir digunakan sebagai input softmax, ralat ujian sebanyak 1.37% boleh diperolehi.
Selain itu, tidak menggunakan lapisan bersambung sepenuhnya tetapi menggunakan medan penerimaan tempatan (tanpa perkongsian berat) boleh meningkatkan prestasi Ralat ujian latihan untuk 60 zaman ialah 1.16%. Normalisasi Rakan Sebaya" menghalang mana-mana unit tersembunyi daripada menjadi hiperaktif atau ditutup secara kekal.
Mempelajari representasi tersembunyi tanpa menggunakan sebarang maklumat label, yang akhirnya mungkin dapat melaksanakan pelbagai tugas Sangat wajar untuk besar model: pembelajaran tanpa pengawasan mengekstrak set ciri yang besar untuk setiap tugas. Tetapi jika anda hanya berminat dengan satu tugasan dan ingin menggunakan model kecil, maka pembelajaran yang diselia akan lebih sesuai.
Satu cara untuk menggunakan FF dalam pembelajaran terkawal adalah dengan memasukkan label dalam input Data positif terdiri daripada imej dengan label yang betul, manakala data negatif terdiri daripada imej dengan label yang salah . Perbezaannya ialah FF mengabaikan semua ciri dalam imej yang tidak berkaitan dengan label.
Imej MNIST mengandungi sempadan hitam untuk memudahkan kerja rangkaian saraf konvolusi. Kandungan pembelajaran lapisan tersembunyi pertama juga mudah didedahkan apabila menggantikan 10 piksel pertama dengan salah satu perwakilan N bagi label. Dalam rangkaian dengan 4 lapisan tersembunyi, setiap lapisan tersembunyi mengandungi 2000 ReLU Selepas 60 zaman, sambungan lengkap antara lapisan mempunyai ralat ujian sebanyak 1.36% oleh MNIST diperlukan untuk mencapai prestasi ujian ini. Menggandakan kadar pembelajaran dan latihan FF selama 40 zaman menghasilkan ralat ujian yang lebih teruk iaitu 1.46%.
Selepas latihan dengan FF, digit ujian dikelaskan dengan membuat hantaran ke hadapan oleh rangkaian bermula daripada input yang mengandungi digit ujian dan label neutral yang terdiri daripada 10 0.1 entri ,Selepas itu , semua aktiviti tersembunyi kecuali lapisan tersembunyi pertama digunakan sebagai input softmax yang dipelajari semasa latihan, yang merupakan kaedah yang pantas, suboptimum untuk pengelasan imej. Cara terbaik ialah menjalankan rangkaian dengan label tertentu sebagai sebahagian daripada input dan mengumpul merit semua lapisan kecuali lapisan tersembunyi pertama Selepas melakukan ini untuk setiap label secara berasingan, pilih label dengan merit terkumpul tertinggi. Semasa latihan, hantaran hadapan daripada label neutral digunakan untuk memilih label negatif keras, yang menjadikan latihan memerlukan kira-kira ⅓ zaman.
Dua piksel yang paling bergetar dalam setiap arah imej digunakan untuk meningkatkan data latihan, dengan itu memperoleh 25 offset berbeza untuk setiap imej, menggunakan pengetahuan susun atur ruang piksel, supaya ia bukan lagi susunan invarian. Dengan melatih rangkaian yang sama dengan data tambahan untuk 500 zaman, ralat ujian boleh mencapai 0.64%, sama seperti rangkaian saraf konvolusi yang dilatih dengan perambatan belakang. Seperti yang ditunjukkan dalam Rajah 2, kami juga mendapat domain tempatan yang menarik dalam lapisan tersembunyi pertama.
Rajah 2: Domain tempatan, label kelas 100 neuron dalam lapisan tersembunyi pertama rangkaian yang dilatih pada MNIST yang diterbangkan Dipaparkan dalam 10 piksel pertama setiap imej
Pada masa ini, semua Pengelasan imej contoh semua gunakan rangkaian neural suapan yang mempelajari satu lapisan pada satu masa, yang bermaksud bahawa apa yang dipelajari dalam lapisan kemudian tidak menjejaskan pembelajaran lapisan sebelumnya. Ini nampaknya merupakan kelemahan utama berbanding dengan perambatan belakang, dan kunci untuk mengatasi batasan yang jelas ini adalah untuk menganggap imej statik sebagai video yang agak membosankan, diproses oleh rangkaian saraf berulang berbilang lapisan.
FF Kedua-dua data positif dan negatif berjalan ke hadapan dalam masa, tetapi vektor aktiviti setiap lapisan dinormalkan oleh langkah masa sebelumnya dari lapisan sebelumnya dan lapisan seterusnya Vektor aktiviti ditentukan (Rajah 3). Sebagai semakan awal bahawa pendekatan ini berfungsi, seseorang boleh menggunakan input "video" yang terdiri daripada imej MNIST statik yang hanya diulang dalam setiap rangka masa, dengan imej piksel di bahagian bawah dan satu daripada perwakilan N kelas angka di atas, Terdapat dua atau tiga lapisan perantaraan, setiap satu dengan 2000 neuron.
Dalam percubaan awal, rangkaian berulang berjalan selama 10 langkah masa, dan lapisan bernombor genap setiap langkah masa telah dikemas kini mengikut aktiviti normalisasi lapisan bernombor ganjil , dan lapisan bernombor ganjil telah dikemas kini mengikut normalisasi baharu Kemas kini Aktif, yang kemas kini berselang-seli bertujuan untuk mengelakkan ayunan dwifasa, tetapi pada masa ini nampaknya tidak diperlukan : penyegerakan semua lapisan tersembunyi berdasarkan langkah masa sebelumnya keadaan normal dengan sedikit redaman Pembelajaran kemas kini adalah lebih baik sedikit, yang bermanfaat untuk seni bina yang tidak teratur. Oleh itu, kemas kini segerak telah digunakan dalam percubaan ini dan keadaan pra-normal baharu ditetapkan kepada 0.3 daripada keadaan pra-normal sebelumnya, ditambah 0.7 daripada keadaan baharu yang dikira.
Rajah 3: Rangkaian berulang untuk memproses video
Seperti Rajah 3 . Rangkaian dilatih pada MNIST selama 60 zaman, dan lapisan tersembunyi setiap imej dimulakan dalam laluan bawah ke atas.
Selepas itu, rangkaian menjalankan 8 lelaran segerak dengan redaman dengan menjalankan 8 lelaran pada setiap 10 label dan memilih label dengan purata kebaikan tertinggi dalam lelaran 3 hingga 5 Untuk menilai prestasi data ujian rangkaian, ralat ujian ialah 1.31%. Data negatif dihantar ke hadapan melalui rangkaian sekali untuk mendapatkan kebarangkalian semua kategori, dan kategori yang salah dipilih dan dijana mengikut perkadaran dengan kebarangkalian, dengan itu meningkatkan kecekapan latihan.
Dalam rangkaian berulang, matlamatnya adalah untuk mengekalkan hubungan yang baik antara input lapisan atas data positif dan input Konsistensi lapisan bawah, manakala konsistensi data negatif adalah tidak baik. Sifat yang diingini dalam rangkaian dengan ketersambungan setempat secara spatial: input atas ke bawah akan ditentukan oleh kawasan imej yang lebih besar dan mempunyai hasil daripada lebih banyak peringkat pemprosesan, jadi ia boleh dilihat sebagai ramalan kontekstual imej, Juga, hasilnya harus dihasilkan berdasarkan input bawah ke atas domain imej tempatan.
Jika input berubah dari semasa ke semasa, input atas ke bawah akan berdasarkan data input yang lebih lama, jadi perwakilan yang meramalkan input dari bawah ke atas mesti dipelajari. Apabila kita membalikkan tanda fungsi objektif dan melakukan aktiviti kuasa dua rendah pada data positif, input atas ke bawah harus belajar untuk membatalkan input bawah ke atas pada data positif, yang nampaknya sangat serupa dengan pengekodan ramalan. Normalisasi lapisan bermakna walaupun pembatalan berfungsi dengan baik, banyak maklumat dihantar ke lapisan seterusnya, yang dikuatkan dengan normalisasi jika semua ralat ramalan adalah kecil.
Idea untuk menggunakan ramalan konteks sebagai ciri tempatan dan mengekstrak isyarat pengajaran untuk pembelajaran telah wujud sejak sekian lama, tetapi kesukarannya terletak pada cara bekerja dalam rangkaian saraf yang menggunakan konteks spatial dan bukannya konteks temporal unilateral. Menggunakan konsensus input atas ke bawah dan bawah ke atas sebagai isyarat pengajaran untuk pemberat atas ke bawah dan bawah ke atas adalah pendekatan yang jelas membawa kepada keruntuhan, seperti masalah menggunakan ramalan kontekstual daripada imej lain untuk mencipta pasangan negatif. Tidak diselesaikan sepenuhnya. Antaranya, menggunakan data negatif dan bukannya sebarang perwakilan dalaman negatif nampaknya menjadi kunci.
Hinton kemudian menguji prestasi algoritma FF pada set data CIFAR‑10, membuktikan FF latihan Rangkaian yang terhasil adalah setanding prestasi dengan perambatan belakang.
Set data mempunyai 50,000 imej latihan 32x32 dengan tiga saluran warna bagi setiap piksel, jadi setiap imej mempunyai 3072 dimensi. Memandangkan latar belakang imej ini adalah kompleks dan sangat berubah-ubah dan tidak boleh dimodelkan dengan baik dengan data latihan yang sangat terhad, rangkaian yang disambungkan sepenuhnya yang mengandungi dua hingga tiga lapisan tersembunyi boleh digunakan menggunakan perambatan balik melainkan lapisan tersembunyi akan berlaku terlalu kecil semasa latihan, jadi hampir semua hasil penyelidikan semasa adalah untuk rangkaian konvolusi.
Kedua-dua backpropagation dan FF menggunakan pereputan berat untuk mengurangkan overfitting Hinton membandingkan prestasi rangkaian yang dilatih oleh kedua-dua kaedah. Untuk rangkaian terlatih FF, kaedah ujian adalah menggunakan perambatan ke hadapan tunggal, atau minta rangkaian menjalankan 10 lelaran pada imej dan setiap satu daripada 10 label, dan mengumpul tenaga label dalam lelaran 4 hingga 6 (iaitu, apabila berdasarkan apabila kebaikan kesilapan itu paling rendah).
Akibatnya, walaupun prestasi ujian FF lebih teruk daripada rambatan belakang, ia hanya lebih teruk sedikit. Pada masa yang sama, jurang antara keduanya tidak akan meningkat dengan peningkatan lapisan tersembunyi. Walau bagaimanapun, rambatan belakang boleh mengurangkan ralat latihan dengan lebih cepat.
Selain itu, dalam pembelajaran urutan, Hinton juga membuktikan bahawa rangkaian yang dilatih dengan FF adalah lebih baik daripada rambatan belakang melalui tugas meramal watak seterusnya dalam jujukan. Rangkaian yang dilatih dengan FF boleh menjana data negatif mereka sendiri dan lebih konsisten dari segi biologi.
Hinton seterusnya memperkenalkan algoritma FF It dibandingkan dengan kaedah pembelajaran kontrastif sedia ada yang lain. Kesimpulannya ialah:
FF ialah gabungan mesin Boltzmann dan fungsi kebaikan tempatan yang mudah; pelajari model diskriminatif dan model generatif, jadi ia adalah kes khas GAN
Dalam rangkaian neural sebenar, berbanding dengan kaedah perbandingan yang diselia sendiri seperti SimCLR, FF boleh mengukur dengan lebih baik ketekalan antara dua perwakilan yang berbeza.
Pada awal 1980-an, rangkaian saraf dalam mempunyai dua kaedah pembelajaran yang paling menjanjikan, satu Ia adalah perambatan balik, dan yang lain ialah Mesin Boltzmann yang melakukan pembelajaran perbandingan tanpa pengawasan.
Mesin Boltzmann ialah rangkaian neuron binari rawak dengan sambungan berpasangan dengan berat yang sama dalam kedua-dua arah. Apabila ia bebas untuk dijalankan tanpa input luaran, mesin Boltzmann mengemas kini setiap neuron binari berulang kali dengan menetapkannya kepada keadaan hidup dengan kebarangkalian sama dengan jumlah input yang diterima daripada neuron aktif yang lain. Proses kemas kini mudah ini akhirnya mengambil sampel daripada taburan keseimbangan, di mana setiap konfigurasi global (yang memberikan keadaan binari kepada semua neuron) mempunyai kebarangkalian log yang berkadar dengan tenaga negatifnya. Tenaga negatif hanyalah jumlah berat antara semua pasangan neuron dalam konfigurasi itu.
Subset neuron dalam mesin Boltzmann adalah "kelihatan", vektor data perduaan dibentangkan kepada rangkaian dengan mengepitnya pada neuron yang kelihatan dan kemudian membiarkannya mengemas kini berulang kali Neuron tersembunyi yang tinggal negeri. Tujuan pembelajaran mesin Boltzmann adalah untuk menjadikan pengedaran vektor binari pada neuron yang boleh dilihat secara bebas sepadan dengan pengedaran data apabila rangkaian sedang berjalan.
Perkara yang paling mengejutkan ialah apabila mesin Boltzmann yang berjalan bebas berada dalam keseimbangan terma, perbezaan Kullback-Liebler antara pengedaran data yang dipaparkan pada neuron dan pengedaran model dapat dilihat mempunyai terbitan yang sangat mudah (untuk sebarang berat):
di mana kurungan sudut mewakili jangkaan turun naik rawak pada keseimbangan terma dan data untuk penggal pertama.
Apa yang menarik tentang keputusan ini ialah ia memberikan terbitan pemberat jauh dalam rangkaian tanpa menyebarkan secara jelas terbitan ralat. Ia menyebarkan aktiviti saraf semasa dua peringkat terjaga dan tidur yang berbeza.
Walau bagaimanapun, kos untuk membuat peraturan pembelajaran yang paling mudah secara matematik adalah sangat tinggi. Ia memerlukan mesin Boltzmann yang mendalam untuk menganggarkan pengagihan keseimbangannya, yang menjadikannya tidak realistik sebagai teknik pembelajaran mesin dan tidak munasabah sebagai model pembelajaran kortikal: rangkaian besar tidak mempunyai masa untuk menganggarkan pengagihan keseimbangannya semasa pengedaran seimbang. Selain itu, tiada bukti untuk simetri terperinci sambungan kortikal, dan tiada cara yang jelas untuk mempelajari urutan. Tambahan pula, prosedur pembelajaran mesin Boltzmann akan gagal jika banyak kemas kini positif berat diikuti oleh banyak kemas kini negatif, dan fasa negatif sepadan dengan tidur REM.
Tetapi walaupun terdapat kekurangan di atas, mesin Boltzmann masih merupakan kaedah pembelajaran yang sangat pintar kerana ia menggunakan dua prinsip kerja yang berfungsi sama tetapi mempunyai sempadan yang berbeza pada tetapan lelaran daripada syarat (iaitu terhad pada data berbanding tidak terhad) menggantikan hantaran ke hadapan dan ke belakang bagi perambatan belakang.
Mesin Boltzmann boleh dilihat sebagai gabungan dua idea:
Idea pertama tentang pembelajaran kontrastif boleh digunakan dengan banyak fungsi tenaga lain. Sebagai contoh, keluaran rangkaian saraf suapan hadapan digunakan untuk mentakrifkan tenaga, dan kemudian perambatan belakang digunakan melalui rangkaian untuk mengira terbitan tenaga berkenaan dengan berat dan keadaan yang boleh dilihat. Data negatif kemudian dijana dengan menjejak derivatif tenaga berkenaan dengan keadaan yang boleh dilihat. Di samping itu, data negatif tidak perlu dijana dengan mensampel vektor data daripada taburan Boltzmann yang ditakrifkan oleh fungsi tenaga, yang juga boleh meningkatkan kecekapan pembelajaran mesin Boltzmann dengan lapisan tersembunyi tunggal tanpa pensampelan daripada taburan keseimbangan.
Pada pandangan Hinton, kesederhanaan matematik Persamaan 2 dan proses kemas kini stokastik untuk melakukan penyepaduan Bayesian ke atas semua kemungkinan konfigurasi tersembunyi adalah sangat elegan, jadi hanya menggunakan idea bahawa dua penyelesaian untuk merambat aktiviti saraf diperlukan dan bukannya maju+backpropagation untuk backpropagation masih terikat dengan kerumitan Markov Chain Monte Carlo.
Fungsi kebaikan tempatan yang ringkas lebih mudah dikendalikan daripada tenaga bebas rangkaian neuron stokastik binari, dan FF menggabungkan pembelajaran kontrastif mesin Boltzmann dengan fungsi sedemikian.
GAN (Generative Adversarial Network) menggunakan rangkaian neural berbilang lapisan untuk menjana data dan menggunakan pelbagai lapisan Rangkaian diskriminatif melatih model generatifnya supaya ia memberikan relatif derivatif kepada output model generatif, dan kebarangkalian bahawa derivatif adalah data sebenar dan bukannya data yang dijana
GAN adalah sukar untuk dilatih kerana Model diskriminasi dan model generatif diadu antara satu sama lain. GAN boleh menghasilkan imej yang sangat cantik, tetapi mereka mengalami keruntuhan mod: mungkin terdapat kawasan besar ruang imej yang tidak pernah menghasilkan contoh. Dan ia menggunakan perambatan belakang untuk menyesuaikan setiap rangkaian, jadi sukar untuk melihat cara melaksanakannya dalam korteks.
FF boleh dilihat sebagai kes khas GAN, di mana setiap lapisan tersembunyi rangkaian diskriminasi membuat keputusan tamak sendiri pada input positif atau negatif, jadi terdapat tidak perlu perambatan belakang untuk mempelajari model diskriminatif dan model generatif, kerana ia tidak mempelajari perwakilan tersembunyinya sendiri, tetapi menggunakan semula perwakilan yang dipelajari oleh model diskriminatif.
Satu-satunya perkara yang perlu dipelajari oleh model generatif ialah cara mengubah perwakilan tersembunyi ini kepada data terjana Jika transformasi linear digunakan untuk mengira logaritma softmax, perambatan belakang tidak diperlukan . Satu kelebihan menggunakan perwakilan tersembunyi yang sama untuk kedua-dua model ialah ia menghapuskan masalah yang timbul apabila satu model belajar terlalu cepat berbanding model yang lain, dan juga mengelakkan keruntuhan mod.
Kaedah perbandingan penyeliaan sendiri seperti SimCLR belajar dengan mengoptimumkan fungsi objektif untuk menyokong ketekalan antara perwakilan dua tanaman berbeza bagi imej yang sama, serta ketidakselarasan antara perwakilan tanaman daripada dua imej berbeza.
Pendekatan jenis ini biasanya menggunakan banyak lapisan untuk mengekstrak perwakilan yang disesuaikan dan melatih lapisan ini dengan menyebarkan balik terbitan fungsi objektif. Mereka tidak berfungsi jika kedua-dua keratan sentiasa bertindih dengan cara yang sama, kerana kemudian mereka hanya boleh melaporkan keamatan piksel yang dikongsi dan mendapatkan konsistensi yang sempurna.
Tetapi dalam rangkaian neural sebenar, tidak mudah untuk mengukur ketekalan antara dua perwakilan berbeza, dan tiada cara untuk mengekstrak dua perwakilan terpotong pada masa yang sama menggunakan pemberat yang sama .
Sementara FF menggunakan cara berbeza untuk mengukur konsistensi, yang kelihatan lebih mudah untuk rangkaian saraf sebenar.
Banyak sumber maklumat yang berbeza memberikan input kepada set neuron yang sama. Jika sumber bersetuju tentang neuron mana yang akan diaktifkan, akan berlaku gangguan positif, mengakibatkan aktiviti kuasa dua tinggi, dan jika ia menyimpang, aktiviti kuasa dua akan menjadi rendah. Mengukur ketekalan dengan menggunakan gangguan positif adalah lebih fleksibel daripada membandingkan dua vektor perwakilan berbeza kerana tidak perlu sewenang-wenangnya membahagikan input kepada dua sumber berasingan.
SimCLR Kelemahan utama pendekatan jenis ini ialah jumlah pengiraan yang besar yang digunakan untuk memperoleh perwakilan bagi dua tanaman imej, tetapi fungsi objektif hanya memberikan kekangan sederhana pada perwakilan, yang mengehadkan domain berkenaan Kadar maklumat boleh menyuntik berat. Agar perwakilan terpotong menjadi lebih dekat kepada pasangan yang betul daripada pengganti, hanya 20 bit maklumat diperlukan. Masalah FF lebih teruk kerana hanya memerlukan 1 bit untuk membezakan antara contoh positif dan negatif.
Penyelesaian kepada kemiskinan kekangan ini adalah untuk membahagikan setiap lapisan kepada banyak blok kecil dan memaksa setiap blok menggunakan panjang vektor aktiviti pra-normalnya secara berasingan untuk menentukan positif dan Negatif contoh. Maklumat yang diperlukan untuk memenuhi kekangan kemudian berskala secara linear dengan bilangan blok, yang jauh lebih baik daripada skala logaritma yang dicapai dengan set kontras yang lebih besar dalam kaedah seperti SimCLR.
Kaedah tanpa seliaan untuk mempelajari perwakilan berbilang lapisan adalah dengan terlebih dahulu mempelajari lapisan tersembunyi, yang ditangkap oleh lapisan beberapa struktur dalam data, maka vektor aktiviti dalam lapisan itu dianggap sebagai data dan algoritma pembelajaran tanpa pengawasan yang sama digunakan semula. Beginilah cara perwakilan berbilang lapisan dipelajari menggunakan mesin Boltzmann terhad (RBM) atau pengekod auto bertindan.
Tetapi ia mempunyai kecacatan yang membawa maut. Katakan kita memetakan beberapa imej hingar rawak melalui matriks berat rawak. Vektor aktiviti yang terhasil akan mempunyai struktur korelasi yang dicipta oleh matriks berat, bebas daripada data. Apabila pembelajaran tanpa pengawasan diterapkan pada vektor aktiviti ini, ia menemui beberapa struktur di dalamnya, tetapi ini tidak memberitahu sistem apa-apa tentang dunia luar.
Algoritma pembelajaran mesin Boltzmann yang asal telah direka untuk mengelakkan kecacatan ini dengan membandingkan statistik yang disebabkan oleh dua keadaan sempadan luaran yang berbeza. Ini membatalkan sebarang struktur yang hanya hasil daripada bahagian lain rangkaian. Tidak perlu mengehadkan penghalaan apabila membandingkan data positif dan negatif, dan juga tidak memerlukan hubungan spatial rawak antara keratan untuk mengelakkan penipuan rangkaian. Ini memudahkan untuk mendapatkan sejumlah besar kumpulan neuron yang saling berkaitan, masing-masing dengan matlamatnya sendiri untuk membezakan data positif daripada data negatif.
Mortal Pengiraan ialah salah satu pandangan penting Hinton baru-baru ini (nota: istilah ini belum mempunyai terjemahan bahasa Cina yang diiktiraf, dan sementara diterjemahkan sebagai "pengiraan bukan abadi").
Beliau menegaskan bahawa komputer digital tujuan am semasa direka untuk mematuhi arahan dengan setia, dan dianggap satu-satunya cara untuk mendapatkan umum -Tujuan komputer untuk melaksanakan tugas tertentu ialah Menulis program yang menyatakan dengan tepat apa yang perlu dilakukan dengan cara yang sangat terperinci.
Pemikiran arus perdana masih menegaskan bahawa perisian harus dipisahkan daripada perkakasan supaya program yang sama atau set pemberat yang sama boleh dijalankan pada salinan fizikal perkakasan yang berbeza. Ini menjadikan pengetahuan yang terkandung dalam program atau pemberat "abadi": apabila perkakasan mati, pengetahuan tidak mati bersamanya.
Tetapi ini tidak lagi benar, dan komuniti penyelidik masih belum memahami sepenuhnya kesan jangka panjang pembelajaran mendalam terhadap cara komputer dibina.
Pengasingan perisian dan perkakasan adalah salah satu asas sains komputer Ia membawa banyak faedah, seperti dapat mengkaji ciri-ciri program tanpa perlu mengambil berat tentang elektrik kejuruteraan, dan ia memungkinkan untuk menulisnya sekali atur cara dan menyalinnya ke berjuta-juta komputer. Tetapi Hinton menegaskan:
Jika kita sanggup melepaskan "keabadian" ini, kita boleh menjimatkan tenaga yang diperlukan untuk melakukan pengiraan dan kos pembuatan perkakasan untuk melakukan pengiraan.
Dengan cara ini, keadaan perkakasan berbeza yang melaksanakan tugas yang sama mungkin mempunyai perubahan besar dalam ketersambungan dan bukan lineariti, dan mencari kegunaan berkesan daripada Parameter proses pembelajaran nilai untuk sifat yang tidak diketahui bagi setiap contoh perkakasan tertentu. Nilai parameter ini hanya berguna untuk contoh perkakasan tertentu, jadi pengiraan yang mereka lakukan tidak kekal dan akan musnah bersama perkakasan.
Menyalin nilai parameter ke perkakasan berbeza yang berfungsi secara berbeza tidak benar-benar masuk akal, tetapi kita boleh menggunakan pendekatan yang lebih biologi untuk memindahkan perkara yang dipelajari oleh satu perkakasan Satu lagi perkakasan. Untuk tugas seperti pengelasan objek dalam imej, perkara yang kami benar-benar berminat ialah fungsi yang mengaitkan keamatan piksel dengan label kelas, bukan nilai parameter yang melaksanakan fungsi itu dalam perkakasan tertentu.
Fungsi itu sendiri boleh dipindahkan ke perkakasan berbeza dengan menggunakan penyulingan: melatih perkakasan baharu bukan sahaja memberikan jawapan yang sama seperti perkakasan lama, tetapi juga mengeluarkan kebarangkalian yang sama untuk jawapan yang salah. Kebarangkalian ini memberikan petunjuk yang lebih kaya tentang cara model lama digeneralisasikan, dan bukannya label yang difikirkannya berkemungkinan besar. Jadi dengan melatih model baharu untuk memadankan kebarangkalian jawapan yang salah, kami melatihnya untuk membuat generalisasi dengan cara yang sama seperti model lama. Contoh latihan rangkaian saraf sedemikian sebenarnya mengoptimumkan generalisasi jarang berlaku.
Jika anda mahu rangkaian neural trilion parameter menggunakan beberapa watt sahaja, pengkomputeran bukan abadi mungkin satu-satunya pilihan. Kebolehlaksanaannya bergantung pada sama ada kita boleh menemui proses pembelajaran yang boleh berjalan dengan cekap dalam perkakasan yang butiran tepatnya tidak diketahui Pada pandangan Hinton, algoritma FF ialah penyelesaian yang menjanjikan, tetapi ia Bagaimana ia berfungsi apabila menskalakan kepada besar. rangkaian saraf masih belum dapat dilihat.
Di penghujung kertas, Hinton menunjukkan soalan terbuka berikut:
Atas ialah kandungan terperinci Penyelidikan terkini Hinton: Masa depan rangkaian saraf ialah algoritma ke hadapan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!