Laporan Akhir - Studi Independen - (Fauzan Mahaditya) - (21090119140130) - (Star Classification) (Gen-Z Application-Based)
Laporan Akhir - Studi Independen - (Fauzan Mahaditya) - (21090119140130) - (Star Classification) (Gen-Z Application-Based)
Oleh:
Fauzan Mahaditya / 21090119140130
oleh :
Fauzan Mahaditya / 21090119140130
NIP: 197510211999031004
i
ii
Lembar Pengesahan
oleh :
Fauzan Mahaditya / 21090119140130
ii
iii
Abstraksi
iii
iv
Kata Pengantar
Puji syukur kehadirat Allah SWT yang telah melimpahkan rahmat serta
hidayahnya, sehingga saya dapat menyelesaikan program ini. Tak lupa sholawat
serta salam saya limpahkan kepada Nabi Muhammad saw.
Tujuan dibuat nya Laporan Akhir Studi Independen ini adalah sebagai
tugas akhir dari Program Studi Independen Bersertifikat yang diselenggarakan
oleh Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi.
Terima kasih saya ucapkan kepada seluruh pihak yang telah membantu
saya dalam menyelesaikan program ini dengan baik. Penulis menyadari bahwa
laporan ini masih jauh dari kata sempurna. Oleh karena itu, penulis mengharapkan
kritik dan saran yang dapat membangun untuk perbaikan dalam penyusunan
laporan selanjutnya dan semoga semua saran yang diberikan kepada penulis
dengan tulus dan ikhlas mendapat balasan rahmat dari Allah SWT.
iv
v
Daftar Isi
v
vi
vi
vii
Daftar Gambar
vii
viii
viii
ix
Daftar Tabel
ix
1
BAB I
Pendahuluan
Salah satu program yang ditawarkan oleh Kampus Merdeka adalah Studi
Independen Bersertifikan (SIB). SIB menawarkan pembelajaran di luar kampus
dengan kurikulum yang sudah disusun oleh mitra yang sudah pengalaman dengan
bidangnya dan hal itu lah yang melatarbelakangi saya untuk mengikuti program
ini. Selain sertifikat dari program ini, bagi saya ilmu-ilmu yang akan di pelajari di
program ini akan sangat bermanfaat bagi saya kedepannya.
I.2 Lingkup
pada project ini batasannya yaitu pada bintang, galaxy dan kuasar yang akan di
klasifikasikan bedasarkan variabel warna dan intensitas cahaya yang berdasarkan
panjang gelombang.
I.3 Tujuan
2
3
BAB II
Visi :
Misi :
3
4
4
5
b. Domain Coach
Domain coach bertugas menyampaikan materi tentang domain AI atau
life skills dan memberikan penilaian pada student.
Lingkup pekerjaan student adalah mengikuti kelas bersama homeroom atau domain
coach, sesuai agenda kelas, hingga program selesai.
Student memiliki peran sebagai pembuat model dan deploy aplikasi selama
pengerjaan PA, dengan deskripsi pekerjaan sebagai berikut :
5
6
6
7
BAB III
STAR CLASSIFICATION
7
8
Klasifikasi benda langit dalam bidang astronomi ini sangat penting untuk
dilakukan karena datanya dapat digunakan untuk mengumpulkan sampel data
bintang, galaksi dan kuasar. Hanya dengan proses klasifikasi kita dapat
membedakan antara bintang, galaksi dan kuasar. Hal ini sangat bermanfaat dalam
kemajuan penelitian karena astronom atau peneliti dapat mempelajari berbagai
topik seperti evolusi galaksi, fisika lubang hitam bahkan memahami garis waktu
alam semesta [3]. Untuk pengklasifikasian bintang ini dapat digunakan Machine
Learning atau pembelajaran mesin yang merupakan sub-bidang dari kecerdasan
buatan (Artificial Intelligence). Tujuan Machine Learning adalah untuk
mengajarkan mesin atau software untuk menyelesaikan permasalahan dengan
menyediakan beberapa contoh. Contoh yang diberikan ini disebut dengan dataset
[4].
8
9
mulai
Lakukan problem
scoping
Download dataset
data akuisisi
Panggil dataset
data preprocessing
df.info()
9
10
EDA
df.describe()
df.value_counts()
df.corr()
Klasifikasikan data
berdasarkan jenis kelas
Visualisasi data
Modelling dan
evaluation
10
11
Gunakan algoritma
dengan nilai akurasi
tertinggi
11
12
deployment
Selesai
12
13
2. Data Akuisisi
Dalam astronomi, klasifikasi bintang bertujuan untuk
mengklasifikasikan bintang berdasarkan karakteristik spektralnya.
Skema klasifikasi galaxy, star, dan QSO (quasar) merupakan salah
satu yang paling mendasar dalam astronomi. Katalog awal bintang
– bintang dan distribusinya di langit membentuk sebuah galaxy.
Sebelum melakukan data akuisisi, kita harus mendownload dataset
yang akan digunakan melalui:
https://www.kaggle.com/datasets/palak2202/stellar-classification.
dataset ini merupakan data yang diambil dari SDSS (Sloan Digital
Sky Survey) [7]. Dataset ini berisikan 100.000 data astronomi
yang terdiri dari beberapa 6 fitur variabel dan 1 kelas variabel,
diantaranya:
13
14
14
15
15
16
3. Data Preprocessing
Data preprocessing adalah proses yang mengubah data
mentah ke dalam bentuk yang lebih mudah dipahami. Proses ini
penting dilakukan karena data mentah sering kali tidak memiliki
format yang teratur. Pada tahap preprocessing ini, untuk melihat
apakah dalam Dataset kita terdapat data yang hilang atau tidak,
kita dapat menggunakan formula df.info (). Hasil yang diperoleh
bahwa Dataset yang kita gunakan tidak memiliki data yang
hilang. Pada tahap modelling juga kita menggunakan
preprocessing untuk mengecek apakah terdapat data testing dan
data training yang hilang atau tidak menggunakan
StandardScaler dan LabelEncoder. StandardScaler adalah class
dari sklearn untuk melakukan normalisasi data agar data yang
digunakan tidak memiliki penyimpangan yang besar.
Sedangkan, LabelEncoder digunakan untuk mengubah setiap
nilai dalam kolom menjadi angka yang berurutan.
16
17
5. Modelling
Star Classification menggunakan Supervised learning
sebagai modelnya, OpenCV sebagai library-nya dan
menggunakan empat algoritma untuk mengklasifikasikan
bintang kedalam kelas bintang, galaksi atau kuasar. Pada
Modelling ini mencoba menggunakan beberapa algoritma untuk
melihat perbandingan model mana yang cocok untuk digunakan.
Beberapa algoritma tersebut adalah:
a. Algoritma K – Nearest Neighbors
Algoritma KNN adalah algoritma supervised learning
dimana hasil dari instance yang baru diklasifikasikan
berdasarkan mayoritas dari kategori k-tetangga terdekat.
Tujuannya adalah untuk mengklasifikasikan objek baru
berdasarkan atribut dari sample-sampel dari training data.
Dalam modelling dengan algoritma ini kami menggunakan
parameter yaitu sebagai berikut:
• n_neighbors
n_neigbors adalah jumlah tetangga terdekat.
Hyperparameter k dalam hal ini penting karena
menentukan berapa banyak tetangga yang dapat
digunakan dalam estimasi. Dalam modelling ini,
17
18
● Weights
18
19
• C
• Kernel
Parameter kernel adalah parameter yang
memungkinkan kita untuk mengimplementasikan
suatu model pada ruang dimensi lebih tinggi (ruang
fitur) tanpa harus mendefinisikan fungsi pemetaan
dari ruang input ke ruang fitur. Pada pemodelan ini
menggunakan metode SVM menggunakan kernel
RBF. Kernel RBF atau Radial Basis Function (RBF)
adalah model linear dimana fungsi basis berupa radial
basis function, yaitu fungsi yang tergantung pada
jarak antara argumennya.
19
20
• Gamma
• Max Depth
Max depth adalah kedalam maksimum teoritis yang
dapat dicapai pohon keputusan. Max depth yang
digunakan yaitu 2, 3, 5, 10 dan 20
20
21
● Criterion
• n_estimator
n_esitamor adalah jumlah pohon yang ingin
dibangun sebelum mengambil voting maksimum atau
rata-rata prediksi. Jumlah pohon yang lebih tinggi
memberi kinerja yang lebih baik tetapi membuat kode
lebih lambat.
• Criterion
Criterion adalah parameter yang berfungsi untuk
mengukur kualitas sebuah split. Kriteria yang
didukung adalah "gini" untuk ketidakmurnian Gini
dan "log_loss" dan "entropi" keduanya untuk
perolehan informasi.
21
22
6. Evaluasi
Evaluasi yang digunakan adalah akurasi dan confusion matrix.
Akurasi dalam klasifikasi adalah persentase ketepatan record
data yang diklasifikasikan secara benar setelah dilakukan
pengujian pada hasil klasifikas. Selanjutnya dengan confusion
matrix. Confusion matrix biasa digunakan untuk mengevaluasi
kinerja model klasifikasi. Berikut ini merupakan tabel untuk
multiclass confusion matrix.
TableTabel
3. 13.1 Multiclass Confusion
Multiclass ConfusionMatrix
Matrix
Berikut adalah ketentuan dalam menetapkan nilai elemen
tersebut:
22
23
a. Akurasi
Nilai akurasi didapatkan dari jumlah data bernilai positif
yang diprediksi positif dan data bernilai negatif yang
diprediksi negatif dibagi dengan jumlah seluruh data di
dalam dataset. Berikut merupakan rumus menghitung
akurasi:
b. Presisi
Precision atau presisi adalah peluang kasus yang diprediksi
positif yang pada kenyataannya termasuk kasus kategori
positif. Berikut merupakan rumus menghitung presisi
c. Recall
Recall adalah peluang kasus dengan kategori positif yang
dengan tepat diprediksi positif. Berikut merupakan rumus
menghitung recall
7. Deployment
Deployment adalah metode yang digunakan untuk
mengintegrasikan model machine learning kedalam sebuah
produk yang menghasilkan sebuah aplikasi (pengembangan
aplikasi). pada project ini, kita melakukan deploy menggunakan
framework Flask. Flask adalah sebuah web framework yang
ditulis dengan bahasa Python dan tergolong sebagai jenis
microframework. Flask berfungsi sebagai kerangka kerja
23
24
24
25
25
26
26
27
27
28
28
29
29
30
c. Decision Tree
30
31
d. Random Forest
31
32
• Gamma
Random • N_estimator • Gini 97,77 % 97,5% 92%
Forest • Criterion • entropy
Decision • Max_depth • Gini 97,50 % 97,2% 91,2%
Tree • Min_samples_leaf • Entropy
• Criterion
Table 3. 2 Perbandingan Akurasi Tiap Algoritma
32
33
Kelebihan:
1. Aplikasi menampilkan penjelasan tentang galaxy, star dan
quasar
2. aplikasi ini bersifat opensource sehingga dapat diakses oleh
masyarakat awam
Kekurangan:
1. Tampilan apps tidak responsif
2. kurangnya informasi mengenai contact person, dan
developer
33
34
BAB IV
Penutup
IV.1 Simpulan
1. Aplikasi AI dapat dibuat dari awal atau menggunakan model yang telah
disediakan oleh seseorang atau organisasi tertentu.
IV.2 Saran
34
35
BAB V
Referensi
[1] S. P. Ramadhani and M. Pd, Bumi Dan Antariksa (Konsep dan Panduan Pengajar
Inovatif), 1st ed. Depok: Yiesa Rich Foundation, 2018. [Online]. Available:
www.yiesa-richfoundation.or.id
[2] B. Hidayat, “Materi Antar Bintang,” 1st ed., vol. 2, Bandung, 1980.
[3] Y. Wu, “Machine Learning Classification Of Stars, Galaxies, And Quasars,”
Internatonal Journal of Teaching, Educaton and Learning, 2021.
[4] A. Ahmad, “Mengenal Artificial Intelligence, Machine Learning, Neural Network,
dan Deep Learning,” Jurnal Teknologi Indonesia, Jun. 2017, [Online]. Available:
www.teknoindonesia.com
[5] G. Louppe, “Understanding Random Forests: From Theory to Practice,”
Dissertation, Universite de Liege, Wallonia, 2014. [Online]. Available:
http://arxiv.org/abs/1407.7502
[6] “What is the Universe? | What is an Exoplanet? – Exoplanet Exploration: Planets
Beyond our Solar System.” https://exoplanets.nasa.gov/what-is-an-exoplanet/what-
is-the-universe/ (accessed May 26, 2022).
35
36
36
37
BAB VI
Lampiran A. TOR
A. Rincian Program
Foundation of AI and Life Skills for Gen-Z adalah program pelatihan
Artificial Intelligence (AI) daring yang bertujuan untuk memperkenalkan
teknologi dan perangkat AI kepada pelajar, sehingga diharapkan mereka dapat
mengembangkan produk AI yang memiliki dampak sosial. Program ini
berfokus pada komponen utama AI, seperti Data Science (DS), Natural
Language Processing (NLP), dan Computer Vision (CV). Selain keterampilan
AI, pelajar juga akan mendapat life skills yang bermanfaat untuk mencari atau
menciptakan lapangan kerja.
B. Tujuan Program
Tujuan yang diharapkan setelah peserta mengikuti program ini:
1. Memiliki wawasan tentang AI dan perkembangannya.
2. Mampu merancang dan mengimplementasikan AI Project Cycle.
3. Mampu menggunakan bahasa pemrograman Python untuk mengembangkan
aplikasi AI.
4. Mampu mengembangkan salah satu dari 3 domain AI (DS, NLP, dan CV) hingga
tahap deployment.
5. Mampu menggunakan soft skills dan hard skills dalam dunia industri dan
lingkungan perusahaan.
6. Mampu mengaplikasikan kiat-kiat yang dibutuhkan seorang wirausahawan yang
bergerak di bidang start-up dalam mentransformasikan ide ke dalam bentuk
produk/jasa sehingga dapat menciptakan peluang bisnis yang terus berinovasi,
berevolusi, dan berkelanjutan.
A-1
38
D. Peserta
Peserta program ini adalah mahasiswa yang berasal dari Perguruan Tinggi di
bawah Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi Republik
Indonesia.
A-1
39
B-1
40
Mengetahui pentingnya
etika dalam pembuatan
AI dan mengetahui
Langkah dalam
pembuatan AI, yaitu
problem scooping, data
acquisition, dan data
exploration
Minggu 4: 14 Mempelajari Supervised Learning dan Mengetahui Teknik
Mar – 18 Mar Unsupervised Learning dalam Supervised
2022 Learning seperti korelasi
dan regresi, mengetahui
algoritma dalam
supervised learning
seperti KNN dan
Decision Tree,
mengetahui algoritma
Unsupervised learning
seperti hierarchical dan
non-hierarchical
clustering, dan
mengeathui tentang
neural network
Minggu 5: Mempelajari tentang domain AI, yaitu Mengetahui tentang
21 – 25 Mar Computer Vison dan Data Science dasar computer vision,
2022 dataset yang digunakan,
domain pada computer
vision, dan penggunaan
library computer vision.
Mengetahui tentang
B-1
41
B-1
42
B-1
43
B-1
44
B-1
45
C–1
46
Dataset yang kita gunakan berasal dari data SDSS yang dapat
di download melalui web kaggle. dataset ini berisikan kurang lebih
100.000 data objek benda langit dengan 18 atribut atau variabel.
dataset ini menggunakan format file csv. kita dapat mendownload
datanya terlebih dahulu pada kagle. setelah itu, untuk mengolah
dataset ini, kita akan memanggil dan membaca data pada script
menggunakan library pandas.
C–1
47
c. Data Preprocessing
Pada tahap ini, kita dapat memeriksa dataset yang akan kita
gunakan menggunakan df.info().
C–1
48
d. Data Exploration
pada data eksplorasi ini, kita dapat melihat nilai statistik
deskriptifnya terlebih dahulu.
C–1
49
C–1
50
C–1
51
C–1
52
C–1
53
e. Modelling
Pada modelling menggunakan Supervised learning sebagai
modelnya yaitu yang berhubungan dengan klasifikasi. Algoritma
yang digunakan adalah algoritma random forest. Algoritma
random forest ini berupa kombinasi dari beberapa tree predictors
atau bisa disebut decision trees dimana setiap tree bergantung pada
nilai random vector yang kemudian dijadikan sampel secara bebas
dan merata pada semua tree dalam forest tersebut. Hasil prediksi
dari Random Forest didapatkan melalui hasil terbanyak dari setiap
individual decision tree (voting untuk klasifikasi dan rata-rata
untuk regresi). Proses awal yang dilakukan adalah mengimport
library yang diperlukan terlebih dahulu.
C–1
54
C–1
55
dibandingkan test set. Dalam hal ini proporsi test set adalah 0.2 dan
training set nya 0.8.
C–1
56
C–1
57
f. Evaluation
Metrics yang digunakan untuk evaluasi adalah confusion matrix.
Dengan confusion matrix dapat mengetahui keakuratan dari model
yang kita buat dengan performance metrics seperti: accuracy, recall,
dan precision.
C–1
58
g. Depolyment
Tujuan melakukan deployment adalah untuk menyebarkan
aplikasi yang telah dikerjakan. Alur proses deployment aplikasi
yaitu sebagai berikut:
1. Membuat base html. Proses ini yaitu proses identifikasi style
website yang digunakan. Selanjutnya pembuatan bagian prediksi
dimana memasukan angka variabel untuk prediksi. Lalu hasil
akhirnya adalah hasil .html. kita membuat head, body, masthead,
about prediction, contact section, copyright section, dan bootstrap
core J5.
C–1
59
C–1
60
C–1
61
C–1
62
2. Setelah itu, kita buat file dalam bentuk python. pada file ini,
kita menggunakan library Flask, gunicorn, numpy, scipy, scikit
learn, matplotlib dan pandas serta kita panggil kembali model
yang sudah kita buat dalam bentuk pickle dan tampilan website
dalam format html yang telah dibuat
C–1
63
C–1
64
C–1
65
Dokumentasi dokumentasi
C–1
66
C–1
67
C–1
68
Yang terakhir ada bagian variabel yang berisi penjelasan tentang variabel
yang dibutuhkan dalam memprediksi benda langit. Tampilannya sebagai
berikut
C–1
69
C–1