Dalam proyek data science yang menakjubkan ini, kita akan menjelajahi dunia otomotif melalui lensa inovasi teknologi. Dengan memanfaatkan kekuatan machine learning, proyek ini bertujuan untuk meramalkan harga mobil dengan akurasi dan presisi tinggi. Penggunaan algoritma canggih dan analisis data mendalam akan memungkinkan kita untuk memahami pola kompleks dalam pasar mobil, yang pada gilirannya akan memungkinkan pembeli dan penjual untuk membuat keputusan yang lebih cerdas. Melalui eksplorasi yang mendalam ini, proyek ini tidak hanya mempertajam kemampuan kami dalam bidang ilmu data, tetapi juga memberikan pandangan yang mendalam tentang bagaimana teknologi dapat meramalkan dan membentuk industri otomotif. Sambutlah era baru di mana kecerdasan buatan bertemu dengan pasar otomotif, membuka pintu bagi terobosan yang mengubah game dan membuka jalan bagi pengambilan keputusan yang lebih bijak dalam membeli dan menjual mobil.
Pada proses penentuan harga mobil menggunakan machine learning terdiri dari beberapa tahapan sebagai berikut:
1. Data Understanding
2. Data Cleaning & EDA
3. Data Preprocessing & Spliting Data
4. Machine Learning Development
5. Conclusion
Pada artikel ini akan langsung fokus kepada step 3 hingga 5, hal ini karena untuk step 1 dan 2 sebelumnya sudah pernah saya bahas dalam project data analyst, berikut link detail dari dua proses tersebut https://jagoketik.com/blog/selami-analisis-data-kumpulan-mobil-dan-ungkap-apa-rahasia-menarik-di-dalamnya-data-analyst-project/.
3. Data Preprocessing & Spliting Data
3.1 Data Preprocessing
Pada tahap ini data-data yang telah dibersihkan dan diketahui insightnya akan diseleksi lebih lanjut bagaimana korelasi antar variabel yang dimiliki, mengingat tidak semua variabel bisa digunakan dalam pembuatan model machine learning. Harus ada korelasi di antara variabel-varibel yang akan digunakan dalam pembuatan model machine learning, selain itu pada tahap ini juga nantinya akan diseleksi lagi mana variabel yang akan menjadi target dan variabel yang menjadi inputan atau fitur. Berikut adalah korelasi antar variabel, variabel dengan korelasi yang tinggi akan digunakan sebagai variabel dalam pembuatan model machine learning.
Berikut adalah variabel-variabel yang telah diseleksi sebagai model machine learning. Hal ini dikarenakan variabel-variabel berikut memiliki korelasi yang tinggi.
Terlihat pada gambar di atas ada 6 variabel yang akan digunakan sebagai model machine learning. Karena fokus ingin memprediksi harga mobil maka variabel price akan dijadikan sebagai label/target dan sisa variabel lainnya akan dijadikan sebagai fitur. Setelah variabel dipisahkan masih ada hal yang ganjal, yaitu nilai dari masing-masing fitur tidak merata, harus dilakukan penanganan khusus agar model machine learning menjadi lebih baik. Ditakutkan jika ada variabel yang besar nilainya tidak merata akan berdampak ketidakakuratan model yang dihasilkan. Metode yang digunakan adalah MinMaxScaler, metode preprocessing ini umum digunakan dalam analisis data dan machine learning. Tujuan dari MinMaxScaler adalah untuk mengubah nilai variabel sehingga mereka terletak dalam rentang tertentu, seringkali antara 0 dan 1. Ini adalah teknik normalisasi sederhana yang sering digunakan untuk memastikan bahwa semua fitur memiliki skala yang sama dalam analisis data dan pembelajaran mesin.
3.2 Melakukan splitting data
Tahap selanjutnya adalah splitting data, pada tahap ini model machine learning tentunya memerlukan data yang akan digunakan sebagai latihan agar model dapat mengenali pola sesuai data yang diberikan. Sama seperti manusia yang harus belajar terlebih dahulu sebelum bisa melakukan sesuatu, maka machine learning pun demikian. Umumnya digunakan splitting data 80:20 atau 70:30, pada project ini digunakan 80:20, hal ini berarti 80% dari data digunakan sebagai data latih/train dan 20% digunakan sebagai data uji/testing.
4. Machine Learning Development
Pada tahap ini akan digunakan beberapa jenis supervised regression machine learning untuk mencari tahu mana model yang terbaik. Paramater penilaian ada 3 yaitu dengan metode MAE(Mean Absolute Error), RMSE(Root Mean Squared Error) dan r_2 score. Ada 4 jenis model machine learning yang digunakan yaitu Linear Regression, Decision Tree Regressor, Support Vector Regressor dan Random Forest Regressor.
Setelah machine learning dilatih oleh masing-masing model, selanjutnya adalah melakukan prediksi terhadap data uji/test dan dibandingkan dengan nilai aslinya. Berikut adalah grafik dari hasil machine learning masing-masing model.
Terlihat dari keempat model yang digunakan, Random Forest Regressor adalah model yang paling akurat dibandingkan model lainnya dalam kasus ini. Hal ini dapat dilihat banyak titik-titik dari model tersebut yang mendekati garis linear. Untuk lebih memastikan mana model yang terbaik dapat dilihat score masing-masing dari model machine learning sebagai berikut:
5. Conclusion
Berdasarkan analisa yang dibuat, terlihat bahwa Random Forest Regressor adalah model terbaik untuk kasus ini dalam memprediksi harga mobil. Hal ini terlihat di mana nilai r2_score yang dimiliki model ini merupakan yang paling besar yaitu 0.95 serta memiliki nilai MAE dan RMSE terkecil dibandingkan model lainnya yaitu 1389,57 dan 2139,09. Hal ini juga bisa dilihat melalu grafik di mana banyak titik yang mendekati garis linear oleh model Random Forest Regressor, yang artinya model ini merupakan model yang paling akurat pada kasus ini.
Terima kasih telah meluangkan waktu anda untuk membaca hasil analisa dan uji coba model yang telah dilakukan, silahkan share jika ini dirasa memberikan insight. Tentunya juga diperboleh memberikan masukan melalui kolom komentar atau menghubungi langsung saya dengan kontak di bawah.
Data source : https://www.kaggle.com/datasets/toramky/automobile-dataset
LinkedIN : https://www.linkedin.com/in/muhammad-zainurrahman/
Source code : https://github.com/MuhZainur/Automobile/blob/main/Automobile%20Price%20Prediction.ipynb
Tools : Python version : 3.11.3, package : pandas, seaborn, numpy, sklearn.
Saya juga memiliki beberapa sertikasi di bidang data sebagai bukti kelayakan dari kemampuan yang saya miliki sebagai berikut: