BAB I PENDAHULUAN

1.1 Latar Belakang Masalah

Feature enginering merupakan salah satu tahapan krusial dalam pengembangan model machine learning (Guyon et al., 2006; Kuhn & Johnson, 2013). Proses ini melibatkan transformasi data mentah menjadi fitur-fitur yang dapat merepresentasikan pola mendasar dari data dengan lebih baik, sehingga meningkatkan kinerja model prediktif (Bengio et al., 2013; Domingos, 2012). Kualitas fitur yang digunakan sangat memengaruhi kemampuan model untuk mempelajari hubungan yang kompleks dalam data dan membuat prediksi yang akurat (Hastie et al., 2009; James et al., 2013).

Dalam konteks analisis data cuaca, seperti dataset yang digunakan dalam penelitian ini, feature engineering menjadi sangat relevan (Krasnopolsky & Schmehl, 2011; McGovern et al., 2019). Data cuaca seringkali mengandung berbagai tantangan, termasuk nilai yang hilang (missing values), outlier, dan variabel kategorikal dengan kardinalitas tinggi (Junninen et al., 2004; Weerasinghe et al., 2019). Penanganan yang tepat terhadap isu-isu ini melalui teknik feature engineering dapat secara signifikan memperbaiki kualitas data input dan, pada gilirannya, meningkatkan akurasi model prediksi cuaca, seperti prediksi hujan (García et al., 2010; Lipton et al., 2016).

Penelitian ini akan mengeksplorasi berbagai teknik feature engineering yang umum digunakan, seperti imputasi nilai hilang, penanganan outlier, pengurangan kardinalitas, encoding variabel kategorikal, dan scaling fitur numerik (Ciaburro & Barrinello, 2018; Geron, 2019). Dengan menerapkan teknik-teknik ini pada dataset cuaca, diharapkan dapat ditunjukkan bagaimana feature engineering dapat berkontribusi pada peningkatan performa model machine learning dalam memprediksi kejadian hujan (Krasnopolsky & Schmehl, 2011; Roebber et al., 2004).

1.2 Rumusan Masalah

1.Bagaimana konsep dari berbagai jenis feature engineering pada R-Studio?

2.Bagaimana melakukan teknik feature engineering di program R-Studio?

1.3 Tujuan

1.Mahasiswa memahami konsep dari berbagai jenis feature engineering pada R-Studio.

2.Mahasiswa dapat melakukan teknik feature engineering di program R-Studio.

BAB II TINJAUAN PUSTAKA

2.1 Machine Leraning

Machine learning merupakan bagian dari kecerdasan buatan yang memungkinkan komputer mempelajari pola dan hubungan yang terdapat dalam data untuk menghasilkan suatu prediksi atau keputusan. Proses pembelajaran dilakukan dengan menggunakan data sebagai dasar untuk membangun model sehingga model dapat digunakan untuk melakukan prediksi terhadap data baru (Forsyth, 2019).

Secara umum, machine learning dapat dikelompokkan menjadi supervised learning dan unsupervised learning. Supervised learning menggunakan data yang telah memiliki variabel target sebagai dasar pembelajaran, sedangkan unsupervised learning digunakan untuk menemukan pola atau struktur tertentu pada data tanpa adanya variabel target (Kelleher et al., 2020). Dalam supervised learning, salah satu permasalahan yang umum digunakan adalah klasifikasi, yaitu proses menentukan suatu observasi ke dalam kelas tertentu berdasarkan karakteristik yang dimilikinya.

Penerapan machine learning memerlukan tahapan persiapan data sebelum proses pemodelan. Data yang digunakan perlu diperiksa dan diproses agar memiliki kualitas yang sesuai dengan algoritma yang akan digunakan. Tahapan persiapan tersebut dapat dilakukan melalui feature engineering, yang bertujuan mengubah data mentah menjadi fitur yang dapat digunakan dalam proses pembelajaran model (Galli, 2021)

2.2 Feature Enginaring

Feature engineering merupakan proses mengubah data mentah menjadi fitur yang dapat digunakan dalam algoritma machine learning. Proses ini bertujuan untuk mempersiapkan dan meningkatkan kualitas data sebelum dilakukan pemodelan. Beberapa tahapan dalam feature engineering meliputi handling missing value, pemeriksaan kardinalitas, data splitting, handling outlier, scaling, encoding, serta penanganan imbalanced dataset (Galli, 2021). Materi praktikum juga menjelaskan bahwa feature engineering dilakukan untuk menyederhanakan dan meningkatkan kualitas transformasi data sehingga dapat mendukung proses pemodelan machine learning.

