/ Forside / Karriere / Uddannelse / Højere uddannelser / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Højere uddannelser
#NavnPoint
Nordsted1 1588
erling_l 1224
ans 1150
dova 895
gert_h 800
molokyle 661
berpox 610
creamygirl 610
3773 570
10  jomfruane 570
genetiske algoritmer og neurale netværk
Fra : Desilva


Dato : 28-03-02 18:25

Har efterhånden læst en del artikler om principperne i "træning" af NN ved
evolution og udvælgelse samt implementationer, men jeg har endnu ikke set
nogen særligt overbevisende eksempler på brug af GA til NN træning.

Spørgsmålet er lidt flerfoldigt.
Hvor effektiv er GA til træning af større net, hvor antallet af vægte der
skal justeres er større og det vel også kræver et forholdsmæssigt større
antal generationer...?

Jeg læser mange steder at "der findes ingen tommelfingerregler for antallet
af neuroner i et net" baseret på kompleksiteten af opgaven.. plus hvordan
definerer man kompleksiteten?... men kan man så tillade sig at bare sætte et
stort net op med alverdens input, som man kunne forestille sig havde en
effekt, og bare køre det derfra, og senere prøve om man kan skære visse
input ect af nettet til man finder en fornuftig størelse?

Til slut.. er der nogen som kender links til eksempel applikationer som
benytter GA til NN træning af noget som er bare lidt mere komplekst end xor,
som åbenbart er ret typisk.






 
 
Karsten S. Jørgensen (03-04-2002)
Kommentar
Fra : Karsten S. Jørgensen


Dato : 03-04-02 18:44

Desilva wrote:
>
> Har efterhånden læst en del artikler om principperne i "træning" af NN ved
> evolution og udvælgelse samt implementationer, men jeg har endnu ikke set
> nogen særligt overbevisende eksempler på brug af GA til NN træning.

