Dua tahun selepas Ian Goodfellow dan penyelidik lain memperkenalkan rangkaian permusuhan generatif dalam makalah, Yann LeCun memanggil latihan permusuhan "idea paling menarik dalam ML dalam dekad yang lalu." Walaupun GAN adalah menarik dan menjanjikan, mereka hanya sebahagian daripada keluarga model generatif yang menyelesaikan masalah AI tradisional dari perspektif yang sama sekali berbeza Dalam artikel ini kita akan membandingkan tiga model generatif biasa.
Apabila kita memikirkan pembelajaran mesin, perkara pertama yang mungkin terlintas di fikiran ialah algoritma diskriminasi. Model diskriminatif ialah ramalan label atau kategori data input berdasarkan ciri-cirinya dan merupakan nadi kepada semua penyelesaian pengelasan dan ramalan. Berbeza dengan model ini, algoritma generatif membantu kami menceritakan kisah tentang data dan memberikan penjelasan yang mungkin tentang cara data dijana Tidak seperti algoritma diskriminatif, yang memetakan ciri kepada label, model generatif cuba meramalkan ciri yang diberikan label.
Bezakan hubungan antara label y dan ciri x yang ditakrifkan oleh model dan jana model untuk menjawab soalan "Bagaimana anda mendapat y". Model model generatif ialah P(Pemerhatian/Punca), dan kemudian menggunakan teorem Bayes untuk mengira P(Punca/Pemerhatian). Dengan cara ini, mereka boleh menangkap p(x|y), kebarangkalian x diberi y, atau kebarangkalian ciri yang diberi label atau kelas. Jadi sebenarnya, algoritma generatif juga boleh digunakan sebagai pengelas, mungkin kerana ia memodelkan pengedaran kelas individu.
Terdapat banyak algoritma generatif, tetapi model paling popular yang termasuk dalam kategori model generatif dalam ialah model pengekod auto variasi (VAE), gan dan berasaskan aliran.
Pengekod auto variasi (VAE) ialah model generatif yang "menyediakan perihalan kebarangkalian pemerhatian dalam ruang terpendam." Ringkasnya, ini bermakna VAE menyimpan atribut terpendam sebagai taburan kebarangkalian.
Idea pengekod auto variasi (Kingma & Welling, 2014) atau VAE berakar umbi dalam kaedah model Bayesian dan grafik variasi.
Pengekod automatik standard terdiri daripada 2 rangkaian serupa, pengekod dan penyahkod. Pengekod mengambil input dan menukarnya kepada perwakilan yang lebih kecil, yang boleh digunakan oleh penyahkod untuk menukarnya kembali kepada input asal. Ruang terpendam di mana mereka mengubah input dan ruang di mana vektor pengekodan mereka terletak mungkin tidak berterusan. Ini adalah masalah untuk model generatif, kerana kita semua mahu mengambil sampel secara rawak dari ruang terpendam, atau menjana variasi imej input daripada ruang terpendam berterusan.
Pengekod auto variasi mempunyai ruang terpendam berterusan, yang menjadikan pensampelan rawak dan interpolasi lebih mudah. Untuk mencapai matlamat ini, nod tersembunyi pengekod tidak mengeluarkan vektor pengekodan, sebaliknya mengeluarkan dua vektor dengan saiz yang sama: vektor min dan vektor sisihan piawai. Setiap nod tersembunyi menganggap dirinya Gaussian diedarkan. Unsur ke-i bagi min dan vektor sisihan piawai di sini sepadan dengan nilai min dan sisihan piawai pembolehubah rawak ke-i. Kami mengambil sampel daripada vektor taburan ini dan penyahkod secara rawak sampel daripada taburan kebarangkalian vektor input. Proses ini adalah penjanaan rawak. Ini bermakna walaupun untuk input yang sama, apabila min dan sisihan piawai dipegang tetap, pengekodan sebenar akan berbeza dalam setiap laluan.
Kehilangan pengekod auto adalah untuk meminimumkan kehilangan pembinaan semula (sejauh mana persamaan output dengan input) dan kehilangan terpendam (berapa dekat nod tersembunyi dengan normal pengedaran). Semakin kecil potensi kerugian, semakin sedikit maklumat yang boleh dikodkan, jadi kerugian pembinaan semula akan meningkat, jadi terdapat pertukaran antara potensi kerugian dan kerugian pembinaan semula. Apabila potensi kerugian adalah kecil, imej yang dihasilkan akan terlalu serupa dengan imej latihan, mengakibatkan prestasi yang lemah. Apabila kehilangan pembinaan semula adalah kecil, kesan imej yang dibina semula semasa latihan adalah lebih baik, tetapi imej baharu yang dihasilkan agak berbeza daripada imej yang dibina semula, jadi keseimbangan yang baik perlu dicari.
VAE boleh mengendalikan pelbagai jenis data, berurutan dan tidak berurutan, berterusan atau diskret, malah berlabel atau tidak berlabel, yang menjadikannya alat penjanaan yang sangat berkuasa.
Tetapi kelemahan utama VAE ialah output kabur yang dihasilkannya. Seperti yang ditunjukkan oleh Dosovitskiy dan Brox, model VAE sering menghasilkan sampel yang tidak realistik dan samar-samar. Ini disebabkan oleh cara pengedaran data dipulihkan dan fungsi kehilangan dikira. Kertas kerja 2017 oleh Zhao et al mencadangkan mengubah suai VAE tanpa menggunakan kaedah Bayesian variasi untuk meningkatkan kualiti output.
Rangkaian adversarial generatif (GAN) ialah model generatif berasaskan pembelajaran mendalam yang mampu menjana kandungan baharu. Seni bina GAN pertama kali diterangkan dalam makalah 2014 bertajuk "Rangkaian Adversarial Generatif" oleh Ian Goodfellow et al.
GAN menggunakan pendekatan pembelajaran diselia menggunakan dua submodel: model penjana yang menjana contoh baharu dan model diskriminator yang cuba mengklasifikasikan contoh sebagai nyata atau palsu (dijana).
Penjana: Model untuk menjana contoh baharu yang munasabah daripada domain masalah.
Diskriminator: Model yang digunakan untuk mengklasifikasikan contoh sebagai nyata (daripada domain) atau palsu (dijana).
Kedua-dua model ini dilatih sebagai pesaing. Penjana menghasilkan data sampel secara langsung. Lawannya, diskriminator, cuba membezakan antara sampel yang diambil daripada data latihan dan sampel yang diambil daripada penjana. Proses persaingan ini berterusan semasa latihan sehingga model diskriminator gagal untuk memberitahu benar atau palsu lebih daripada separuh masa, yang bermaksud bahawa model penjana menjana data yang sangat realistik.
Apabila pendiskriminasi berjaya mengenal pasti sampel sebenar atau palsu, ia diberi ganjaran sementara parameternya kekal tidak berubah. Jika penjana membuat kesilapan, ia dihukum dan parameternya dikemas kini. Dalam dunia yang ideal, apabila diskriminator tidak dapat membezakannya dan meramalkan "tidak pasti" (mis., 50% benar atau salah), penjana boleh menghasilkan salinan sempurna daripada domain input.
Tetapi di sini setiap model boleh mengatasi model yang lain. Jika diskriminator terlalu baik, ia akan mengembalikan nilai yang sangat hampir kepada 0 atau 1, dan penjana akan menghadapi masalah mendapatkan kecerunan yang dikemas kini. Jika penjana terlalu baik, ia akan mengeksploitasi kelemahan diskriminasi dan menyebabkan negatif palsu. Oleh itu, kedua-dua rangkaian saraf mesti mempunyai "tahap kemahiran" yang sama dicapai melalui kadar pembelajaran masing-masing Ini juga salah satu sebab mengapa GAN sukar untuk dilatih.
Penjana mengambil vektor rawak panjang tetap sebagai input dan menjana sampel dalam domain yang ditentukan. Vektor ini diambil secara rawak daripada taburan Gaussian. Selepas latihan, titik dalam ruang vektor berbilang dimensi ini akan sepadan dengan titik dalam domain masalah, membentuk perwakilan termampat bagi pengedaran data Langkah ini serupa dengan ruang vektor ini dipanggil ruang terpendam, atau vektor ruang yang terdiri daripada pembolehubah terpendam . Penjana GAN akan purata titik terpilih dalam ruang terpendam. Titik baharu yang diekstrak daripada ruang terpendam boleh disediakan sebagai input kepada model penjana dan digunakan untuk menjana contoh keluaran baharu dan berbeza. Selepas latihan, model penjana dikekalkan dan digunakan untuk menjana sampel baharu.
Model diskriminator mengambil contoh sebagai input (sama ada sampel sebenar daripada set data latihan atau dijana oleh model penjana) dan meramalkan label kelas binari yang sebenar atau palsu ( mempunyai telah dihasilkan). Diskriminator ialah model klasifikasi biasa (dan mudah difahami).
Selepas proses latihan, diskriminasi dibuang kerana kami berminat dengan generator. Sudah tentu diskriminator juga boleh digunakan untuk tujuan lain
GAN boleh menghasilkan sampel yang boleh dilaksanakan tetapi GAN asal juga mempunyai kekurangan:
Model generatif berasaskan aliran ialah model kemungkinan log yang tepat dengan pensampelan boleh trak dan inferens pembolehubah pendam. Model berasaskan aliran menggunakan sekumpulan transformasi boleh balik kepada sampel dari sebelumnya supaya kemungkinan log tepat pemerhatian boleh dikira. Tidak seperti dua algoritma sebelumnya, model ini secara eksplisit mempelajari pengedaran data, jadi fungsi kehilangan adalah kemungkinan log negatif.
Dalam analisis komponen bebas tak linear, model aliran f dibina sebagai peta boleh terbalik bagi pembolehubah rawak berdimensi tinggi x kepada pembolehubah pendam Gaussian standard z=f(x ) Berubah. Idea utama dalam reka bentuk model aliran ialah ia boleh menjadi fungsi bijektif arbitrari dan boleh dibentuk dengan menindih transformasi mudah boleh balik. Untuk meringkaskan: model aliran f terdiri daripada satu siri aliran boleh balik sebagai f(x) =f1◦···◦fL(x), dengan setiap fi mempunyai songsang boleh dikesan dan Mod Jacobian boleh dikesan.
Terdapat dua kategori luas model berasaskan aliran: model dengan aliran ternormal dan model dengan aliran autoregresif yang cuba meningkatkan prestasi model asas.
Dapat melaksanakan anggaran ketumpatan yang baik adalah penting untuk banyak masalah pembelajaran mesin. Tetapi ia sememangnya kompleks: apabila kita perlu melakukan perambatan balik dalam model pembelajaran mendalam, taburan kebarangkalian terbenam perlu cukup mudah supaya derivatif boleh dikira dengan cekap. Penyelesaian tradisional ialah menggunakan taburan Gaussian dalam model penjanaan pembolehubah terpendam, walaupun kebanyakan taburan dunia sebenar adalah lebih kompleks. Model aliran ternormal (NF), seperti RealNVP atau Glow, memberikan anggaran taburan yang mantap. Mereka mengubah taburan mudah menjadi taburan kompleks dengan menggunakan satu siri fungsi transformasi boleh balik. Melalui satu siri transformasi, mengikut teorem transformasi pembolehubah, pembolehubah asal boleh berulang kali digantikan dengan pembolehubah baru, dan akhirnya taburan kebarangkalian pembolehubah sasaran akhir diperolehi.
Apabila transformasi aliran dalam aliran ternormal dirangka sebagai model autoregresif, di mana setiap dimensi dalam pembolehubah vektor dikondisikan pada dimensi sebelumnya, model aliran Perubahan ini dalam dipanggil aliran autoregresif. Ia adalah satu langkah ke hadapan berbanding model dengan proses piawai.
Model aliran autoregresif yang biasa digunakan ialah PixelCNN untuk penjanaan imej dan WaveNet untuk isyarat audio satu dimensi. Kesemuanya terdiri daripada sekumpulan lilitan kausal - operasi lilitan yang mengambil kira tertib: ramalan pada cap waktu tertentu hanya menggunakan data yang diperhatikan pada masa lalu. Dalam PixelCNN, lilitan kausal dilakukan oleh kernel bertopeng. Dan WaveNet mengalihkan output melalui beberapa cap masa ke masa hadapan.
Model berasaskan aliran secara konsepnya sangat mesra untuk memodelkan pengedaran kompleks, tetapi mereka mengalami isu prestasi anggaran ketumpatan berbanding dengan sekatan model autoregresif terkini. Walaupun model aliran pada mulanya mungkin menghasilkan output yang baik sebagai alternatif kepada GAN, terdapat jurang yang ketara dalam kos pengiraan latihan di antara mereka, dengan model berasaskan aliran mengambil masa beberapa kali lebih lama untuk menjana imej dengan resolusi yang sama daripada GAN.
Setiap algoritma mempunyai kelebihan dan hadnya dari segi ketepatan dan kecekapan. Walaupun GAN dan model berasaskan proses umumnya menjana lebih baik atau lebih dekat dengan imej sebenar daripada VAE, yang terakhir mempunyai masa yang lebih pantas dan kecekapan parameter yang lebih baik daripada model berasaskan proses Berikut ialah ringkasan perbandingan bagi ketiga-tiga model:
Anda dapat melihat bahawa GAN sangat cekap kerana keselariannya, tetapi ia tidak boleh diterbalikkan. Sebaliknya, model aliran boleh diterbalikkan tetapi tidak cekap, manakala vae boleh diterbalikkan dan cekap tetapi tidak boleh dikira secara selari. Berdasarkan ciri-ciri ini, kita boleh membuat pertukaran antara output, proses latihan dan kecekapan dalam penggunaan sebenar.
Atas ialah kandungan terperinci Perbandingan terperinci model generatif VAE, GAN dan model berasaskan aliran. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!