* Apply a (say, SVM) classification model to each object (row) by producing a new column
* Generate a new column as a difference between its values and its average over all rows.
In both cases, you produce a new column (=feature) by applying some transformation. Also, in both cases, you need to find parameters of this transformation from the data. In the first case, by training SVM model. In the second case, by find the average value.
Conclusion: there is no essential difference between defining/training a feature and a ML model.