Anda di halaman 1dari 79

LAPORAN AKHIR

STUDI INDEPENDEN BERSERTIFIKAT


Foundations of AI and Life Skills for Gen-Z
Di Orbit Future Academy

Diajukan untuk memenuhi persyaratan kelulusan


Program MSIB MBKM

Oleh:
Fauzan Mahaditya / 21090119140130

PROGRAM STUDI S1 TEKNIK PERKAPALAN


FAKULTAS TEKNIK
UNIVERSITAS DIPONEGORO
2022
i

Lembar Pengesahan Program Studi S1 Teknik Perkapalan


Fakultas Teknik Universitas Diponegoro

Foundations of AI and Life Skills for Gen-Z


Di Orbit Future Academy

oleh :
Fauzan Mahaditya / 21090119140130

disetujui dan disahkan sebagai


Laporan Magang atau Studi Independen Bersertifikat Kampus Merdeka

Semarang, 17 Juni 2022


Pembimbing Magang atau Studi Independen Program Studi S1 Teknik Perkapalan
Fakultas Teknik Universitas Diponegoro

Dr. Eng Hartono Yudo, ST, MT

NIP: 197510211999031004

i
ii

Lembar Pengesahan

Foundations of AI and Life Skills for Gen-Z

Di Orbit Future Academy

oleh :
Fauzan Mahaditya / 21090119140130

disetujui dan disahkan sebagai


Laporan Magang atau Studi Independen Bersertifikat Kampus Merdeka

Tangerang, 17 Juni 2022


AI Coach

Annisa Rizki Liliandri


NIP: 2202082

ii
iii

Abstraksi

Program Studi Independen merupakan salah satu bagian dari program


Kampus Merdeka yang bertujuan untuk memberikan kesempatan kepada
mahasiswa untuk mengembangkan potensi diri melalui aktivitas diluar
perkuliahan, akan tetapi tetap diakui sebagai bagian dari perkuliahan.dan
mempelajari kompetensi yang spesifik, praktis, dan tentunya dibutuhkan di masa
depan oleh para stakeholder di dunia pekerjaan. Program Studi Independen ini
dilaksanakan di Orbit Future Academy dengan path Foundations of AI and Life
Skills for Gen – Z. Program Foundations of AI ini memplejarai tentang konsep
dasar dari Artificial Intelligence, Bahasa pemrograman Python, machine learning,
etika dalam berbisnis di dunia pekerjaan dan kiat – kiat menjadi seorang
entrepreneur.
Pada akhir program Studi Independen, penulis mengerjakan proyek akhir
secra berkelompok. Hasil dari proyek akhir ini ialah pembuatan sebuah aplikasi
berbasis Machine Learning (bidang Data Science) yang Bernama “Star
Classification”. Star Classification merupakan aplikasi yang dibuat untuk
mengklasifikasi benda – benda langit berdasarkan kelas galaxy star, dan quasar.
Selain itu, pada aplikasi juga menyajikan informasi seputar Galaxy, Star
(Bintang), dan Quasar (QSO). Aplikasi Star Classification menggunakan
supervised learning dengan algoritma terbaiknya yaitu Random Forest dengan
nilai akurasi sebesar 97,77%, nilai presisi sebesar 97,5%, dan nilai recall sebesar
92%. Selain itu aplikasi ini menggunakan framework Flask yang digunakan untuk
membuat sebuah website aplikasi, serta di deploy menggunakan Heroku.

Kata Kunci: Studi Independen, Artificial Intelligence, Python, Machine Learning,


Star Classification, Random Forest

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

Lembar Pengesahan Teknik Mesin Universitas Tidar.....................................................i


Lembar Pengesahan ................................................................................................... ii
Abstraksi................................................................................................................... iii
Kata Pengantar ......................................................................................................... iv
Daftar Isi .................................................................................................................... v
Daftar Gambar ......................................................................................................... vii
Daftar Tabel .............................................................................................................. ix
BAB I.......................................................................................................................... 1
Pendahuluan .............................................................................................................. 1
I.1 Latar Belakang..................................................................................................... 1
I.2 Lingkup ................................................................................................................ 1
I.3 Tujuan ................................................................................................................. 2
BAB II......................................................................................................................... 3
Orbit Future Academy ................................................................................................ 3
II.1 Struktur Organisasi.............................................................................................. 3
II.2 Lingkup Pekerjaan ............................................................................................... 4
II.3 Deskripsi Pekerjaan ............................................................................................. 5
II.4 Jadwal Kerja ........................................................................................................ 6
BAB III ........................................................................................................................ 7
STAR CLASSIFICATION ................................................................................................ 7
III.1 Latar Belakang..................................................................................................... 7
III.2 Proses Pelaksanaan Project Akhir ....................................................................... 9
III.3 Hasil Proyek Akhir ............................................................................................. 25
BAB IV ..................................................................................................................... 34
Penutup ................................................................................................................... 34
IV.1 Simpulan ........................................................................................................... 34
IV.2 Saran ................................................................................................................. 34
BAB V ...................................................................................................................... 35
Referensi ................................................................................................................. 35
BAB VI Lampiran A. TOR ........................................................................................... 37

v
vi

BAB VII Lampiran B. Log Activity ............................................................................... 39


BAB VIII Lampiran C. Dokumen Teknik ...................................................................... 45
VIII.1 AI Project Cycle ............................................................................................. 45
VIII.2 Profil Tim dan Pembagian Tugas ................................................................... 64
VIII.3 Deskripsi Aplikasi........................................................................................... 65
VIII.4 Link Aplikasi ................................................................................................... 69

vi
vii

Daftar Gambar

Gambar 2. 1 Logo Orbit Future Academy .......................................................................... 3


Gambar 2. 2 Struktur Organisasi OFA................................................................................ 4

Gambar 3. 1Perbandingan alpha vs redshift terhadap kelas Galaxy ................................. 25


Gambar 3. 2 Perbandingan alpha vs redshift terhadap kelas star ...................................... 26
Gambar 3. 3 Perbandingan alpha vs redshift terhadap kelas QSO .................................... 26
Gambar 3. 4 perbandingan green filter vs red filter terhadap kelas Galaxy ...................... 27
Gambar 3. 5 perbandingan green filter vs red filter terhadap kelas star ............................ 27
Gambar 3. 6 perbandingan green filter vs red filter terhadap kelas QSO ......................... 28
Gambar 3. 7 Distribusi kelas ............................................................................................. 28

Gambar 8. 1 sumber dataset .............................................................................................. 46


Gambar 8. 2 Memanggil dataset ....................................................................................... 47
Gambar 8. 3 memeriksa data............................................................................................. 47
Gambar 8. 4 preprocessing pada data testing dan training ................................................ 48
Gambar 8. 5 script untuk statistik deskriptif ..................................................................... 48
Gambar 8. 6 script untuk melihat korelasi antar kolom .................................................... 49
Gambar 8. 7 script variasi kolom pada dataset.................................................................. 49
Gambar 8. 8 klasifikasi object langit................................................................................. 49
Gambar 8. 9 script perbandingan antar alpha terhadap redshift pada kelas galaxy ........... 50
Gambar 8. 10 script perbandingan antara alpha terhadap redshift kelas star perbandingan
.......................................................................................................................................... 50
Gambar 8. 11 script perbandingan antara alpha terhadap redshift pada kelas QSO ......... 51
Gambar 8. 12 script perbandingan antara filter hijau terhadap filter merah pada kelas
Galaxy ............................................................................................................................... 51
Gambar 8. 13 script perbandingan antar filter hijau terhadap filter merah pada kelas star
.......................................................................................................................................... 52
Gambar 8. 14 script distribusi kelas berdasarkan klasifikasi object.................................. 52
Gambar 8. 15 script distribusi kelas berdasarkan klasifikasi objek................................... 53
Gambar 8. 16 script import library .................................................................................... 54
Gambar 8. 17 import data testing dan training .................................................................. 55
Gambar 8. 18 tahap preprocessing menggunakan StandardScaler.................................... 55
Gambar 8. 19 import model Random Forest ..................................................................... 56
Gambar 8. 20 script melihat best parameter menggunakan gridSearchCV....................... 56
Gambar 8. 21 script model data testing dan training......................................................... 56
Gambar 8. 22script menampilkan hasil akurasi model yang digunakan ........................... 57
Gambar 8. 23 script menampilkan hasil confusion matrix pada model yang digunakan .. 57
Gambar 8. 24 script menampilkan hasil classification report pada model yang digunakan
.......................................................................................................................................... 58
Gambar 8. 25 script membuat head pada website ............................................................. 59

