PDA

View Full Version : Fitting non solo polinomiale


Scoperchiatore
08-11-2003, 21:32
nell'esame di economia che dovrò dare Martedì, capita spesso di trovarmi davanti a un fitting...

Questo vuol dire che mi si danno dei dati in tabella e io devo ricavare una funzione che approssimi in modo migliore l'andamento di tali dati, e possa descrivere il processo in modo migliore possibile

ora non si tratta solo di fitting polinomiale, su cui ho trovato materiale in rete, ma anche di fitting il cui risultato deve essere una funzione logaritmica/esponenziale...

qualcuno sa consigliarmi del materiale (dispense, siti, etc...) in cui sia spiegata questa tecnica?

mi interessa soprattuto il "come" e non il perchè, per ovvie ragioni di tempo! :D

a2000
08-11-2003, 21:39
basterebbe una paginetta (senza parole).

Scoperchiatore
08-11-2003, 22:01
Originariamente inviato da a2000
basterebbe una paginetta (senza parole).

cioè ? :)

Fenomeno85
08-11-2003, 22:16
Originariamente inviato da a2000
basterebbe una paginetta (senza parole).

uella a2000 come va?? è da tanto che non ti vedevo ti davo per disperso:D

Scoperchiatore
08-11-2003, 22:25
Non insozzare i thread altrui...:nonsifa: :D

ma sto fitting non li fa nessuno?? :confused: :cry: :cry:

Fenomeno85
08-11-2003, 22:28
Originariamente inviato da Scoperchiatore
Non insozzare i thread altrui...:nonsifa: :D

ma sto fitting non li fa nessuno?? :confused: :cry: :cry:
a2000 mi sa proprio di si ... nella pagina mi sa che ti voleva dire che devi mettergli giù una tabella o qualcosa su sta roba ;)

Scoperchiatore
08-11-2003, 22:35
Originariamente inviato da Fenomeno85
a2000 mi sa proprio di si ... nella pagina mi sa che ti voleva dire che devi mettergli giù una tabella o qualcosa su sta roba ;)

la tabella cell'ho già dai dati... è trovare un procedimento per arrivare dai dati alla funzione da analizzare che non so fare...

Fenomeno85
08-11-2003, 22:38
Originariamente inviato da Scoperchiatore
la tabella cell'ho già dai dati... è trovare un procedimento per arrivare dai dati alla funzione da analizzare che non so fare...

devi postare la tabella che dopo lui ti dice come fare ... ti sorprenderai di quanto è un genio a2000;)

a2000
09-11-2003, 08:59
si può illustrare il metodo di interpolazione con minimizzazione di una funzione di errore (in genere sommatoria dei minimi quadrati pesati) con una sola dimostrazione qualunque sia la funzione interpolante scelta (anche a più variabili).
Se la funzione interpolante è lineare rispetto ai coefficienti (ma può essere arbitraria rispetto alle variabili indipendenti) allora la determinazione dei coefficienti della funzione interpolante si riduce alla soluzione di un sistema lineare.

La dimostrazione e le formule di calcolo finali stanno in una pagina (arial 12).

a2000
09-11-2003, 09:00
grazie dei complimenti Fenomeno85. :)

Scoperchiatore
09-11-2003, 09:21
Originariamente inviato da a2000
si può illustrare il metodo di interpolazione con minimizzazione di una funzione di errore (in genere sommatoria dei minimi quadrati pesati) con una sola dimostrazione qualunque sia la funzione interpolante scelta (anche a più variabili).
Se la funzione interpolante è lineare rispetto ai coefficienti (ma può essere arbitraria rispetto alle variabili indipendenti) allora la determinazione dei coefficienti della funzione interpolante si riduce alla soluzione di un sistema lineare.

La dimostrazione e le formule di calcolo finali stanno in una pagina (arial 12).

Ok capito, però mi interesserebbe reperire il metodo per fare cotal fitting...

