6  Pembentukan Fitur Turunan

6.1 Pembentukan Fitur Turunan: Rasio, Selisih, dan Interaksi

Model machine learning sering kali membutuhkan representasi data yang secara eksplisit menghubungkan beberapa variabel. Meskipun arsitektur kompleks mampu memetakan interaksi antar-variabel secara mandiri, proses tersebut menuntut komputasi yang tinggi dan volume data yang besar. Dengan menyediakan representasi yang dirancang manusia ini, model menerima sinyal prediktif secara langsung sehingga konvergensi berjalan lebih cepat.

Fitur turunan diciptakan melalui operasi matematika pada atribut mentah yang sudah ada. Tiga operasi aritmatika dasar yang paling sering diimplementasikan meliputi:

  1. Selisih (Pengurangan): Mengukur defisit, sisa, atau perubahan absolut. Algoritma dasar tidak memodelkan selisih dua fitur secara otomatis. Sebagai contoh, memberikan angka pengeluaran bulanan dan pendapatan bulanan secara terpisah kurang informatif dibandingkan membangun fitur tunggal “pendapatan bersih”. Fitur ini secara langsung mendeskripsikan kapasitas finansial riil sebuah entitas.
  2. Rasio (Pembagian): Menangkap proporsi relatif dan menormalkan skala metrik. Dalam analisis kelayakan kredit, nilai utang absolut sulit diinterpretasikan tanpa konteks yang menyertainya. Membagi nilai utang terhadap total aset menghasilkan rasio proporsional yang memetakan perusahaan rintisan kecil dan korporasi berskala global pada rentang metrik risiko yang terstandardisasi.
%%{init: {'theme': 'neutral', 'themeVariables': { 'edgeLabelBackground': '#ffffff' }}}%%
graph LR
    A1[Variabel: Total Pengeluaran Bulanan] -->|Dibagi| B[Rasio Utang / Tabungan]
    A2[Variabel: Total Pendapatan Bulanan] -->|Penyebut| B
    B --> C[Indeks Risiko Keuangan Standard]
Figure 6.1: Representasi Rasio Finansial untuk Menormalkan Metrik Berskala Absolut Berbeda
  1. Interaksi (Perkalian): Menangkap efek gabungan dua atribut yang memiliki dampak di luar penjumlahan linier biasa. Efek perkalian ini direpresentasikan secara matematis sebagai:

\[ x_{interaksi} = x_i \times x_j \]

Di mana \(x_{interaksi}\) adalah turunan fitur baru, sedangkan \(x_i\) dan \(x_j\) merupakan fitur asal. Pada kasus prediksi harga properti, fitur “usia bangunan” (\(x_i\)) dapat dikalikan dengan penanda biner “butuh perbaikan struktural” (\(x_j\)). Hasilnya membentuk penalti harga eksponensial bagi rumah tua yang sekaligus memiliki struktur rusak - sebuah pola yang menjadi dasar bagi pembentukan turunan polinomial pada derajat yang lebih tinggi.

Pada tingkat produksi, transformasi ini jarang ditulis secara manual secara per-kolom. Pustaka transformasi modern menyertakan modul khusus - seperti RelativeFeatures atau MathFeatures pada Feature-engine - untuk mengeksekusi operasi selisih, rasio, dan interaksi secara terintegrasi di dalam sebuah pipeline. Pendekatan yang lebih mutakhir (seperti CAAFE) bahkan menggunakan Large Language Models guna mengusulkan rasio dan interaksi berdasarkan pemahaman semantik nama kolom. Kendati otomatisasi ini mempercepat eksplorasi fitur, pembangkitan turunan yang agresif rentan menimbulkan masalah redundansi, sehingga metode seleksi ketat wajib disertakan setelahnya.

6.2 Fitur Polinomial: Ekspresivitas versus Ledakan Fitur

Fitur interaksi yang telah dibahas sebelumnya adalah bentuk sederhana dari ekspansi polinomial. Fitur polinomial memperluas konsep ini dengan memangkatkan fitur asli hingga derajat tertentu, sekaligus mengalikan kombinasi antarfitur tersebut.

Sebagai contoh, jika sebuah dataset memiliki dua fitur dasar, \(x_1\) dan \(x_2\), ekspansi polinomial derajat dua tidak hanya menghasilkan fitur interaksi \(x_1 x_2\), tetapi juga fitur kuadrat dari masing-masing variabel:

\[ \phi(x_1, x_2) = [1, x_1, x_2, x_1^2, x_1 x_2, x_2^2] \]