Dalam penelitian ini, feature engineering dilakukan sebelum data digunakan dalam pemodelan klasifikasi. Tahapan tersebut meliputi pemeriksaan missing value, pengolahan variabel kategorik melalui encoding, pembagian data menjadi training dan testing, serta pemeriksaan outlier. Selain itu, dilakukan identifikasi imbalanced dataset, yaitu kondisi ketika distribusi kelas tidak seimbang antara kelas mayoritas dan kelas minoritas. Kondisi tersebut perlu diperhatikan karena dapat memengaruhi hasil klasifikasi (Kelleher dkk., 2020).

BAB III METODE PENELITIAN

3.1 Sumber Data

Data yang digunakan dalam penelitian ini merupakan data sekunder berupa data kondisi cuaca. Data terdiri dari 743 observasi dengan beberapa variabel yang berkaitan dengan kondisi cuaca, yaitu curah hujan, suhu, kelembapan, keadaan cuaca, dan kecepatan angin. Data tersebut selanjutnya dianalisis menggunakan perangkat lunak RStudio untuk memperoleh hasil penelitian sesuai dengan metode yang digunakan.

3.2 Variabel Penelitian

Variabel yang digunakan dalam penelitian ini terdiri dari beberapa variabel yang menggambarkan kondisi cuaca. Adapun definisi dari masing-masing variabel adalah sebagai berikut:

Variabel Nama Variabel Definisi
X₁ Hujan Jumlah curah hujan yang terjadi pada periode pengamatan.
X₂ Suhu Kondisi temperatur udara pada periode pengamatan.
X₃ Kelembapan Tingkat kelembapan udara pada periode pengamatan.
X₄ Keadaan_Cuaca Kondisi atau keadaan cuaca yang terjadi pada periode pengamatan.
X₅ Kecepatan_Angin Kecepatan angin yang tercatat pada periode pengamatan.

3.3 Langkah Lnagkah Analisis

Algoritma Feature Engineering pada Program RStudio

  1. Buka aplikasi RStudio.
  2. Input data curah hujan.
  3. Pemeriksaan missing value.
  4. Pemeriksaan kardinalitas.
  5. Pembagian data (splitting data).
  6. Pemeriksaan outlier.
  7. Melakukan scaling data.
  8. Melakukan transformasi/rekayasa fitur yang diperlukan.
  9. Pemeriksaan ketidakseimbangan data jika ada variabel target kategorik.
  10. Menghasilkan data yang telah melalui feature engineering.
  11. Output.
  12. Selesai.

BAB IV HASIL DAN PEMBAHASAN

4.1 Library

kolom kotak abu ini bagian tempat kalian menuliskan sintaksnya ya, sedangkan tombol pause warna hijau dikanan atas itu untuk runingnya tapi bisa jg makai ctrl+enter

## # A tibble: 6 × 5
##   Hujan  Suhu Kelembapan Keadaan_Cuaca Kecepatan_Angin
##   <dbl> <dbl>      <dbl>         <dbl>           <dbl>
## 1     1  23           95             5              NA
## 2     1  24           90             1              NA
## 3     1  26.8         77             1              NA
## 4     1  29.6         62             2               2
## 5     1  30.8         56             1               7
## 6     1  31           55             1               7
## tibble [743 × 5] (S3: tbl_df/tbl/data.frame)
##  $ Hujan          : num [1:743] 1 1 1 1 1 1 1 2 2 2 ...
##  $ Suhu           : num [1:743] 23 24 26.8 29.6 30.8 31 30.4 30.9 30.2 29.7 ...
##  $ Kelembapan     : num [1:743] 95 90 77 62 56 55 57 58 62 62 ...
##  $ Keadaan_Cuaca  : num [1:743] 5 1 1 2 1 1 3 2 2 2 ...
##  $ Kecepatan_Angin: num [1:743] NA NA NA 2 7 7 9 10 8 7 ...
##      Hujan            Suhu         Kelembapan     Keadaan_Cuaca  
##  Min.   :1.000   Min.   :22.60   Min.   : 52.00   Min.   : 1.00  
##  1st Qu.:2.000   1st Qu.:24.30   1st Qu.: 75.00   1st Qu.: 2.00  
##  Median :2.000   Median :26.00   Median : 86.00   Median : 2.00  
##  Mean   :1.779   Mean   :26.54   Mean   : 83.88   Mean   :15.11  
##  3rd Qu.:2.000   3rd Qu.:28.90   3rd Qu.: 94.00   3rd Qu.:15.00  
##  Max.   :2.000   Max.   :32.00   Max.   :100.00   Max.   :97.00  
##                                                   NAs    :9      
##  Kecepatan_Angin 
##  Min.   : 2.000  
##  1st Qu.: 4.000  
##  Median : 6.000  
##  Mean   : 6.655  
##  3rd Qu.: 9.000  
##  Max.   :21.000  
##  NAs    :314

