[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4980: session_start(): Write of lock failed
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4980: session_start(): Unable to clear session lock record
Optimisation gradient fonction matricielle [9 réponses] : ✯✎ Supérieur - 280530 - Forum de Mathématiques: Maths-Forum

Optimisation gradient fonction matricielle

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
Gurvan44
Membre Naturel
Messages: 64
Enregistré le: 20 Juin 2017, 23:25
Localisation: Nantes (Bouguenais)

Optimisation gradient fonction matricielle

par Gurvan44 » 03 Jan 2024, 23:22

Bonjour, je dois trouver quand le gradient de cette fonction s'annule.

la question : https://photos.app.goo.gl/KagzxWf9LNNVJN8A9

Problème je galère à manipuler ces objets, rien que calculer le gradient de la fonction
je sais pas trop quoi dire, c'est une application linéraire donc sa différentielle est elle-même mais le gradient c'est juste la transposée ? de quelle fonction ?
Pareil pour l'application inverse, peut-on sortir gradient de cette différentielle ?
Comment m'en sortir ? est-ce possible de faire un genre de changement de variable pour travailler sur des variables plus simples.


Merci beaucoup pour votre attention et vos pistes !



Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21709
Enregistré le: 11 Nov 2009, 21:53

Re: Optimisation gradient fonction matricielle

par Ben314 » 04 Jan 2024, 00:15

Salut,
Ton application elle n'est pas vraiment linéaire, mais affine (à cause du au début) et sa différentielle est constante, égale en tout point à la partie linéaire : .

Après, là, je ne pense pas que tu puisse parler de gradient pour le moment. Je suis plutôt "math pures" donc le gradient ça me parle pas trop (contrairement à la différentielle), mais il me semble bien que ça n'a du sens que dans le cas d'une fonction à valeurs réelles et pas dans le cas d'une fonction à valeurs vectorielle.

Par contre, une fois que tu prend le déterminant, là, oui, tu va pouvoir parler de gradient vu que le résultat sera bien un réel et, sauf erreur, du fait de l'indication (1) qu'on te donne, la fonction définie par a pour gradient
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

Gurvan44
Membre Naturel
Messages: 64
Enregistré le: 20 Juin 2017, 23:25
Localisation: Nantes (Bouguenais)

Re: Optimisation gradient fonction matricielle

par Gurvan44 » 04 Jan 2024, 09:21

Salut Ben, merci pour ta réponse ! oui moi aussi je suis plus à l'aise avec la différentielle.. peut-être pour résoudre mon problème d'optim on peut raisonner qu'avec des différentielles.

Pour le gradient que tu proposes, si alors non ?
Et du coup et du coup comment identifier ? c'est bien le terme tel que ?

Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21709
Enregistré le: 11 Nov 2009, 21:53

Re: Optimisation gradient fonction matricielle

par Ben314 » 04 Jan 2024, 15:03

Vu ce que tu écrit, je me demande s'il n'y a pas un truc qui t'a échappé :
La définition théorique du gradient, c'est pour une fonction est un espace Euclidien (voire un Hilbert), c'est à dire muni d'un produit scalaire.
Et dans ce cas, le gradient est défini par de (produit scalaire).
Dans le cas où , le produit scalaire de deux vecteurs colonne et c'est (qui est une matrice qu'on identifie à un réel).
Mais dans le cas où est un espace de matrice, le produit scalaire, ça va être comme d'habitude la somme des produit terme à terme : (=un réel) et n'est surement pas égal à (vu que c'est une matrice) mais qui vaut en fait (la trace).

Sinon, concernant les gradients, ce que j'ai écrit, c'est que :
1)
Ce qui signifierais que le gradient de c'est qui, vu l'indication (1), m'a laissé perplexe jusqu'à ce que je réalise que ta grosse fonction a comme espace de départ l'ensemble des matrices symétriques (définies positives).
2)
(car ). Donc le gradient de ça serait qu'on peut un peu simplifier vu que est supposée symétrique.

Sauf que, arrivé à ce point, j'ai laissé tombé vu qu'il y a forcément quelque chose qui m'a échappé : l'indication (1) ne me semble correcte que lorsque est symétrique alors que la matrice avec laquelle on doit utiliser l'indication n'a pas de raison de l'être.
Et d'ailleurs, je ne comprend pas non plus pourquoi les déterminant des matrices devraient être >0 (pour prendre le logarithme) alors qu'on a aucune hypothèses sur les matrices ...
Modifié en dernier par Ben314 le 04 Jan 2024, 23:42, modifié 2 fois.
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

Gurvan44
Membre Naturel
Messages: 64
Enregistré le: 20 Juin 2017, 23:25
Localisation: Nantes (Bouguenais)

Re: Optimisation gradient fonction matricielle

par Gurvan44 » 04 Jan 2024, 21:57

Déjà merci encore beaucoup pour ta réponse !

Oui en effet j'avais loupé un truc, première fois que je manipule vraiment des différentielles de matrices j'avais pas pensé à reconsidérer le produit scalaire convenant.

Du coup je suis d'accord avec tout tes calculs (j'ai juste pas l'équivalent qui transforme le det en trace mais je veux bien l'admettre)