vii
viii

Gambar 8. 26 script membuat body pada website ............................................................ 59


Gambar 8. 27 script membuat masthead pada website ..................................................... 59
Gambar 8. 28 script membuat prediction pada website .................................................... 60
Gambar 8. 29 script membuat prediction pada website .................................................... 60
Gambar 8. 30 script membuat about section pada website ............................................... 61
Gambar 8. 31 script membuat contact section pada website............................................. 61
Gambar 8. 32 script membuat footer dan copyright section pada website ........................ 62
Gambar 8. 33 script mengimport bootrap ......................................................................... 62
Gambar 8. 34 script import library, membaca model, dan tampilan website .................... 63
Gambar 8. 35 membuat prediksi berdasarkan klasifikasi benda langit ............................. 63
Gambar 8. 36 tampilan aplikasi Star Classification .......................................................... 64

Gambar 8.1.3. 1 User interface ......................................................................................... 66


Gambar 8.1.3. 2 Input ....................................................................................................... 67
Gambar 8.1.3. 3 About ...................................................................................................... 68
Gambar 8.1.3. 4 penjelasan variabel ................................................................................. 68

viii
ix

Daftar Tabel

Tabel 2. 1 Agenda Kelas ..................................................................................................... 6

Table 3. 1 Multiclass Confusion Matrix ........................................................................... 22


Table 3. 2 Perbandingan Akurasi Tiap Algoritma ............................................................ 32

Tabel 7. 1 Log Activity ..................................................................................................... 39

Tabel 8.2. 1 Profil dan pembagian tugas ........................................................................... 65

ix
1

BAB I

Pendahuluan

I.1 Latar Belakang

Kampus Merdeka merupakan salah satu program yang dilaksanakan oleh


Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi Republik Indonesia
yang bertujuan untuk memberikan peluang dan kesempatan untuk seluruh
mahasiswa/i di Indonesia untuk mengembangkan kemampuannya sesuai minat dan
bakat dengan terjun langsung ke dunia kerja sebagai persiapan karier masa depan.

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.

Orbit Future Academy adalah penyedia pembelajaran AI untuk semua


orang, baik yang memiliki latar belakang IT maupun non-IT untuk menjadi
programmer ataupun engineer AI dengan kualitas yang mumpuni.

I.2 Lingkup

Peserta SIB akan dikelompokkan menjadi beberapa kelas, di mana nantinya

akan menempuh dua pembelajaran, yaitu pembelajaran AI dan Life Skill.

Pembelejaran AI mempelajari domain AI yang terdiri dari Natural Language


Processing, Data Science, dan Computer Vision. Life Skill mempelajari mengenai
personal dan professional skill. Sedangkan lingkup project yang menjadi objek
MSIB yang dikerjakan adalah alam semesta. Benda – benda Langit di alam
semesta miliaran jumlahnya sehingga sulit untuk membedakannya. Oleh karena itu
1
2

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

Tujuan dari program Foundation of AI dan Life Skill di Orbit Future


Academy adalah sebagai berikut :

1. Mengerti bahasa pemrogaman Python sebagai fondasi program AI


2. Mengetahui teknologi khusunya AI,
3. Mampu membuat program AI,
4. Meningkatkan soft skill melalui program Life Skill,

2
3

BAB II

Orbit Future Academy

II.1 Struktur Organisasi

Gambar 2. 1 Logo Orbit Future Academy


Orbit Future Academy (OFA) didirikan pada tahun 2016 dengan tujuan
untuk meningkatkan kualitas hidup melalui inovasi, edukasi, dan pelatihan
keterampilan. Label atau brand Orbit merupakan kelanjutan dari warisan mendiang
Prof. Dr. Ing. B. J. Habibie (presiden Republik Indonesia ke-3) dan istrinya, Dr.
Hasri Ainun Habibie. Mereka berdua telah menjadi penggerak dalam mendukung
perkembangan inovasi dan teknologi pendidikan di Indonesia. OFA mengkurasi
dan melokalkan program/kursus internasional untuk upskilling atau reskilling
pemuda dan tenaga kerja menuju pekerjaan masa depan. Hal ini sesuai dengan
slogan OFA, yakni “Skills-for-Future-Jobs”.

Visi :

Memberikan pembelajaran berbasis keterampilan transformatif terbaik untuk para


pencari kerja & pencipta lapangan kerja.

Misi :

3
4

1. Membangun jaringan Orbit Transformation Center (OTC) secara nasional


untuk menyampaikan kurikulum keterampilan masa depan berbasis
sertifikasi melalui Platform Konten Digital.
2. Secara proaktif bekerja dengan pemerintah & organisasi dengan mengubah
tenaga kerja mereka agar sesuai dengan perubahan pekerjaan yang terjadi
karena Industri 4.0.
3. Melatih pemuda dengan keterampilan kewirausahaan & mencocokkan
mereka dengan peluang masa depan yang muncul di berbagai industri.
4. Menghubungkan jaringan inkubator dan akselerator yang dikurasi ke
industri, investor, dan ekosistem start-up global.

Struktur organisasi OFA dapat dilihat pada gambar berikut

Gambar 2. 2 Struktur Organisasi OFA


II.2 Lingkup Pekerjaan
Seorang fasilitator akan mendampingi kurang lebih 40 peserta MSIB
(student) dalam satu kelas. Terdapat dua jenis fasilitator, yakni:
a. Homeroom Coach
Homeroom coach bertugas menyampaikan materi tentang dasar-dasar
AI, memberikan penilaian pada student, dan mengarahkan student saat
pengerjaan Proyek Akhir (PA).

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.

II.3 Deskripsi Pekerjaan


Berikut adalah deskripsi pekerjaan student sebelum pengerjaan PA:
a. Mengikuti pre-test.
b. Mengikuti kelas sesi pagi pada pukul 08.00 hingga 11.30 WIB.
c. Mengikuti kelas sesi siang pada pukul 13.00 hingga 16.30 WIB.
d. Mengulang materi yang telah disampaikan di kelas sesi pagi dan siang,
setelah kelas sesi siang, selama 1 jam (self-study)
e. Mengerjakan latihan individu atau kelompok yang diberikan oleh
homeroom atau domain coach saat kelas berlangsung.
f. Mengerjakan tugas yang diberikan homeroom atau domain coach hingga
batas waktu tertentu.
g. Mengerjakan mini project yang diberikan homeroom atau domain coach
hingga batas waktu tertentu
h. Mengikuti post-test.

Student memiliki peran sebagai pembuat model dan deploy aplikasi selama
pengerjaan PA, dengan deskripsi pekerjaan sebagai berikut :

a. Mengerjakan proses modelling untuk menemukan algoritma terbaik yang


akan digunakan dalam project Akhir
b. Melakukan desain UI/UX untuk membuat kodingan tampilan web aplikasi
yang akan digunakan
c. Melakukan deploy aplikasi

5
6

II.4 Jadwal Kerja


Program ini berlangsung setiap hari kerja (Senin sampai dengan Jumat)
selama 8 jam per harinya, dengan rincian sebagai berikut:

Pukul (WIB) Durasi (Jam) Aktivitas


08.00 s.d. 11.30 3.5 Kelas Sesi Pagi
13.00 s.d. 16.30 3.5 Kelas Sesi Siang
16.30 s.d. 17.30 1 Self-Study
Tabel 2. 1 Agenda Kelas
Program ini berlangsung dari bulan Februari 2022 sampai dengan bulan Juli 2022.

6
7

BAB III

STAR CLASSIFICATION

III.1 Latar Belakang


Kegiatan Studi Studi Independen Bersertifikat pada program Foundation of
AI and Life Skills for Gen-Z oleh Orbit Future Academy adalah program pelatihan
Artificial Intelligence secara online u bertujuan bukan hanya untuk
memperkenalkan teknologi AI, tapi juga untuk kemampuan bisa mengangkat
perangkat AI, sehingga bisa membuat sesuatu produk yang menciptakan dampak
sosial. Berfokus pada komponen utama AI seperti Data Science, Natural Language
Processing and Computer Vision.

Project yang dihasilkan dari kegiatan Studi Independen Bersertifikat ini


