Dato che un modello è valido solo quanto lo sono i dati su cui si basa, i data scientist dedicano gran parte del tempo alla data preparation e alla creazione di funzioni per creare modelli di alta qualità. A seconda della complessità dei dati non elaborati e del modello predittivo desiderato, la progettazione di funzioni può richiedere molti tentativi ed errori.
Alcune fonti e tutorial online suddividono l'ingegneria delle caratteristiche in passaggi discreti, il cui numero e nomi in genere variano. Questi passaggi possono includere la comprensione, la strutturazione o la costruzione, la trasformazione, la valutazione, l'ottimizzazione delle caratteristiche, e l'elenco potrebbe continuare.4 Sebbene possa essere utile per fornire una panoramica generale delle attività coinvolte nell'ingegneria delle caratteristiche, tale stratificazione suggerisce che l'ingegneria delle caratteristiche è un processo lineare. In effetti, l'ingegneria delle caratteristiche è un processo iterativo.
L'ingegneria delle caratteristiche dipende dal contesto. Richiede un'analisi sostanziale dei dati e una conoscenza del dominio. Questo perché una codifica efficace delle caratteristiche può essere determinata dal tipo di modello utilizzato, dalla relazione tra predittori e output e dal problema che un modello intende risolvere.5 A ciò si aggiunge il fatto che diversi tipi di set di dati, ad es. testo e immagini, potrebbero essere più adatti a tecniche di ingegneria delle caratteristiche diverse.6 Pertanto, può essere difficile fare osservazioni specifiche su come implementare al meglio l'ingegneria delle caratteristiche all'interno di un determinato algoritmo di machine learning.