Pour l'indication, en effet elle semble valable lorsque A symétrique.
Les sont aussi symétriques en effet (mon problème est issue de ce papier : hal.science/ ** hal-01218612 , les V sont définies page 5). Donc les le sont aussi.

Pour la suite, si on considère l'application et , sa différentielle est elle-même car linéaire et donc égale à . Donc là il faut que je trouve quoi mettre à la place des ?? pour déterminer le gradient, mais je sais par un calcul de dérivées partielles que le gradient est donc il faut que je montre que c'est ça ?

Et du coup pour trouver mon deuxième gradient il faut que trouve les ?? dans ce calcul ? :
https://photos.app.goo.gl/wx8VNjEFbS6tYwuf9

Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21709
Enregistré le: 11 Nov 2009, 21:53

Re: Optimisation gradient fonction matricielle

par Ben314 » 04 Jan 2024, 23:56

Concernant le seul truc non trivial que j'ai utilisé dans le précédent post, à savoir que ça peut se voir très facilement par exemple en considérant la base "naturelle" des matrices, c'est à dire les matrices entièrement nulle sauf un 1 ligne colonne où il est clair que si le 1 de n'est pas sur la diagonale et .

Sinon, avec les matrices symétriques, ça risque effectivement de mieux marcher :
Ben314 a écrit:Donc le gradient de ça serait
Là, le gradient ça serait

Concernant un truc de ce style là : que tu veut écrire comme un produit scalaire (i.e. sous la forme de ), j'aurais tendance à pas trop réfléchir : tu vérifie à la main que puis tu applique avec à la place de : donc le gradient c'est .

Donc dans ton truc, si alors


Et le gradient c'est

(aux erreurs de calcul près . . . )
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

Gurvan44
Membre Naturel
Messages: 64
Enregistré le: 20 Juin 2017, 23:25
Localisation: Nantes (Bouguenais)

Re: Optimisation gradient fonction matricielle

par Gurvan44 » 05 Jan 2024, 08:54

Ok pour le det merci.

Je n'ai pas compris les deux étapes suivantes :




Pour l'étape 2, je reconnais vite fait la différentielle inverse mais je ne vois pas trop si c'est retrouvé ou utilisé ni comment..

Aussi, pourquoi avoir inversé AV en VA à la toute fin ? c'est une coquille ?

Du coup j'ai essayé de résoudre mon problème initial (le f de la photo du 1er poste) avec ton résultat mais je suis bloqué ici :







Là je vois pas trop d'issue..

Merci encore chaleureusement :)

Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21709
Enregistré le: 11 Nov 2009, 21:53

Re: Optimisation gradient fonction matricielle

par Ben314 » 05 Jan 2024, 13:36

Gurvan44 a écrit:

Pour le morceau "central" (le reste est juste recopiée) tu as :




Puis j'utilise le fait que, pour proche de 0, on a
.

Gurvan44 a écrit:Aussi, pourquoi avoir inversé AV en VA à la toute fin ? c'est une coquille ?
Non, ce n'est pas une coquille : tes matrices et sont certes symétriques, mais le produit a de forte chance de ne pas l'être et tu as

Sinon, dans l'équation telle qu'elle est sur ta feuille, moi je lit plutôt ça (où les ne sont pas en facteur du total :

Et à priori, je ne vois pas trop quoi faire. Le seul truc qui me vient à l'esprit, c'est d'utiliser le fait que les matrice apparaissant en deuxième dans la somme sont de rang 1 mais je ne sait pas si ça mène à grand chose, surtout s'il n'y a pas de lien entre le de la somme et la taille des matrices.
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

Gurvan44
Membre Naturel
Messages: 64
Enregistré le: 20 Juin 2017, 23:25
Localisation: Nantes (Bouguenais)

Re: Optimisation gradient fonction matricielle

par Gurvan44 » 05 Jan 2024, 18:59

Ok super j'ai tout compris et détaillé mes calculs dans mon fichier latex, je montrerai qu'on a été aussi loin qu'on ait pu.
le pdf de mon latex : https://drive.google.com/file/d/1pXzaQo ... share_link

Enfait il s'agit du calcul des du papier cité précedemment, c'est l'étape de maximisation d'un algo dit "Expectation - Maximisation" (EM).
On peut y voir les page 8 qui sont plus faciles à calculer mais (comme par hasard ehe) l'update des n'est pas sur le papier, les autrices n'en parlent juste pas..

Et pour les qui sont facteurs de qui, c'est moi qui n'ai pas bien écrit, ils sont bien en facteur de l'ensemble.

Merci beaucoup pour ton aide et ton enseignement, j'ai appris pas mal de chose je suis très content !
Et à moins que t'aies l'envie de regarder le papier j'imagine que tu as fait tout ce que tu pouvais pour m'aider donc merci beaucoup et à plus tard pour de nouvelles aventures peut-être :D

Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21709
Enregistré le: 11 Nov 2009, 21:53

Re: Optimisation gradient fonction matricielle

par Ben314 » 05 Jan 2024, 19:08

Non, regarder le papier, ça me botte pas plus que de raison, mais bonne continuation à toi . . .
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 46 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite
[phpBB Debug] PHP Warning: in file Unknown on line 0: Unknown: Failed to write session data (memcached). Please verify that the current setting of session.save_path is correct (172.16.100.103:11211)