berlatar belakang tentang alam semesta. Alam semesta adalah tempat yang selama
ini kita tempati, dapat terlihat secara langsung dengan mata telanjang ataupun
memerlukan alat bantu seperti teleskop [1]. Benda langit di alam semesta ini banyak
sekali jumlahnya, ada yang bisa memancarkan cahayanya dengan sendirinya dan
ada yang membutuhkan bantuan benda langit lainnya untuk memancarkan
cahayanya. Bintang merupakan benda langit yang dapat memancarkan cahayanya
sendiri. Sedangkan matahari, planet, satelit, komet, meteor, steroid, dan asteroid,
hanyalah satu dari jutaan bintang-bintang yang bergabung dalam kelompok bintang
yang disebut galaksi. Oleh karena itu galaksi adalah kumpulan dari bintang-bintang
[2]. Disamping itu, galaksi memiliki sebuah inti aktif yang disebut dengan kuasar
dimana kuasar ini dapat memancarkan energi yang amat besar.

Faktanya, banyak sekali terdapat bintang di langit bahkan mencapai


milyaran bintang. Bintang-bintang ini tidak semua dapat disaksikan dengan mata
telanjang. Selain itu, beberapa bintang-bintang di langit memiliki beberapa
kesamaan dengan bintang yang lain, baik dari segi ukuran, massa, warna, pola
spektrum, dan lain-lain. Oleh karena itu untuk mempermudah dalam mengetahui
jenis bintang perlu dilakukan klasifikasi bintang.

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].

Dari berbagai algoritma yang ada pada Machine Learning digunakan


algoritma Random Forest pada pengklasifikasian bintang ini Random Forest adalah
algoritma supervised learning yang digunakan untuk menyelesaikan masalah yang
berhubungan dengan klasifikasi, regresi, dan sebagainya. Algoritma ini berupa
kombinasi dari beberapa tree predictors atau bisa disebut decision trees dimana
setiap tree bergantung pada nilai random vector yang dijadikan sampel secara bebas
dan merata pada semua tree dalam forest tersebut [5]. Sudah banyak penelitian yang
membuktikan bahwa Random Forest memiliki performa prediksi yang baik dalam
klasifikasi di berbagai bidang

Dengan menggunakan Bahasa pemrograman Python dan algoritma dengan


akurasi yang baik akan dapat mengklasifikasikan bintang kedalam gelas bintang,
galaksi, dan kuasar dengan baik. Setelah mendapatlan model terbaik, model akan
diimplementasikan kedalam Web App yaitu Flask.

8
9

III.2 Proses Pelaksanaan Project Akhir

III.2.1 Diagram Alir


Diagram alir pada project akhir kami adalah:

mulai

Lakukan problem
scoping

Download dataset

data akuisisi

Import library pandas

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

Import library pandas,


itertools, numpy,
matplotlib, stats, library
sckitlearn

10
11

Lakukan preprocessing data


menggunakan LabelEncoder dan
StandardScaler

Testing menggunakan beberapa


algoritma

KNN Random SVM Decision


forest Tree

Lihat akurasi dari masing – masing


algortima

Gunakan algoritma
dengan nilai akurasi
tertinggi

11
12

Didapat algoritma tertinggi yaitu


random forest

Simpan kodingan dalam


format pickle

deployment

Buat base html

Import requirements dan buat


framework menggunakan Flask

Deploy menggunakan Heroku

Selesai

12
13

III.2.2 AI Project Cycle

AI Project Cycle merupakan sebuah tahapan proses untuk


memudahkan kita dalam membuat suatu project berbasis Artificial
Intelligence. Tahapan - tahapan yang terdapat didalam AI Project Cycle ini
adalah:
1. Problem Scooping
Problem scoping pada project ini mengacu pada identifikasi
serta analisis masalah menggunakan formula 4W. Project ini
difokuskan untuk orang - orang yang ingin mempelajari dan
mengklasifikasikan benda-benda langit dimana benda langit terdiri
memiliki jenis dan karakter yang berbeda - beda. Banyak sekali
benda-benda langit yang terlihat sama padahal berbeda sehingga
sulit membedakannya antara objek yang satu dengan yang lainnya.
Oleh karena itu, kami termotivasi untuk membuat sebuah aplikasi
berbasis web sederhana mengenai klasifikasi objek benda langit
berdasarkan kelas galaksi, QSO, Star dengan 18 fitur yang berbeda.

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

1. U (ultraviolet) = intensitas cahaya dengan flux 3543 Amstrong


2. G (green) = intensitas cahaya dengan flux 4770 Amstrong
3. R (red) = intensitas cahaya dengan flux 6231 Amstrong
4. I (near - infrared) = intensitas cahaya dengan flux 7625 Amstrong
5. Z (infrared) = intensitas cahaya dengan flux 9134 Amstrong
6. Redshift = pengukuran objek berdasarkan pergerakan relatif
objek terhadap bumi (dilihat dari peningkatan Panjang gelombang)
7. Class = Klasifikasi objek berdasarkan galaxy, quarsar
(QSO), dan star

Dimana, UGRIZ merupakan kepanjangan dari U - band, C -


band, R - band, I - band, dan Z - band. UGRIZ ini merupakan filter
kamera SDSS dari untuk sistem fotometri pada saat pengambilan
data citra. Filter ini dirancang untuk membiarkan cahaya di sekitar
panjang gelombang tertentu masuk. Filter bekerja dengan
menghalangi cahaya di semua panjang gelombang[8].
Fitur kelas dibagi menjadi 3 parameter, yaitu kelas galaxy,
kelas quasar (QSO), dan kelas star. Galaxy merupakan kumpulan
gas besar, debu, dan milliaran bintang. Sebuah galaxy disatukan oleh
gravitasi [9]. Galaksi kita (galaksi bima sakti) memiliki lubang
hitam supermasif di tengahnya. Setiap galaxy, memiliki
karakteristik yang berbeda karena sistem pembentukan dan
revolusinya. Beberapa galaxy muda memiliki sejumlah gas dan debu
di pusatnya yang membentuk piringan akresi dan berputar ke dalam
lubang hitam supermasif. Semakin banyak material yang jatuh ke
dalam piringan akresi, material tersebut akan dipanaskan oleh fiksi
dan efek gravitasi ke titik pada saat ia memancarkan energi dalam
jumlah besar (quasar) [10].
Quasar atau biasa dikenal dengan QSO (Quasar – Stellar
Object) merupakan inti galaksi aktif yang memiliki energi yang kuat
dan besar. Akan tetapi, karena jaraknya yang sangat jauh dari bumi,

14
15

quasar akan terlihat seperti bintang jika dilihat melalui teleskop.


Satu quasar dapat memancarkan cahaya 100 kali lebih banyak dari
galaksi bima sakti. Perbedaan antara galaxy dan quasar yaitu qusar
hanya ada saat material yang cukup jatuh ke dalam piringan akresi.
Setelah material habis, galaksi aktif menjadi galaksi biasa. Quasar
yang diamati dengan jarak milyaran tahun cahaya dapat
dianalogikan seperti galaksi muda yang terlihat di alam semesta
[11]. Star (bintang) adalah benda langit yang memancarkan cahaya
yang disebabkan oleh reaksi fusi nuklir yang menghasilkan energi
yang terjadi pada intinya. Komposisi bintang Sebagian besar terdiri
dari hidrogen dan helium yang menghasilkan cahaya dan reaksi fusi
nuklir [12] Selain itu, terdapat beberapa fitur lain, yaitu:
1. Obj_ID = identifikasi objek dalam catalog image yang digunakan
oleh CAS
2. Spec_obj_ID = ID unik untuk objek spektroskopi
3. Run_ID = mengidentifikasi pemindaian objek tertentu
4. Rerun_ID = menentukan gambar yang akan diproses
5. Camcol = kolom kamera untuk mengidentifikasi scanline pada run
6. field = deskripsi bidang pada gambar
7. Plate = nomor piringan
8. Mjd = waktu dalam julian date
9. Fiberid = mengarahkan cahaya ke titik fokus pada setiap
pengamatan
10. Alpha = sudut Right Ascension (Epoch J2000)
11. Delta = sudut Deklinasi (Epoch J2000)

Setelah kita mendownload Dataset, kita panggil Dataset


tersebut kedalam script menggunakan library pandas Invalid source
specified.

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.

4. EDA (Exploratory Data Analysis)