Så vidt jeg har forstået på vores EVALife-gruppe (http://www.evalife.dk)
her på DAIMI (http://www.daimi.au.dk) så er NN i det hele taget ikke så
hot et emne som det var for 10-15 år siden. Det har vist vist sig at
være lidt af en blindgyde. Heldigvis kan man bruge GA'er til mange andre
formål :)

--
mvh. Karsten Strandgaard Jørgensen - http://www.hammerich.cjb.net
"I call upon our Staffordshire delegate to explain this weird behaviour"

Claus Rasmussen (03-04-2002)
Kommentar
Fra : Claus Rasmussen


Dato : 03-04-02 18:53

Desilva wrote:

> Har efterhånden læst en del artikler om principperne i "træning" af NN ved
> evolution og udvælgelse samt implementationer, men jeg har endnu ikke set
> nogen særligt overbevisende eksempler på brug af GA til NN træning.

Jeg er lidt blank hvad angår teorien på området. Jeg har leget lidt med
både GA og NN selv, og jeg kan ikke se, hvordan man skulle kunne bruge
GA til at træne NN.

Så vidt jeg har forstået er GA en slags alternativ til NN. Ikke en måde
at træne NN på. Håber du kan oplyse mig lidt ?

-Claus


Martin Moller Peders~ (03-04-2002)
Kommentar
Fra : Martin Moller Peders~


Dato : 03-04-02 20:31

In <a8ffhb$3tj$2@sunsite.dk> Claus Rasmussen <clr@cc-consult.dk> writes:

>Desilva wrote:

>> Har efterhånden læst en del artikler om principperne i "træning" af NN ved
>> evolution og udvælgelse samt implementationer, men jeg har endnu ikke set
>> nogen særligt overbevisende eksempler på brug af GA til NN træning.

>Jeg er lidt blank hvad angår teorien på området. Jeg har leget lidt med
>både GA og NN selv, og jeg kan ikke se, hvordan man skulle kunne bruge
>GA til at træne NN.

>Så vidt jeg har forstået er GA en slags alternativ til NN. Ikke en måde
>at træne NN på. Håber du kan oplyse mig lidt ?

Man laver en population af netvaerk med tilfaeldelig vaegte og laver
dem "spille" mod hinanden. De bedste netvaerk faar deres vaegte blandet med
hinanden.
Simpelt.

/Martin



Claus Rasmussen (03-04-2002)
Kommentar
Fra : Claus Rasmussen


Dato : 03-04-02 20:40

Martin Moller Pedersen wrote:

> Man laver en population af netvaerk med tilfaeldelig vaegte og laver
> dem "spille" mod hinanden. De bedste netvaerk faar deres vaegte blandet
> med hinanden.
> Simpelt.

Jo. Men det involverer jo ikke GA andet end ved at man bruger populationer,
udvælgelse og parring i dem begge.

Altså: Du har den overordnede algoritme for selektion. Den kan du så
bruge på enten GA eller NN. Men det involverer jo ikke GA i NN. Eller
hvad ?

-Claus

Martin Moller Peders~ (03-04-2002)
Kommentar
Fra : Martin Moller Peders~


Dato : 03-04-02 21:03

In <a8flq7$r6k$1@sunsite.dk> Claus Rasmussen <clr@cc-consult.dk> writes:

>Martin Moller Pedersen wrote:

>> Man laver en population af netvaerk med tilfaeldelig vaegte og laver
>> dem "spille" mod hinanden. De bedste netvaerk faar deres vaegte blandet
>> med hinanden.
>> Simpelt.

>Jo. Men det involverer jo ikke GA andet end ved at man bruger populationer,
>udvælgelse og parring i dem begge.

GA er ikke andet end populationer, udvaelgelse og parring.
Enig ?

>Altså: Du har den overordnede algoritme for selektion. Den kan du så
>bruge på enten GA eller NN. Men det involverer jo ikke GA i NN. Eller
>hvad ?

Jeg har laest ovenstaaende saetning et par gange, men jeg forstaar ikke hvad
du proever at udtrykke.

/Martin


Claus Rasmussen (03-04-2002)
Kommentar
Fra : Claus Rasmussen


Dato : 03-04-02 21:31

Martin Moller Pedersen wrote:

> In <a8flq7$r6k$1@sunsite.dk> Claus Rasmussen <clr@cc-consult.dk> writes:
>
>>Martin Moller Pedersen wrote:
>
>>> Man laver en population af netvaerk med tilfaeldelig vaegte og laver
>>> dem "spille" mod hinanden. De bedste netvaerk faar deres vaegte blandet
>>> med hinanden.
>>> Simpelt.
>
>>Jo. Men det involverer jo ikke GA andet end ved at man bruger
>>populationer, udvælgelse og parring i dem begge.
>
> GA er ikke andet end populationer, udvaelgelse og parring.
> Enig ?
>
>>Altså: Du har den overordnede algoritme for selektion. Den kan du så
>>bruge på enten GA eller NN. Men det involverer jo ikke GA i NN. Eller
>>hvad ?
>
> Jeg har laest ovenstaaende saetning et par gange, men jeg forstaar ikke
> hvad du proever at udtrykke.

Oh... Nu dæmrer det for mig. Sorry. Her er forklaringen:

De neurale netværk, jeg har arbejdet med har ligget i nogle populationer,
som jeg så kørte en udvælgningsalgoritme på. Nøjagtigt som det, du kalder
GA+NN. Da jeg skrev mit indlæg, glemte jeg så, at den mest almindelige
måde at træne neurale netværk på, var kun at have eet netværk, som man
lod korrigere sig selv, ved at vise det eksempler på rigtige svar.

Omvendt: Det jeg kaldte for GA var en implementation af en stakmaskine
med de sædvanlige operationer push, pop, add, dup osv., og hvor jeg lod
programmets instruktioner agere DNA. Disse stakmaskiner lå lige som
NN algoritmerne i en population, som jeg igen kørte udvælgningsalgoritmen
på.

Den skelnen, jeg foretog var altså på indholdet af individerne i popu-
lationen (om indmaden var en almindelig stakmaskine eller et neuralt
netværk), og ikke på om jeg anvendte den generelle udvælgelsesmekanisme
eller ej.

Men du har sikkert ret: At så snart man begynder at arbejde med popu-
lationer, så kaldes det GA, uanset hvad individerne er lavet af.

-Claus


Henning Makholm (04-04-2002)
Kommentar
Fra : Henning Makholm


Dato : 04-04-02 10:53

Scripsit Claus Rasmussen <clr@cc-consult.dk>

> Omvendt: Det jeg kaldte for GA var en implementation af en stakmaskine
> med de sædvanlige operationer push, pop, add, dup osv., og hvor jeg lod
> programmets instruktioner agere DNA. Disse stakmaskiner lå lige som
> NN algoritmerne i en population, som jeg igen kørte udvælgningsalgoritmen
> på.

Det ville jeg tro var en for bogstavelig fortolkning af udtrykket.
Normalt går genetiske algoritme ud på at justere parametre (også
diskrete parametre) i en algoritme hvor den basale struktur er
fastlagt på forhånd.

Jeg har selv engang (i et anfald af kedsomhed) forsøgt at lege lidt
med GA der udvikler maskinkode - dog ikke til en stakmaskine men til
en mere registerlignende abstrakt maskine konstrueret til formålet.
Det lykkedes overhovedet ikke. Meget tit gik det udviklede program i
uendelig løkke - og hvis jeg gjorde det til et succeskriterium at det
terminerede før en vis tidsgrænse var nået, endte jeg med en hel
populationfuld programmer der havde STOP som en af de allerførste
instruktioner. Hvis jeg omvendt gjorde ikketermination til en form for
succes endte jeg lige så sikkert med en population af programmer
bestående af en kort uendelig løkke. Der var simpelthen ikke plads til
at det jeg ville have programmerne til at gøre fik en fornuftig
selektionskraft.

--
Henning Makholm "Panic. Alarm. Incredulity.
*Thing* has not enough legs. Topple walk.
Fall over not. Why why why? What *is* it?"

Søg
Reklame
Statistik
Spørgsmål : 177502
Tips : 31968
Nyheder : 719565
Indlæg : 6408534
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste