Multilayer Perceptron (MLP) ialah model pembelajaran mendalam yang biasa digunakan untuk tugasan seperti pengelasan dan regresi. Walau bagaimanapun, MLP terdedah kepada masalah overfitting, iaitu, ia berfungsi dengan baik pada set latihan tetapi berprestasi buruk pada set ujian. Untuk menyelesaikan masalah ini, penyelidik telah mencadangkan pelbagai kaedah regularisasi, yang paling biasa digunakan ialah keciciran. Dengan membuang keluaran beberapa neuron secara rawak semasa latihan, keciciran boleh mengurangkan kerumitan rangkaian saraf, dengan itu mengurangkan risiko overfitting. Kaedah ini telah digunakan secara meluas dalam model pembelajaran mendalam dan mencapai peningkatan yang ketara.
Keciciran ialah teknik untuk penyelarasan rangkaian saraf, yang pada asalnya dicadangkan oleh Srivastava et al pada tahun 2014. Kaedah ini mengurangkan overfitting dengan memadam neuron secara rawak. Khususnya, lapisan keciciran memilih beberapa neuron secara rawak dan menetapkan outputnya kepada 0, dengan itu menghalang model daripada bergantung pada neuron tertentu. Semasa ujian, lapisan tercicir mendarabkan output semua neuron dengan kebarangkalian pengekalan untuk mengekalkan semua neuron. Dengan cara ini, keciciran boleh memaksa model untuk mempelajari ciri yang lebih mantap dan boleh digeneralisasikan semasa latihan, dengan itu meningkatkan keupayaan generalisasi model. Dengan mengurangkan kerumitan model, keciciran juga boleh mengurangkan risiko overfitting dengan berkesan. Oleh itu, keciciran telah menjadi salah satu teknik regularisasi yang biasa digunakan dalam banyak model pembelajaran mendalam.
Prinsip keciciran adalah mudah tetapi berkesan. Ia memaksa model untuk mempelajari ciri teguh dengan memadamkan neuron secara rawak, dengan itu mengurangkan risiko overfitting. Selain itu, keciciran juga menghalang penyesuaian bersama neuron dan mengelakkan pergantungan pada neuron tertentu.
Secara praktikal, menggunakan keciciran adalah sangat mudah. Apabila membina perceptron berbilang lapisan, anda boleh menambah lapisan tercicir selepas setiap lapisan tersembunyi dan menetapkan kebarangkalian pengekalan. Sebagai contoh, jika kita ingin menggunakan keciciran dalam MLP dengan dua lapisan tersembunyi, kita boleh membina model seperti berikut: 1. Tentukan struktur lapisan input, lapisan tersembunyi dan lapisan output. 2. Tambah lapisan tercicir selepas lapisan tersembunyi pertama dan tetapkan kebarangkalian pengekalan kepada p. 3. Tambah satu lagi lapisan keciciran selepas lapisan tersembunyi kedua dan tetapkan kebarangkalian pengekalan yang sama p. 4. Tentukan lapisan keluaran dan sambungkan lapisan tersembunyi sebelumnya ke lapisan keluaran. 5. Tentukan fungsi kehilangan dan pengoptimum. 6. Menjalankan latihan dan ramalan model. Dengan cara ini, lapisan keciciran akan berdasarkan kebarangkalian pengekalan p
model = Sequential() model.add(Dense(64, input_dim=20,activation='relu')) model.add(Dropout(0.5)) model.add(Dense(64, activation='relu')) model.add(Dropout(0.5)) model.add(Dense(10, activation='softmax'))
Dalam contoh ini, kami menambah lapisan keciciran selepas setiap lapisan tersembunyi dan menetapkan kebarangkalian pengekalan kepada 0.5. Ini bermakna setiap neuron mempunyai kebarangkalian 50% untuk dipadam semasa latihan. Semasa ujian, semua neuron dikekalkan.
Perlu diingatkan bahawa keciciran harus digunakan semasa latihan, tetapi bukan semasa ujian. Ini kerana semasa ujian kita ingin menggunakan semua neuron untuk membuat ramalan, bukan hanya beberapa.
Secara umumnya, keciciran adalah kaedah regularisasi yang sangat berkesan yang boleh membantu mengurangkan risiko overfitting. Dengan memadamkan neuron secara rawak semasa latihan, keciciran boleh memaksa model mempelajari ciri yang lebih mantap dan menghalang penyesuaian bersama antara neuron. Dalam amalan, kaedah menggunakan keciciran adalah sangat mudah, cuma tambah lapisan keciciran selepas setiap lapisan tersembunyi dan nyatakan kebarangkalian pengekalan.
Atas ialah kandungan terperinci Kaedah penyelarasan berjaya digunakan pada perceptron berbilang lapisan menggunakan lapisan tercicir. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!