L'optimisation est l'acte d'améliorer une méthode ou une conception. En programmation, l'optimisation consiste généralement à augmenter la vitesse d'un algorithme ou à réduire les ressources dont il a besoin. Les algorithmes d'optimisation numérique utilisés dans l'apprentissage automatique sont un autre sens de l'optimisation.