Lazada Indonesia

Sunday, December 29, 2024

Machine Learning: Membuat Prediksi Dengan Linear Regression


Membuat prediksi berdasarkan data-data yang sudah dimiliki diawal biasanya dalam bahasa inggris disebut forecast.

Misalnya berdasarkan data-data harga emas yang ada, berdasarkan harga komoditas pangan, harga saham atau yang lain, kita dapat melakukan sebuah prediksi berdasarkan data-data lampau yang tersedia. Dalam Machine Learning salah satu metode yang digunakan adalah Linear Regression.

Pada contoh ini kita akan mencoba membuat prediksi berdasarkan data-data yang ada. Contohnya yang paling sederhana adalah berapa kilometer sebuah mobil dapat berjalan jika mobil tersebut kita isi sejumlah liter bahan bakar. Data-data yang ada misalnya, jika diisi 20 liter maka mobil dapat menempuh jarak 100 kilometer. Jika berdasarkan kondisi tertentu misalnya faktor kecepatan rata-rata, beban yang diangkut, kondisi jalan, usia mobil dan sebagainya maka kemungkinan dengan jumlah bahan bakar yang sama, jarak yang ditempuh akan berbeda.

Berdasarkan ilustrasi di atas jumlah bahan bakar/bensin adalah suatu angka numerik yang bisa kita gunakan sebagai landasan untuk melakukan prediksi, maka disebut predictor. Jika sebuah predictor tidak bergantung pada variabel lain, maka disebut independent variable. Jika predictor bergantung pada variabel lain maka disebut dependent variable. Pada contoh di atas jarak yang ditempuh oleh mobil termasuk dependent variable karena tergantung pada berapa jumlah bahan bakar. Sedangkan angka jarak yang kita prediksi disebut target.

Sebelum melakukan prediksi, kita terlebih dahulu harus menyiapkan data. Dengan menggunakan Python kita dapat menggunakan library pandas untuk menyiapkan data. Pada contoh ini kita merujuk pada data yang telah disediakan dari sebuah buku yang saya jadikan rujukan.

import pandas as pd
df1 = pd.read_csv('/content/drive/MyDrive/AI/bensin.csv')
df1

Setelah kita jalankan maka outputnya adalah:

Dalam ilmu statistika kita mengenal beberapa istilah penting dari sebuah data, misalnya angka minimum, angka maksimum, dan rata (mean). Dengan menggunakan pandas kita dapat menampilkan nilai-nilai tersebut untuk mendapatkan gambaran data yang kita gunakan, dengan perintah:

df1.describe()

maka hasilnya adalah sebagai berikut:

Untuk memvisualisasikan data-data yang kita miliki, kita bisa menggunakan code:

Menjelaskan# @title Liter vs Kilometer

from matplotlib import pyplot as plt
df1.plot(kind='scatter', x='Liter', y='Kilometer', s=32, alpha=.8)
plt.gca().spines[['top', 'right',]].set_visible(False)

Maka hasilnya adalah sebagai berikut:

Jika dilihat dari plot data di atas maka sebaran dataset cukup beraturan, sehingga ada dugaan bahwa ada hubungan linear antara angka liter bahan bakar dan angka jarak kilometer yang ditempuh. dari data ini cocok dengan persamaan sederhana simple linear regression:

y = a + bx

Dari persamaan ini, dimana a adalah intercept, dan b adalah slope.

Melatih Model

Sebelum kita melakukan prediksi, kita perlu melakukan training data dulu. Kita harus menyiapkan data-data menggunakan training dataset. Untuk melakukan training kita menggunakan library Scikit-learn. Code yang dapat digunakan seperti berikut:

Menjelaskanimport sklearn.linear_model as lm
liter = df1[['Liter']]
kilometer = df1[['Kilometer']]
X_train, X_test, y_train, y_test = ms.train_test_split(liter, kilometer, test_size=0.2, random_state=0)

Kemudian kita dapat melihat nilai coefisien dan intercept dengan code:

