Why not use evaluation metrics as the loss function? Most algorithms use their own loss function for optimization. But these loss functions are always different from metrics used for actual evaluation. For example, for building binary classification models, log loss is normally used as the loss function, but accuracy or F1 score is used for evaluation. loss functions and evaluation metrics are not always highly correlated. So I wonder why we don't just use evaluation metrics * -1 as the loss function.

It's because accuracy is not a proper scoring rule. You will want to consider the cost of misclassification.
Here are some more useful links:

*

*Example when using accuracy as an outcome measure will lead to a wrong conclusion.

*Use of proper scoring rule when classification is required.

*The statistical part of prediction ends with outputting a distribution.
And here the excellent posts by Frank Harrel:

*

*Classification vs. Prediction.

*Damage Caused by Classification Accuracy and Other Discontinuous Improper Accuracy Scoring Rules
Here's a counter-example where using accuracy as loss function was actually better than using the Brier-score.
You'll find that this answer is not definitive, and it depends on your actual problem if using evaluation metrics is a valid choice. I suppose it depends on the answer to the question "Does using a surrogate loss that also is a proper scoring rule reflect the learning goal of the problem well?"
