


Teknik analisis komponen utama PCA (pengurangan dimensi) dalam Python
Kemahiran analisis komponen utama PCA (pengurangan dimensi) dalam Python
Analisis komponen utama PCA (Analisis Komponen Utama) ialah teknologi pengurangan dimensi data yang sangat biasa digunakan. Data boleh diproses melalui algoritma PCA untuk menemui ciri-ciri yang wujud bagi data dan menyediakan pengumpulan data yang lebih tepat dan berkesan untuk analisis dan pemodelan data seterusnya.
Di bawah ini kami akan memperkenalkan beberapa teknik untuk menggunakan analisis komponen utama PCA dalam Python.
- Cara menormalkan data
Sebelum melakukan analisis pengurangan dimensi PCA, anda perlu menormalkan data terlebih dahulu. Ini kerana algoritma PCA mengira komponen utama melalui pemaksimuman varians, dan bukannya sekadar saiz nilai elemen, jadi ia mengambil kira sepenuhnya kesan varians yang sepadan bagi setiap elemen.
Terdapat banyak kaedah untuk menormalkan data dalam Python. Kaedah paling asas ialah menyeragamkan data ke dalam taburan normal piawai dengan min 0 dan varians 1 melalui kelas StandardScaler perpustakaan sklearn Kodnya adalah seperti berikut:
from sklearn.preprocessing import StandardScaler scaler = StandardScaler() data_std = scaler.fit_transform(data)
Dengan cara ini, kita boleh mendapatkan data yang telah dinormalkan Data pengumpulan data yang diproses_std.
- Menggunakan PCA untuk pengurangan dimensi
Kod untuk menggunakan PCA untuk mengurangkan dimensi data adalah sangat mudah. Modul PCA telah disepadukan dalam perpustakaan sklearn Kami hanya perlu menetapkan bilangan komponen utama yang dikekalkan selepas pengurangan dimensi apabila memanggil kelas PCA. Sebagai contoh, kod berikut mengurangkan data kepada 2 komponen utama:
from sklearn.decomposition import PCA pca = PCA(n_components=2) data_pca = pca.fit_transform(data_std)
Antaranya, data_pca mengembalikan data baharu selepas pemprosesan pengurangan dimensi PCA.
- Bagaimana untuk memilih bilangan komponen utama selepas pengurangan dimensi
Apabila sebenarnya menggunakan PCA untuk pengurangan dimensi data, kita perlu memilih bilangan komponen utama yang sesuai untuk mencapai kesan pengurangan Dimensi yang terbaik. Biasanya, kita boleh menilai dengan memplot graf kadar sumbangan varians kumulatif.
Kadar sumbangan varians kumulatif mewakili peratusan jumlah varians n komponen utama pertama kepada jumlah varians, contohnya:
import numpy as np pca = PCA() pca.fit(data_std) cum_var_exp = np.cumsum(pca.explained_variance_ratio_)
Dengan melukis graf kadar sumbangan varians terkumpul, kita boleh perhatikan bilangan komponen utama Trend perubahan kadar sumbangan varians kumulatif apabila meningkat secara beransur-ansur daripada 1 untuk menganggarkan bilangan komponen utama yang sesuai. Kodnya adalah seperti berikut:
import matplotlib.pyplot as plt plt.bar(range(1, 6), pca.explained_variance_ratio_, alpha=0.5, align='center') plt.step(range(1, 6), cum_var_exp, where='mid') plt.ylabel('Explained variance ratio') plt.xlabel('Principal components') plt.show()
Garis merah dalam rajah mewakili kadar sumbangan varians kumulatif, paksi-x mewakili bilangan komponen utama dan paksi-y mewakili bahagian varians yang dijelaskan. Ia boleh didapati bahawa kadar sumbangan varians bagi dua komponen utama pertama adalah hampir kepada 1, jadi memilih dua komponen utama boleh memenuhi keperluan kebanyakan tugas analisis.
- Cara untuk menggambarkan data selepas pengurangan dimensi PCA
Akhir sekali, kita boleh menggunakan fungsi serakan perpustakaan matplotlib untuk menggambarkan data selepas pengurangan dimensi PCA. Contohnya, kod berikut mengurangkan data daripada 4 dimensi asal kepada 2 dimensi melalui PCA, dan kemudian memaparkannya secara visual:
import matplotlib.pyplot as plt x = data_pca[:, 0] y = data_pca[:, 1] labels = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'] colors = ['b', 'g', 'r', 'c', 'm', 'y', 'k', 'pink', 'brown', 'orange'] for i, label in enumerate(np.unique(labels)): plt.scatter(x[labels == label], y[labels == label], c=colors[i], label=label, alpha=0.7) plt.legend() plt.xlabel('Principal Component 1') plt.ylabel('Principal Component 2') plt.show()
Warna dan label dalam rajah masing-masing sepadan dengan label berangka dalam data asal . Melalui visualisasi Dengan data yang dikurangkan secara dimensi, kami dapat memahami dengan lebih baik struktur dan ciri data.
Ringkasnya, menggunakan teknologi analisis komponen utama PCA boleh membantu kami mengurangkan dimensi data dan dengan itu lebih memahami struktur dan ciri data. Melalui perpustakaan sklearn dan matplotlib Python, kami boleh melaksanakan dan menggambarkan algoritma PCA dengan sangat mudah.
Atas ialah kandungan terperinci Teknik analisis komponen utama PCA (pengurangan dimensi) dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