Analisis Data Eksplorasi adalah sebuah proses untuk
memahami data melalui ringkasan statistik dan visualisasi grafik
menggunakan package atau library python seperti Matplotlib,
Pandas, dan Seaborn. Pada EDA ini, kita mencari jumlah
variabel, data yang hilang, nilai mean, count, simpangan baku,
nilai minimum dan maksimum (menggunakan formula
df.describe()). Setelah itu, visualisasi data berdasarkan
klasifikasi objeknya. Untuk melakukan visualisasi data, kita
harus mengelompokkan beberapa data kedalam kelas Star,
Galaxy, dan QSO. Lalu, kita dapat melakukan plotting grafik
perbandingan parameter objek berdasarkan klasifikasi kelas
menggunakan library Matplotlib dan seaborn. Pada Visualisasi
data ini, hasil yang kita peroleh diantaranya:

16
17

a. Perbandingan antara alpha terhadap redshift pada kelas Galaxy


b. Perbandingan antara alpha terhadap redshift pada kelas Star
c. Perbandingan antara alpha terhadap redshift pada kelas QSO
d. Perbandingan antara filter hijau terhadap filter merah pada kelas
Galaxy
e. Perbandingan antara filter hijau terhadap filter merah pada kelas Star
f. Perbandingan antara filter hijau terhadap filter merah pada kelas
QSO
g. Distribusi Kelas berdasarkan klasifikasi objek

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

n_neighbors atau nilai k yang digunakan adalah 1, 2, 3,


4, 5, 6, 7, 8, 9, 10. Untuk mendapatkan nilai terbaik
dilakukan optimasi parameter menggunakan
GridSearchCV. CV yang digunakan adalah 3,
walaupun menggunakan angka 3 tetapi sudah dapat
menghasilkan akurasi yang tinggi.
• Metric
Metrics adalah ruang fitur di mana jarak antara
semua anggota set didefinisikan. Metrics yang
dibandingkan dalam pemodelan ini adalah Euclidean
dan Manhattan. Kedua pengukuran ini merupakan
pengukuran yang umum dipakai pada algoritma k-
means untuk menghasilkan pengeklasifikasian.
Euclidean Distance merupakan perhitungan jarak antar
titik sedangkan Manhattan adalah jarak yang diukur
tegak lurus dari satu titik ke titik yang lain.

● Weights

Parameter weights adalah parameter yang lebih


mempertimbangkan pembobotan pada atribut untuk
meningkatkan akurasi klasifikasi. Weights yang
dibandingkan dalam pemodelan ini adalah uniform dan
distance. Uniform weights adalah semua titik di setiap
lingkungan diberi bobot yang sama sedangkan
Distance adalah tetangga yang lebih dekat dari titik
kueri yang akan memiliki pengaruh yang lebih besar
daripada tetangga yang lebih jauh.

18
19

b. Algoritma Support Vector Machines (SVM)

Support Vector Machine (SVM) adalah algoritma


supervised yang berupa klasifikasi dengan cara membagi
data menjadi dua kelas menggunakan garis vektor yang
disebut hyperplane. Salah satu kelebihan yang dimiliki
metode SVM adalah penanganan error pada set data
training yang menggunakan Structural Risk Minimization
(SRM). SRM dikatakan lebih baik karena tidak hanya
meminimalkan error yang terjadi, tetapi meminimalkan
factor - faktor lainnya. Dalam modelling menggunakan
SVM, parameter yang kami gunakan yaitu sebagai berikut:

• C

C adalah parameter yang memberitahu optimasi


SVM seberapa banyak ingin menghindari kesalahan
klasifikasi pada pelatihan. C ini menentukan
pengaruh kesalahan klasifikasi pada fungsi objektif.
Dalam pemodelan C yang kami gunakan adalah 1,
10, 100 dan 1000.

• 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

Gamma ini adalah koefisien kernel yang digunakan


untuk rbf, poly atau sigmoid. Di atas sudah dijelaskan
kernel yang digunakan adalah RBF, koefisien
gamma nya adalah 0.1; 0.2; 0.3.

c. Algoritma Decision Tree

Decision Tree atau pohon keputusan merupakan


algoritma dengan menggunakan teknik “membagi dan
menaklukkan” untuk membagi ruang pencarian masalah
menjadi himpunan masalah. Proses pada decision tree
adalah mengubah bentuk data tabel menjadi sebuah model
tree. Model tree akan menghasilkan rule dan
disederhanakan). Dalam pemodelan menggunakan
Decision Tree, parameter yang kami gunakan yaitu sebagai
berikut:

• Max Depth
Max depth adalah kedalam maksimum teoritis yang
dapat dicapai pohon keputusan. Max depth yang
digunakan yaitu 2, 3, 5, 10 dan 20

• Min Samples Leaf


Min samples leaf adalah jumlah minimum sampek
yang diperlukan untuk membagi simpul internal.
Dalam pemodelan min sample leaf yang digunakan
adalah 5, 10, 20, 50 dan 100.

20
21

● Criterion

Criterion adalah fungsi untuk mengukur kualitas


split. Kriteria yang digunakan adalah “gini” untuk
ketidakmurnian dan “entropi” untuk perolehan
informasi.

d. Algoritma Random Forest

Random Forest adalah sekumpulan pohon keputusan


(decision tree) yang digunakan untuk klasifikasi dan
prediksi suatu data dengan memasukkan input ke bagian
akar yang berada di atas kemudian turun ke bagian daun
yang berada dibawah. Dalam modelling dengan algoritma
random forest kami menggunakan parameter yaitu sebagai
berikut:

• 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:

● TP (True Positive) merupakan banyaknya data yang kelas


aktualnya sama dengan kelas prediksinya.
● FN (False Negative) merupakan total dari seluruh baris
yang ditunjuk kecuali TP yang dicari.
● FP (False Positive) merupakan total dari seluruh kolom
yang ditunjuk kecuali TP yang dicari.
● TN (True Negative) merupakan total dari seluruh kolom
dan baris selain yang ditunjuk.

Dengan dasar tabel Confusion Matrix kemudian dapat


dilakukan penghitungan nilai akurasi, precision, dan recall
(classification report). Ketiga matriks tersebut sangat
bermanfaat untuk mengukur performa dari classifier atau
algoritma yang digunakan untuk melakukan prediksi.

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

aplikasi dan tampilan dari suatu web. Dengan menggunakan


Flask dan bahasa Python, pengembang dapat membuat sebuah
web yang terstruktur dan dapat mengatur behaviour suatu web
dengan lebih mudah. Flask termasuk pada jenis microframework
karena tidak memerlukan suatu alat atau pustaka tertentu dalam
penggunaannya.
Sebagian besar fungsi dan komponen umum seperti validasi
form, database, dan sebagainya tidak terpasang secara default di
Flask. Hal ini dikarenakan fungsi dan komponen-komponen
tersebut sudah disediakan oleh pihak ketiga dan Flask dapat
menggunakan ekstensi yang membuat fitur dan komponen-
komponen tersebut seakan diimplementasikan oleh Flask
sendiri. Selain itu, meskipun Flask disebut sebagai
microframework, bukan berarti Flask mempunyai kekurangan
dalam hal fungsionalitas.
Microframework disini berarti bahwa Flask bermaksud
untuk membuat core dari aplikasi ini sesederhana mungkin tapi
tetap dapat dengan mudah ditambahkan. Dengan begitu,
fleksibilitas serta skalabilitas dari Flask dapat dikatakan cukup
tinggi dibandingkan dengan framework lainnya.

8. Hambatan Pengerjaan Project Akhir


Adapun hambatan - hambatan dalam pengerjaan project akhir ini
adalah :
a. terjadi miskomunikasi antar anggota kelompok
b. mengalami error saat pembuatan model dan aplikasi
c. kurangnya kerjasama tim
d. Proses running yang lambat karena jumlah dataset yang
digunakan banyak

24
25

9. Solusi Dalam Penyelesaian Hambatan Hengerjaan Project


khir
solusi dalam penyelesaian masalah ini adalah:
a. meningkatkan komunikasi antar tim lewat chat whatsapp dan
mengadakan meeting online minimal 1 kali per minggu
b. meningkatkan ketelitian pada saat pembuatan aplikasi
c. bertanya kepada homeroom coach jika terjadi error saat
pengolahan dan pembuatan aplikasi
d. meningkatkan kerjasama tim dengan cara membagi tugas
tiap individu

III.3 Hasil Proyek Akhir


III.3.1 Hasil Pemodelan AI

1. Exploratory Data Analysis

Pada visualisasi data, kita menghasilkan beberapa grafik,


diantaranya:
a. Perbandingan antara alpha terhadap redshift pada kelas
Galaxy

Gambar 3. 1Perbandingan alpha vs redshift terhadap kelas


Galaxy

25
26

b. Perbandingan antara alpha terhadap redshift pada kelas


Star

Gambar 3. 2 Perbandingan alpha vs redshift


terhadap kelas star
c. Perbandingan antara alpha terhadap redshift pada kelas
QSO

Gambar 3. 3 Perbandingan alpha vs redshift


terhadap kelas QSO
Pada gambar 3.1 dan gambar 3.3, dapat dilihat bahwa
persebaran objek terbanyak pada kelas galaxy dan QSO berada
di rentang sudut RA sebesar 0 - 50 , 100 - 250 , hingga 300 -
350 dengan rentang nilai redshit sebesar 0 – 200 (untuk kelas
galaxy) dan 0 – 7 (untuk kelas QSO). Berbeda halnya dengan
kelas Star yang dapat kita lihar pada gambar 3.2, persebaran
objek yang diperoleh tidak terlalu banyak dan berada di tengah
– tengah dengan rentang nilai sudut RA sebesar 0 - 50 , 100 -

26
27

250 , hingga 300 - 350 dan rentang nilai redshift sebesar (-


0.04) – (+0.04).

d. Perbandingan antara filter hijau terhadap filter merah


pada kelas Galaxy

Gambar 3. 4 perbandingan green filter vs red filter


terhadap kelas Galaxy

e. Perbandingan antara filter hijau terhadap filter merah


pada kelas Star

Gambar 3. 5 perbandingan green filter vs red filter


terhadap kelas star

27
28

f. Perbandingan antara filter hijau terhadap filter merah


pada kelas QSO

Gambar 3. 6 perbandingan green filter vs red filter


terhadap kelas QSO
Pada gambar 3.4 dan gambar 3.5, dapat dilihat bahwa
persebaran objek yang diperoleh dari perbandingan filter
hijau terhadap filter merah menunjukkan peningkatan yang
cukup signifikan dan persebaran objeknya relatif menyebar.
Sedangkan, pada gambar 3.6 menunjukkan bahwa
persebaran objek relatif linear dan tidak menyebar secara
acak.

g. Distribusi Kelas berdasarkan klasifikasi objek

Gambar 3. 7 Distribusi kelas

28
29

Pada gambar 3.7 dapat dilihat bahwa jumlah objek


terbanyak diperoleh oleh kelas Galaxy yaitu berkisar 6000 data
dan QSO dengan jumlah data berkisar 2500 data. Sedangkan,
jumlah objek terendah diperoleh oleh kelas Star yaitu berkisar
2000 data.

2. Performa Model dan Evaluasi


Pada bab 3.2 diatas sudah dijelaskan modelling mencoba
menggunakan algoritma K Neighbors Classifier (KNN), Support
Vector Machines (SVM), Decisions Tree dan Random Forest.
Sebelum dilakukan pemodelan, dilakukan tahap preprocessing
yaitu standar scaler dan label encoder. Standard Scaler adalah class
dari sklearn untuk melakukan normalisasi data agar data yang
digunakan tidak memiliki penyimpangan yang besar. Sedangkan
Label encoder berfungsi untuk mengubah setiap nilai dalam kolom
menjadi angka yang berurutan.
Selanjutnya untuk hasil hypertuning parameter dengan
GridSearchCV, dihasilkan sebagai berikut:
a. Algoritma K-Nearest Neighbor (KNN)

Parameter yang digunakan yaitu sebagai berikut:


1. N neighbors: Dengan n neighbors atau nilai k yang
digunakan antara 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. Dari
keseluruhan nilai tersebut didapat bahwa nilai k terbaiknya
adalah 6
2. Metrics: Metrics yang dibandingkan dalam pemodelan ini
adalah Euclidean dan Manhattan. Dari kedua metric dengan
Hyperparameter menggunakan GridSearchCV didapatkan
metric terbaik yaitu Manhattan
3. Weights: Weights yang dibandingkan dalam pemodelan ini
adalah uniform dan distance. Dengan Hyperparameter
menggunakan GridSearchCV didapatkan weights terbaik
yaitu Distance.

29
30

Dengan menggunakan parameter terbaik yang telah


dioptimasi dengan GridSearchCV didapatkan akurasi jika
menggunakan algoritma KNN sebesar 94,87%.

b. Support Vector Machines (SVM)

Parameter yang digunakan yaitu sebagai berikut:


1. C: Dalam pemodelan C yang kami gunakan adalah 1, 10,
100 dan 1000. Setelah running menggunakan
gridsearchSVM didapatkan nilai C terbaik adalah 1000.
2. Kernel: Pada pemodelan ini menggunakan metode SVM
menggunakan kernel RBF
3. Gamma: Koefisien gamma yang digunakan untuk kernel
RBF adalah 0.1, 0.2, dan 0.3. Setelah di running dengan
grid_searchSVM, nilai gamma terbaik adalah 0.2
Dengan menggunakan parameter terbaik yang telah dioptimasi
dengan GridSearcSVM di dapatkan akurasi jika menggunakan
algoritma SVM sebesar 97,25%.

c. Decision Tree

Parameter yang digunakan yaitu sebagai berikut:


1. Max Depth: Max depth yang digunakan yaitu 2, 3, 5, 10
dan 20. Menggunakan GridSearchCV di dapatkan max
depth terbaik yaitu 20
2. Min Samples Leaf: Dalam pemodelan min sample leaf
yang digunakan adalah 5, 10, 20, 50 dan 100.
Menggunakan GridSearchCV di dapatkan min samples
leaf terbaik yaitu 20.
3. Criterion: Kriteria yang digunakan adalah “gini” untuk
ketidakmurnian dan “entropi” untuk perolehan informasi.

30
31

Dengan GridSearchCV diketahui fungsi terbaik pada


criterion ini adalah entropy

Dengan menggunakan parameter terbaik yang telah


dioptimasi dengan GridSearcDTC di dapatkan akurasi jika
menggunakan algoritma DT sebesar 97,50%.

d. Random Forest

Parameter yang digunakan yaitu sebagai berikut:


1. n estimator: Pada pemodelan dengan random forest kami
menggunakan n estimator sebesar 200
2. Criterion: Kriteria yang digunakan adalah gini, log_loss
dan entropi. Menggunakan GridSearchCV didapatkan
parameter terbaik untuk criterion adalah gini.
Dengan menggunakan parameter terbaik yang telah
dioptimasi dengan GridSearchCV didapatkan akurasi jika
menggunakan algoritma Random Forest sebesar 97,77%.

Berdasarkan penjelasan keempat algoritma yang telah dibahas diatas


yaitu tentang Hypertuning Parameter menggunakan GridSearchCV
didapatkan perbandingan akurasi untuk setiap algoritma dapat dilihat
pada table di bawah ini:

Algoritma Parameter Metric / Criteria Akurasi Presisi Recall


K– • N_neighbors • Euclidean, 94,87 % 95,7% 89,3%
Nearest • Weights Manhattan
Neighbors • Uniform,
distance
SVM •C • RBF 97,25 % 97,3% 91,1%
• Kernel

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

Dari tabel dapat dilihat algoritma yang memiliki akurasi terbesar


adalah Random Forest. Oleh karena itu pada project Star Classification
ini kami menggunakan algoritma Random Forest.

III.3.2 Hasil Pengembangan Aplikasi

Aplikasi yang dibuat adalah aplikasi yang mengunakan machine


learning berbasis web. Pengembangan atau deploy aplikasi ini terdiri dari
beberapa langkah meliputi planning (perencanaan), development
(pengembangan), deployment (penerapan) dan monitoring (pemantauan).
Deployment aplikasi star classification ini berbasis web, maka di hosting pada
local server. Pengembangan aplikasi yaitu menggunakan Flask, lalu diterapkan
dalam Heroku. Berikut ini adalah tampilan aplikasi yang dikembangkan.

32
33

III.3.3 Kelebihan dan Kekurangan Aplikasi

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

III.3.4 Rencana Pengembangan Aplikasi

Aplikasi ini dapat dikembangkan dengan cara menambahkan


beberapa fitur seperti penambahan dataset benda - benda langit, klasifikasi
benda langit berdasarkan parameter lain, serta tampilan website yang lebih
baik, kreatif, unik, dan informatif. Selain itu, aplikasi ini juga dapat
dikembangkan lebih baik dengan menambahkan informasi seputar
astronomi, penyajian data - data astronomi.