Di mana: * \(\phi\) merepresentasikan fungsi pemetaan ke ruang fitur baru. * \(1\) adalah suku bias (konstanta). * \(x_1\) dan \(x_2\) adalah fitur asli (derajat satu). * \(x_1^2\) dan \(x_2^2\) adalah fitur kuadrat independen (derajat dua murni). * \(x_1 x_2\) adalah fitur interaksi.

Alasan utama melakukan ekspansi polinomial adalah untuk memberikan kemampuan pada model linier agar dapat mengenali pola non-linier. Banyak algoritma machine learning standar berasumsi bahwa batasan keputusan berbentuk garis lurus atau bidang datar. Asumsi ini sering kali gagal menangkap realitas data yang membentuk kurva.

Dengan memproyeksikan data ke ruang dimensi yang lebih tinggi melalui fitur berpangkat, model linier sederhana menjadi mampu merumuskan batasan keputusan yang melengkung mengikuti kontur data, tanpa perlu mengubah arsitektur dasarnya.

%%{init: {'theme': 'neutral', 'themeVariables': { 'edgeLabelBackground': '#ffffff' }}}%%
graph TD
    A[Ruang Asal: X1, X2 - Tidak Terpisah Secara Linier] -->|Transformasi Polinomial| B[Ruang Baru: X1, X2, X1*X2 - Terpisah Linier]
    B --> C[Sistem Pemisahan Linier Model Klasik]
Figure 6.2: Proyeksi Geometri Ruang Fitur Polinomial dari Dimensi 2D ke 3D
import pandas as pd
from sklearn.preprocessing import PolynomialFeatures

# 1. Menyiapkan data observasi sederhana (2 fitur numerik asal)
data = {
    'Kecepatan_Kendaraan': [40, 60, 80],
    'Konsumsi_Bahan_Bakar': [8, 12, 18]
}
df = pd.DataFrame(data)

# 2. Inisiasi objek PolynomialFeatures dengan derajat 2
# include_bias=False membuang kolom bias (bernilai 1) untuk fokus pada interaksi murni
poly = PolynomialFeatures(degree=2, include_bias=False)

# 3. Menjalankan proses fit_transform pada data observasi
X_poly = poly.fit_transform(df)

# 4. Mengekstraksi nama-nama fitur baru hasil ekspansi polinomial
feature_names = poly.get_feature_names_out(df.columns)

# 5. Membungkus hasil transformasi ke dalam DataFrame agar rapi
df_poly = pd.DataFrame(X_poly, columns=feature_names)

print("--- Data Asli ---")
print(df)
print("\n--- Hasil Ekspansi Polinomial (Derajat 2) ---")
print(df_poly.round(2))

Meskipun meningkatkan ekspresivitas, metode ini membawa trade-off utama: risiko ledakan fitur (feature explosion). Jumlah fitur turunan tumbuh secara kombinatorial seiring bertambahnya fitur asli dan naiknya derajat polinomial.

Pertumbuhan eksponensial ini memicu tiga masalah operasional dalam pipeline rekayasa fitur: 1. Konsumsi Memori: Dataset dengan 100 fitur awal yang diekspansi ke derajat dua akan membengkak menjadi lebih dari 5.000 fitur baru. Kenaikan ke derajat tiga menghasilkan lebih dari 170.000 fitur turunan, yang sering kali langsung membebani kapasitas RAM. 2. Beban Komputasi: Waktu pelatihan model melambat secara drastis karena algoritma harus memperbarui bobot untuk ratusan ribu variabel ekstra tersebut. 3. Risiko Overfitting: Ketika model disajikan dengan ratusan ribu variasi interaksi buatan, ia cenderung menghafal noise pada data latih. Akurasi saat pelatihan mungkin terlihat sangat tinggi, tetapi performa model umumnya langsung turun drastis saat menghadapi data baru di lingkungan produksi.

Untuk mencegah masalah tersebut, ekspansi polinomial sangat jarang diterapkan pada keseluruhan fitur secara serentak. Praktik yang disarankan meliputi: 1. Memilih hanya beberapa fitur spesifik yang terindikasi kuat memiliki hubungan non-linier dengan target. 2. Membatasi batas ekspansi pada derajat rendah (umumnya maksimal derajat tiga). 3. Melakukan pemangkasan fitur pasca-generasi menggunakan metode seleksi atau regularisasi L1 (Lasso) untuk mengeliminasi suku turunan yang tidak relevan.

Pendekatan selektif ini menjaga keseimbangan antara peningkatan akurasi dari pola kompleks dan stabilitas model.

6.3 Agregasi dan Fitur Berbasis Kelompok

