0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan8 halaman

Modul 3 Lidia

Modul praktikum ini bertujuan untuk menerapkan berbagai model machine learning dalam memprediksi nilai significant wave height (SWH) menggunakan data gelombang dari simulasi model SWAN. Proses mencakup pengumpulan dan pra-pemrosesan data, pemilihan model, pelatihan, evaluasi, dan prediksi hasil untuk tahun 2021. Laporan akhir harus mencakup analisis hasil dan visualisasi perbandingan antara data aktual dan prediksi.

Diunggah oleh

Gavrilla Shidqi
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan8 halaman

Modul 3 Lidia

Modul praktikum ini bertujuan untuk menerapkan berbagai model machine learning dalam memprediksi nilai significant wave height (SWH) menggunakan data gelombang dari simulasi model SWAN. Proses mencakup pengumpulan dan pra-pemrosesan data, pemilihan model, pelatihan, evaluasi, dan prediksi hasil untuk tahun 2021. Laporan akhir harus mencakup analisis hasil dan visualisasi perbandingan antara data aktual dan prediksi.

Diunggah oleh

Gavrilla Shidqi
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

MODUL III PRAKTIKUM

LITERASI DATA DAN AI (WI2002)


APLIKASI MACHINE LEARNING PADA BIDANG KEBUMIAN
MODUL PRAKTIKUM

Disusun sebagai laporan dalam pelaksanaan praktikum


Mata kuliah Literasi Data dan AI (WI2002)

Dosen Pengampu:
[Link]. Dhota Pradipta, S.T.,M.T.

Asisten :
Resy Meilani
M. Naufal Mufiddin

INSTITUT TEKNOLOGI BANDUNG


Juni 2025
I Pendahuluan

I.1 Tujuan
Tujuan dari praktikum ini adalah menggunakan beerbagai model machine learning untuk
memprediksi nilai significant wave height (SWH).

II Studi Pustaka

II.1 Machine Learning


Machine learning adalah cabang dari kecerdasan buatan (Artificial Intelligence/AI) yang
memungkinkan komputer belajar dari data tanpa harus diprogram secara eksplisit. Tujuannya
adalah membuat sistem yang dapat belajar secara otomatis dan meningkatkan kinerjanya
seiring dengan pengalaman atau penambahan data.

Tujuan machine learning adalah:


• Memprediksi: Memberikan prediksi atau estimasi berdasarkan pola dari data masa
lalu. Contoh: prediksi harga saham, prediksi cuaca, dsb.
• Mengklasifikasikan: Mengelompokkan data ke dalam kategori. Contoh: klasifikasi
email menjadi spam atau bukan.
• Mendeteksi Pola: Menemukan hubungan tersembunyi dalam data. Contoh: segmentasi
pelanggan berdasarkan perilaku belanja.
• Mengotomatisasi Proses: Mengganti tugas manual dengan sistem cerdas. Contoh:
rekomendasi produk otomatis di e-commerce

Secara umum, machine learning bekerja dengan langkah berikut:

1. Pengumpulan Data
Data dikumpulkan dari berbagai sumber (sensor, log aktivitas, survei, dsb). Data ini menjadi
input dalam proses machine learning.
2. Pra-pemrosesan Data
Data dibersihkan (menghapus nilai kosong, outlier, dll). Data diubah menjadi format yang
sesuai, misalnya diubah ke angka atau bentuk yang bisa dipahami machine learning.
3. Pemilihan Model
Model ML dipilih tergantung pada tujuan:
• Supervised Learning (dilatih dengan data berlabel)
• Unsupervised Learning (dilatih tanpa label)
• Reinforcement Learning (belajar dari interaksi dan umpan balik)
4. Pelatihan Model (Training)
Model dilatih menggunakan data agar bisa “belajar” dari pola-pola di [Link],
model belajar bahwa "jika langit mendung, kemungkinan besar akan hujan."
5. Evaluasi Model
Setelah dilatih, model diuji menggunakan data baru (testing set) untuk mengecek akurasi dan
kinerjanya.
6. Prediksi atau Pengambilan Keputusan
Model digunakan untuk memprediksi hasil dari data baru atau untuk mengambil keputusan
otomatis berdasarkan apa yang telah dipelajari

