Feature engineering is often an important component to machine learning (it was used heavily to win the KDD Cup in 2010). However, I find that most feature engineering techniques either
- destroy any intuitive meaning of the underlying features or
- are very specific to a particular domain or even particular types of features.
A classic example of the former would be principal component analysis. It would seem to me that any knowledge that a subject-matter expert would have about the features would be destroyed by converting those features to principal components.
Contrast that with a simple technique of converting a date into features for "day of month" and "day of week." The underlying meaning is still retained in the new features, but obviously this particular technique only applies for dates and not arbitrary features.
Is there any standard body of feature engineering techniques that do not destroy the meaning of the underlying features while also being applicable to arbitrary domains (or at least a wide variety of domains)?