Contoh Program Classifier pada Machine Learning Python

Machine learning
Machine Learning
Contoh Program Classifier pada Machine Learning Python - Seperti yang saya katakan pada artikel sebelumnya bahwa bahasa program Python bisa untuk melakukan apa saja dalam hal programming. Kali ini kita juga akan mempelajari bagaimana basic dari sebuah module untuk Python Machine Learning yaitu scikit-learn. Tapi sebelumnya silahkan cek artikel saya sebelumnya tentang Membuat login form dengan Tkinter.



MENGINSTALL SCIKIT LEARN MODUL

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.
sudo pacman -S pip
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.
Baca Juga : E-Mail Extractor dengan Python dan Regex
Jadi, 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
Diagram Tree
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.

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]

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.
Baca Juga : Kumpulan Tutorial Unik Python
Tapi, 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.

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 Keren
Jangan 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 ?

Share this

Related Posts

Previous
Prev Post »

3 komentar

komentar
22 Januari, 2018 08:40 delete

Thanks gan . Kebetulan ane lagi belajar dasar python untuk mengembangkan konsep AI...

Tutorial selanjutnya sangat ditunggu

Reply
avatar
27 Januari, 2018 15:21 delete

Terima kasih sob, ditunggu saja postingan otak keren selanjutnya, pastinya untuk porsi AI dan Data Mining akan lebih banyak :)

Reply
avatar
09 April, 2021 09:21 delete

Mau nanya klo inputan berat lebih kecil tp inputan teksturnya lebih halus gmn logika programnya?

Reply
avatar

Visitor baik, selalu tinggalkan jejak.
Silahkan komen yang relevan & tidak berlebihan, tidak berbau SARA & Pornografi, tidak mengandung promosi.
^ _ ^ Happy Blogging !