33
34

BAB IV

Penutup

IV.1 Simpulan

Simpulan setelah menempuh pembelajaran di Orbit Future Academy dan


pengerjaan project akhir adalah sebagai berikut :

1. Aplikasi AI dapat dibuat dari awal atau menggunakan model yang telah
disediakan oleh seseorang atau organisasi tertentu.

2. Pembuatan AI diperlukan riset untuk menemukan algoritma dan


parameter yang sesuai.

3. Algoritma yang paling sesuai untuk aplikasi star classification kami


adalah algoritma random forest dengan akurasi sebesar 97,7%.

IV.2 Saran

1. Penjelasan mengenai library yang digunakan pada aplikasi AI lebih


diperjelas agar peserta lebih paham.

2. Learning Management System diperbaiki agar lebih rapi sehingga


nyaman untuk belajar mandiri.

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).

[7] “stellar Classification NN | Kaggle.”


https://www.kaggle.com/code/sainathd/stellar-classification-nn/data (accessed
May 26, 2022).
[8] “SDSS Filters.”
https://skyserver.sdss.org/dr1/en/proj/advanced/color/sdssfilters.asp (accessed
May 26, 2022).
[9] “What Is a Galaxy? | NASA Space Place – NASA Science for Kids.”
https://spaceplace.nasa.gov/galaxy/en/ (accessed May 26, 2022).
[10] “galaxy | Definition, Formation, Types, Properties, & Facts | Britannica.”
https://www.britannica.com/science/galaxy (accessed May 26, 2022).
[11] “EarthSky | What is a quasar?” https://earthsky.org/astronomy-
essentials/definition-what-is-a-quasar/ (accessed May 26, 2022).

35
36

[12] “Stars | Science Mission Directorate.” https://science.nasa.gov/astrophysics/focus-


areas/how-do-stars-form-and-evolve (accessed May 26, 2022).

[13] R. K. Dinata, H. Akbar, and N. Hasdyna, “Algoritma K-Nearest Neighbor dengan


Euclidean Distance dan Manhattan Distance untuk Klasifikasi Transportasi Bus,”
ILKOM Jurnal Ilmiah, vol. 12, no. 2, pp. 104–111, Aug. 2020, doi:
10.33096/ilkom.v12i2.539.104-111.
[14] A. Indriani and E. Novianto, “Weight Adjusted K-Nearest Neighbor dan Minimum
Spanning Tree untuk Information Retrieval System di Perpustakaan STMIK
PPKIA Tarakanita Rahmawati Tarakan,” Seminar Nasional Aplikasi Teknologi
Indormasi, pp. 15–20, 2013.
[15] “sklearn.neighbors.KNeighborsClassifier — scikit-learn 1.1.1 documentation.”
https://scikit-
learn.org/stable/modules/generated/sklearn.neighbors.KNeighborsClassifier.html
(accessed May 26, 2022).
[16] N. H. Murfi, “Support Vector Machine,” Depok, 2018.

[17] N. H. Murfi, “Radial Basis Function Networks,” Depok, 2018.


[18] “sklearn.svm.SVC — scikit-learn 1.1.1 documentation.” https://scikit-
learn.org/stable/modules/generated/sklearn.svm.SVC.html (accessed May 26,
2022).
[19] S. Bahri and A. Lubis, “Metode Klasifikasi Decision Tree Untuk Memprediksi
Juara English Premier League,” vol. 2, no. 1, 2020.
[20] “How to tune a Decision Tree?. Hyperparameter tuning | by Mukesh Mithrakumar
| Towards Data Science.” https://towardsdatascience.com/how-to-tune-a-decision-
tree-f03721801680 (accessed May 26, 2022).

36
37

BAB VI
Lampiran A. TOR

TERM OF REFERENCE (TOR) STUDI INDEPENDEN


BERSERTIFIKAT
FOUNDATION OF AI AND LIFE SKILLS FOR GEN-ZDI ORBIT
FUTURE ACADEMY

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

C. Jadwal dan Tempat Pelaksanaan


Jadwal pelaksanaan tertera dalam tabel berikut:

Pukul (WIB) Durasi (jam) Aktivitas


08.00 s.d. 11.30 3.5 Kelas Sesi Pagi
13.00 s.d. 16.30 3.5 Kelas Sesi Siang
16.30 s.d. 17.30 1 Self-Study

Kelas akan diselenggarakan secara daring melalui aplikasi video conference.

D. Peserta
Peserta program ini adalah mahasiswa yang berasal dari Perguruan Tinggi di
bawah Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi Republik
Indonesia.

E. Uraian Tugas Peserta


Selama mengikuti program ini, peserta diharuskan:
1. Mengikuti program dari awal hingga selesai.
2. Mematuhi aturan program.
3. Mematuhi aturan kelas yang dibuat bersama homeroom atau domain coach.
4. Mengikuti kelas dengan presensi minimal 85%.
5. Membuat laporan harian dan mingguan di website Kampus Merdeka.
6. Menyelesaikan Proyek Akhir (PA) beserta laporannya.

Jakarta, 17 Juni 2022


Homeroom Coach, Peserta Program,

Annisa Rizki Liliandri Fauzan Mahaditya


NIP. 2202082 NIM. 21090119140130

A-1
39

BAB VII Lampiran B. Log Activity

Tabel 7. 1 Log Activity

Minggu/Tgl Kegiatan Hasil


Minggu 1: 21 1. Perkenalan dan preview kegiatan Mengetahui apa aitu
Feb – 25 Feb selama satu minggu python dan dasar-dasar
2022 2. Belajar dasar python syntax python,
3. Mempelajari apa itu AI mengetahui apa itu AI,
4. Menginstall Anaconda sebagai manfaat dan dampaknya,
environment pembuatan aplikasi serta pengaplikasian
AI dalam kehidupan sehari-
5. Mempelajari design thinking dan hari.
system thinking
Minggu 2: 28 Melanjutkan pembelajaran mengenai Memperdalam
Feb – 4 Mar dasar python, mengenal AI, machine pengetahuan syntax
2022 learning, deep learning, dan python seperti print,
mempelajari matematika dasar untuk input, variable, tipe data,
pembelajaran AI dan operator. Mengetahui
apa itu machine learning
dan deep learning.
Memahami mengenai
matematika dasar yang
diperlukan dalam
pembuatan AI.
Minggu 3: 7 Membahas control flow, fungsi, OOP, Mengetahui penulisan if
Mar – 11 Mar dan membuat environment project else, for, while, function,
2022 pada python, pentingnya big data di era class dan pembuatan
industri 4.0, AI ethics, dan langkah- environment pada python
langkah dalam pembuatan AI. menggunakan Anaconda.

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

dasar dari Data Science


yaitu statistic, proses-
proses pada Data
Science, visualisasi data,
domain pada data
science, dan system
rekomendasi dalam AI
Minggu 6: 28 Mempelajari tentang Natural Mengetahui apa itu NLP,
Mar-1 April Language Processing (NLP) pada AI, dataset yang digunakan
2022 database, dan dasar-dasar pembuatan dan cara memperolehnya,
web pemrosesan dataset,
mengetahui sentimen
analisis. Mengetahui
dasar-dasar databases,
perintah SQL, HTML,
CSS, JavaScript, web
framework python, dan
deployment.
Minggu 7: 4 Materi Life Skills Mengetahui apa itu
April- 8 problem solving, jenis-
April 2022 jenis masalah, cara
menghadapi masalah, dan
hal yang perlu dihindari
Ketika menghadapi
masalah. Mengetahui apa
itu growth mindset dan
cara agar memiliki
growth mindset.
Mengetahui critical
thinking, etiket, goal

B-1
42

setting, dan cara


penerapannya.
Minggu 8: 11 Materi life skills dan Entrepreneurship Mengetahui cara
April – 15 komunikasi yang baik
April 2022 dan benar, networking,
cara bekerja sama yang
baik dan benar, personal
branding, dan
entrepreneurship.
Minggu 9: 18 Materi life skills dan Entrepreneurship Mengetahui apa itu EQ
April – 22 dan pentingnya EQ atau
April 2022 kecerdasaan emosional.
Mengetahui cara-cara
untuk menjadi seorang
enterpreneuship yang
sukses
Minggu 10: Materi life skill dan professional skill Mengahui tentang
25 April - 29 leadership dan cara
April 2022 penerapannya,
pembuatan CV yang baik,
dan cara menemukan
karir.
2 Mei - 9 Mei Cuti Lebaran Idul Fitri
2022
9 Mei - 13 Pembahasan Final Project Pembentukan kelompok,
Mei 2022 pemilihan domain AI
untuk final project,
penentuan judul, problem
scooping, dan pencarian
dataset.