model1 = lm.LinearRegression()
model1.fit(X_train, y_train)
print("model coef:")
print(model1.coef_)
print("model intercept:")
print(model1.intercept_)
Outputnya:

Nilai coefisen dan intercept kita masukkan ke persamaan dan kita tampilkan hasilkan dengan code berikut:

Menjelaskanimport sklearn.model_selection as ms
import numpy as np

plt.scatter(X_train, y_train, edgecolors='r')
plt.xlabel('Liter')
plt.ylabel('Kilometer')
plt.title('Konsumsi Bahan Bakar')
x1 = np.linspace(0,45)
y1 = 3.94 + 6.67 * x1
plt.plot(x1,y1)
plt.show()

Hasilnya seperti berikut:

Untuk menghitung score model, digunakan code berikut:

r2 = model1.score(X_test, y_test)
print("Score:")
print(r2)

Melakukan Prediksi

Misalnya kita ingin melakukan prediksi dengan diberikan nilai input jumlah bahan bakar dalam Liter, 60 liter:

# dengan satu nilai
jarak = model1.predict([[60]])
print(jarak)

outputnya:
[[398.13897723]]

jika ingin melakukan prediksi dengan data test:

# dengan data test
prediksi  = model1.predict(X_test)
print(prediksi)

Code lengkapnya Google Colabs: Prediksi Linear Regression

dataset bensin.csv

Referensi:

Pengenalan Machine Learning dengan  Python. Dios Kurniawan, M.Sc

Friday, November 8, 2024

PASCA OPERASI DAN RADIASI KANKER OTAK MENYEBAR MEMENUHI SEBAGIAN BESAR OTAK SEBELAH KANANNYA, BERSIH MELEWATI 10 TAHUN DENGAN ECCT

 Bu Tosilah Wati didiagnosa kanker otak tipe astrocytoma tahun 2012, telah menjalani operasi dan radiasi tetapi muncul kembali dan berkembang luas hingga lebih dari separoh otak besar sebelah kanan, menyebabkan lumpuh separoh dan kejang terus. Kanker tak bisa ditahan dengan operasi dan radiasi, Bu Tosilah mencoba alternatif ECCT mulai awal Desember 2013. Kondisinya perlahan membaik seiring dengan peluruhan massa di otaknya. Dua tahun pemakaian massa mengecil, penyebaran dan edema luas di sekeliling massa awal relatif sudah hilang. 5Setelah 5 tahun pemakaian ia dinyatakan bersih. Melewati 10 tahun setelah pakai ECCT, atau 12 tahun sejak pertama didiagnosa kanker otak, kondisi Bu Tosilah sehat dan normal, terbebas dari kanker.



Gambar: Hasil MRI otak Bu Tosilah Wati sebelum terapi ECCT yang menunjukkan massa terus berkembang cepat meskipun telah operasi dan radiasi (atas-kanan); Perkembangan massa yang mulai menyusut setelah pemakaian ECCT hingga CLEAR setelah 5 tahun (Atas no.3 dari kanan);  Perkembangan aktifitas listrik massa tumor selama terapi hasil monitoring dengan ECVT; Foto Bu Tosilah Wati ketika melewati 5 tahun dan 10 tahun sejak pemakaian alat ECCT (bawah).

Bu Tosilah Wati pertama kali menjalani operasi tumor otak bulan Oktober 2012. Hasil patologi menunjukkan tipe ganas, jenis astrocytoma grade 1. Setelah operasi dan keluar hasil patologi ia menjalani radiasi hingga 30X. Tulang tengkorak belum sempat dipasang kembali, evaluasi awal kurang lebih 6 bulan setelah operasi dan radiasi hasil MRI menunjukkan massa muncul lagi di dua tempat di sekitar massa awal. Ukuran massa tumor terbaru 2 cm dan 4 cm, lebih besar dari hasil massa awal sebelum dioperasi. Gradenya sepertinya juga bertambah. 


