Simple gradient descent

Messaggioda peppepegasus » 15/09/2011, 11:19

ciao,

sto cercando un codice fortran che implementi il Simple gradient descent per la risoluzione di un problema di minimizzazione. Ho riportato la stessa denominazione usata nell'articolo che sto studiando.
spero qualcuno mi possa aiutare e segnalare qualcosa.
grazie.
peppepegasus
Starting Member
Starting Member
 
Messaggi: 15
Iscritto il: 28/09/2010, 18:49

Re: Simple gradient descent

Messaggioda hamming_burst » 15/09/2011, 22:02

ciao,
non conosco questa denominazione "Simple gradient descent", ma ho guardato su internet a me ricorda un algoritmo o modello di risoluzione con un altro nome.
Potresti dirmi che articolo stai leggendo. :-)
"Un giorno tutti noi sciocchi saremo morti e allora i vivi andranno avanti. ... tutti gli uomini saranno fratelli e nessuno se ne starà al sole in panciolle a farsi nutrire dai suoi compagni"
[Jack London]

HOFL...che stress!!
Avatar utente
hamming_burst
Moderatore
Moderatore
 
Messaggi: 2271
Iscritto il: 04/07/2009, 10:53

Re: Simple gradient descent

Messaggioda peppepegasus » 16/09/2011, 09:30

ciao,

si tratta di un articolo che ha che fare con la svd applicata ai sistemi di raccomandazione.
l'articolo in cui è citato è presente al seguente link:
http://public.research.att.com/~volinsk ... 8koren.pdf
non so se è equivalente al metodo del gradiente discendete e/o si tratta di una variante o cosa.
se mi riesci ad aiutare te ne sono grato.
ciao.
peppepegasus
Starting Member
Starting Member
 
Messaggi: 15
Iscritto il: 28/09/2010, 18:49

Re: Simple gradient descent

Messaggioda hamming_burst » 16/09/2011, 15:20

ok, appena ho un attimo gli do una occhiata.
forse è solo un'impressione per la terminologia utilizzata, devo rivedere dei vecchi appunti, ma ti saprò dire :-)
"Un giorno tutti noi sciocchi saremo morti e allora i vivi andranno avanti. ... tutti gli uomini saranno fratelli e nessuno se ne starà al sole in panciolle a farsi nutrire dai suoi compagni"
[Jack London]

HOFL...che stress!!
Avatar utente
hamming_burst
Moderatore
Moderatore
 
Messaggi: 2271
Iscritto il: 04/07/2009, 10:53

Re: Simple gradient descent

Messaggioda Deckard » 16/09/2011, 18:40

Hanno semplicemente leggermente modificato la classica discesa del gradiente; non ho letto l'articolo, ma questo pezzo dovrebbe essere abbastanza chiarificatore:
we have found that the following simple gradient descent solver works much faster. [...] we modify the parameters by moving in the opposite direction of the gradient, yielding: [...]
http://www.mathcomp.leeds.ac.uk/turing2012/

Hilbert space is a big place.
Deckard
Junior Member
Junior Member
 
Messaggi: 263
Iscritto il: 17/08/2010, 08:58

Re: Simple gradient descent

Messaggioda hamming_burst » 19/09/2011, 22:41

In merito alla terminlogia "gradient descent" a cui mi ricordava un algoritmo, ecco ho trovato la corrispondenza:
- Best Improvement (aka gradient descent, greedy hill-climbing)

questa tecnica viene utilizzita nella scelta del pivoting degli algoritmi Iterative (Best) Improvement e compagnia. :-)
"Un giorno tutti noi sciocchi saremo morti e allora i vivi andranno avanti. ... tutti gli uomini saranno fratelli e nessuno se ne starà al sole in panciolle a farsi nutrire dai suoi compagni"
[Jack London]

HOFL...che stress!!
Avatar utente
hamming_burst
Moderatore
Moderatore
 
Messaggi: 2271
Iscritto il: 04/07/2009, 10:53

Re: Simple gradient descent

Messaggioda Deckard » 20/09/2011, 08:11

ham_burst ha scritto:In merito alla terminlogia "gradient descent" a cui mi ricordava un algoritmo, ecco ho trovato la corrispondenza:
- Best Improvement (aka gradient descent, greedy hill-climbing)

questa tecnica viene utilizzita nella scelta del pivoting degli algoritmi Iterative (Best) Improvement e compagnia. :-)

Non so se stiamo dicendo la stessa cosa (il termine pivoting mi ricorda troppo il simplesso), ma la discesa del gradiente è un algoritmo di ottimizzazione iterativo per funzioni non lineari (altrimenti a che servirebbe?) non vincolate che utilizza solo le derivate parziali al primo ordine (il vettore gradiente appunto) per determinare lo spostamento dal punto attuale a quello successivo alla ricerca di un minimo.
http://www.mathcomp.leeds.ac.uk/turing2012/

Hilbert space is a big place.
Deckard
Junior Member
Junior Member
 
Messaggi: 263
Iscritto il: 17/08/2010, 08:58

Re: Simple gradient descent

Messaggioda hamming_burst » 20/09/2011, 21:38

Deckard ha scritto:Non so se stiamo dicendo la stessa cosa (il termine pivoting mi ricorda troppo il simplesso), ma la discesa del gradiente è un algoritmo di ottimizzazione iterativo per funzioni non lineari (altrimenti a che servirebbe?) non vincolate che utilizza solo le derivate parziali al primo ordine (il vettore gradiente appunto) per determinare lo spostamento dal punto attuale a quello successivo alla ricerca di un minimo.


allora se mi dici questo, il nome è solo "simile". Il Best improvement serve per scegliere in modo randomizzato i vicini migliori in un punto nella ricerca locale, da questo greedy.
Il terminre Pivoting deriva dal fatto dello "scambio" del punto attuale con un suo vicino "migliore".

comunque ti ringrazio molto della "smentita" :-)
"Un giorno tutti noi sciocchi saremo morti e allora i vivi andranno avanti. ... tutti gli uomini saranno fratelli e nessuno se ne starà al sole in panciolle a farsi nutrire dai suoi compagni"
[Jack London]

HOFL...che stress!!
Avatar utente
hamming_burst
Moderatore
Moderatore
 
Messaggi: 2271
Iscritto il: 04/07/2009, 10:53


Torna a Analisi Numerica e Ricerca Operativa

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti