![]() |
Machine Learning |
Sebelum kita mulai untuk coding dalam Machine Learning Python menggunakan module scikit-learn. Kita terlebih dahulu harus menginstall module tersebut kedalam komputer atau laptop kita. Perlu diketahui bahwa menginstall scikit-learn memerlukan module lain yakni Numpy dan Scipy.
Karena saya disini menggunakan OS Arch Linux maka untuk cara instalasi cukup dengan menginstall PIP dan menginstall 3 module diatas dengan PIP.
Karena saya disini menggunakan OS Arch Linux maka untuk cara instalasi cukup dengan menginstall PIP dan menginstall 3 module diatas dengan PIP.
sudo pacman -S pip
pip install numpy
pip install scipy
pip install -U scikit-learn
pip install numpy
pip install scipy
pip install -U scikit-learn
Untuk OS Linux lain silahkan ganti kata pacman sesuai dengan OS kalian, misal apt-get untuk distro Debian dan turunannya. Untuk pengguna Windows atau Mac bisa juga mudah melakukan instalasi scikit-learn menggunkan Anaconda, tinggal install saja Anaconda dengan download disini ! Dan ketik command ini pada terminal atau command prompt.
conda install scikit-learn
Atau jika cara diatas tidak berhasil saat kalian membaca artikel ini maka silahkan kunjungi tutorial instalasi resmi dari website Scikit Learn.
PROGRAM CLASSIFIER DENGAN SCIKIT LEARN PADA PYTHON
Apa itu Classifier ? Ditinjau dari arti kata dari bahasa inggrisnya Classifier berarti 'Pengelompokan', Jadi, pada tutorial kali ini kita akan membuat sebuah code menggunakan scikit-learn untuk mengelompokkan jenis buah apakah itu berdasarkan data yang terinput oleh user.
Jenis buah kita kali ini adalah Apel dan Jeruk. Singkat cerita, karena ini hanya basic tutorial maka kita akan menuliskan ciri - ciri apel dan jeruk. Yang lebih advance lagi adalah menggunakan gambar.
Jadi hal pertama yang harus kita miliki sebelum menulis code adalah sesuatu yang disebut Training Data. Training Data digunakan agar scikit-learn mengenal apa yang akan diidentifikasi dan akan menebak hasil yang benar. Dalam contoh disini, kita akan mencari ciri - ciri termudah pada sebuah Apel dan Jeruk.
Mudahnya kita akan gunakan ciri - ciri berat dan tekstur pada masing - masing buah untuk dijadikan sebuah Training data. Sebagai contoh dalam hal ini kita akan asumsikan bahwa Jeruk lebih ringan dari Apel, dan tekstur Jeruk lebih kasar dari Apel.
Jadi dari data input berat dan teksturnya sesuai dengan Apel maka code akan memprinout Apel, begitu juga jika cirinya sesuai dengan Jeruk, code akan mengira dan memprediksi bahwa itu adalah Jeruk. Jika sudah mengerti konsepnya kita akan mulai membuat codenya. Dalam code ini saya istilahkan Apel dengan angka 1 dan Jeruk angka 0, tekstur halus angka 0, tekstur kasar angka 1, hal ini dikarenakan scikit-learn lebih mudah membaca angka.
Jadi hal pertama yang harus kita miliki sebelum menulis code adalah sesuatu yang disebut Training Data. Training Data digunakan agar scikit-learn mengenal apa yang akan diidentifikasi dan akan menebak hasil yang benar. Dalam contoh disini, kita akan mencari ciri - ciri termudah pada sebuah Apel dan Jeruk.
Mudahnya kita akan gunakan ciri - ciri berat dan tekstur pada masing - masing buah untuk dijadikan sebuah Training data. Sebagai contoh dalam hal ini kita akan asumsikan bahwa Jeruk lebih ringan dari Apel, dan tekstur Jeruk lebih kasar dari Apel.
Baca Juga : E-Mail Extractor dengan Python dan RegexJadi, kita bisa membuat datanya begini. Jika beratnya 120 g dan 150 g dengan tekstur kasar maka itu Jeruk, sedangkan jika beratnya 200 g dan 250 g dengan tekstur halus maka itu Apel. Untuk membuat mesin classifiernya kita memerlukan fungsi tree dari scikit-learn, fungsi tree ini jika digambarkan seperti ini
![]() |
Diagram Tree |
from sklearn import tree
#jeruk = 0
#apel = 1
#halus = 0
#kasar = 1
ciri = [[120, 1],[150, 1],[200, 0],[250, 0]]
label = [0, 0, 1, 1]
#jeruk = 0
#apel = 1
#halus = 0
#kasar = 1
ciri = [[120, 1],[150, 1],[200, 0],[250, 0]]
label = [0, 0, 1, 1]
Nah, maksud code diatas adalah kita samakan posisi tiap elemen pada ciri dengan nama buah itu, contoh pada ciri[0] adalah ciri - ciri dari Jeruk yaitu berat 120 g dan tekstur kasar, maka harus sesuai dengan label[0] yaitu berarti Jeruk.
Jika sudah sesuai maka kita akan membuat fungsi treenya dan kita akan memadukan mereka dengan fungsi fit. Dan sebagai testing code kita akan membuat prediksi dengan fungsi predict.
from sklearn import tree
#jeruk = 0
#apel = 1
#halus = 0
#kasar = 1
ciri = [[120, 1],[150, 1],[200, 0],[250, 0]]
label = [0, 0, 1, 1]
mesin = tree.DecisionTreeClassifier()
mesin = mesin.fit(ciri, label)
#test code output harus Jeruk
print(mesin.predict([[150, 1]])
Nah jika kita run codenya maka jika kita mendapat hasil 0 maka itu sudah benar karena 0 berarti Jeruk. Sampai disini saja pembelajaran classifier kita sudah selesai karena code kita sudah akurat, silahkan ganti line code terakhir sesuai keinginan kalian untuk mencoba kemungkinan lainnya.#jeruk = 0
#apel = 1
#halus = 0
#kasar = 1
ciri = [[120, 1],[150, 1],[200, 0],[250, 0]]
label = [0, 0, 1, 1]
mesin = tree.DecisionTreeClassifier()
mesin = mesin.fit(ciri, label)
#test code output harus Jeruk
print(mesin.predict([[150, 1]])
Baca Juga : Kumpulan Tutorial Unik PythonTapi, saya ingin kalian semua bisa berpikir Out of The Box. Bagaimana jika kita membuat user bisa menginput data mereka sendiri dan hasil outputnya akan berupa nama labelnya bukan angka angka lagi, maka codenya kurang lebih akan seperti ini.
from sklearn import tree
#jeruk = 0
#apel = 1
#halus = 0
#kasar = 1
ciri = [[120, 1],[150, 1],[200, 0],[250, 0]]
label = [0, 0, 1, 1]
mesin = tree.DecisionTreeClassifier()
mesin = mesin.fit(ciri, label)
a = input('Berapa gram beratnya ?'\n'>>> ')
b = input('Teksturnya'\n'Halus atau kasar')
data = int(a)
if b.lower() == 'halus':
tekstur = 0
elif b.lower() == 'kasar':
tekstur = 1
else:
print('Unknown')
c = mesin.predict([[data, tekstur]])
if c == 0:
d = 'Jeruk'
else:
d = 'Apel'
print('Nama buahnya diprediksi {}'.format(d))
Jadi dengan code tersebut seorang user bebas memasukkan data apa saja, hal ini tentu jika dibuat aplikasi akan sangat memberi nilai lebih bagi user xperience karena seorang user tidak dihadapkan pilihan melainan sebuah kebebasan.#jeruk = 0
#apel = 1
#halus = 0
#kasar = 1
ciri = [[120, 1],[150, 1],[200, 0],[250, 0]]
label = [0, 0, 1, 1]
mesin = tree.DecisionTreeClassifier()
mesin = mesin.fit(ciri, label)
a = input('Berapa gram beratnya ?'\n'>>> ')
b = input('Teksturnya'\n'Halus atau kasar')
data = int(a)
if b.lower() == 'halus':
tekstur = 0
elif b.lower() == 'kasar':
tekstur = 1
else:
print('Unknown')
c = mesin.predict([[data, tekstur]])
if c == 0:
d = 'Jeruk'
else:
d = 'Apel'
print('Nama buahnya diprediksi {}'.format(d))
PENUTUP
Sampai juga kita diujung tutorial Contoh Program Classifier pada Machine Learning Python. Semoga dapat bermanfaat bagi kalian semua yang masih baru dalam dunia Machine Learning dengan Python. Jangan lupa cek juga artikel programming lainnya di Otak Keren.
Baca Juga : Artikel programming di Otak KerenJangan lupa share ke temanmu juga ya ! Jika ada pertanyaan silahkan masukkan di kolom komentar bawah ya sob, share juga pendapatmu tentang utorial ini, lanjut sampai selesai atau tidak ?
3 komentar
komentarThanks gan . Kebetulan ane lagi belajar dasar python untuk mengembangkan konsep AI...
ReplyTutorial selanjutnya sangat ditunggu
Terima kasih sob, ditunggu saja postingan otak keren selanjutnya, pastinya untuk porsi AI dan Data Mining akan lebih banyak :)
ReplyMau nanya klo inputan berat lebih kecil tp inputan teksturnya lebih halus gmn logika programnya?
ReplyVisitor baik, selalu tinggalkan jejak.
Silahkan komen yang relevan & tidak berlebihan, tidak berbau SARA & Pornografi, tidak mengandung promosi.
^ _ ^ Happy Blogging !