B-1
43

16 Mei-20 Melakukan pemrosesan dan eksplorasi Melakukan pemrosesan


Mei data, pemodelan dan evaluasi data agar dapat
diaplikasikan ke model
AI, eksplorasi data,
melakukan modelling
dengan 4 algoritma, yaitu
KNN, Random Forest,
SVM, dan Decision Tree
dan melakukan evaluasi
tiap model yang telah
dibuat.
23 Mei- 27 Perbaikan bug pada aplikasi dan Melakukan penyusunan
Mei memulai penyusunan laporan laporan seperti problem
scooping, data akuisisi
dan lain-lain. Melakukan
perbaikan dan
penambahan code pada
aplikasi agar hasil yang
diperoleh lebih baik
30 Mei - 3 Pemilihan dan penyimpanan model Melakukan saving model
Juni terbaik, pembuatan web app dan yang terbaik yaitu
deployment, perbaikan dan Random Forest dengan
penambahan laporan akurasi 97,7%,
melakukan pembuatan
web app dengan HTML,
CSS, JavaScript dan
Flask dan deployment ke
Heroku.
6 Juni - 10 Revisi laporan dan perbaikan web app Memperbaiki dan
Juni menambah data pada

B-1
44

laporan agar sesuai


ketentuan dan melakukan
perubahan pada tampilan
web app.

B-1
45

BAB VIII Lampiran C. Dokumen Teknik

VIII.1 AI Project Cycle


adapun AI Project Cycle yang dimaksud adalah:
a. Problem Scooping
Problem scoping mengacu pada identifikasi serta analisis
masalah menggunakan formula 4W, yaitu:
• Who: siapa yang membutuhkan project ini?
Project ini difokuskan untuk orang - orang yang ingin
mempelajari dan mengklasifikasikan benda-benda langit menjadi
galaxy, quasar dan bintang khususnya para peneliti maupun
astronomer.
• What: Apa permasalahan yang ditemukan?
Alam Semesta adalah segala sesuatu yang dapat kita
sentuh, rasakan, rasakan, ukur, atau deteksi, termasuk makhluk
hidup, planet, bintang, galaksi, awan debu, cahaya, serta
waktu. Alam Semesta berisi milyaran galaksi, masing-masing
berisi jutaan atau milyaran bintang. Ruang antara bintang dan
galaksi sebagian besar kosong. Namun, bahkan tempat yang
jauh dari bintang dan planet mengandung partikel debu yang
tersebar atau beberapa atom hydrogen [6].
Alam semesta memiliki berbagai macam objek atau
benda langit yang tak terhitung jumlahnya. Banyak sekali
benda-benda langit yang terlihat sama padahal berbeda
sehingga sulit membedakannya antara objek yang satu dengan
yang lainnya. maka dari itu, kami termotivasi untuk membuat
sebuah framework sederhana mengenai klasifikasi objek
benda langit berdasarkan kelas galaksi, QSO, dan juga bintang
yang disertai penjelasan detail.

C–1
46

• Where : Darimana atau pada saat apa permasalahan ini


muncul?
Pada saat kita ingin mengklasifikasi suatu objek atau
benda langit berdasarkan data yang diperoleh.

• Why : mengapa kita harus menggunakan projek ini?


Mengapa Project ini penting? projek ini kami buat agar
dapat memudahkan masyarakat maupun para astronom amatir
agar dapat membedakan objek langit berdasarkan klasifikasi
galaksi, QSO, dan bintang untuk studi maupun penelitian.
b. Data Acquisition

Gambar 8. 1 sumber dataset

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

Gambar 8. 2 Memanggil dataset

c. Data Preprocessing
Pada tahap ini, kita dapat memeriksa dataset yang akan kita
gunakan menggunakan df.info().

Gambar 8. 3 memeriksa data

Dapat dilihat pada gambar 8.2 bahwa dataset yang kita


gunakan tidak ada yang hilang. disini, kami menggunakan 18
variabel yang dimana untuk variabel obj_ID, run_ID, rerun_ID,
cam_col, field_ID, plate,MJD, dan fiber_ID merupakan data bertipe
float. sedangkan, untuk variabel alpha, delta, u, g, r, i, z,

C–1
48

spec_obj_ID, dan redshift merupakan data bertipe integer, serta


class merupakan data bertipe object.

selanjutnya, kita juga melakukan tahap preprocessing ini


pada data testing dan data training (pada model) menggunakan
library sklearn dengan tahap preprocessing yaitu StandardScaler
dan LabelEncoder.

Gambar 8. 4 preprocessing pada data testing dan training

d. Data Exploration
pada data eksplorasi ini, kita dapat melihat nilai statistik
deskriptifnya terlebih dahulu.

Gambar 8. 5 script untuk statistik deskriptif

setelah itu, kita dapat melihat korelasi dari masing - masing


kolom dan variasi kolom menggunakan df.corr() dan df.cov().

C–1
49

Gambar 8. 6 script untuk melihat korelasi antar kolom

Gambar 8. 7 script variasi kolom pada dataset

selanjutnya, kita dapat melakukan klasifikasi objek berdasarkan


kelas galaxy, star, dan quasar.

Gambar 8. 8 klasifikasi object langit

pada tahap EDA ini, kami membuat visualisasi data


menggunakan library matplotlib dan seaborn yang menghasilkan
7 grafik, diantaranya:

C–1
50

1. Perbandingan antara alpha terhadap redshift pada kelas Galaxy

Gambar 8. 9 script perbandingan antar alpha terhadap


redshift pada kelas galaxy

2. Perbandingan antara alpha terhadap redshift pada kelas Star

Gambar 8. 10 script perbandingan antara alpha terhadap


redshift kelas star perbandingan

C–1
51

3. Perbandingan antara alpha terhadap redshift pada kelas QSO

Gambar 8. 11 script perbandingan antara alpha terhadap


redshift pada kelas QSO

4. Perbandingan antara filter hijau terhadap filter merah pada


kelas Galaxy

Gambar 8. 12 script perbandingan antara filter hijau


terhadap filter merah pada kelas Galaxy

C–1
52

5. Perbandingan antara filter hijau terhadap filter merah pada


kelas Star

Gambar 8. 13 script perbandingan antar filter hijau terhadap


filter merah pada kelas star

6. Perbandingan antara filter hijau terhadap filter merah pada


kelas QSO

Gambar 8. 14 script distribusi kelas berdasarkan klasifikasi


object

C–1
53

7. Distribusi Kelas berdasarkan klasifikasi objek

Gambar 8. 15 script distribusi kelas berdasarkan klasifikasi objek

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

Gambar 8. 16 script import library

Library pandas berfungsi untuk menganalisa, manipulatif,


