Introduktion til autoencodere

Det er tilfældet med kunstigt neuralt net, der bruges til at opdage effektiv datakodning på en uovervåget måde. Målet med Autoencoderen bruges til at lære præsentation for en gruppe af data, især til dimensionering af dimensionalitet. Autoencodere har en unik funktion, hvor dens input er lig med dens output ved at danne feedforwarding-netværk. Autoencoder forvandler input til en komprimeret data for at danne en lavdimensionel kode og tilbage igen input for at danne den ønskede output. Den komprimerede indgangskode kaldes også latent pladsrepræsentation. Kort sagt er hovedmålet at reducere forvrængning mellem kredsløb.

Der er tre hovedkomponenter i Autoencoder. De er kodere, dekoder og kode. Koderen og dekoderen er fuldstændigt forbundet til at danne et fremføringsnet. Koden fungerer som et enkelt lag, der fungerer som per egen dimension. For at udvikle en Autoencoder skal du indstille et hyperparameter, som skal du indstille antallet af noder i kernelaget. På en mere detaljeret måde er dekoderets outputnetværk et spejlbillede af inputkoderen. Dekoderen producerer kun den ønskede output ved hjælp af kodelaget.

Sørg for, at koderen og dekoderen har de samme dimensionelle værdier. Den vigtige parameter til at indstille autoencoder er kodestørrelse, antal lag og antal noder i hvert lag.

Kodestørrelse defineres af den samlede mængde noder, der findes i det midterste lag. For at få effektiv komprimering tilrådes den lille størrelse af et mellemlag. Antallet af lag i autoencoder kan være dybt eller lavt, som du ønsker. Antallet af noder i autoencoder skal være det samme i både koderen og dekoderen. Lag af dekoder og indkoder skal være symmetrisk.

I stablet autoencoder har du et usynligt lag i både koderen og dekoderen. Det består af håndskrevne billeder med en størrelse 28 * 28. Nu kan du udvikle autoencoder med 128 noder i det usynlige lag med 32 som kodestørrelse. Brug denne funktion til at tilføje mange antal lag

model.add(Dense(16, activation='relu'))
model.add(Dense(8, activation='relu'))

til konvertering,

layer_1 = Dense(16, activation='relu')(input)
layer_2 = Dense(8, activation='relu')(layer_1)

Nu tilføjes output fra dette lag som et input til det næste lag. dette er det konverterbare lag i denne tætte metode. Dekoderen udfører denne funktion. Den bruger sigmoid-metoden til at opnå output mellem 0 og 1. Da input ligger mellem 0 til 1 område

Genopbygning af input fra en Autoencoder i denne metode udføres ved forudsigelse. Den individuelle billedtest udføres, og output er ikke nøjagtigt som input, men ligner input. For at overvinde disse vanskeligheder kan du gøre autoencoder mere effektiv ved at tilføje mange lag og tilføje flere noder til lag. Men gør den mere kraftfuld resulterer det i en kopi af data, der ligner input. Men dette er ikke det forventede resultat.

Arkitektur af Autoencoder

I denne stablede arkitektur har kodelaget en lille dimensionel værdi end inputinformation, hvor det siges at være under komplet autoencoder.

1. Denoising Autoencoders

I denne metode kan du ikke kopiere indgangssignalet til udgangssignalet for at få det perfekte resultat. Fordi her indeholder indgangssignalet støj, der skal trækkes fra, før det får det resultat, der er de underliggende nødvendige data. Denne proces kaldes denoising autoencoder. Den første række indeholder originale billeder. For at gøre dem støjende indgangssignal tilføjes nogle støjende data. Nu kan du designe autoencoderen for at få en støjfri output som følger

autoencoder.fit(x_train, x_train)

En modificeret autoencoder er som følger,

autoencoder.fit(x_train_noisy, x_train)

Derfor kan du nemt få støjfri output.

Convolution autoencoder bruges til at håndtere komplekse signaler og får også et bedre resultat end den normale proces

2. Sparsomme autokodere

For at bruge autoencodere effektivt kan du følge to trin.

Indstil en lille kodestørrelse, og den anden afviser autoencoder.

Så er en anden effektiv metode regularisering. For at anvende denne regularisering skal du regelmæssigt begrænse begrænsningerne i sparsitet. For at aktivere nogle dele af noder i laget tilføjes nogle ekstra udtryk til tabsfunktionen, der skubber autoencoderen til at lave hvert input som kombinerede mindre noder, og det får koderen til at finde nogle unikke strukturer i de givne data. Det er også relevant for et stort antal data, fordi kun en del af noder er aktiveret.

Sparsitetsbegrænsningsværdien er tættere på nul

For at generere et kodelag,

code = Dense(code_size, activation='relu')(input_img)

For at tilføje reguleringsværdi,

code = Dense(code_size, activation='relu', activity_regularizer=l1(10e-6))(input_img)

I denne model er kun 0, 01 det endelige tab, også på grund af reguleringsperioden.

I denne sparsomme model er en masse kodeværdier i overensstemmelse med det forventede resultat. Men det har forholdsvis lave variansværdier.

Regulariserede autoencodere har unikke egenskaber som robusthed over for manglende input, sparsom repræsentation og nærmeste værdi for derivater i præsentationer. For at bruge effektivt skal du beholde minimum kodestørrelse og lav fodkoder og dekoder. De opdager en høj kapacitet på input og har ikke brug for nogen ekstra regulerende betegnelse for at kodning skal være effektiv. De er trænet til at give maksimal effekt snarere end at kopiere og indsætte.

3. Variational Autoencoder

Det bruges i komplekse tilfælde, og det finder chancerne for distribution at designe inputdataene. Denne variationelle autoencoder bruger en samplingmetode for at få dens effektive output. Det følger den samme arkitektur som regulerede autokodere

Konklusion

Derfor bruges autoencodere til at lære data og billeder i den virkelige verden involveret i klassifikationer af binære og multiklasser. Dets enkle proces til dimensionalitetsreduktion. Den anvendes i en begrænset Boltzmann-maskine og spiller en vigtig rolle i den. Det bruges også i den biokemiske industri til at opdage den uåbnede del af læring og bruges til at identificere mønsteret for intelligent opførsel. Hver komponent i maskinlæring har en selvorganiseret karakter, Autoencoder er en af ​​det, der er succesfuld læring inden for kunstig intelligens

Anbefalede artikler

Dette er en guide til Autoencodere. Her diskuterer vi hovedkomponenterne i Autoencoder, som er en indkoder, dekoder og kode samt arkitekturen for Autoencoder. Du kan også se på de følgende artikler for at lære mere -

  1. Big Data Arkitektur
  2. Kodning vs dekodning
  3. Arkitektur til maskinlæring
  4. Big Data Technologies

Kategori: