Skalakan dan Normalkan Nombor
Meletakkan ciri pada asas perbandingan yang adil
Skalakan dan Normalkan Nombor ialah pelajaran Data Science Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Data Science Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Data Science Academy merangkumi sejumlah 4 pelajaran.
Mengapa Nombor Perlu Diskalakan
Julat umur ialah 0 hingga 90, manakala pendapatan boleh mencecah jutaan. Tanpa penskalaan, nombor yang lebih besar akan mendominasi dan secara senyap menenggelamkan nombor yang lebih kecil. ⚖️
Model Berasaskan Jarak Mengambil Berat
Model yang mengukur jarak, seperti k-NN dan k-means, sangat sensitif terhadap skala. Ciri yang tidak diskalakan memberikan semua pengaruh kepada lajur yang terbesar.
Pembakuan
Pembakuan mengubah skala lajur kepada min 0 dan sisihan piawai 1. Nilai menunjukkan berapa banyak sisihan piawai jaraknya daripada purata.
StandardScaler
StandardScaler melaksanakan pembakuan untuk anda. Latihnya pada data anda, kemudian ubah mana-mana lajur kepada skor-z.
from sklearn.preprocessing import StandardScaler
z = StandardScaler().fit_transform(df[['age']])Penormalan
Penormalan memampatkan nilai ke dalam julat tetap, biasanya 0 hingga 1. Nilai terkecil dipetakan kepada 0 dan nilai terbesar kepada 1.
MinMaxScaler
Gunakan MinMaxScaler untuk mengubah skala kepada 0 hingga 1. Ia mengekalkan bentuk data anda sambil mengehadkan julatnya.
from sklearn.preprocessing import MinMaxScaler
m = MinMaxScaler().fit_transform(df[['age']])Bakukan atau Normalkan
Gunakan pembakuan apabila data berbentuk lebih kurang loceng atau mempunyai nilai terpencil. Pilih penormalan apabila anda memerlukan had ketat 0 hingga 1.
Nilai Terpencil Menjejaskan MinMax
Satu nilai yang sangat besar boleh memampatkan semua nilai lain hampir kepada sifar dengan MinMax. Apabila nilai terpencil mendominasi, RobustScaler lebih tahan terhadapnya.
from sklearn.preprocessing import RobustScaler
r = RobustScaler().fit_transform(df[['income']])Latih pada Data Latihan Sahaja
Latih penskala pada data latihan sahaja, kemudian ubah set ujian. Melatihnya pada keseluruhan data membocorkan maklumat ujian ke dalam model anda.
scaler.fit(X_train)
X_test_scaled = scaler.transform(X_test)Skalakan dalam Saluran Paip
Gabungkan penskala dengan model anda dalam saluran paip. Dengan itu, ia hanya dilatih pada lipatan latihan semasa pengesahan silang, sekali gus menghalang kebocoran secara automatik.
from sklearn.pipeline import make_pipeline
pipe = make_pipeline(StandardScaler(), model)Pepohon Tidak Memerlukannya
Model berasaskan pepohon seperti hutan rawak berpecah berdasarkan ambang, jadi penskalaan jarang mengubah keputusan. Simpan penskalaan untuk kaedah berasaskan jarak dan kaedah linear.
Semakan Pantas
Anda perlu mengubah skala setiap ciri kepada julat ketat 0 hingga 1. Penskala manakah yang sesuai?
Imbas Kembali: Penskalaan
Anda meletakkan ciri pada asas yang adil: StandardScaler untuk skor-z, MinMaxScaler untuk 0 hingga 1, dan RobustScaler untuk nilai terpencil. Sentiasa latih pada data latihan sahaja. 🎉
Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Soalan Lazim
Adakah pelajaran “Skalakan dan Normalkan Nombor” percuma?
Ya — teks penuh “Skalakan dan Normalkan Nombor” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Data Science Academy, tingkat taraf kepada CoddyKit PRO. Kursus Data Science Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Skalakan dan Normalkan Nombor”?
Meletakkan ciri pada asas perbandingan yang adil Anda berlatih Data Science Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Data Science Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Data Science Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.
Berapa lamakah pelajaran “Skalakan dan Normalkan Nombor” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Data Science Academy ini?
Ya. Setiap pelajaran Data Science Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Bahagikan Nombor kepada Kategori
- Pengekodan Lajur Kategori
- Skalakan dan Normalkan Nombor
- Bina Ciri daripada Tarikh dan Teks