Loss Functions: An Algorithm-wise Comprehensive Summary
Loss functions of common ML algorithms depicted in a single frame.
Loss functions are a key component of ML algorithms.
They specify the objective an algorithm should aim to optimize during its training. In other words, loss functions tell the algorithm what it should be trying to minimize or maximize in order to improve its performance.
Therefore, knowing which loss functions are best suited for specific ML algorithms is extremely crucial.
The above visual depicts the most commonly used loss functions with various ML algorithms.
Linear Regression: Mean Squared Error (MSE). This can be used with and without regularization, depending on the situation.
Logistic regression: Cross-Entropy Loss or Log Loss, with and without regularization.
Decision Tree and Random Forest:
Classifier: Gini impurity or information gain.
Regressor: Mean Squared Error (MSE)
Support Vector Machines (SVMs): Hinge loss. Read more: Wikipedia.
k-Nearest Neighbors (kNN): No loss function. kNN is a non-parametric lazy learning algorithm. It works by retrieving instances from the training data, and making predictions based on the k nearest neighbors to the test data instance.
Naive Bayes: No loss function. Can you guess why? Let me know in the comments if you need help.
Neural Networks: They can use a variety of loss functions depending on the type of problem. The most common are:
Regression: Mean Squared Error (MSE).
Classification: Cross-Entropy Loss.
AdaBoost: Exponential loss function. AdaBoost is an ensemble learning algorithm. It combines multiple weak classifiers to form a strong classifier. In each iteration of the algorithm, AdaBoost assigns weights to the misclassified instances from the previous iteration. Next, it trains a new weak classifier and minimizes the weighted exponential loss.
Other Boosting Algorithms:
Regression: Mean Squared Error (MSE).
Classification: Cross-Entropy Loss.
KMeans Clustering: No loss function. KMeans is an unsupervised algorithm.
Over to you: Which algorithms have I missed?
👉 Read what others are saying about this post on LinkedIn and Twitter.
👉 If you liked this post, don’t forget to leave a like ❤️. It helps more people discover this newsletter on Substack and tells me that you appreciate reading these daily insights. The button is located towards the bottom of this email.
👉 If you love reading this newsletter, feel free to share it with friends!
Find the code for my tips here: GitHub.
I like to explore, experiment and write about data science concepts and tools. You can read my articles on Medium. Also, you can connect with me on LinkedIn and Twitter.