Modul 10 - Feature Engineering v1
Modul 10 - Feature Engineering v1
Secara umum, semua pembelajaran mesin, penambangan data, dan data analytics
mengandalkan dan dapat mengambil manfaat dari rekayasa fitur yang efektif. Tugas
khusus meliputi klasifikasi, regresi, pengelompokan, deteksi outlier, pola/aturan,
pemodelan prediktif, pembedaan dan karakterisasi kelas data, penemuan konsep,
pembelajaran jarak jauh, estimasi probabilitas, konstruksi ontologi/taksonomi, pencarian
informasi, intelijen bisnis, dan sebagainya
Learning Objective
Dalam materi ini Anda akan mempelajari :
● Analisis data untuk mementukan representasi data awal
● Menjelaskan tahapan transformasi data dan hasil dapat dituangkan dalam bentuk tertulis
● Menentukan fitur mana yang paling penting dengan informasi yang saling mendukung
satu sama lain.
● Merekayasa fitur - Menemukan fitur baru untuk mendukung penyelesaian permasalahan
dunia nyata
● Melakukan analisis hasil pelabelan data
● Melakukan kodefikasi kategori dengan kardinalitas tinggi (high-cardinality categoricals)
dengan pendekatan encoding yang tepat
● Melakukan dimensi reduksi dengan pendekatan metode analisis komponen utama
(Principal Component Analysis)
Outline
● Prolog
● Feature vs Feature Engineering
● Fase Feature Engineering
○ Feature Understanding
○ Feature transformation
○ Feature generation
○ Feature selection
○ Feature analysis and evaluation
● Case Study
Prolog
Why Feature Engineering Matters?
Data scientists and machine learning engineers frequently gather data in order to solve
a real-life problem. These engineers have the unique job of engineering pipelines and
into something usable by the rest of the company, particularly the data scientists
and machine learning engineers.
Why Feature Engineering Matters?
Building Training
Refining Algorithm Set
5% 3% Sebuah survei yang dilakukan oleh para
Mining Data for
Patterns
9%
ilmuwan data di lapangan mengungkapkan
bahwa lebih dari 80% waktu dari data
scientist dihabiskan untuk mengumpulkan,
Collecting Data
membersihkan, dan mengorganisir data.
20%
Kurang dari 20% sisa waktu mereka
dihabiskan untuk membangun algoritma
Cleaning and atau model.
Organizing Data
64%
1https://whatsthebigdata.com/2016/05/01/data-scientists-spend-most-of-their-time-cleaning-data/.
Why Feature Engineering Matters?
Building Training
Others
Set
Refining Algorithm 5%
10%
4%
Mining Data for
Patterns Sebuah survei yang sama juga dilakukan
4%
untuk mengetahui bagian pekerjaan mana
yang dirasa kurang menyenangkan,
Collecting Data
21%
hasilnya 77% responden mengatakan
fase mengumpulkan, membersihkan,
dan mengorganisir data. adalah fase
yang dirasa kurang menyenangkan.
Cleaning and
Organizing Data
56%
1https://whatsthebigdata.com/2016/05/01/data-scientists-spend-most-of-their-time-cleaning-data/.
Why Feature Engineering Matters
“A stellar data scientist knows that preparing data is not only so important that it
takes up most of their time, they also know that it is an arduous process and can
Far too often, we take for granted clean data
be unenjoyable.
given to us by machine learning competitions and
academic sources. More than 90% of data, the data that is interesting,
and the most useful, exists in this raw format.”
Data setelah di
• Dec 16 9am: server bersihkan
shutting down &
restarting • Dec 16 9am: server
• Dec 16 10am: server shutting down &
resuming all restarting
operations • Dec 16 10am :
server resuming all
operations
Data awal
Data Cleaning
Why Feature Engineering Matters
Data setelah di
organisir
• Dec 16 9am: server
shutting down & Date Text
restarting
Dec 16 9am server shutting
• Dec 16 10am: server down &
resuming all restarting
operations
Dec 16 10am server resuming
all operations
Data awal
Data Organizing
Feature vs Feature Engineering
Dalam konteks machine learning, data
mining, and data analytics,
sebuah fitur (feature)
adalah sebuah atribut atau
Feature
variabel yang digunakan
untuk
merepresentasikan
atau mendeskripsikan
sebuah aspek dari
obyek tertentu.
Examples
Orang Mahasiswa
Usia NIM
Tinggi Tingkat
Feature
Fitur
● Fitur yang informatif merupakan Variabel
fundamental dasar dari analisis data.
● Fitur menggambar menggambarkan objek
yang mendasari, dan untuk membedakan Atribut
dan mengkarakterisasi kelompok objek
yang berbeda (eksplisit atau laten).
● Fitur sangat penting untuk menghasilkan
model prediksi yang akurat dan mudah
dijelaskan, dan menghasilkan hasil yang
baik dalam berbagai tugas analitik data. Fitur
Understanding The Basic
atribut
Photo Url
http://photo-storage.io/room/1
http://photo-storage.io/room/2
http://photo-storage.io/room/4
Feature
● Kategori
Fitur berjenis kategori biasanya merupakan sebuah himpunan yang berisi nilai diskrit. Sebagai contoh warna merupakan
sebuah fitur berjenis kategori yang dapat memiliki nilai {hitam, biru, kuning, cokelat, merah} Contoh lainnya adalah nilai
binary, yang mana fitur tersebut hanya dapat memiliki salah satu dari dua nilai yaitu 0 atau 1.
● Ordinal,
Contoh fitur ordinal adalah Degree dimana berisi {Bachelorm Master, PhD} dimana ketiga value tersebut di urutkan sebagai
berikut Bachelor < Master < PhD
● Numerik.
Fitur jenis ini berisi himpunan nilai numerik. Jenis fitur ini juga sering disebut sebagai fitur quantitative atau continuous.
Sebagai contoh: sebuah fitur umur adalah sebuah fitur berjenis numerik dimana merupakan sebuah himpunan nilai integer
antara 0 dan 150.
● Rasio.
Feature
Kegunaan (the usefulness / the importance ) dari sebuah fitur dapat diukur
dengan signifikan pengaruh fitur tersebur kepada hasil analitik data yang
dihasilkan. Misalnya, dalam klasifikasi ini sebagian besar dalam hal peningkatan
akurasi klasifikasi. Kemudahan pemahaman dan interpretasi dari fitur juga dapat
digunakan sebagai salah satu tolak ukur yang digunakan.
Feature
“Feature
engineering
Feature
is the process of transforming data
into features that better
● Feature Improvement
Membersihkan data, mengisi nilai yang kosong, mentransformasikan data yang tidak tersturktur, dan normalisasi data
● Feature Transformation
Pembentukan fitur baru dari fitur yang ada; ini sering dicapai dengan menggunakan pemetaan matematika.
● Feature Selection
adalah tentang memilih satu set kecil fitur dari yang sangat kumpulan fitur yang besar. Ukuran kumpulan
fitur yang dikurangi membuatnya layak secara komputasi untuk menggunakan algoritma tertentu.
Pemilihan fitur juga dapat menyebabkan peningkatan kualitas pada hasil dari algoritma tersebut.
● Feature Analysis
adalah tentang konsep, metode, dan ukuran untuk mengevaluasi kegunaan fitur dan set fitur. Feature
analysis juga sering dimasukkan sebagai salah bagian dari seleksi fitur.
● Unstructured data
Data yang ada sebagai entitas yang mengalir bebas dan tidak mengikuti hierarki organisasi standar seperti tabularitas.
Seringkali, data tidak terstruktur tampak bagi kami sebagai data blob, atau sebagai satu karakteristik (kolom).
● Quantitative
Data yang umumnya bersifat numerik. Mendeskripsikan kuantitas dari sebuah obyek tertentu.
Exploratory Data Analysis
Analisis Data Eksplorasi (EDA) adalah pendekatan/filosofi untuk analisis data yang
menggunakan berbagai teknik (kebanyakan grafis) untuk:
○ memaksimalkan wawasan ke dalam kumpulan data;
○ mengungkap struktur yang mendasarinya;
○ ekstrak variabel penting;
○ mendeteksi outlier dan anomali;
○ menguji asumsi yang mendasarinya;
○ mengembangkan model pelit; dan
○ menentukan pengaturan faktor yang optimal.
Exploratory Data Analysis
Sebagian besar teknik EDA bersifat grafis dengan beberapa teknik kuantitatif.
Alasan ketergantungan yang tinggi pada grafik adalah bahwa pada dasarnya peran
utama EDA adalah untuk mengeksplorasi data secara terbuka, dan grafik
memberikan para gambaran yang lebih jelas mengenai informasi dari data sehingga
dapat memberikan beberapa wawasan baru, yang seringkali tidak terduga, tentang
data. Terutama dalam memahami kombinasi dengan kemampuan pengenalan pola
data yang kita miliki.
Principal Component Analysis (PCA)
merupakan metode pengurangan dimensi menggunakan teknik statistik non-parametrik,
tidak terawasi, yang sering digunakan untuk mengurangi dimensi kumpulan data besar,
dengan mengubah kumpulan variabel besar menjadi lebih kecil yang masih berisi sebagian
besar informasi dalam kumpulan besar. set.
Principal Component Analysis (PCA) adalah sebuah metode yang sering digunakan untuk
pengurangan dimensi dalam pembelajaran mesin.
○ PCA adalah algoritma pembelajaran tanpa pengawasan karena arah komponen ini
dihitung murni dari set fitur penjelas tanpa referensi ke variabel respons.
Principal Component Analysis (PCA)
○ Normalisasikan data
PCA digunakan untuk mengidentifikasi komponen dengan varians maksimum, dan
kontribusi setiap variabel untuk komponen didasarkan pada besarnya varians. Ini
adalah praktik terbaik untuk menormalkan data sebelum melakukan PCA karena data
yang tidak diskalakan dengan unit pengukuran yang berbeda dapat mendistorsi
perbandingan relatif varians di seluruh fitur.
○ Membuat matriks kovarians untuk dekomposisi Eigen
Cara yang berguna untuk mendapatkan semua kemungkinan hubungan antara
semua dimensi yang berbeda adalah dengan menghitung kovarians di antara mereka
semua dan menempatkannya dalam matriks kovarians yang mewakili hubungan ini
dalam data. Memahami persentase kumulatif varians yang ditangkap oleh setiap
komponen utama merupakan bagian integral dari pengurangan set fitur.
Hands On Session
Referensi
● Ozdemir, Sinan Susarla, Divya - Feature engineering made easy identify unique features from your
dataset in order to build powerful machine learning systems (2018, Packt Publishing)
● Dong, Guozhu, Liu, H. - Feature Engineering For Machine Learning and Data Analytics
Tools / Lab Online
● Jupyter Notebook