Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Satu-Hot Encode Index Arrays dalam NumPy?
Pengekodan Satu Panas Tatasusunan Indeks dalam NumPy
Memandangkan tatasusunan indeks, menukarnya menjadi tatasusunan terkod satu panas boleh teknik yang berguna untuk pelbagai aplikasi pembelajaran mesin. Pengekodan satu-panas mewakili setiap indeks sebagai vektor binari, di mana elemen sepadan indeks ialah 1 dan semua yang lain adalah 0. Teknik ini amat berharga apabila berurusan dengan data kategori atau dalam situasi di mana indeks berfungsi sebagai nilai ciri.
Untuk mencapai pengekodan satu-panas dalam NumPy, kami mengikuti proses mudah:
Pertimbangkan contoh yang disediakan:
<code class="python">a = np.array([1, 0, 3]) b = np.zeros((a.size, a.max() + 1)) b[np.arange(a.size), a] = 1</code>
Dalam contoh ini, tatasusunan indeks a mempunyai nilai antara 0 hingga 3, jadi kami mencipta tatasusunan b diisi sifar dengan 4 lajur. Kami kemudian menggunakan fungsi np.arange() untuk menjana tatasusunan indeks baris untuk b dan menetapkan lajur yang sesuai kepada 1 berdasarkan nilai dalam a.
Tatasusunan b yang terhasil kini dikodkan satu-panas perwakilan tatasusunan indeks asal a:
array([[ 0., 1., 0., 0.], [ 1., 0., 0., 0.], [ 0., 0., 0., 1.]])
Tatasusunan berkod satu panas ini mengekalkan sifat kategori bagi nilai indeks dan membolehkan pemprosesan yang cekap dalam algoritma pembelajaran mesin.
Atas ialah kandungan terperinci Bagaimana untuk Satu-Hot Encode Index Arrays dalam NumPy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!