III LANGKAH PRAKTIKUM


Catatan:
Data dan kode dapat di unduh pada link berikut:

Pastikan bahwa semua file berada di dalam satu folder yang sama agar semua input dapat
dipanggil oleh kode MATLAB.

1. Bersihkan workspace dan command window MATLAB sebelum mulai agar tidak digunakan
variabel dan output dari sesi sebelumnya.

clear all
close all
clc

2. Load file data gelombang tahun 2020. Data gelombang berdasarkan hasil simulasi model
SWAN pada tahun 2020 dan berupa time series.

load Data_gelombang_SWAN.mat
Data_gelombang = Data_gelombang;
head(Data_gelombang) %Untuk memperlihatkan baris teratas data gelombang

3. Menambahkan parameter hari, bulan, tahun, jam, dan menit ke data. Data waktu digunakan
untuk permodelan machine learning.

Data_gelombang.day = day(Data_gelombang.Time);
Data_gelombang.month = month(Data_gelombang.Time);
Data_gelombang.year = year(Data_gelombang.Time);
Data_gelombang.hour = hour(Data_gelombang.Time);
Data_gelombang.minute = minute(Data_gelombang.Time);
head(Data_gelombang)

4. Plot data gelombang hasil simulasi SWAN untuk periode tahun 2020. Data timeseries untuk
analisis data tinggi gelombang signifikan (Hs).

plot(Data_gelombang.Time,Data_gelombang.Hsig)
xlabel('Date')
ylabel('Significant Wave Height (m)')

5. Membuat boxplot bulanan untuk data Hs.

boxplot(Data_gelombang.Hsig,Data_gelombang.month)
xlabel('month')
ylabel('Significant Wave Height (m)')

6. Membagi data hasil simulasi SWAN menjadi untuk training dan test machine learning.
Machine learning menggunakan data historis untuk memprediksi/forecast data kedepannya.
Langkah pertama adalah membagi data yaitu sebesar 80% untuk training dan 20% untuk
test, dengan menggunakan fungsi cvpartition yaitu membagi secara acak/random.

n = height(Data_gelombang);
hpartition = cvpartition(n,'Holdout',0.2)

Data yang digunakan untuk test:

idxTest = test(hpartition);
Data_gelombang_Test = Data_gelombang(idxTest,:);
head(Data_gelombang_Test)

Data yang digunakan untuk training model:

dxTrain = training(hpartition);
Data_gelombang_Train = Data_gelombang(idxTrain,:);
head(Data_gelombang_Train)

7. Jalankan machine learning dengan menggunakan ke 6 model berikut:

Models Training and Validation: Model 01 - Coarse Tree


Train Model
[model01_train, model01_RMSE_train] =
trainRegressionModel01(Data_gelombang_Train);
model01_train_detail = model01_train.RegressionTree

Test Model
[model01_test, model01_RMSE_test] =
trainRegressionModel01(Data_gelombang_Test)
model01_test_detail = model01_test.RegressionTree

Models Training and Validation: Model 02 - Medium Tree


Train Model
[model02_train, model02_RMSE_train] =
trainRegressionModel02(Data_gelombang_Train)
model02_train_detail = model02_train.RegressionTree

Test Model
[model02_test, model02_RMSE_test] =
trainRegressionModel02(Data_gelombang_Test)
model02_test_detail = model02_test.RegressionTree

Models Training and Validation: Model 03 - Fine Tree


Train Model
[model03_train, model03_RMSE_train] =
trainRegressionModel03(Data_gelombang_Train)
model03_train_detail = model03_train.RegressionTree