PHP dan Python masing -masing mempunyai kelebihan mereka sendiri, dan memilih mengikut keperluan projek. 1.PHP sesuai untuk pembangunan web, terutamanya untuk pembangunan pesat dan penyelenggaraan laman web. 2. Python sesuai untuk sains data, pembelajaran mesin dan kecerdasan buatan, dengan sintaks ringkas dan sesuai untuk pemula.

Fungsi Readdir dalam sistem Debian adalah panggilan sistem yang digunakan untuk membaca kandungan direktori dan sering digunakan dalam pengaturcaraan C. Artikel ini akan menerangkan cara mengintegrasikan Readdir dengan alat lain untuk meningkatkan fungsinya. Kaedah 1: Menggabungkan Program Bahasa C dan Pipeline Pertama, tulis program C untuk memanggil fungsi Readdir dan output hasilnya:#termasuk#termasuk#includeintMain (intargc, char*argv []) {dir*dir; structdirent*entry; if (argc! = 2) {

Untuk memaksimumkan kecekapan pembelajaran Python dalam masa yang terhad, anda boleh menggunakan modul, masa, dan modul Python. 1. Modul DateTime digunakan untuk merakam dan merancang masa pembelajaran. 2. Modul Masa membantu menetapkan kajian dan masa rehat. 3. Modul Jadual secara automatik mengatur tugas pembelajaran mingguan.

Mengkonfigurasi pelayan HTTPS pada sistem Debian melibatkan beberapa langkah, termasuk memasang perisian yang diperlukan, menghasilkan sijil SSL, dan mengkonfigurasi pelayan web (seperti Apache atau Nginx) untuk menggunakan sijil SSL. Berikut adalah panduan asas, dengan mengandaikan anda menggunakan pelayan Apacheweb. 1. Pasang perisian yang diperlukan terlebih dahulu, pastikan sistem anda terkini dan pasang Apache dan OpenSSL: sudoaptDateSudoaptgradesudoaptinsta

Artikel ini akan membimbing anda tentang cara mengemas kini sijil NginxSSL anda pada sistem Debian anda. Langkah 1: Pasang Certbot terlebih dahulu, pastikan sistem anda mempunyai pakej CertBot dan Python3-CertBot-Nginx yang dipasang. Jika tidak dipasang, sila laksanakan arahan berikut: sudoapt-getupdateudoapt-getinstallcertbotpython3-certbot-nginx Langkah 2: Dapatkan dan konfigurasikan sijil Gunakan perintah certbot untuk mendapatkan sijil let'Sencrypt dan konfigurasikan nginx: sudoCertBot-ninx ikuti

Membangunkan plugin Gitlab pada Debian memerlukan beberapa langkah dan pengetahuan tertentu. Berikut adalah panduan asas untuk membantu anda memulakan proses ini. Memasang GitLab terlebih dahulu, anda perlu memasang GitLab pada sistem Debian anda. Anda boleh merujuk kepada manual pemasangan rasmi GitLab. Dapatkan token akses API sebelum melakukan integrasi API, anda perlu mendapatkan token akses API Gitlab terlebih dahulu. Buka papan pemuka Gitlab, cari pilihan "AccessTokens" dalam tetapan pengguna, dan menghasilkan token akses baru. Akan dijana

Apache adalah wira di belakang internet. Ia bukan sahaja pelayan web, tetapi juga platform yang kuat yang menyokong lalu lintas yang besar dan menyediakan kandungan dinamik. Ia memberikan fleksibiliti yang sangat tinggi melalui reka bentuk modular, yang membolehkan pengembangan pelbagai fungsi seperti yang diperlukan. Walau bagaimanapun, modulariti juga membentangkan cabaran konfigurasi dan prestasi yang memerlukan pengurusan yang teliti. Apache sesuai untuk senario pelayan yang memerlukan keperluan yang sangat disesuaikan dan memenuhi keperluan kompleks.

Apache ditulis dalam C. Bahasa ini menyediakan kelajuan, kestabilan, mudah alih, dan akses perkakasan langsung, menjadikannya sesuai untuk pembangunan pelayan web.