Sebagian besar data mentah hanya merekam informasi pada tingkat observasi tunggal. Model yang hanya melihat satu baris data akan kehilangan konteks situasional. Pola prediktif sering kali baru muncul ketika sebuah observasi diletakkan berdampingan dengan observasi lain di kelompok yang sama. Untuk menghadirkan konteks ini, praktisi menggunakan teknik agregasi, yaitu menghitung metrik statistik (seperti mean, median, varians) dari partisi kategori tertentu (misalnya ID pengguna atau wilayah geografi), lalu menyematkan nilai tersebut kembali ke setiap anggota kelompok.

Dalam praktiknya, proses agregasi tidak lagi sekadar menghitung rata-rata atau jumlah absolut. Terdapat beberapa pola agregasi mutakhir yang memanfaatkan struktur kelompok, terutama ketika data memiliki dimensi pengurutan atau waktu (temporal):

  1. Sliding Window: Agregasi berbasis jendela mundur berukuran tetap (misalnya, total transaksi dalam “7 hari terakhir”).
  2. Expanding Window: Agregasi kumulatif dari titik observasi pertama hingga baris saat ini. Pustaka seperti Feature-engine menyediakan transformer ExpandingWindowFeatures untuk mengeksekusi ini di dalam pipeline produksi secara aman.
  3. Pembobotan Kebaruan (Recency-Weighted Aggregation): Tidak semua data historis memiliki bobot relevansi yang setara. Pada agregasi ini, observasi yang lebih baru diberi bobot lebih besar menggunakan fungsi peluruhan eksponensial (exponential decay), di mana \(\lambda\) mengontrol tingkat peluruhan berdasarkan jarak waktu (age): \[ w_i = e^{-\lambda \cdot \text{age}_i} \] Rata-rata tertimbang (weighted mean) kemudian dihitung dari observasi kelompok tersebut, memungkinkan model bereaksi lebih cepat terhadap perubahan perilaku terbaru.
  4. Reset Berbasis Sesi (Session-Based Reset): Agregasi kumulatif diatur ulang menjadi nol saat terdeteksi periode inaktivitas yang melampaui batas ambang tertentu, memastikan akumulasi metrik hanya mencerminkan sesi aktivitas kontinu.

Ekstraksi fitur agregat dapat dilakukan secara masif dan otomatis. Alat khusus seperti tsfresh mampu mengekstraksi ratusan fitur ringkasan per kelompok deret waktu (termasuk fitur entropi dan spektral) melalui antarmuka roll_time_series(), yang juga dilengkapi penyaring signifikansi statistik bawaan untuk memangkas noise.

Nilai tambah utama dari fitur agregasi terletak pada kemampuannya menyajikan nilai relatif. Sebagai contoh pada deteksi anomali, model yang hanya menerima “nilai transaksi absolut” harus bekerja keras memetakan batasan wajar untuk jutaan pelanggan. Namun, dengan menggabungkan rata-rata historis per pengguna, fitur agregat mengubah nilai absolut menjadi deviasi relatif (seberapa menyimpang transaksi ini dari kebiasaan normal kelompoknya), memberikan sinyal tajam bagi algoritma untuk langsung mengenali pola penyimpangan. Kemampuan merangkum pada tingkat sub-kelompok ini menjadi fondasi penting untuk teknik lanjutan dalam agregasi relasional lintas tabel.

6.4 Fitur Relasional dan Log Kejadian: Penggabungan dan Kebenaran Point-in-Time

Data mentah jarang tersaji rapi dalam satu tabel datar. Informasi umumnya tersebar di berbagai tabel relasional. Untuk membangun baris observasi bagi model prediktif, kita harus merangkum informasi lintas sumber. Proses ini mengubah log kejadian, seperti riwayat transaksi, menjadi representasi tingkat-entitas yang siap pakai.

Berhadapan dengan data relasional menghadirkan tiga tantangan mekanis:

  1. Efek Fan-Out: Penggabungan mentah tabel entitas dengan tabel kejadian (relasi satu-ke-banyak) akan menduplikasi profil entitas sebanyak jumlah kejadiannya. Duplikasi ini merusak struktur matriks fitur karena target prediksi berada pada tingkat entitas, bukan tingkat kejadian.
  2. Agregasi Kejadian: Untuk menghindari duplikasi, log kejadian wajib diagregasi menjadi fitur ringkasan tunggal, seperti total pengeluaran atau frekuensi login, sebelum digabungkan kembali ke tabel utama.
  3. Kebenaran Point-in-Time: Proses agregasi harus memastikan bahwa perhitungan pada batas waktu tertentu hanya memakai informasi yang terjadi sebelum batas waktu tersebut tiba.

Dalam membangun agregasi modern, sistem tidak hanya menghitung rata-rata sederhana. Sering kali diterapkan pembobotan lebih besar pada interaksi yang baru terjadi melalui metode peluruhan eksponensial (exponential decay).

\[ \text{Nilai Agregasi} = \frac{\sum_{i=1}^{n} v_i \cdot e^{-\lambda \Delta t_i}}{\sum_{i=1}^{n} e^{-\lambda \Delta t_i}} \]

Di mana \(v_i\) mewakili besaran kejadian ke-\(i\), \(\Delta t_i\) merupakan umur kejadian (selisih antara waktu prediksi dan waktu kejadian), dan parameter \(\lambda\) mengendalikan seberapa cepat nilai riwayat masa lalu menyusut.

Risiko terbesar dari agregasi ini adalah kebocoran data (data leakage). Jika kita memprediksi pelanggan yang akan berhenti berlangganan pada 1 Agustus dan menghitung variabel “total keluhan” dengan menjumlahkan seluruh baris dalam tahun tersebut, model akan melihat data dari bulan September saat berlatih untuk bulan Agustus. Model tampak sempurna saat pelatihan, tetapi hancur saat berhadapan dengan data baru.

%%{init: {'theme': 'neutral', 'themeVariables': { 'edgeLabelBackground': '#ffffff' }}}%%
graph TD
    subgraph Standar_Join ["Join Standar - Melanggar Kronologis"]
        A1[Latih Transaksi - Tgl 15] -->|Gabungan Penuh| B1[Data Pelanggan Mei - Berisi Info Tgl 20 Mei]
    end
    subgraph As_Of_Join ["As-Of Join - Menjaga Kausalitas"]
        A2[Latih Transaksi - Tgl 15] -->|As-Of Join Tepat Sebelum Transaksi| B2[Data Pelanggan - HANYA Berisi Info S.D Tgl 14 Mei]
    end
Figure 6.3: Perbandingan Antara Join Standar dengan As-Of Join

Teknik as-of join mencegah kebocoran ini. As-of join memasangkan baris ke catatan paling akhir di tabel log yang waktu kejadiannya lebih tua dari stempel waktu referensi. Mekanisme ini menarik garis potong waktu yang absolut, sehingga agregasi berhenti dengan aman tepat sebelum indeks prediksi.

Pemenuhan kebenaran point-in-time mengubah kumpulan log mentah menjadi representasi historis yang aman dari kebocoran. Penguasaan atas teknik ini merupakan prasyarat sebelum merakit kerangka rekayasa fitur otomatis pada data relasional yang akan dibahas pada bab selanjutnya.

6.5 Fitur Berbasis Domain: Menyandikan Pengetahuan Pakar

Sinyal prediktif yang kuat sering kali bersumber dari pemahaman spesifik terhadap masalah yang diselesaikan. Fitur berbasis domain adalah terjemahan langsung dari aturan bisnis, standar klinis, atau formula industri ke dalam variabel matematis.

Representasi yang dirancang manusia ini membebaskan model dari beban untuk memetakan logika dasar melalui proses coba-coba. Menyuntikkan pengetahuan pakar secara eksplisit ke dalam dataset memberikan beberapa keuntungan operasional: 1. Mempercepat konvergensi: Model langsung menerima sinyal matang, memangkas waktu komputasi untuk mencari hubungan antarvariabel dari nol. 2. Mengurangi korelasi semu: Rumus yang teruji oleh pakar lebih kebal terhadap noise dibandingkan pola yang ditemukan secara acak oleh algoritma. 3. Menjaga validitas: Keputusan model tetap sejalan dengan pedoman keilmuan atau praktik komersial yang berlaku di dunia nyata.

Penerapan fitur berbasis domain sangat bervariasi bergantung pada sektor industri yang ditangani.

Kesehatan dan Medis Dalam prediksi risiko kesehatan, praktisi medis mengevaluasi proporsi tubuh menggunakan Indeks Massa Tubuh (BMI):

\[ \text{BMI} = \frac{w}{h^2} \]

Di mana \(w\) mewakili berat badan (kilogram) dan \(h\) mewakili tinggi badan (meter). Menyediakan BMI sebagai fitur memastikan model langsung menangkap interaksi non-linier antara kedua variabel tersebut. Pada skala perawatan intensif, rekayasa fitur domain berwujud skor komposit seperti APACHE (Acute Physiology And Chronic Health Evaluation) atau SOFA (Sequential Organ Failure Assessment), yang secara sistematis menggabungkan belasan tanda vital mentah menjadi satu metrik tingkat keparahan.