mengubah dimensi,mengecek data. memudahkan kita untuk
membaca file dengan berbagai format. contoh, .csv, json dan
banyak lagi. Library itertools berfungsi sebagai library fungsional
(contoh, fungsi count untuk menghitung sebuah nilai. Fungsi cycle,
mengulang sebuah pengulangan sebagai contoh sebuah list/string.
Numpy berfungsi untuk melakukan operasi vektor dan matrix
dengan mengolah array. Lalu matplotlib.pyplot berfungsi untuk
visualisasi data seperti membuat plot grafik untuk satu
sumbu/lebih. Selanjutnya yaitu mengimport library sckit-learn.
Library sklearn preprocessing berfungsi untuk mengolah data
karena data masukan yang baik dan tepat (harusnya) akan membuat
estimator mampu menghasilkan keluaran yang baik pula.
Kemudian untuk sklearn metrics berfungsi untuk evaluasi.

Selanjutnya melakukan proses training data. Terlebih dahulu


melakukan pembagian dataset ke dalam training set dan test set.
Train/test split adalah salah satu metode yang dapat digunakan
untuk mengevaluasi performa model machine learning. Model
machine learning umumnya membutuhkan dua set data untuk
"belajar" dan menghasilkan estimasi: training set dan test set.
Biasanya training set ini memiliki proporsi lebih besar

C–1
55

dibandingkan test set. Dalam hal ini proporsi test set adalah 0.2 dan
training set nya 0.8.

Gambar 8. 17 import data testing dan training

Kemudian melakukan feature scaling untuk menskalakan


kolom-kolom yang dibutuhkan karena perbedaan skala dapat
menyebabkan kendala dengan estimator.

Gambar 8. 18 tahap preprocessing menggunakan


StandardScaler

Pada modelling ini menggunakan library scikit-learn yaitu


StandardScaler. StandardScaler menghilangkan mean (terpusat
pada 0) dan menskalakan ke variansi (deviasi standar = 1), dengan
asumsi data terdistribusi normal (gauss) untuk semua fitur.

Selanjutnya mengimport library RandomForestClassifier


dari sklearn.ensemble untuk membuat model random forest
classification. Kemudian mendefinisikan variabel classifier dengan
menggunakan fungsi RandomForestClassifier dan parameter
n_estimator dan criterion.

C–1
56

Gambar 8. 19 import model Random Forest

Kemudian untuk best parameternya adalah sebagai berikut:

Gambar 8. 20 script melihat best parameter menggunakan


gridSearchCV

Selanjutnya yaitu membuat model random forest


classification untuk training set dengan best parameter yang telah
ditentukan. Lalu menghitung akurasi dari pemodelan dengan
Random Forest Classifier dan didapatkan akurasinya sebesar
97,76%

Gambar 8. 21 script model data testing dan training

C–1
57

Gambar 8. 22script menampilkan hasil akurasi model


yang digunakan

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.

Gambar 8. 23 script menampilkan hasil confusion matrix pada


model yang digunakan

Selanjutnya yaitu menampilkan classification report.


Classification report yaitu untuk mengevaluasi kinerja model

C–1
58

klasifikasi. Dalam hal ini menampilkan presisi, recall, f1 untuk


model.

Gambar 8. 24 script menampilkan hasil classification


report pada model yang digunakan

Dari gambar diatas didapatkan nilai tertinggi dari precision


class sebesar 99,1%. Nilai tertinggi dari recall class sebesar 100%.
Nilai tertinggi f1-score sebesar 98,1% dan nilai dari akurasi adalah
97,7%. Sedangkan macro-avg adalah nilai rata-rata dari
presisi/recall/F1 dari semua kelas lalu weighted avg adalah rata-
rata presisi dari semua kelas.

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

Gambar 8. 25 script membuat head pada website

Gambar 8. 26 script membuat body pada website

Gambar 8. 27 script membuat masthead pada website

C–1
60

Gambar 8. 28 script membuat prediction pada website

Gambar 8. 29 script membuat prediction pada website

C–1
61

Gambar 8. 30 script membuat about section pada website

Gambar 8. 31 script membuat contact section pada website

C–1
62

Gambar 8. 32 script membuat footer dan copyright section pada


website

Gambar 8. 33 script mengimport bootrap

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

Gambar 8. 34 script import library, membaca model, dan


tampilan website
3. Proses menampilkan hasil prediksi yaitu dikirim oleh
app.py. Lalu akan keluar link local host untuk web yang telah
dibuat. Untuk prediksinya jika hasilnya 0 maka akan
ditampilkan “Galaxy”, jika hasilnya 1 maka akan ditampilkan
“Star” dan jika hasilnya 2 maka akan ditampilkan “Quasar”.

Gambar 8. 35 membuat prediksi berdasarkan klasifikasi


benda langit

C–1
64

4. Proses selanjutnya yaitu proses deployment yaitu dengan


aplikasi Heroku. Awalnya membuat akun heroku terlebih
dahulu, lalu menghubungkan dengan GitHub menggunakan
Heroku Git. Lalu login ke aplikasi Heroku CLI.
5. Selanjutnya yaitu membuat aplikasi di dashboard Heroku
lalu deploy aplikasi ke Heroku.

Gambar 8. 36 tampilan aplikasi Star Classification

VIII.2 Profil Tim dan Pembagian Tugas

Nama Pembagian Tugas Penjelasan

Syahril Maula Yahya - - Modeling Bertanggung jawab


Universitas Tidar - Evaluasi dalam hal coding
- Desain UI/UX modelling dan evaluasi,
- Deployment desain UI/UX dan deploy
aplikasi

C–1
65

Tesalonika Sitepu - - Modeling Bertanggung jawab


Universitas Diponegoro dalam hal coding
- Desain UI/UX
modelling, desain UI/UX
- Laporan dan pembuatan laporan

Syifa Intan Winoto - - Data Acquisition Bertanggung jawab


Institut Teknologi dalam hal coding akuisisi
- Data Preprocessing
Sumatera data, preprocessing data,
- EDA eksplorasi data dan

- Laporan dan pembuatan laporan serta

Dokumentasi dokumentasi

Muhammad Rigan - Data Preprocessing Bertanggung jawab


Febrianto - Universitas - Video Presentasi dalam preprocessing data
Negeri Yogyakarta serta membuat video
presentasi

Fauzan Mahaditya - - Data Acquisition Bertanggung jawab


Universitas Diponegoro dalam akuisisi data serta
- Membuat PPT
membuat PPT presentasi

Tabel 8.2. 1 Profil dan pembagian tugas


VIII.3 Deskripsi Aplikasi
VIII.1.1 Nama dan Fungsi Aplikasi
Nama aplikasi yang dikembangkan adalah Star
Classification. Fungsi aplikasi adalah memberi informasi tentang
galaxy, bintang dan quasar. Kemudian dapat mengklasifikasikan
benda langit kedalam kelas bintang, galaxy dan kuasar berdasarkan
beberapa nilai. Target pengguna aplikasi ini adalah orang - orang
yang ingin mempelajari dan mengklasifikasikan benda-benda langit

C–1
66

khususnya para peneliti maupun astronomer. Cara kerja aplikasi


adalah menginput nilai alpha, green, infrared, ultraviolet, near
infrared, delta, red dan redshift.Setelah memasukkan nilai tersebut
akan keluar prediksi bintang atau galaksi atau kuasar.

VIII.1.2 Jenis Aplikasi dan Specific Requirement


Aplikasi yang dikembangkan berbasis web menggunakan
flask dan dipublikasikan dengan heroku. Pada bagian deployment,
kami menggunakan beberapa requirements, yaitu flask dimana flask
adalah framework python yang akan digunakan untuk membuat
website. Lalu ada gunicorn yang berfungsi untuk sebuah HTTP
server untuk Python yang berbasis web server gateway, sckitlearn
untuk proses prediksi. Kemudian numpy untuk menyimpan data
array yang akan diuji, untuk mengetahui stellar yang diuji masuk ke
kelas bintang, galaksi dan quasar. Matplotlib untuk visualisasi data
dan pandas untuk mengolah data berbentuk table.

VIII.1.3 User Interface

Gambar 8.1.3. 1 User interface


Gambar diatas merupakan tampilan utama dari aplikasi
stellar classification. Pada halaman ini terdapat 3 fitur yaitu

C–1
67

classification, about dan variabel. Jika di klik bagian classification


maka akan muncul tampilan sebagai berikut:

Gambar 8.1.3. 2 Input

Halaman ini merupakan bagian paling penting yaitu untuk


memprediski benda langit. Setelah dimasukkan nilai-nilai untuk
setiap variabelnya maka kemudian akan keluar prediksinya masuk
ke kelas bintang, galaxy atau kuasar.

Selanjutnya ada bagian about, yang berisi tentang penjelasan


singkat tentang apa itu bintang, galaksi dan kuasar. Jika di klik
bagian “about” akan muncul tampilan seperti dibawah ini.

C–1
68

Gambar 8.1.3. 3 About

Yang terakhir ada bagian variabel yang berisi penjelasan tentang variabel
yang dibutuhkan dalam memprediksi benda langit. Tampilannya sebagai
berikut

Gambar 8.1.3. 4 penjelasan variabel

C–1
69

VIII.4 Link Aplikasi


Link modelling :
https://colab.research.google.com/drive/1bVHfVdAoaxV4TYGIDJ
NpbhfqGxcTYTPJ?usp=sharing

Link final model (saving model) :


https://colab.research.google.com/drive/1e4kMWvZEIycLy-rg-
68d8nlJG5BQ7pnH?usp=sharing

Link github web app :


https://github.com/syahrilmaulayahya/orion.git

Link hasil deloy di Heroku :


https://star-classifier-orion.herokuapp.com/

C–1

Anda mungkin juga menyukai