Seiring dengan muncul lagi tumornya Bu Tosilah merasakan semakin hari keluhan semakin bertambah, kejang yang dialaminya makin hari makin bertambah. Hasil MRI setahun setelah operasi massa recurrence di posisi bekas operasi telah meluas lebih dari separoh otak besar sebelah kanan, mendesak otak kiri.melewati garis tengah otak. Dokter yang menanganinya memperkirakan bahwa Bu Tosilah tak bisa bertahan lebih dari 6 bulan.

Perkembangan kankernya tak bisa ditahan meskipun telah operasi dan radiasi, Bu Tosilah akhirnya mencoba alternatif ECCT mulai awal Desember 2013. Setahun setelah operasi sebelum pakai alat Bu Tosilah tak bisa memegang sesuatu dengan tangan kirinya. Untuk berdiri atau jalan ia harus berpegangan penyangga dengan tangan kanannya. Kejang dialaminya setiap 1-2 minggu sekali. 

Semua medis telah dijalaninya tetapi perkembangan kankernya tak bisa ditahan, Bu mencoba alternatif ECCT mulai awal Desember 2013. 

Kondisinya perlahan membaik seiring dengan peluruhan massa di otaknya. Setelah pakai alat ia masih mengalami kejang pada hari pertama, tetapi setelah itu berhenti. Kondisinya perlahan membaik seiring dengan pemakaian alat, 3 bulan pakai alat ia sudah bisa jalan tanpa pegangan.

2 tahun pemakaian massa mengecil signifikan, penyebaran luas di sekeliling massa awal relatif sudah hilang. Massa tumornya relatif baru hilang setelah 5 tahun pemakaian, relatif lambat dibanding karakter massa jenis astrocytoma dengan ECCT, sesuai dengan karakter tipe low grade glioma. 

Tipe low grade glioma dengan ECCT responnya relatif lambat dibanding tipe high grade (astorcytoma maupun glioblastoma). Sel-sel matinya dengan pemakaian alat mengalami lysis (pecah sel) keluar dalam bentuk lendir yang relatif agak liat karena banyak mengandung senyawa lipida (lemak); Apabila sistem imun tubuh baik bisa keluar dalam bentuk dahak dan pup yang cenderung lengket atau liat. Karena kandungan lemak yang tinggi pembuangan sering terhambat, sel-sel mati mudah mengendap di area sekitar massa tumor awal, menyebabkan edema. Untuk membantu proses pembuangan tipe ini perlu konsumsi asupan makan yang banyak mengandung flavonoid guna membantu mengurai senyawa lipida (lemak), banyak konsumsi albumin dan elektrolit guna menyerap cairan yang menumpuk yang menyebabkan edema. Cairan edema sering terjadi apabila kadar albumin dan elektrolit darah turun. Penumpukan cairan edema bisa mengakibatkan peningkatan tekanan intrakranial dan penurunan klinis.

Tipe low grade glioma dengan ECCT umumnya baru mengalami penyusutan setelah 6-12 bulan dengan spesifikasi alat ECCT terbaru dengan pengguanaan 2X1-2 jam per hari, dibanding dengan tipe astrocytoma yang bisa menyusut dalam kurun waktu 3-6 bulan atau glioblastoma dalam kurun waktu 1-3 bulan dengan spesifikasi alat dan jam penggunaan yang sama. 

2024 Bu Tosilah berhasil melewati 10 tahun setelah pakai ECCT, atau 12 tahun sejak pertama didiagnosa kanker otak. Kondisinya sehat dan normal, terbebas dari kanker. 

Semoga tetap sehat buat Bu Tosilah(WS). 

Sumber:  https://ecctcancersurvivors.blogspot.com/2024/10/pasca-operasi-dan-radiasi-kanker-otak.html

Machine Learning: Membuat Prediksi Dengan Linear Regression

Membuat prediksi berdasarkan data-data yang sudah dimiliki diawal biasanya dalam bahasa inggris disebut  forecast . Misalnya berdasarkan dat...