Finansial dan Perbankan Analis kredit tidak mengevaluasi pinjaman hanya dengan melihat total pendapatan mentah. Mereka menggunakan formula penilaian risiko yang telah mapan.

%%{init: {'theme': 'neutral', 'themeVariables': { 'edgeLabelBackground': '#ffffff' }}}%%
graph TD
    A1[Modal Kerja] --> B[Rumus Altman Z-Score]
    A2[Laba Ditahan] --> B
    A3[EBIT] --> B
    A4[Nilai Pasar Ekuitas] --> B
    B --> C[Fitur Komposit Tunggal Skor Kesehatan Finansial]
Figure 6.4: Alur Transformasi Variabel Neraca Menjadi Fitur Risiko Komposit Altman Z-Score

Praktik rekayasa fitur di domain keuangan meliputi: 1. Rasio profil risiko: Loan-to-value (LTV) atau debt-service coverage ratio (DSCR) untuk mengukur kapasitas bayar pelanggan secara proporsional. 2. Indikator teknikal: RSI (Relative Strength Index) dan MACD (Moving Average Convergence Divergence) yang diturunkan dari data pasar historis seperti pembukaan, penutupan, dan volume (OHLCV). 3. Indeks prediktif: Altman Z-score, yakni kombinasi linier dari lima rasio neraca keuangan berbeda untuk mengestimasi risiko kebangkrutan suatu entitas bisnis.

Analitik Edukasi (Learning Analytics) Pada sistem pembelajaran digital, log aktivitas mahasiswa diubah menjadi metrik yang mencerminkan pola belajar. Fitur turunan ini mencakup total waktu pengerjaan modul (time-on-task), jumlah percobaan sebelum memberikan jawaban benar, hingga jeda waktu antar-sesi. Kompilasi fitur ini menghasilkan metrik keterlibatan yang jauh lebih representatif dibandingkan sekadar menghitung frekuensi login.

6.6 Fitur Waktu dan Siklik

Data stempel waktu (timestamp) mentah biasanya direkam sebagai deretan angka yang terus membesar, seperti nilai detik UNIX. Jika data ini dimasukkan langsung, model hanya melihat garis lurus yang naik. Format ini gagal menangkap pola perilaku berulang yang terikat dengan ritme aktivitas manusia. Agar dapat dimanfaatkan, stempel waktu tersebut perlu diurai menjadi komponen-komponen diskrit.

6.6.1 Ekstraksi Komponen Kalender

Langkah pertama yang umum dilakukan adalah memecah waktu menjadi atribut kalender. Dari satu nilai stempel waktu, kita dapat menurunkan berbagai fitur turunan melalui beberapa kategori: 1. Unit waktu: Jam kejadian, hari dalam satu minggu, bulan, atau kuartal. 2. Penanda biner: Indikator hari libur nasional, akhir pekan, atau jam operasional kerja. 3. Jarak temporal: Jumlah hari sejak peristiwa terakhir, atau selisih hari menjelang tenggat waktu.

Pustaka modern seperti Feature-engine (melalui modul DatetimeFeatures) mampu mengekstrak komponen-komponen ini secara otomatis di dalam pipeline. Pembentukan atribut kalender membantu model memetakan rutinitas harian atau mingguan yang memengaruhi data secara langsung, seperti lonjakan kemacetan pada hari kerja atau tren ritel pada akhir pekan.

6.6.2 Masalah Jarak pada Waktu Linier

Pemisahan komponen kalender memunculkan isu matematis baru terkait perhitungan jarak. Waktu memiliki sifat siklik atau berputar: 1. Bulan Desember (12) berdekatan langsung dengan bulan Januari (1). 2. Pukul 23.00 malam hanya berjarak satu jam dari pukul 00.00 dini hari.

Jika waktu dibiarkan tersaji sebagai bilangan bulat linear dari 0 hingga 23, model yang bekerja berdasarkan metrik jarak (seperti K-NN atau regresi) akan mengira bahwa angka 0 dan 23 saling berjauhan. Kesalahan evaluasi ini merusak pemahaman algoritma terhadap peristiwa yang terjadi melintasi pergantian siklus.

6.6.3 Transformasi Siklik dengan Trigonometri

Untuk mempertahankan bentuk asli waktu, representasi linear dikonversi melalui encoding siklik. Sumbu waktu dibengkokkan menjadi lingkaran menggunakan fungsi trigonometri, sehingga satu variabel waktu diproyeksikan menjadi dua komponen terpisah:

\[ x_{\text{sin}} = \sin\left(\frac{2\pi \cdot x}{\max(x)}\right) \]

