Deep Learning Academy · Oppitunti

Askel, täyttö ja pooling

Hallin­noikaa tulosteen kokoa ja pienentäkää näytteistystä

Oppitunti 2/413 vaihetta

Askel, täyttö ja pooling on ilmainen Deep Learning Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Deep Learning Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Deep Learning Academy-kurssilla on yhteensä 4 oppituntia.

Tuloste pienenee oletuksena

Kun 3x3-kerneli liukuu kuvan yli, reunoilla ei ole riittävästi tilaa. Siksi tuloksena oleva piirrekartta on hieman syötettä pienempi.

Täyte lisää reunan

Täyte ympäröi kuvan nollien muodostamalla kehyksellä, jotta kernel yltää kulmiin. Nyt tulos voi pysyä samankokoisena kuin syöte.

Sama täyte koodissa

3x3-kernelillä täyte 1 pitää spatiaalisen koon muuttumattomana. Tätä kutsutaan same-täytteeksi.

conv = nn.Conv2d(3, 16, kernel_size=3, padding=1)

Askel määrittää siirtymän

Askel kertoo, kuinka pitkän matkan kernel hyppää jokaisella siirtymällä. Askeleella 1 käydään läpi jokainen kohta; suurempi askel hyppää kohtien yli.

Askel 2 puolittaa kartan

Kun askel on 2, kernel hyppää kaksi pikseliä kerrallaan, joten tuloksen leveys ja korkeus ovat suunnilleen puolet alkuperäisestä. Se on edullinen tapa pienentää näytteen kokoa. ⬇️

Askel ja täyte yhdessä

Yhdistämällä ne hallitset tarkan tuloskoon. Tässä askel 2 ja täyte 1 pienentävät kokoa, mutta pitävät kulmat mukana.

conv = nn.Conv2d(16, 32, 3, stride=2, padding=1)

Miksi kokoa pienennetään

Karttojen pienentäminen vähentää laskentaa ja antaa myöhempien kerrosten nähdä kullakin kernelillä alkuperäisestä kuvasta laajemman alueen.

Pooling: toinen tapa pienentää kokoa

Pooling pienentää kokoa myös, mutta ilman opittavia painokertoimia. Se tiivistää jokaisen pienen alueen yhdeksi arvoksi.

Max pooling säilyttää voimakkaimman

Max pooling poimii suurimman arvon jokaisesta 2x2-alueesta. Se säilyttää voimakkaimman signaalin ja jättää muun huomaamatta.

pool = nn.MaxPool2d(kernel_size=2)

Average pooling tasoittaa

Average pooling laskee jokaisen alueen keskiarvon maksimiarvon sijaan, jolloin alueesta saadaan tasaisempi ja pehmeämpi yhteenveto.

pool = nn.AvgPool2d(kernel_size=2)

Pooling lisää hieman siirtovarianssia

Koska pooling tiivistää alueen, pieni siirtymä syötteessä muuttaa tulosta vain vähän. Tämä antaa hieman siirtovarianssia.

Pikatarkistus

Testataan, mitä täyte oikeastaan tekee konvoluutiolle.

Kertaus: Hallitse muotoa

Opitte, että täyte säilyttää koon, askel määrittää siirtymän ja pienentää kokoa, ja pooling kutistaa karttoja sekä lisää hieman siirtosietoa. 🎯

Aloita maksutta

Opi Python tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Askel, täyttö ja pooling” ilmainen?

Kyllä – oppitunnin ”Askel, täyttö ja pooling” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Deep Learning Academy-kurssin, päivitä CoddyKit PROhon. Deep Learning Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Askel, täyttö ja pooling”?

Hallin­noikaa tulosteen kokoa ja pienentäkää näytteistystä Harjoittelet Deep Learning Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Deep Learning Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Deep Learning Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Askel, täyttö ja pooling”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Deep Learning Academy-oppitunnilla?

Kyllä. Jokainen Deep Learning Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Konvoluutio: kernelit liukuvat pikselien yli
  2. Askel, täyttö ja pooling
  3. Kanavat, piirre­kartat ja vastaanottokentät
  4. Kootkaa CNN-kuvaluokitin
← Takaisin: Deep Learning Academy