Sometimes we want to use some features in our original dataset to create polynomial features in order to add non-linearity to our model.
The question is how to choose those features? Do we choose features with a relatively high correlation with the target variable? Do we choose features that have high importance according to some model that provides a list of feature importances like random forest or Xgboost? Or what?