Statistik deskriptif digunakan untuk memberikan gambaran umum mengenai karakteristik data sebelum dilakukan data preprocessing. Berdasarkan hasil statistik deskriptif, variabel Hujan memiliki nilai minimum 1, maksimum 2, dan rata-rata 1,779, yang menunjukkan bahwa sebagian besar data berada pada nilai yang sama sehingga perlu diperhatikan dari sisi variasi data. Variabel Suhu memiliki nilai minimum 22,60, maksimum 32,00, dan rata-rata 26,54, sedangkan Kelembapan memiliki nilai minimum 52, maksimum 100, dan rata-rata 83,88. Variabel Keadaan_Cuaca memiliki nilai minimum 1, maksimum 97, dan rata-rata 15,11 serta terdapat 9 nilai missing. Sementara itu, variabel Kecepatan_Angin memiliki nilai minimum 2, maksimum 21, dan rata-rata 6,655 serta terdapat 314 nilai missing. Hasil tersebut menunjukkan bahwa sebelum dilakukan analisis lebih lanjut diperlukan tahap data preprocessing, terutama pemeriksaan dan penanganan missing value, pemeriksaan variasi atau kardinalitas data, pemeriksaan outlier, serta scaling apabila diperlukan oleh metode analisis yang digunakan.

4.2 Handling Missing Value

##           Hujan            Suhu      Kelembapan   Keadaan_Cuaca Kecepatan_Angin 
##               0               0               0               9             314
##           Hujan            Suhu      Kelembapan   Keadaan_Cuaca Kecepatan_Angin 
##      0.00000000      0.00000000      0.00000000      0.01211306      0.42261104
## # A tibble: 9 × 5
##   Hujan  Suhu Kelembapan Keadaan_Cuaca Kecepatan_Angin
##   <dbl> <dbl>      <dbl>         <dbl>           <dbl>
## 1     2  26           92            NA              NA
## 2     1  23.8         98            NA               5
## 3     1  23.3         97            NA              NA
## 4     2  28.8         79            NA              12
## 5     2  24.6         92            NA              NA
## 6     1  22.8         98            NA               4
## 7     2  25.5         96            NA              NA
## 8     2  27           80            NA               4
## 9     2  31           57            NA               6
## [1] 6.655012
##           Hujan            Suhu      Kelembapan   Keadaan_Cuaca Kecepatan_Angin 
##               0               0               0               0               0

Berdasarkan hasil pemeriksaan awal, variabel Hujan, Suhu, dan Kelembapan tidak memiliki nilai hilang, sedangkan variabel Keadaan_Cuaca memiliki 9 nilai hilang (1,21%) dan Kecepatan_Angin memiliki 314 nilai hilang (42,26%). Penanganan dilakukan menggunakan metode mean imputation pada variabel Kecepatan_Angin dengan mengganti nilai hilang menggunakan rata-rata data yang tersedia, serta interpolasi pada variabel Keadaan_Cuaca untuk memperkirakan nilai berdasarkan data di sekitarnya. Setelah proses penanganan, hasil pemeriksaan menggunakan colSums(is.na(df_imp4)) menunjukkan bahwa seluruh variabel memiliki nol nilai hilang. Dengan demikian, data sudah tidak mengandung nilai NA, tetapi metode interpolasi perlu disesuaikan apabila Keadaan_Cuaca merupakan variabel kategori agar hasil imputasi tetap valid. .

4.3 Kardinalitas

