Autres techniques d'optimisation

Technique de descente de gradient itérée

La descente de gradient, également appelée descente la plus raide, est un algorithme d'optimisation itératif pour trouver un minimum local d'une fonction. Tout en minimisant la fonction, nous nous préoccupons du coût ou de l'erreur à minimiser (Souvenez-vous du problème du voyageur de commerce). Il est largement utilisé dans l'apprentissage en profondeur, ce qui est utile dans une grande variété de situations. Le point à retenir ici est que nous sommes concernés par l'optimisation locale et non par l'optimisation globale.

Idée de travail principale

Nous pouvons comprendre l'idée de travail principale de la descente de gradient à l'aide des étapes suivantes -

  • Tout d'abord, commencez par une première estimation de la solution.

  • Ensuite, prenez le gradient de la fonction à ce point.

  • Plus tard, répétez le processus en faisant avancer la solution dans le sens négatif du gradient.

En suivant les étapes ci-dessus, l'algorithme finira par converger là où le gradient est nul.

Concept mathématique

Supposons que nous ayons une fonction f(x)et nous essayons de trouver le minimum de cette fonction. Voici les étapes pour trouver le minimum def(x).

  • Tout d'abord, donnez une valeur initiale $ x_ {0} \: pour \: x $

  • Prenons maintenant la fonction gradient $ \ nabla f $ ⁡of, avec l'intuition que le gradient donnera la pente de la courbe en x et sa direction indiquera l'augmentation de la fonction, pour trouver la meilleure direction pour la minimiser.

  • Maintenant changez x comme suit -

    $$ x_ {n \: + \: 1} \: = \: x_ {n} \: - \: \ theta \ nabla f (x_ {n}) $$

Ici, θ > 0 est le taux d'entraînement (taille de pas) qui force l'algorithme à faire de petits sauts.

Estimation de la taille des pas

En fait, une taille de pas incorrecte θpeut ne pas atteindre la convergence, par conséquent une sélection minutieuse de la même chose est très importante. Les points suivants doivent être rappelés lors du choix de la taille de pas

  • Ne choisissez pas une taille de pas trop grande, sinon cela aura un impact négatif, c'est-à-dire qu'il divergera plutôt que de converger.

  • Ne choisissez pas une taille de pas trop petite, sinon la convergence prend beaucoup de temps.

Quelques options en ce qui concerne le choix de la taille du pas -

  • Une option consiste à choisir une taille de pas fixe.

  • Une autre option consiste à choisir une taille de pas différente pour chaque itération.

Recuit simulé

Le concept de base du recuit simulé (SA) est motivé par le recuit dans les solides. Dans le processus de recuit, si nous chauffons un métal au-dessus de son point de fusion et le refroidissons, les propriétés structurelles dépendront de la vitesse de refroidissement. On peut dire aussi que SA simule le processus de métallurgie du recuit.

Utilisation dans ANN

SA est une méthode de calcul stochastique, inspirée de l'analogie du recuit, pour approximer l'optimisation globale d'une fonction donnée. Nous pouvons utiliser SA pour former des réseaux de neurones à réaction directe.

Algorithme

Step 1 - Générez une solution aléatoire.

Step 2 - Calculez son coût en utilisant une fonction de coût.

Step 3 - Générer une solution voisine aléatoire.

Step 4 - Calculez le coût de la nouvelle solution par la même fonction de coût.

Step 5 - Comparez le coût d'une nouvelle solution avec celui d'une ancienne solution comme suit -

Si CostNew Solution < CostOld Solution puis passez à la nouvelle solution.

Step 6 - Tester la condition d'arrêt, qui peut être le nombre maximum d'itérations atteint ou obtenir une solution acceptable.