\[ x_{\text{cos}} = \cos\left(\frac{2\pi \cdot x}{\max(x)}\right) \]

Pada persamaan tersebut, \(x\) mewakili nilai waktu asli (misalnya, pukul 23), sedangkan \(\max(x)\) adalah batas rentang atas pada siklus tersebut (misalnya, 24 untuk skala jam, atau 12 untuk bulan).

%%{init: {'theme': 'neutral', 'themeVariables': { 'edgeLabelBackground': '#ffffff' }}}%%
graph LR
    A[Jam Linear: 23 ke 0 - Jarak Jauh] -->|Transformasi Siklik| B[Koordinat Siklik: x_sin, x_cos]
    B --> C[Bentuk Melingkar: Jarak Jam 23 dan Jam 0 Menjadi Dekat Sesuai Logika Waktu]
Figure 6.5: Transformasi Siklik yang Memetakan Nilai Jam dari 0-23 ke dalam Lingkaran 2D (Sin, Cos)

Gambar 6.6 mengilustrasikan bagaimana encoding siklik memetakan waktu ke ruang dua dimensi. Nilai jam kini direpresentasikan sebagai pasangan koordinat \((x_{\text{sin}}, x_{\text{cos}})\). Transformasi ini menjamin bahwa jarak antara titik akhir siklus dan titik awal berikutnya tetap berdekatan. Dalam praktiknya, konversi matematis ini sering kali difasilitasi oleh transformer seperti CyclicalFeatures (yang dapat menghapus kolom linear asalnya), memastikan ruang vektor fitur beroperasi dengan benar baik pada fase pelatihan maupun inferensi.

6.7 Risiko Ledakan Fitur

Rekayasa fitur sering dipahami secara keliru sebagai proses memperbanyak kolom data tanpa batas. Perangkat lunak saat ini sangat memudahkan proses penciptaan ribuan turunan melalui operasi matematis otomatis, seperti polinomial, interaksi antarvariabel, dan agregasi grup. Namun, ekspansi variabel yang dibiarkan tanpa kendali justru merusak struktur dataset. Fenomena ini dikenal sebagai ledakan fitur (feature explosion).

%%{init: {'theme': 'neutral', 'themeVariables': { 'edgeLabelBackground': '#ffffff' }}}%%
graph TD
    A[Dataset] -->|Latih| B[Model Baseline - Fitur Asli]
    A -->|Ekstraksi Fitur Turunan| C[Dataset Kaya Fitur]
    C -->|Latih| D[Model Kaya Fitur - Evaluasi Kenaikan Performa Metrik]
Figure 6.6: Diagram Evaluasi Akurasi Model Baseline Melawan Model Berfitur Turunan pada CV

Membesarkan dimensi data secara kombinatorial tanpa landasan teori mendatangkan tiga masalah komputasi utama:

  1. Dominasi noise: Sebagai ilustrasi matematis, membangun seluruh rasio dari 100 fitur dasar secara langsung menghasilkan hampir 10.000 fitur baru. Mayoritas kolom tambahan ini hanya berupa noise murni dan gagal memberikan sinyal komputasi yang valid bagi model.
  2. Kutukan dimensi: Penambahan dimensi baru memperbesar volume ruang fitur secara eksponensial. Titik-titik observasi saling menjauh dan tersebar sangat renggang. Kondisi ini menyulitkan pemetaan batas pemisah. Model rentan mengalami overfitting karena algoritma cenderung menghafal noise dari data pelatihan.
  3. Kelumpuhan komputasi: Arsitektur prediktif berbasis pohon keputusan memang lebih kebal terhadap variabel acak. Walaupun demikian, struktur algoritmanya tetap harus menanggung beban berat saat memilah ribuan cabang tambahan. Fase pelatihan membutuhkan durasi yang lebih panjang and memakan alokasi memori secara masif tanpa jaminan peningkatan akurasi.

Penumpukan turunan variabel matematis juga berpotensi menciptakan multikolinearitas. Kondisi ini muncul ketika beberapa variabel prediktor saling memuat sinyal yang tumpang tindih. Redundansi observasi merusak cara kerja algoritma parametrik (seperti regresi linear) karena estimasi bobot koefisien kehilangan stabilitas.

Kita dapat mendeteksi tingkat keparahan multikolinearitas menggunakan Variance Inflation Factor (VIF).

\[ VIF_i = \frac{1}{1 - R_i^2} \]

Di mana \(R_i^2\) merupakan koefisien determinasi saat fitur \(x_i\) diregresikan terhadap semua fitur lain di dalam dataset. Nilai VIF melebihi angka 5 atau 10 menandakan sebuah fitur berkorelasi terlalu kuat dengan prediktor lain dan layak dihapus.