## # A tibble: 10 × 5
##    Hujan  Suhu Kelembapan Keadaan_Cuaca Kecepatan_Angin
##    <dbl> <dbl>      <dbl>         <dbl>           <dbl>
##  1     1  23           95             5            6.66
##  2     1  24           90             1            6.66
##  3     1  26.8         77             1            6.66
##  4     1  29.6         62             2            2   
##  5     1  30.8         56             1            7   
##  6     1  31           55             1            7   
##  7     1  30.4         57             3            9   
##  8     2  30.9         58             2           10   
##  9     2  30.2         62             2            8   
## 10     2  29.7         62             2            7
##  [1]  5.0  1.0  2.0  3.0 14.0 60.0 61.0 21.0 29.0 10.0 16.0 62.0 63.0 65.0 15.0
## [16] 17.0 13.0 95.0 91.0 49.0 97.0 56.0  1.5
## --- Hasil Perbandingan ---
## # A tibble: 10 × 6
##    Hujan  Suhu Kelembapan Keadaan_Cuaca Kecepatan_Angin Keadaan_Cuaca_reduced
##    <dbl> <dbl>      <dbl>         <dbl>           <dbl> <fct>                
##  1     2  31.3         62             3           11    0                    
##  2     2  29.3         62             2            8    0                    
##  3     2  23           89            21            6.66 2                    
##  4     2  24.3         94             2            6.66 0                    
##  5     1  23.9         98            61            6.66 6                    
##  6     2  27.1         82             2            3    0                    
##  7     2  24.6         91             2            2    0                    
##  8     2  25.8         90             2            6.66 0                    
##  9     2  30           64             2            5    0                    
## 10     1  30.4         57             3            9    0
## 
## --- Pengecekan Kardinalitas ---
## Jumlah kategori di "Keadaan_Cuaca" asli    : 23
## Jumlah kategori di "Keadaan_Cuaca_reduced" : 7
## 
## Kategori unik yang baru (reduced):
## [1] 0 1 5 6 2 9 4
## Levels: 0 1 2 3 4 5 6 7 8 9

Berdasarkan hasil pemeriksaan kardinalitas, variabel Keadaan_Cuaca pada data awal memiliki 23 kategori unik. Setelah dilakukan pengelompokan kategori, variabel tersebut direduksi menjadi Keadaan_Cuaca_reduced yang memiliki 7 kategori unik. Kategori hasil reduksi yang terbentuk adalah 0, 1, 5, 6, 2, 9, dan 4, dengan level kategori yang tersedia dari 0 hingga 9.

Pengurangan jumlah kategori dari 23 menjadi 7 menunjukkan bahwa proses reduksi kardinalitas berhasil menyederhanakan variabel Keadaan_Cuaca. Dengan jumlah kategori yang lebih sedikit, representasi variabel kategorik pada tahap encoding menjadi lebih sederhana sehingga jumlah variabel hasil One-Hot Encoding dapat dikendalikan. Variabel Keadaan_Cuaca_reduced selanjutnya dapat digunakan pada tahapan encoding sebelum proses pemodelan.

4.4 Splitting Data

## [1] 594   5
## [1] 149   5
## y_train
##   1   2 
## 128 466
## y_test
##   1   2 
##  36 113

Data dibagi menggunakan shuffle splitting dengan proporsi 80% untuk data training dan 20% untuk data testing. Pengacakan dilakukan dengan set.seed(200) agar pembagian dapat direproduksi. Output dim(X_train) dan dim(X_test) menunjukkan jumlah observasi dan prediktor pada masing-masing bagian, sedangkan table(y_train) dan table(y_test) memperlihatkan distribusi kelas target Hujan setelah pembagian.

4.5 Handling outlier

##             Kolom Jumlah_Outlier Lower_Bound Upper_Bound
## 1            Suhu              0        17.4        35.8
## 2      Kelembapan              0        46.5       122.5
## 3 Kecepatan_Angin             50         2.0        10.0

Berdasarkan tabel outliers, jumlah pencilan ditentukan menggunakan batas bawah dan batas atas metode IQR untuk setiap variabel numerik. Perhatikan kolom Jumlah_Outlier, Lower_Bound, dan Upper_Bound untuk mengetahui variabel yang memiliki pencilan serta rentang nilai yang dianggap wajar. Hasilnya dapat berbeda sesuai isi dataset yang digunakan.

4.6 Skewness

## kolom yang mempunyai nilai skewness sedang : Kelembapan Kecepatan_Angin
## kolom yang mempunyai nilai skewness normal : Suhu

Berdasarkan hasil pemeriksaan skewness, variabel Kelembapan dan Kecepatan_Angin termasuk ke dalam variabel yang memiliki nilai skewness sedang, sedangkan variabel Suhu memiliki nilai skewness yang berada dalam kategori normal. Hal ini menunjukkan bahwa distribusi Kelembapan dan Kecepatan_Angin memiliki kemencengan yang lebih besar dibandingkan dengan Suhu. Oleh karena itu, karakteristik distribusi tersebut perlu diperhatikan dalam tahap prapemrosesan data sebelum dilakukan pemodelan.

