Saya mencoba untuk memprediksi hasil dari sistem yang kompleks menggunakan jaringan saraf (JST). Nilai hasil (tergantung) berkisar antara 0 dan 10.000. Variabel input yang berbeda memiliki rentang yang berbeda. Semua variabel memiliki distribusi normal.
Saya mempertimbangkan berbagai opsi untuk mengukur data sebelum pelatihan. Salah satu opsi adalah menskalakan variabel input (independen) dan output (dependen) menjadi [0, 1] dengan menghitung fungsi distribusi kumulatif menggunakan nilai rata-rata dan standar deviasi masing-masing variabel, secara independen. Masalah dengan metode ini adalah bahwa jika saya menggunakan fungsi aktivasi sigmoid pada output, saya kemungkinan besar akan kehilangan data ekstrem, terutama yang tidak terlihat dalam set pelatihan.
Pilihan lain adalah menggunakan skor-z. Dalam hal ini saya tidak memiliki masalah data ekstrem; Namun, saya terbatas pada fungsi aktivasi linier di output.
Apa teknik normalisasi lain yang diterima yang digunakan dengan JST? Saya mencoba mencari ulasan tentang topik ini, tetapi gagal menemukan sesuatu yang bermanfaat.
sumber
Jawaban:
Pendekatan standar adalah skala input untuk memiliki rata-rata 0 dan varian dari 1. Juga linear dekorasirelation / whitening / pca banyak membantu.
Jika Anda tertarik dengan trik perdagangan, saya dapat merekomendasikan kertas backprop LeCun yang efisien.
sumber
1- Normalisasi Min-max mempertahankan distribusi skor asli kecuali untuk faktor penskalaan dan mengubah semua skor menjadi rentang umum [0, 1]. Namun, metode ini tidak kuat (yaitu, metode ini sangat sensitif terhadap pencilan.
2- Standardisasi (normalisasi Z-score) Teknik yang paling umum digunakan, yang dihitung menggunakan rata-rata aritmatika dan standar deviasi dari data yang diberikan. Namun, baik mean dan standar deviasi peka terhadap outlier, dan teknik ini tidak menjamin rentang numerik umum untuk skor yang dinormalisasi. Selain itu, jika skor input tidak terdistribusi Gaussian, teknik ini tidak mempertahankan distribusi input pada output.
3- Median dan MAD: Median dan median deviasi absolut (MAD) tidak sensitif terhadap outlier dan titik-titik dalam ekor ekstrim dari distribusi. oleh karena itu kuat. Namun, teknik ini tidak mempertahankan distribusi input dan tidak mengubah skor menjadi rentang numerik yang umum.
4- tanh-estimators: The tanh-estimators diperkenalkan oleh Hampel et al. kuat dan sangat efisien. Normalisasi diberikan oleh
di mana μGH dan σGH adalah estimasi rata-rata dan standar deviasi, masing-masing, dari distribusi skor asli seperti yang diberikan oleh estimator Hampel.
Karena itu saya merekomendasikan tanh-estimators.
referensi https://www.cs.ccu.edu.tw/~wylin/BA/Fusion_of_Biometrics_II.ppt
sumber
Saya memberikan jawaban yang sama di sini Ketika melakukan beberapa regresi, kapan Anda harus memusatkan variabel prediktor Anda & kapan Anda harus membakukannya? tetapi mengira itu konteks yang cukup berbeda sehingga jawaban bisa masuk ke sini.
Ada sumber daya usenet yang hebat http://www.faqs.org/faqs/ai-faq/neural-nets/part2/section-16.html
Secara sederhana ini memberikan beberapa masalah dan pertimbangan ketika seseorang ingin menormalkan / menstandardisasi / mengubah skala data. Karena itu memperlakukan subjek dari perspektif pembelajaran mesin, dan karena pertanyaan Anda adalah ML, itu bisa memiliki beberapa relevansi.
sumber
Anda bisa melakukannya
sumber
Jika Anda bekerja
python
,sklearn
memiliki metode untuk melakukan ini menggunakan teknik yang berbeda dalampreprocessing
modul mereka (ditambah fitur pipa bagus, dengan contoh dalam dokumen mereka):sumber
Ya, [0,1] adalah pendekatan standar. Untuk Neural Networks, bekerja paling baik di kisaran 0-1. Penskalaan Min-Max (atau Normalisasi) adalah pendekatan yang harus diikuti.
Sekarang pada outlier, dalam sebagian besar skenario kita harus memotong itu, karena outlier tidak umum, Anda tidak ingin outlier mempengaruhi model Anda (kecuali deteksi Anomali adalah masalah yang Anda pecahkan). Anda dapat memotongnya berdasarkan aturan Empiris 68-95-99.7 atau membuat plot kotak, amati, dan kemudian potong itu.
Formula MinMax -
(xi - min(x)) / (max(x) - min(x))
atau bisa digunakansklearn.preprocessing.MinMaxScaler
sumber
"Diterima" adalah yang terbaik untuk Anda - lalu Anda menerimanya.
Dalam pengalaman saya, pas distribusi dari keluarga Johnson distribusi untuk masing-masing fitur kontinu bekerja dengan baik karena distribusi sangat fleksibel dan dapat mengubah sebagian besar fitur uni-modal menjadi distribusi normal standar. Ini akan membantu dengan fitur multi-modal juga, tetapi intinya adalah itu biasanya menempatkan fitur ke dalam bentuk yang paling diinginkan (data standar yang didistribusikan Gaussian ideal untuk bekerja dengan - itu kompatibel dengan, dan kadang-kadang optimal untuk, hampir setiap metode statistik / ML tersedia).
http://qualityamerica.com/LSS-Knowledge-Center/statributioninference/johnson_distributions.php
sumber