Kita harus mengombinasikan pembuatan turunan matematis dengan pemangkasan sistematis untuk memitigasi risiko ledakan fitur. Praktik rekayasa fitur modern menangani dimensi berlebih melalui pendekatan berikut:

  1. Pemangkasan korelasi: Membuang fitur turunan menggunakan penyaringan berbasis nilai VIF atau ambang batas korelasi berpasangan.
  2. Regularisasi L1 (Lasso): Menerapkan penalti saat proses pelatihan berlangsung untuk menekan bobot koefisien fitur yang redundan menjadi nol secara otomatis.
  3. Penyaringan pra-kombinasi: Mengukur signifikansi interaksi melalui metode statistik (seperti uji ANOVA) sebelum mengeksekusi ekspansi polinomial. Langkah ini mencegah penggabungan fitur-fitur yang sejak awal sudah lemah.

Penciptaan atribut matematis yang baru mutlak memerlukan pijakan teori yang kuat. Kita mendefinisikan representasi baru semata-mata untuk memandu model mengenali pola faktual. Argumen komputasi dan praktik pembuktian empiris ini menjadi landasan saat mendalami metodologi seleksi fitur di Bab 7 dan mekanisme evaluasi model di Bab 9.

6.8 Memvalidasi Manfaat Fitur Turunan Baru

Pembentukan fitur turunan selalu berawal dari hipotesis empiris. Saat kita menggabungkan beberapa atribut, kita berasumsi interaksi tersebut akan memperjelas pola spesifik di dalam data. Fitur turunan yang secara logika masuk akal bagi pemahaman manusia belum tentu memberi utilitas prediktif tambahan bagi model. Beberapa jenis algoritma sudah dapat mengekstrak informasi yang sama langsung dari kumpulan data mentahnya.

Mempertahankan atribut yang redundan memperlebar dimensi data secara sia-sia. Matriks fitur yang membengkak berisiko mengumpulkan noise, membebani memori komputasi, dan memicu kondisi overfitting. Algoritma menggunakan kapasitasnya untuk menghafal kombinasi nilai spesifik pada data latih, lalu gagal menggeneralisasi polanya saat memproses observasi baru.

6.8.1 Perbandingan terhadap Baseline

Validasi kelayakan atribut turunan membutuhkan model baseline. Model referensi ini dilatih hanya menggunakan fitur mentah awal. Kualitas fitur baru tidak dapat dinilai memakai nilai galat latih. Menambahkan dimensi ke dalam matriks data hampir selalu mengurangi galat latih dan menciptakan ilusi akurasi yang menyesatkan.

Setiap pengujian atribut wajib didasarkan pada skema cross-validation guna mengukur performa di atas set data terisolasi.

\[ CV_{\text{score}} = \frac{1}{K} \sum_{k=1}^{K} \text{Metrik}(y_{\text{val}}^{(k)}, \hat{y}_{\text{val}}^{(k)}) \]

Di mana \(K\) merupakan jumlah lipatan (fold) pengujian, \(y_{\text{val}}^{(k)}\) adalah vektor target aktual pada lipatan ke-\(k\), dan \(\hat{y}_{\text{val}}^{(k)}\) adalah keluaran prediksi dari model. Skor \(CV_{\text{score}}\) dari model berfitur turunan harus melampaui skor baseline secara stabil di seluruh lipatan data. Jika tidak ada margin peningkatan yang jelas, fitur turunan baru tersebut harus dieliminasi.

%%{init: {'theme': 'neutral', 'themeVariables': { 'edgeLabelBackground': '#ffffff' }}}%%
graph LR
    A[Data Log Transaksi Pembelian] -->|Agregasi GroupBy: Pelanggan| B[Rasio Transaksi Sukses / Total Percobaan]
    B --> C[Fitur Kepercayaan Pelanggan]
Figure 6.7: Representasi Rasio Finansial dari Agregasi Log Peristiwa

6.8.2 Metode Diagnostik Lanjutan