4.7 Capping

## Suhu - Before Capping

## 
##  Suhu - After Capping

## Kelembapan - Before Capping

## 
##  Kelembapan - After Capping

## Kecepatan_Angin - Before Capping

## 
##  Kecepatan_Angin - After Capping

Histogram dan boxplot digunakan untuk membandingkan distribusi setiap variabel numerik sebelum dan sesudah capping. Capping membatasi nilai yang berada di luar batas IQR tanpa menghapus observasi. Perubahan paling jelas dapat dilihat pada boxplot dan ekor histogram dari variabel yang sebelumnya memiliki pencilan.

4.8 Robust Scaler

##            Suhu      Kelembapan Kecepatan_Angin 
##               0               0               0
##            Suhu      Kelembapan Kecepatan_Angin 
##               1               1               1

Robust Scaler mengubah variabel numerik menggunakan rumus (nilai - median) / IQR. Parameter median dan IQR dihitung dari data training, lalu digunakan juga untuk mentransformasi data testing agar tidak terjadi kebocoran informasi. Setelah scaling, median variabel numerik pada data training seharusnya mendekati 0 dan IQR mendekati 1, selama IQR awal tidak bernilai 0.

4.9 Encoding

##   Keadaan_Cuaca_reduced_X0 Keadaan_Cuaca_reduced_X1 Keadaan_Cuaca_reduced_X2
## 1                        0                        0                        0
## 2                        1                        0                        0
## 3                        1                        0                        0
## 4                        1                        0                        0
## 5                        1                        0                        0
## 6                        1                        0                        0
##   Keadaan_Cuaca_reduced_X3 Keadaan_Cuaca_reduced_X4 Keadaan_Cuaca_reduced_X5
## 1                        0                        0                        0
## 2                        0                        0                        0
## 3                        0                        0                        0
## 4                        0                        0                        0
## 5                        0                        0                        0
## 6                        0                        0                        0
##   Keadaan_Cuaca_reduced_X6 Keadaan_Cuaca_reduced_X7 Keadaan_Cuaca_reduced_X8
## 1                        1                        0                        0
## 2                        0                        0                        0
## 3                        0                        0                        0
## 4                        0                        0                        0
## 5                        0                        0                        0
## 6                        0                        0                        0
##   Keadaan_Cuaca_reduced_X9
## 1                        0
## 2                        0
## 3                        0
## 4                        0
## 5                        0
## 6                        0

One-Hot Encoding mengubah Keadaan_Cuaca_reduced menjadi sejumlah kolom biner yang mewakili kategori. Data training dan testing menggunakan level kategori yang sama agar jumlah serta urutan kolom konsisten. Kolom hasil encoding kemudian digabungkan dengan variabel numerik yang sudah melalui Robust Scaler.

4.10 Balancing Data dan Smote

## y_train
##   1   2 
## 128 466
## 
##   1   2 
## 128 466
## 
##   1   2 
## 466 466

Output table(train_full$Hujan) menunjukkan distribusi kelas sebelum SMOTE, sedangkan table(train_balanced$Hujan) menunjukkan distribusi setelah SMOTE. SMOTE membuat sampel sintetis pada kelas minoritas sehingga distribusi kelas training menjadi lebih seimbang. SMOTE hanya diterapkan pada data training; data testing tetap dipertahankan untuk evaluasi model.

BAB V KESIMPULAN

5.1 Kesimpulan

Berdasarkan tahapan prapemrosesan, data diperiksa untuk mengetahui nilai yang hilang, kemudian ditangani menggunakan mean imputation pada Kecepatan_Angin dan interpolasi pada Keadaan_Cuaca. Variabel Keadaan_Cuaca selanjutnya dikelompokkan untuk mengurangi kardinalitas. Data dibagi menggunakan shuffle splitting dengan proporsi 80:20. Pencilan pada variabel numerik diperiksa menggunakan metode IQR dan ditangani melalui capping.

Selanjutnya, variabel numerik ditransformasi menggunakan Robust Scaler dengan parameter median dan IQR yang dihitung dari data training. Variabel Keadaan_Cuaca_reduced diubah menggunakan One-Hot Encoding, lalu digabungkan kembali dengan variabel numerik. Terakhir, SMOTE diterapkan pada data training untuk membantu menyeimbangkan distribusi kelas target Hujan. Jumlah missing value, pencilan, dimensi data, dan distribusi kelas akhir perlu mengacu pada output R yang dihasilkan saat dokumen dijalankan.

DAFTAR PUSTAKA

Bengio, Y., Courville, A., & Vincent, P. (2013). Representation learning: A review and new perspectives. IEEE Transactions on Pattern Analysis and Machine Intelligence, 35(8), 1798–1828. https://doi.org/10.1109/TPAMI.2013.50

Chawla, N. V., Bowyer, K. W., Hall, L. O., & Kegelmeyer, W. P. (2002). SMOTE: Synthetic minority over-sampling technique. Journal of Artificial Intelligence Research, 16, 321–357. https://doi.org/10.1613/jair.953

Ciaburro, G., & Barrinello, R. (2018). Mastering machine learning algorithms (2nd ed.). Packt Publishing.

Domingos, P. (2012). A few useful things to know about machine learning. Communications of the ACM, 55(10), 78–87. https://doi.org/10.1145/2347736.2347755

Galli, S. (2021). Feature-engine: A Python package for feature engineering for machine learning. Journal of Open Source Software, 6(65), 3642. https://doi.org/10.21105/joss.03642

García, D. L., Paredes, F., Díez-González, J., & López-Nozal, R. (2010). Feature extraction and selection techniques for weather prediction. In Proceedings of the International Conference on Computational Intelligence (pp. 45–52).

Geron, A. (2019). Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow (2nd ed.). O’Reilly Media.

Guyon, I., Gunn, S., Husband, M., & Nikravesh, M. (Eds.). (2006). Feature extraction: Foundations and applications. Springer.

Hastie, T., Tibshirani, R., & Friedman, J. (2009). The elements of statistical learning: Data mining, inference, and prediction (2nd ed.). Springer.

He, H., Bai, Y., Garcia, E. A., & Li, S. (2008). ADASYN: Adaptive synthetic sampling approach for imbalanced learning. In 2008 IEEE International Joint Conference on Neural Networks (pp. 1322–1328). IEEE.

He, H., & Garcia, E. A. (2009). Learning from imbalanced data. IEEE Transactions on Knowledge and Data Engineering, 21(9), 1263–1284. https://doi.org/10.1109/TKDE.2008.239

James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An introduction to statistical learning. Springer.

Junninen, H., Niska, H., Tuppurainen, K., Ruuskanen, J., & Kolehmainen, M. (2004). Methods for imputation of missing values in air quality data sets. Atmospheric Environment, 38(18), 2895–2907. https://doi.org/10.1016/j.atmosenv.2004.02.026

Kelleher, J. D., Mac Namee, B., & D’Arcy, A. (2020). Fundamentals of machine learning for predictive data analytics: Algorithms, worked examples, and case studies (2nd ed.). MIT Press.

Krasnopolsky, V. M., & Schmehl, R. (2011). A neural network as a nonlinear averaging operator: Application to weather prediction. In International Joint Conference on Neural Networks (pp. 2313–2320). IEEE.

Kuhn, M., & Johnson, K. (2013). Applied predictive modeling. Springer.

Lipton, Z. C., Elkan, C., & Naryanaswamy, B. (2016). Optimal thresholding of classifiers to maximize F1 score. In European Conference on Machine Learning (pp. 225–239). Springer.

McGovern, A., Lagerquist, R., John Gagne, D., Jergensen, G. E., Elmore, K. L., Homeyer, C. R., & Smith, T. (2019). Making the black box more transparent: Understanding DNN decisions for image classification of severe weather. Bulletin of the American Meteorological Society, 100(11), 2175–2193. https://doi.org/10.1175/BAMS-D-19-0074.1

Roebber, P. J., Bruening, S. L., Schultz, D. M., & Cortinas Jr, J. V. (2004). Synoptic and mesoscale meteorology of moderate and heavy frozen precipitation. Part II: Freezing rain. Weather and Forecasting, 18(3), 368–384. https://doi.org/10.1175/1520-0434(2003)018<0368:SAMMOM>2.0.CO;2

Weerasinghe, J., Ju, L., Ge, Z., & Kaynak, O. (2019). A new framework for handling missing data in prediction systems. Information Sciences, 478, 317–328. https://doi.org/10.1016/j.ins.2018.11.031