MAKALAH
IMPLEMENTASI MACHINE LEARNING
SCIKIT-LEARN PYTHON
Semester : I (satu)
UAS
D
I
S
U
S
U
N
OLEH :
Muhammad Rahmat Syahputra
2208100062
Kak prodi : Dr. Iwan Purnama, [Link],[Link]
FAKULTAS SAINS DAN TEKNOLOGI
PRODI TEKNOLOGI INFORMASI
UNIVERSITAS LABUHANBATU
TA. 2022/2023
KATA PENGANTAR
Puji syukur saya panjatkan atas kehadirat Tuhan Yang Maha Esa karena segala
nikmat dan karunianya, sehingga saya dapat menyusun makalah ini dengan baik. Tak lupa
saya ucapkan terima kasih kepada pihak-pihak yang telah memberikan dukungan, baik ide
maupun materi.
Saya berharap semoga makalah ini dapat menambah pengetahuan dan bisa menjadi
referensi bagi para pembaca. Selain itu, besar harapan saya agar makalah ini dapat
dipraktikkan dalam kehidupan sehari-hari.
Karena keterbatasan pengetahuan dan pengalaman saya , tentu masih banyak
kekurangan dalam penyusunan makalah ini. Oleh karena itu, saya mengharapkan kritik dan
saran yang benar-benar membangun dari para pembaca untuk menyempurnakan makalah ini.
Rantauprapat, 16 Januari 2023
Muhammad Rahmat Syahputra
2208100062
i
DAFTAR ISI
KATA PENGANTAR...............................................................................................................i
DAFTAR ISI.............................................................................................................................ii
BAB I.........................................................................................................................................ii
PENDAHULUAN....................................................................................................................ii
A. LATAR BELAKANG....................................................................................................ii
B. RUMUSAN MASALAH...............................................................................................iii
BAB II......................................................................................................................................iv
PEMBAHASAN......................................................................................................................iv
A. SEJARAH MECHINE LEARNING.............................................................................iv
B. MECHINE LEARNING.................................................................................................v
C. CARA KERJA MACHINE LEARNING.....................................................................vii
D. 3 METODE YANG DIGUNAKAN DALAM MACHINE LEARNING...................viii
E. PROGRAM I..................................................................................................................xi
F. PROGRAM II..............................................................................................................xiv
DAFTAR PUSTAKA.............................................................................................................xv
ii
BAB I
PENDAHULUAN
A. LATAR BELAKANG
Secara singkat, machine learning adalah sebuah ilmu yang berfokus pada proses
pembelajaran komputer untuk bertindak seperti otak manusia dengan belajar secara
mandiri dari waktu ke waktu. Machine learning merupakan salah satu cabang artificial
intelligence (AI) yang paling banyak digunakan saat ini. Tugas utama machine learning
adalah meningkatkan kemampuan mesin untuk mempelajari informasi baru dari data dan
mengembangkan kemampuan mesin untuk memecahkan suatu masalah. Machine learning
membutuhkan data latih atau input untuk mengajarkan mesin cara memecahkan masalah,
menjawab pertanyaan, dan menarik kesimpulan dari hasil pengolahan data. Seiring
berkembangnya zaman dan teknologi, algoritma machine learning yang digunakan
semakin berkembang dan semakin canggih karena terus "digodok" dengan data secara
terus menerus.
Proses machine learning dimulai dengan menginput data latih ke dalam algoritma yang
telah dipilih dan sesuai dengan tujuan. Data latih atau lebih sering disebut data training
bertugas untuk melatih data agar menjadi data berlabel atau tidak berlabel untuk
mengembangkan algoritma akhir. Untuk menguji apakah algoritma tersebut berjalan
dengan baik, data baru dimasukkan ke dalam algoritma untuk memprediksi data dan
akurasi hasil prediksinya akan diperiksa. Jika akurasi hasil prediksi kurang memuaskan,
1
maka algoritma tadi akan dilatih ulang beberapa kali hingga output yang diinginkan
tercapai. Proses pelatihan ulang ini akan membuat algoritma machine learning terus
belajar secara mandiri dan menghasilkan output paling optimal yang akan meningkatkan
tingkat akurasi secara bertahap.
B. RUMUSAN MASALAH
1. SEJARAH MECHINE LEARNING
2. MECHINE LEARNING
3. CARA KERJA MACHINE LEARNING
4. 3 METODE YANG DIGUNAKAN DALAM MACHINE LEARNING
5. PROGRAM I
6. PROGRAM II
2
BAB II
PEMBAHASAN
A. SEJARAH MECHINE LEARNING
Sejak pertama kali komputer diciptakan manusia sudah memikirkan bagaimana caranya
agar komputer dapat belajar dari pengalaman. Hal tersebut terbukti pada tahun 1952,
Arthur Samuel menciptakan sebuah program, game of checkers, pada sebuah komputer
IBM. Program tersebut dapat mempelajari gerakan untuk memenangkan permainan
checkers dan menyimpan gerakan tersebut kedalam memorinya. Manusia telah lama
memimpikan mesin yang dapat “berfikir”, bahkan sejak zaman Yunani kuno, seperti
Talos dalam mitos Yunani kuno. Talos digambarkan sebagai automaton ( semacam robot)
yang terbuat dari perunggu yang diciptakan untuk melindungi Eropa.
Dengan berkembangnya teknologi kecerdasan buatan, muncul salah satu cabang
kecerdasan buatan yang memperoleh banyak perhatian dari para peneliti yang disebut
machine learning. Machine Learning mempelajari teori agar komputer mampu “belajar”
dari data, machine learning melibatkan berbagai disiplin ilmu seperti statistika, ilmu
komputer, matematika dan bahkan neurologi. Salah satu algoritma machine learning yang
menarik adalah jaringan saraf tiruan, seperti namanya jaringan saraf tiruan terinspirasi
dari cara kerja otak manusia ( yang disederhanakan ).
stilah machine learning pada dasarnya adalah proses komputer untuk belajar dari data
(learn from data). Tanpa adanya data, komputer tidak akan bisa belajar apa-apa. Oleh
3
karena itu jika kita ingin belajar machine learning, pasti akan terus berinteraksi dengan
data. Semua pengetahuan machine learning pasti akan melibatkan data. Data bisa saja
sama, akan tetapi algoritma dan pendekatan nya berbeda-beda untuk mendapatkan hasil
yang optimal.
Dalam salah satu model jaringan saraf tiruan yang disebut MLP ( multi layer perceptron )
dikenal istilah layer, beberapa neuron tiruan dikelompokan menjadi satu layer kemudian
layer satu menjadi input bagi layer yang lain, MLP sebenarnya adalah model
( matematika ) yang terdiri dari komposisi-komposisi fungsi dari vektor ke vektor, model
ini biasanya di-train menggunakan algortima optimisasi berbasis gradien seperti gradient
descent, berbagai masalah muncul ketika model jaringan saraf tiruan memiliki banyak
layer, salah satu masalah yang terkenal disebut the vanishing gradient, masalah ini
muncul karena jaringan saraf tiruan dengan banyak layer sebenarnya adalah fungsi yang
terdiri dari banyak komposisi fungsi sehingga ketika menghitung gradien terhadap
parameter dari fungsi tersebut, kita harus menggukan aturan rantai yang menyebabkan
gradien parameternya bernilai kecil sehingga algoritma gradient descent berjalan lambat.
B. MECHINE LEARNING
Menurut IBM, machine learning merupakan cabang dari kecerdasan buatan (AI) dan ilmu
komputer yang berfokus pada penggunaan data dan algoritma untuk meniru cara manusia
belajar dan secara bertahap dapat meningkatkan akurasinya. Machine learning merupakan
komponen penting dari bidang ilmu tentang perkembangan data. Melalui penggunaan
statistik, algoritma machine learning dilatih untuk membuat klasifikasi atau prediksi
dalam pengembangan data.
4
Pengembangan data yang ditangani machine learning ini mencakup wawasan utama dari
kecerdasan buatan dan pengambilan keputusan dalam aplikasi atau bisnis. Keberadaan
machine learning disebut mampu memengaruhi matrik pertumbuhan ideal dari basis data
dalam dunia bisnis teknologi informasi.
Perkembangan data yang makin hari semakin besar dan bertumbuh, permintaan pasar
untuk ilmuwan data juga akan meningkat. Hal ini nantinya akan menuntut para pakar data
untuk mengidentifikasi pertanyaan bisnis yang paling relevan dan lantas melakukan
sinkronisasi terhadap data untuk menjawab itu. Peran machine learning ada dalam
penyesuaian antara pertanyaan dan jawaban terkait data yang terus berkembang ini.
Secara umum bisa dikatakan bahwa machine learning adalah metode analisis data yang
dilakukan dengan otomatisasi pembuatan model analitis. Sebagai cabang dari AI,
machine learning didasarkan pada gagasan bahwa sistem dapat belajar dari data,
mengidentifikasi pola, dan membuat keputusan dengan sedikit intervensi manusia dalam
proses tersebut.
Machine learning merupakan salah satu cabang dari Artificial Intelligence (AI) atau
kecerdasan buatan. Machine learning adalah mesin pembelajar yang dikembangankan
agar dapat belajar secara otomatis tanpa arahan dari pengguna. Machine learning ini
berdasarkan ilmu-ilmu matematika, statistika, data mining, dan lainnya. Teknik-teknik
machine learning pun penggunaannya sesuai dengan kebutuhan dalam bidang masing-
masing.
5
C. CARA KERJA MACHINE LEARNING
Machine learning bekerja sesuai dengan metode yang diambil yaitu dengan pengawasan,
tanpa pengawasan, atau penguatan. Pada dasarnya, ada empat jenis cara kerja machine
learning. Keempatnya adalah pembelajaran terarah (supervised learning), pembelajaran tak
terarah (unsupervised learning), pembelajaran semi terarah (semi-supervised learning), dan
reinforcement learning. Alur kerja machine learning meliputi pengumpulan data, eksplorasi
data, pemilihan model (regresi linier, regresi logistik, neural network, dan lain sebagainya),
pemberian latihan terhadap model yang dipilih, evaluasi model, dan prediksi.
Akurasi awal dari program machine learning biasanya sangat buruk, sebab pada mulanya
program ini “tidak tahu apa-apa”. Namun, seiring berjalannya waktu semakin sering kita
melatih suatu program, semakin banyak pula contoh-contoh yang dipelajari oleh mereka.
Maka, program machine learning akan semakin “cerdas” dan akurat. Misalnya saja saat kita
bermain gim role playing game (RPG) yang menggunakan artificial intelligence. pertama kali
6
kita bermain dengan RPG tersebut, maka dengan mudah kita akan bisa memenangkan
permainan. Namun, setelah beberapa kali permainan, engine atau algoritma game itu akan
belajar dari pola-pola sebelumnya, sehingga lawan semakin sulit dikalahkan.
D. 3 METODE YANG DIGUNAKAN DALAM MACHINE LEARNING
Tiga metode atau tipe machine learning (Sumber: [Link])
1. Supervised Learning
Metode supervised learning dilakukan dengan pemberian label pada dataset yang digunakan
oleh machine learning dan diklasifikasikan oleh pengembang dengan memungkinkan
algoritma melihat tingkat akurasi kinerjanya. Pengawasan machine learning dalam metode ini
dilakukan oleh data berlabel yang nantinya membuat machine learning mempelajari apa
hubungan dan ketergantungan antar data.
Cara kerja metode ini adalah memasukkan informasi sebagai input dan data berlabel sebagai
hasil atau output. Input dalam machine learning pinjaman bank misalnya dapat berupa data
rinci seperti usia, gaji, jumlah pinjaman, jumlah terutan, riwayat pinjaman, dan lain
7
sebagainya. Sedangkan output-nya dapat berupa hasil dari keseluruhan jumlah orang yang
membayar pinjaman dan berapa jumlah orang gagal membayar. 1
2. Semi-supervised Learning (Unsupervised)
Metode semi-supervised learning bisa disebut juga sebagai metode machine learning tanpa
pengawasan. Sehingga, prosesnya dilakukan pada dataset mentah yang tidak berlabel dan
algoritma machine learning akan mencoba mengidentifikasi pola dan relasi antar data tanpa
bantuan dari pengembang.
Metode unsupervised learning pada umumnya memang tidak ada bantuan dari manusia agar
komputer benar-benar mempelajari sebuah data dan relasinya secara mandiri. Dalam
kasusnya, dataset tidak berlabel dan mesin secara komputasi akan mengidentifikasi pola
dalam data. Unsupervised learning digunakan untuk memudahkan pengembang mengambil
keputusan.
Dalam kasus machine learning pinjaman bank tadi, sebuah unsupervised learning dapat
mendeteksi anomali atau mengungkap transaksi atau pembayaran yang curang. Unsupervised
learning dapat secara otomatis mencari informasi setelah mengelompokkan pola dari semua
data peminjam dari sebuah bank dan memunculkannya sebagai sebuah output tanpa harus
memasukkan data berlabel secara rinci.2
3. Reinforcement Learning
Metode machine learning yang satu ini dijalankan dengan menggunakan dataset bersistem
“rewards/punishment” dan menawarkan umpan balik ke algoritma untuk belajar dari
1
Mengenal Teknologi Machine Learning (Pembelajaran Mesin)
2
Pengenalan terhadap Machine Learning | by Makers Institute
8
pengalamannya secara coba-coba (random). Metode “coba-coba” ini hampir sama dengan
sistem pemahaman pola yang dilakukan manusia yaitu belajar dari percobaan.
Hal ini yang lantas membuat metode ini disebut sebagai machine learning dengan tipe
penguatan pembelajaran. Algoritma dalam metode ini akan belajar secara terus-menerus dari
lingkungan atau kebiasaan interaksi yang berhubungannya dengannya. Dari sana nantinya
algoritma akan mendapat “rewards” atau “punishment” sebagai impresi positif dan negatif
berdasarkan tindakan percobaannya.
Dalam kasus machine learning pinjaman bank, algoritma reinforcement learning akan
mengklasifikasikan pelanggan berisiko tinggi secara default dan akan mengelompokkan
pelanggan yang gagal bayar sebagai aspek negatif secara otomatis.3
3
[Link]
9
E. PROGRAM I
Linear Regression
Kode Programan :
import numpy as np import [Link] as plt
import [Link] as plt from scipy import stats
def estimate_coef(x, y):
# number of observations/points
n = [Link](x)
# mean of x and y vector
m_x = [Link](x)
m_y = [Link](y)
# calculating cross-deviation and deviation about x
SS_xy = [Link](y*x) - n*m_y*m_x
SS_xx = [Link](x*x) - n*m_x*m_x
# calculating regression coefficients
b_1 = SS_xy / SS_xx
b_0 = m_y - b_1*m_x
return (b_0, b_1)
def plot_regression_line(x, y, b):
# plotting the actual points as scatter plot
[Link](x, y, color = "m",
marker = "o", s = 30)
10
# predicted response vector
y_pred = b[0] + b[1]*x
# plotting the regression line
[Link](x, y_pred, color = "g")
# putting labels
[Link]('x')
[Link]('y')
# function to show plot
[Link]()
def main():
# observations / data
x = [Link]([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
y = [Link]([1, 3, 2, 5, 7, 8, 8, 9, 10, 12])
# estimating coefficients
b = estimate_coef(x, y)
print("Estimated coefficients:\nb_0 = {} \
\nb_1 = {}".format(b[0], b[1]))
# plotting regression line
plot_regression_line(x, y, b)
if __name__ == "__main__":
main()
11
Outup Yang dihasilan
Regresi merupakan salah satu algoritma yang dapat dikelompokkan ke dalam algoritma
Supervised Learning, dimana datanya sudah memiliki label sehingga hasil pengujiannya bisa
disesuaikan dengan label yang ada. Regresi sendiri merupakan pemodelan nilai target
berdasarkan prediktor independen.
Dalam regresi ada banyak sekali jenisnya, seperti regresi linear, regresi berganda, dll. Regresi
linier merupakan jenis analisis regresi yang cukup sederhana dimana jumlah variabel bebas
dan terikatnya hanya berjumlah satu dan terdapat hubungan linier antara variabel bebas
(variabel X) dan terikat( variabel y).
12
F. PROGRAM II
Mengimplementasikan algoritme Reinforcement Learning dasar yang disebut teknik Q-
Learning.
import numpy as np
import pylab as pl
import networkx as nx
edges = [(0, 1), (1, 5), (5, 6), (5, 4), (1, 2),
(1, 3), (9, 10), (2, 4), (0, 6), (6, 7),
(8, 9), (7, 8), (1, 7), (3, 9)]
goal = 10
G = [Link]()
G.add_edges_from(edges)
pos = nx.spring_layout(G)
nx.draw_networkx_nodes(G, pos)
nx.draw_networkx_edges(G, pos)
nx.draw_networkx_labels(G, pos)
[Link]()
13
DAFTAR PUSTAKA
[Link]
[Link]
[Link]
14