Scikit Learn - Pendahuluan

Dalam bab ini, kita akan memahami apa itu Scikit-Learn atau Sklearn, asal-usul Scikit-Learn dan beberapa topik terkait lainnya seperti komunitas dan kontributor yang bertanggung jawab untuk pengembangan dan pemeliharaan Scikit-Learn, prasyaratnya, instalasi dan fitur-fiturnya.

Apa itu Scikit-Learn (Sklearn)

Scikit-learn (Sklearn) adalah library yang paling berguna dan tangguh untuk pembelajaran mesin dengan Python. Ini menyediakan pilihan alat yang efisien untuk pembelajaran mesin dan pemodelan statistik termasuk klasifikasi, regresi, pengelompokan, dan pengurangan dimensi melalui antarmuka konsistensi dengan Python. Library ini, yang sebagian besar ditulis dengan Python, dibangun di atasnyaNumPy, SciPy dan Matplotlib.

Asal dari Scikit-Learn

Awalnya disebut scikits.learn dan pada awalnya dikembangkan oleh David Cournapeau sebagai proyek kode musim panas Google pada tahun 2007. Kemudian, pada tahun 2010, Fabian Pedregosa, Gael Varoquaux, Alexandre Gramfort, dan Vincent Michel, dari FIRCA (Institut Perancis untuk Penelitian dalam Ilmu Komputer dan Otomasi), mengambil proyek ini di tingkat lain dan membuat rilis publik pertama (v0.1 beta) pada tanggal 1 Februari 2010.

Mari kita lihat riwayat versinya -

  • Mei 2019: scikit-learn 0.21.0

  • Maret 2019: scikit-learn 0.20.3

  • Desember 2018: scikit-learn 0.20.2

  • November 2018: scikit-learn 0.20.1

  • September 2018: scikit-learn 0.20.0

  • Juli 2018: scikit-learn 0.19.2

  • Juli 2017: scikit-learn 0.19.0

  • September 2016. scikit-learn 0.18.0

  • November 2015. scikit-learn 0.17.0

  • Maret 2015. scikit-learn 0.16.0

  • Juli 2014. scikit-learn 0.15.0

  • Agustus 2013. scikit-learn 0.14

Komunitas & kontributor

Scikit-learn adalah upaya komunitas dan siapa pun dapat berkontribusi padanya. Proyek ini dihosting padahttps://github.com/scikit-learn/scikit-learn. Orang-orang yang mengikuti saat ini merupakan kontributor inti untuk pengembangan dan pemeliharaan Sklearn -

  • Joris Van den Bossche (Ilmuwan Data)

  • Thomas J Fan (Pengembang Perangkat Lunak)

  • Alexandre Gramfort (Peneliti Pembelajaran Mesin)

  • Olivier Grisel (Pakar Pembelajaran Mesin)

  • Nicolas Hug (Ilmuwan Riset Asosiasi)

  • Andreas Mueller (Ilmuwan Pembelajaran Mesin)

  • Hanmin Qin (Insinyur Perangkat Lunak)

  • Adrin Jalali (Pengembang Sumber Terbuka)

  • Nelle Varoquaux (Peneliti Ilmu Data)

  • Roman Yurchak (Ilmuwan Data)

Berbagai organisasi seperti Booking.com, JP Morgan, Evernote, Inria, AWeber, Spotify, dan banyak lagi menggunakan Sklearn.

Prasyarat

Sebelum kami mulai menggunakan scikit-learn rilis terbaru, kami memerlukan yang berikut -

  • Python (> = 3.5)

  • NumPy (> = 1.11.0)

  • Scipy (> = 0.17.0) li

  • Joblib (> = 0,11)

  • Matplotlib (> = 1.5.1) diperlukan untuk kapabilitas plotting Sklearn.

  • Pandas (> = 0.18.0) diperlukan untuk beberapa contoh scikit-learn yang menggunakan struktur dan analisis data.

Instalasi

Jika Anda sudah menginstal NumPy dan Scipy, berikut adalah dua cara termudah untuk menginstal scikit-learn -

Menggunakan pip

Perintah berikut dapat digunakan untuk menginstal scikit-learn melalui pip -

pip install -U scikit-learn

Menggunakan conda

Perintah berikut dapat digunakan untuk menginstal scikit-learn melalui conda -

conda install scikit-learn

Di sisi lain, jika NumPy dan Scipy belum diinstal pada workstation Python Anda, Anda dapat menginstalnya dengan menggunakan pip atau conda.

Pilihan lain untuk menggunakan scikit-learn adalah menggunakan distribusi Python seperti Canopy dan Anaconda karena keduanya mengirimkan versi terbaru scikit-learn.

fitur

Daripada berfokus pada memuat, memanipulasi, dan meringkas data, pustaka Scikit-learn berfokus pada pemodelan data. Beberapa grup model terpopuler yang disediakan oleh Sklearn adalah sebagai berikut -

Supervised Learning algorithms - Hampir semua algoritme pembelajaran yang diawasi yang populer, seperti Regresi Linier, Mesin Vektor Dukungan (SVM), Pohon Keputusan, dll., Adalah bagian dari scikit-learn.

Unsupervised Learning algorithms - Di sisi lain, ia juga memiliki semua algoritma pembelajaran tanpa pengawasan yang populer mulai dari pengelompokan, analisis faktor, PCA (Analisis Komponen Utama) hingga jaringan saraf tanpa pengawasan.

Clustering - Model ini digunakan untuk mengelompokkan data yang tidak berlabel.

Cross Validation - Digunakan untuk memeriksa keakuratan model yang diawasi pada data yang tidak terlihat.

Dimensionality Reduction - Digunakan untuk mengurangi jumlah atribut dalam data yang selanjutnya dapat digunakan untuk peringkasan, visualisasi, dan pemilihan fitur.

Ensemble methods - Seperti namanya, ini digunakan untuk menggabungkan prediksi beberapa model yang diawasi.

Feature extraction - Digunakan untuk mengekstrak fitur dari data untuk menentukan atribut dalam data gambar dan teks.

Feature selection - Digunakan untuk mengidentifikasi atribut yang berguna untuk membuat model yang diawasi.

Open Source - Ini adalah perpustakaan sumber terbuka dan juga dapat digunakan secara komersial di bawah lisensi BSD.