Test Model
[model03_test, model03_RMSE_test] =
trainRegressionModel03(Data_gelombang_Test)
model03_test_detail = model03_test.RegressionTree

Models Training and Validation: Model04 - Fine Tree with different Train and Test
composition

Model ini membagi data yaitu sebesar 70% untuk 'training' dan 30% untuk 'test',
dengan menggunakan fungsi cvpartition yaitu membagi secara acak/random.

hpartition_2 = cvpartition(n,'Holdout',0.3)
idxTest_2 = test(hpartition_2);
Data_gelombang_Test_2 = Data_gelombang(idxTest_2,:);
idxTrain_2 = training(hpartition_2);
Data_gelombang_Train_2 = Data_gelombang(idxTrain_2,:);
Train Model
[model04_train, model04_RMSE_train] =
trainRegressionModel04(Data_gelombang_Train_2)
model04_train_detail = model04_train.RegressionTree

Test Model
[model04_test, model04_RMSE_test] =
trainRegressionModel04(Data_gelombang_Test_2)
model04_test_detail = model04_test.RegressionTree

Models Training and Validation: Model05 - Fine Tree with less predictor
Train Model
[model05_train, model05_RMSE_train] =
trainRegressionModel05(Data_gelombang_Train)
model05_train_detail = model05_train.RegressionTree

Test Model
[model05_test, model05_RMSE_test] =
trainRegressionModel05(Data_gelombang_Test)
model05_test_detail = model05_test.RegressionTree

Models Training and Validation: Model06 - Fine Tree with less predictor
Train Model
[model06_train, model06_RMSE_train] =
trainRegressionModel06(Data_gelombang_Train)
model06_train_detail = model06_train.RegressionTree

Test Model
[model06_test, model06_RMSE_test] =
trainRegressionModel06(Data_gelombang_Test)
model06_test_detail = model06_test.RegressionTree

8. Prediksi data tinggi gelombang untuk tahun 2021.

Prediksi data tinggi gelombang dengan menggunakan model 1 hingga 6


load [Link]
load Data_gelombang_SWAN_2021.mat
Data_gelombang_2021 = Data_gelombang_SWAN_2021;
Data_gelombang_2021.day = day(Data_gelombang_2021.Time);
Data_gelombang_2021.month = month(Data_gelombang_2021.Time);
Data_gelombang_2021.year = year(Data_gelombang_2021.Time);
Data_gelombang_2021.hour = hour(Data_gelombang_2021.Time);
Data_gelombang_2021.minute = minute(Data_gelombang_2021.Time);

Prediksi Hs (Hsig_predict) menggunakan model 1 - 6 (predictor Hour, Day, Month,


Wind Speed, Wind Direction)
Data_gelombang_2021.Hsig_predict = [Link](Data_gelombang_2021);
head(Data_gelombang_2021)
plot(Data_gelombang_2021.Time,Data_gelombang_2021.Hsig)
hold on
plot(Data_gelombang_2021.Time,Data_gelombang_2021.Hsig_predict)
hold off
IV TUGAS PRAKTIKUM
1. Berisi gambar timeseries perbandingan antara data SWAN dan hasil
prediksi model Machine Learning 1 hingga 6 untuk tahun 2021
2. Analsis dari hasil simulasi (pola variabilitas nilai Hs, akurasi model, model
mana yang paling baik dalam memodelkan gelombang).

Format Laporan
Laporan dibuat dalam format PDF.
Isi laporan langsung hasil dan analisis, dengan nama dan NIM pada halaman
pertama dari laporan

Pengiriman Tugas
Kirim tugas dalam format PDF ke link berikut: Tugas_Praktikum_LiDIA
Format nama file: MODUL 3 LiDIA_Nomor Kelas_Nama Lengkap_NIM

Catatan
Pastikan laporan mencakup semua langkah yang dilakukan, hasil, analisis, serta
visualisasi yang relevan.
Jika ada pertanyaan, silakan hubungi asisten atau dosen.

Anda mungkin juga menyukai