più che altro, avendo i dati, devo scegliere 1) la funzione di errore (e rimango fisso sui minimi quadrati) 2) la funzione da "fittare"...

come faccio a capire se trattasi di esponenziale, logaritmo, polinomio, trigonometrica, e chi più ne ha...?

che facoltà fai? magari c'è qualche sito, appunto, dispensa, su come farlo....;)

Le dimostrazioni mi interessano per cultura personale, ma non ho tempo per leggerle... :D mi fido! :D

a2000
09-11-2003, 09:42
le formule finali per il calcolo per qualunque funzione interpolante, il come farlo, stanno nel quarto finale di quella pagina.

la funzione interpolante si sceglie in base al best fit che si può ottenere.

se vuoi, si può fare tutto anche con excel anche per le funzioni interpolanti più complesse e anche non lineari rispetto ai coefficienti.

a2000
09-11-2003, 09:51
che "attrezzo" ti puoi portare all'esame ?

carta e penna
macchinetta
macchinetta programmabile
portatile
cellulare (:D)

comunque basta la carta e penna.

Scoperchiatore
09-11-2003, 09:52
Originariamente inviato da a2000
le formule finali per il calcolo per qualunque funzione interpolante, il come farlo, stanno nel quarto finale di quella pagina.

la funzione interpolante si sceglie in base al best fit che si può ottenere.

se vuoi, si può fare tutto anche con excel anche per le funzioni interpolanti più complesse e anche non lineari rispetto ai coefficienti.

vedo che parliamo due linguaggi differenti :cry: :cry:

quella pagina non cell'ho, e non saprei come farmela... :cry:

Il fatto è che devo farlo in un esame... non avrò excel all'esame, e quindi volevo solo un metodo abbastanza rapido per calcolarle a mano...

se si trattasse solo di dimostrare, sarei felice di fare solo quello (almeno userei la logica e non farei i conti della serva) ma il prof dice "Se alla fine non esce fuori un numero, vi boccio" :muro: :muro:

quindi... ti rinnovo la domanda, sapresti indicarmi qualche risorsa in rete in cui qualcuno abbia spiegato la metodologia per effettuare un fitting ? ;) di qualunque tipo, però, perchè polinomiale è abbastanza facile, ma "generale" mi risulta più complesso.... :mc: ;)

Insomma, tu dove l'hai letto come si effettua il fitting? ;)

Scoperchiatore
09-11-2003, 09:53
Originariamente inviato da a2000
che "attrezzo" ti puoi portare all'esame ?

carta e penna
macchinetta
macchinetta programmabile
portatile
cellulare (:D)

comunque basta la carta e penna.

carta e penna! :D

a2000
09-11-2003, 09:57
a ma cazzo, ti dico che c'hai le formule pronte per l'uso per fare il fitting con qualunque funzione !

a2000
09-11-2003, 10:00
infatti ce le ho io.

solo che le deve chiedere ! :D :D

a2000
09-11-2003, 10:04
prooooontoooooo ?????

a2000
09-11-2003, 10:08
Originariamente inviato da Scoperchiatore
....
Insomma, tu dove l'hai letto come si effettua il fitting? ;)

diciamo che ci ho fatto un esame e qualche centinaio di applicazioni.

Scoperchiatore
09-11-2003, 10:12
Originariamente inviato da a2000
diciamo che ci ho fatto un esame e qualche centinaio di applicazioni.

ok, non avevo detto chiaramente che mi servivano le formule pronte per l'uso! :D

se me le dessi, mi faresti gran favore... ;) :ave:

Fenomeno85
09-11-2003, 10:12
Originariamente inviato da a2000
grazie dei complimenti Fenomeno85. :)

ma è la verità :) e come al solito hai la soluzione :D

a2000
09-11-2003, 10:14
Originariamente inviato da Scoperchiatore
ok, non avevo detto chiaramente che mi servivano le formule pronte per l'uso! :D

se me le dessi, mi faresti gran favore... ;) :ave:

OK.

