Pisahkan Dataset Anda Dengan scikit-learn’s train_test_split() – Menuju AI — Publikasi AI dan Teknologi Terkemuka di Dunia

Penulis (s): YashNagare

Awalnya diterbitkan di Towards AI the World’s Leading AI and Technology News and Media Company. Jika Anda sedang membangun produk atau layanan terkait AI, kami mengundang Anda untuk mempertimbangkan untuk menjadi sponsor AI. Di Towards AI, kami membantu menskalakan AI dan startup teknologi. Biarkan kami membantu Anda melepaskan teknologi Anda kepada massa.

Pembelajaran mesin

Foto oleh Isaac Smith di Unsplash

Evaluasi dan validasi model adalah bagian penting dari pembelajaran mesin yang diawasi. Ini membantu dalam pemilihan model terbaik untuk mewakili data kami serta prediksi seberapa baik model itu akan tampil di masa depan.

Untuk memprediksi model ini, kita perlu membagi dataset model ini menjadi data pelatihan dan pengujian. Memisahkan data ini secara manual sulit karena kumpulan data berukuran besar dan data perlu diacak.

Untuk mempermudah tugas ini, kita akan menggunakan modul train_test_split() Scikit-learn, yang akan membagi data kita menjadi set pelatihan dan pengujian.

Pemasangan Scikit-Learn

Foto oleh Volodymyr Hryshchenko di Unsplash

Menginstal Scikit-learn menggunakan pip :

$ pip install -U scikit-belajar

Menginstal Scikit-learn menggunakan conda :

$ conda install -c anaconda scikit-learn=0.24

Mengimpor Perpustakaan —

>>> dari sklearn.model_selection impor train_test_split

Mulai –

Foto oleh Dayne Topkin di Unsplash

Sintaks –

train_test_split(*array, test_size=Tidak ada, train_size=Tidak ada, random_state=Tidak ada, shuffle=Benar, stratify=Tidak ada)

Parameter –

Foto oleh Artem Sapegin di Unsplash

array – Data yang ingin Anda pisah disimpan dalam urutan daftar, array NumPy, panda DataFrames, atau objek mirip array lainnya yang disebut array. Dataset terdiri dari semua objek ini, dan semuanya harus memiliki panjang yang sama.

train_size – Ukuran set data pelatihan ditentukan oleh opsi ini. Tidak ada, yang merupakan default. Int, yang membutuhkan jumlah sampel yang tepat dan float, yang berkisar dari 0,1 hingga 1,0, adalah tiga alternatif.

test_size – Parameter ini menentukan ukuran dataset pengujian. Jika ukuran pelatihan diatur ke default, test_size akan diatur ke 0,25.

random_state – Parameter ini menentukan pemisahan data secara acak menggunakan np.random atau int.

shuffle – Shuffle memiliki nilai Boolean (default=True). Ini menentukan apakah data harus diacak atau tidak.

stratify – Ini adalah objek seperti array (default=None). Jika stratifikasi tidak ada maka itu menentukan bagaimana menggunakan pemisahan data bertingkat.

Sekarang saatnya untuk menguji keterampilan membelah data Anda! Untuk memulai, Anda harus membuat kumpulan data sederhana untuk digunakan. Input akan berada dalam array dua dimensi X, sedangkan outputnya akan berada dalam array satu dimensi y dalam dataset.

https://medium.com/media/f9f32bb5c0d5463d3c24dc194d37b826/href

Kami telah menggunakan pustaka NumPy untuk menghasilkan kumpulan data. arange() akan mengembalikan nilai dengan jarak yang sama dalam interval yang ditentukan dan .reshape() akan mengubah bentuk array tanpa mengubah datanya.

Panduan lengkap tentang NumPy untuk Pembelajaran Mesin

Dengan satu panggilan fungsi, Anda dapat membagi set data input dan output.

https://medium.com/media/22688e2add65c3b4fde20b569a961c2a/href

train_test_split() melakukan pemisahan data dan mengembalikan empat urutan array NumPy dalam urutan ini:

X_train – Bagian pelatihan dari urutan X y_train – Bagian pelatihan dari urutan y X_test – Bagian pengujian dari urutan X y_test – Bagian pengujian dari urutan y >>> train_test_split(y, shuffle=True)
[[4, 0, 6, 2, 5, 9, 3], [1, 7, 8]]
>>>

Sampel dari kumpulan data dikocok secara acak dan kemudian dibagi menjadi kumpulan pelatihan dan pengujian.

Foto oleh Alex di Unsplash

Kesimpulan

Anda sekarang mengerti mengapa dan bagaimana menggunakan fungsi train_test_split() sklearn dan berbagai parameter yang digunakan di dalamnya. Anda sekarang dapat menggunakan data Anda untuk melatih, memvalidasi, dan menguji model machine learning sebanyak yang Anda inginkan.

Sebelum kamu pergi

Saya menyambut Anda untuk bergabung dengan saya dalam perjalanan ini! Ikuti halaman Medium ini untuk terus mengikuti konten Ilmu Data/Python yang lebih menarik.

Pisahkan Dataset Anda Dengan scikit-learn’s train_test_split() awalnya diterbitkan di Towards AI on Medium, di mana orang-orang melanjutkan percakapan dengan menyoroti dan menanggapi cerita ini.

Diterbitkan melalui Menuju AI