Kurssisisältö
Konenäön Perusteet
Konenäön Perusteet
Siirtäminen Oppiminen Tietokonenäössä
Siirtäminen oppiminen mahdollistaa suurilla tietoaineistoilla koulutettujen mallien uudelleenkäytön uusiin tehtäviin, joissa dataa on rajoitetusti. Sen sijaan, että rakennettaisiin neuroverkko alusta alkaen, hyödynnetään esikoulutettuja malleja tehokkuuden ja suorituskyvyn parantamiseksi. Tämän kurssin aikana olet jo kohdannut vastaavia lähestymistapoja aiemmissa osioissa, jotka ovat luoneet perustan siirtämisoppimisen tehokkaalle soveltamiselle.
Mikä on siirtäminen oppiminen?
Siirtäminen oppiminen on tekniikka, jossa yhdelle tehtävälle koulutettu malli mukautetaan toiseen, siihen liittyvään tehtävään. Konenäössä suurilla tietoaineistoilla, kuten ImageNet, esikoulutetut mallit voidaan hienosäätää erityisiin sovelluksiin, kuten lääketieteelliseen kuvantamiseen tai autonomiseen ajamiseen.
Miksi siirtäminen oppiminen on tärkeää?
Lyhentää koulutusaikaa: koska malli on jo oppinut yleisiä piirteitä, tarvitaan vain pieniä säätöjä;
Vähemmän datan tarvetta: hyödyllinen tilanteissa, joissa merkityn datan hankkiminen on kallista;
Parantaa suorituskykyä: esikoulutetut mallit tarjoavat vankan piirteiden tunnistuksen, mikä parantaa tarkkuutta.
Siirtoloppimisen työnkulku
Tyypillinen siirtoloppimisen työnkulku sisältää useita keskeisiä vaiheita:
Esikoulutetun mallin valinta:
Valitse malli, joka on koulutettu suurella tietoaineistolla (esim. ResNet, VGG, YOLO);
Nämä mallit ovat oppineet hyödyllisiä esityksiä, joita voidaan mukauttaa uusiin tehtäviin.
Esikoulutetun mallin muokkaaminen:
Ominaisuuksien erottelu: jäädytä alkuvaiheen kerrokset ja kouluta uudelleen vain myöhemmät kerrokset uutta tehtävää varten;
Hienosäätö: vapauta osa tai kaikki kerrokset ja kouluta ne uudelleen uudella tietoaineistolla.
Koulutus uudella tietoaineistolla:
Kouluta muokattu malli käyttäen pienempää, kohdetehtävään liittyvää tietoaineistoa;
Optimoi käyttäen tekniikoita kuten takaisinkytkentä ja häviöfunktiot.
Arviointi ja iterointi:
Arvioi suorituskykyä mittareilla kuten tarkkuus, precisio, herkkyys ja mAP;
Hienosäädä tarvittaessa tulosten parantamiseksi.
Suositut esikoulutetut mallit
Joihinkin laajimmin käytettyihin esikoulutettuihin tietokonenäön malleihin kuuluvat:
ResNet: syvät residuaaliverkot, jotka mahdollistavat erittäin syvien arkkitehtuurien kouluttamisen;
VGG: yksinkertainen arkkitehtuuri, jossa on yhtenäiset konvoluutiokerrokset;
EfficientNet: optimoitu korkean tarkkuuden saavuttamiseksi vähemmillä parametreilla;
YOLO: huipputason (SOTA) reaaliaikainen objektintunnistus.
Hienosäätö vs. ominaisuuksien erottelu
Ominaisuuksien erottelu tarkoittaa esikoulutetun mallin kerrosten käyttämistä kiinteinä piirteiden erottelijoina. Tässä lähestymistavassa alkuperäisen mallin viimeinen luokittelukerros poistetaan ja korvataan uudella, kohdetehtävään sopivalla kerroksella. Esikoulutetut kerrokset pidetään jäädytettyinä, eli niiden painoja ei päivitetä koulutuksen aikana, mikä nopeuttaa koulutusta ja vaatii vähemmän dataa.
Hienosäätö puolestaan menee askeleen pidemmälle vapauttamalla joitakin tai kaikki esikoulutetut kerrokset ja kouluttamalla niitä uudelleen uudella tietoaineistolla. Tämä mahdollistaa mallin mukauttamisen opittuihin piirteisiin tarkemmin uuden tehtävän erityispiirteiden mukaan, mikä usein parantaa suorituskykyä—erityisesti silloin, kun uusi tietoaineisto on riittävän suuri tai poikkeaa merkittävästi alkuperäisestä koulutusaineistosta.
Siirtämisoppimisen sovellukset
1. Kuvien luokittelu
Kuvien luokittelu tarkoittaa kuvien nimeämistä niiden visuaalisen sisällön perusteella. Esikoulutettuja malleja, kuten ResNet ja EfficientNet, voidaan mukauttaa erityistehtäviin, kuten lääketieteelliseen kuvantamiseen tai luonnonvaraisten eläinten luokitteluun.
Esimerkki:
Valitse esikoulutettu malli (esim. ResNet);
Muokkaa luokittelukerros vastaamaan kohdeluokkia;
Hienosäädä pienemmällä oppimisnopeudella.
2. Objektien tunnistus
Objektien tunnistus sisältää sekä kohteiden tunnistamisen että niiden paikantamisen kuvassa. Siirtämisoppiminen mahdollistaa mallien, kuten Faster R-CNN, SSD ja YOLO, tehokkaan mukauttamisen uusien aineistojen kohteiden tunnistukseen.
Esimerkki:
Käytä esikoulutettua objektintunnistusmallia (esim. YOLOv8);
Hienosäädä omalla aineistolla, jossa on uusia kohdeluokkia;
Arvioi suorituskyky ja optimoi tarvittaessa.
3. Semanttinen segmentointi
Semanttinen segmentointi luokittelee jokaisen kuvan pikselin ennalta määriteltyihin kategorioihin. Malit kuten U-Net ja DeepLab ovat laajasti käytössä sovelluksissa, kuten autonominen ajaminen ja lääketieteellinen kuvantaminen.
Esimerkki:
Käytä esikoulutettua segmentointimallia (esim. U-Net);
Kouluta alakohtaisella aineistolla;
Säädä hyperparametreja paremman tarkkuuden saavuttamiseksi.
4. Tyylinsiirto
Tyylinsiirto soveltaa yhden kuvan visuaalisen tyylin toiseen kuvaan säilyttäen alkuperäisen sisällön. Tätä tekniikkaa käytetään yleisesti digitaalisessa taiteessa ja kuvanparannuksessa, hyödyntäen esikoulutettuja malleja kuten VGG.
Esimerkki:
Valitse tyylinsiirtomalli (esim. VGG);
Syötä sisältö- ja tyylikuvat;
Optimoi visuaalisesti miellyttäviä tuloksia varten.
1. Mikä on siirto-oppimisen (transfer learning) tärkein etu tietokonenäössä?
2. Mitä lähestymistapaa käytetään siirto-oppimisessa, kun vain esikoulutetun mallin viimeistä kerrosta muokataan ja aiemmat kerrokset pidetään muuttumattomina?
3. Mikä seuraavista malleista on yleisesti käytetty siirto-oppimisessa objektien tunnistuksessa?
Kiitos palautteestasi!