StefAno Giammarco
09-11-2003, 10:16
Questa discussione è una delle più divertenti che io abbia letto negli ultimi mesi :D :D :D

a2000, sei preparato anche come cabarettista :D :D

a2000
09-11-2003, 10:16
Originariamente inviato da Fenomeno85
ma è la verità :) e come al solito hai la soluzione :D

troppo gentile.

Scoperchiatore
09-11-2003, 10:17
Originariamente inviato da StefAno Giammarco
Questa discussione è una delle più divertenti che io abbia letto negli ultimi mesi :D :D :D

a2000, sei preparato anche come cabarettista :D :D

gente che specula sul dolore altrui... :nono: ah, questo mondo cinico, dove andremo a finire?? :cry:

:D :sofico:

Fenomeno85
09-11-2003, 10:18
Originariamente inviato da a2000
troppo gentile.

io faccio veramente pochi complimenti alle persone ma quando ce vo ce vo :D

StefAno Giammarco
09-11-2003, 10:20
Originariamente inviato da Scoperchiatore
gente che specula sul dolore altrui... :nono: ah, questo mondo cinico, dove andremo a finire?? :cry:

:D :sofico:

Che vuoi, non c'è più religione e se c'è... e quella sbagliata :D

a2000
09-11-2003, 10:21
Originariamente inviato da StefAno Giammarco
Questa discussione è una delle più divertenti che io abbia letto negli ultimi mesi :D :D :D

a2000, sei preparato anche come cabarettista :D :D

è la mia prima occupazione !

ti consiglio anche:

http://forum.hwupgrade.it/showthread.php?s=&threadid=555066&pagenumber=3

StefAno Giammarco
09-11-2003, 10:23
Originariamente inviato da a2000
è la mia prima occupazione !

ti consiglio anche:

http://forum.hwupgrade.it/showthread.php?s=&threadid=555066&pagenumber=3

Mo gli do un occhio, quella discussione non l'ho mai neanche aperta.

a2000
09-11-2003, 10:27
purtroppo neanch'io l'ho mai aperta :(

:rotfl: :rotfl: :rotfl:

StefAno Giammarco
09-11-2003, 10:28
Ho letto.
Bravo a2000, confermo che sei un bravo cabarettista (ma confermo anche che se il tuo bersaglio non ti capisce finisce con l'innervosirsi). :D

Mi sembra di capire che sei un uomo di multiforme ingegno...

a2000
09-11-2003, 10:31
ma no, direi che i miei interessi sono abbastanza uni-ficati :D

Zontar
09-11-2003, 13:15
Ciao, fittare un set di dati usando solo la penna e il foglio non e' che sia banalissimo.
Non ho capito se ti puo' capitare di avere un set di dati che va fittato con un polinomio che puo' avere al suo interno anche una funzione esponenziale o logaritmica (quindi tipo y=a(x^3)+b(x^2)+c(logx)) o invece il tuo set di dati va fittato SOLO con una esponenziale.

Se il caso e' il primo onestamente la vedo dura, altrimenti e' molto piu' semplice.
La prima cosa che ti consiglio e' farti velocemente un grafico, anche a spanne, per avere una idea di quello che andrai a fittare (capisci subito se e' un polinomio o semplicemente un esponenziale o una logaritmica)

Ammettiamo che tu abbia capito che la funzione che devi usare e' una esponenziale, a questo punto si usa un banale trucco. Ammettiamo sempre che tu conosca bene il modo per fittare una retta tramite il metodo dei minimi quadrati.

Una funzione esponenziale del tipo Y=A*exp(Bx) (A,B tue incognite del fit) puo' tranquillamente essere linearizzata estraendo il logaritmo e ottenendo lnY=lnA+Bx e permettendoti di usare il metodo dei minimi quadrati come se la tua funzione fosse una retta del tipo Z=C+Bx (dove z=lny e c=lnA)

In poche parole quello che devi fare e' fare il logaritmo di tutti i tuoi dati Y e a quel punto andarli a fittare come fossero una retta. Quello che otterrai saranno C e B. B ti va bene cosi' come e', di C dovrai invece farne l'esponenziale per ottenere A.

Rileggendo mi rendo conto di non essere stato chiarissimo :), provo con un esempio,questi sono i tuoi dati