Selain mengandalkan akurasi metrik agregat, arsitektur representasi dapat dievaluasi memakai metode diagnostik lanjutan untuk memahami kontribusi fitur secara spesifik:

  1. Studi Ablasio Kelompok (Group Ablation Study): Teknik ini mengelompokkan atribut turunan berdasarkan jenisnya, misalnya kelompok rasio matematis atau agregasi temporal. Evaluasi performa dilakukan dengan menghapus kelompok-kelompok tersebut satu per satu. Pendekatan ini memperlihatkan kategori transformasi mana yang menyumbang sinyal murni.
  2. Seleksi Fitur Probe (Probe Feature Selection): Analis menyisipkan satu kolom derau acak ke dalam matriks data latih. Semua fitur turunan yang menghasilkan skor feature importance lebih rendah dari atribut probe ini terbukti beroperasi pada level acak dan otomatis dibuang.
  3. Diagnosis Kontribusi SHAP: Metode analisis prediksi ini mendekomposisi bobot utilitas tiap dimensi matriks. Jika suatu atribut turunan sekadar mengambil alih porsi nilai SHAP dari fitur mentah pembentuknya tanpa mendongkrak skor metrik keseluruhan, fitur turunan tersebut tergolong berlebih.

Bab 9 membahas metode evaluasi fitur secara menyeluruh. Pada tahap awal rekayasa data, prinsip dasarnya harus ditaati: fungsi turunan memperbesar ukuran matriks komputasi, dan eksistensinya hanya valid setelah lulus pengujian empiris.

6.9 Studi Kasus: Fitur Turunan pada Data Transaksi, Kesehatan, dan Pendidikan

Pengetahuan domain merupakan fondasi intelektual utama dalam rekayasa fitur turunan. Fitur prediktif yang andal berakar dari pemahaman logis tentang mekanisme di dunia nyata. Tiga bidang empiris berikut mengilustrasikan bagaimana wawasan industri mengarahkan transformasi dari atribut mentah menjadi representasi model yang spesifik.

1. Data Transaksi Perbankan dan E-commerce Tabel data asal biasanya berwujud log peristiwa (event log) berupa angka nominal pengeluaran dan stempel waktu tunggal. Menganalisis setiap transaksi secara terisolasi sering kali tidak efektif. Pengetahuan kebiasaan finansial mendorong rekayasawan untuk merancang fitur agregasi temporal, seperti kalkulasi rata-rata pengeluaran berbobot kebaruan (recency-weighted mean) selama tiga puluh hari terakhir. Praktisi juga memformulasikan metrik rasio, misalnya persentase transaksi silang terhadap profil pendapatan. Otomasi tingkat lanjut dapat dicapai menggunakan pustaka seperti tsfresh yang mampu mengekstraksi ratusan fitur runtun waktu sekaligus (statistik, spektral, entropi) dari log transaksi.

[GAMBAR 6.4: Diagram - Representasi rasio finansial dari agregasi log peristiwa]

2. Rekam Medis dan Kesehatan Formulir rekam medis sering kali mencatat variabel biologis secara terpisah. Pengetahuan klinis dapat diterjemahkan menjadi interaksi matematis yang bermakna bagi algoritma machine learning: 1. Sintesis Domain: Mentransformasikan parameter dasar tinggi dan berat badan menjadi satu fitur komposisi terpusat, yaitu Indeks Massa Tubuh (BMI). Representasi ini dihitung secara matematis menggunakan rumus: \[ \text{BMI} = \frac{\text{Berat Badan (kg)}}{(\text{Tinggi Badan (m)})^2} \] Di mana hasil perhitungan ini (BMI) memiliki korelasi klinis yang jauh lebih kuat terhadap risiko penyakit kardiovaskular dibandingkan jika model hanya mempelajari fitur bobot atau tinggi secara individual. 2. Delta Pergeseran Historis: Fitur komparatif yang menyoroti pergeseran nilai kesehatan di antara jadwal observasi sering menyimpan sinyal prediktif tinggi. Menghitung nilai selisih tekanan darah kunjungan saat ini dengan kunjungan sebelumnya akan menghasilkan fitur lintasan medis (progres kondisi pasien) yang lebih kaya informasi ketimbang status absolut.

3. Sistem Manajemen Pendidikan Digital Sistem pendidikan menghasilkan ribuan log aktivitas masuk (login) dan statistik ujian. Namun, teori pedagogi menetapkan bahwa keteraturan belajar mencerminkan komitmen siswa dengan lebih konsisten dibandingkan sekadar menjumlahkan frekuensi klik. Oleh karena itu, fitur dikembangkan melalui: 1. Sintesis Keteraturan: Menghitung jumlah hari login beruntun tanpa jeda (streak) sebagai indikator motivasi belajar. 2. Rasio Penyelesaian: Perbandingan proporsional antara tugas yang dirampungkan dengan akumulasi sisa kuota penugasan.

Melalui intervensi yang dituntun oleh wawasan teori, rekayasa fitur bertugas menerjemahkan volume catatan log yang masif menjadi sekumpulan sinyal perilaku yang terstruktur, padat, dan langsung relevan bagi algoritma pemodelan sasaran.