X Y
1 2.72
2 7.39
3 20.1

Capisci subito che e' una esponenziale tipo Y=A*exp(Bx),e vai a calcolarti Z=lnY, ottenendo

X Y z
1 2.72 1
2 7.39 2
3 20.1 3

A questo punto fitti linearmente x e z con Z=c+bx e trovi C=0 e B=1
B ti va bene cosi' come e', per trovare A devi fare A=exp(C)=1

La tua funzione di fit iniziale e' y= 1 * exp (1x)
L'esempio era banale, ma spero sia servito per capire.

a2000
10-11-2003, 11:31
ti è chiaro o ti serve un'altra paginetta con un esempio ?

Scoperchiatore
10-11-2003, 11:35
Originariamente inviato da Zontar
Ciao, fittare un set di dati usando solo la penna e il foglio non e' che sia banalissimo.
Non ho capito se ti puo' capitare di avere un set di dati che va fittato con un polinomio che puo' avere al suo interno anche una funzione esponenziale o logaritmica (quindi tipo y=a(x^3)+b(x^2)+c(logx)) o invece il tuo set di dati va fittato SOLO con una esponenziale.

Se il caso e' il primo onestamente la vedo dura, altrimenti e' molto piu' semplice.
La prima cosa che ti consiglio e' farti velocemente un grafico, anche a spanne, per avere una idea di quello che andrai a fittare (capisci subito se e' un polinomio o semplicemente un esponenziale o una logaritmica)

Ammettiamo che tu abbia capito che la funzione che devi usare e' una esponenziale, a questo punto si usa un banale trucco. Ammettiamo sempre che tu conosca bene il modo per fittare una retta tramite il metodo dei minimi quadrati.

Una funzione esponenziale del tipo Y=A*exp(Bx) (A,B tue incognite del fit) puo' tranquillamente essere linearizzata estraendo il logaritmo e ottenendo lnY=lnA+Bx e permettendoti di usare il metodo dei minimi quadrati come se la tua funzione fosse una retta del tipo Z=C+Bx (dove z=lny e c=lnA)

In poche parole quello che devi fare e' fare il logaritmo di tutti i tuoi dati Y e a quel punto andarli a fittare come fossero una retta. Quello che otterrai saranno C e B. B ti va bene cosi' come e', di C dovrai invece farne l'esponenziale per ottenere A.

Rileggendo mi rendo conto di non essere stato chiarissimo :), provo con un esempio,questi sono i tuoi dati

X Y
1 2.72
2 7.39
3 20.1

Capisci subito che e' una esponenziale tipo Y=A*exp(Bx),e vai a calcolarti Z=lnY, ottenendo

X Y z
1 2.72 1
2 7.39 2
3 20.1 3

A questo punto fitti linearmente x e z con Z=c+bx e trovi C=0 e B=1
B ti va bene cosi' come e', per trovare A devi fare A=exp(C)=1

La tua funzione di fit iniziale e' y= 1 * exp (1x)
L'esempio era banale, ma spero sia servito per capire.

ok, era questo il problema! riuscire a fittare exp e log, ma con le sostituzioni si fanno, a questo punto, a partire da un fitting polinomiale ;)

ora vedo l'esempio, a2000 :)

a2000
10-11-2003, 18:32
Scoperchiatoreeeeeeeeeee

Scoperchiatore
10-11-2003, 19:56
Originariamente inviato da a2000
Scoperchiatoreeeeeeeeeee

si, ho letto, grazie mille! ;) con le formule, ho provato a fittare e ci sono riuscito abbastanza bene ;)

spero che al compito non capiti, cmq...:sperem: