- Förbearbetning:
1. Bildstorleken ändras till en fast upplösning.
2. Färgnormalisering tillämpas för att ta bort belysningsvariationer.
- Funktionsextraktion:
1. Deep convolutional neural networks (CNN) används för att extrahera kraftfulla och diskriminerande egenskaper från bilder.
2. CNN-arkitekturen tränas på ett stort dataset av bilder med tillhörande textetiketter.
- Textgenerering:
1. Ett återkommande neuralt nätverk (RNN) används för att generera bildtexter för bilder baserat på de extraherade funktionerna.
2. RNN:n är tränad för att maximera sannolikheten för rätt bildtext givet bildegenskaperna.
- Språkmodell:
1. Ytterligare en språkmodell används för att förbättra den grammatiska korrektheten och flytet i de genererade bildtexterna.
2. Språkmodellen tränas på en stor korpus av textdata.
Algorithm:
1. Indata:
- Bild
- Förutbildad CNN-modell
- Förutbildad RNN-modell
- Språkmodell
2. Steg:
1. Ändra storlek och färgnormalisera inmatningsbilden.
2. Extrahera djupa drag från bilden med CNN-modellen.
3. Skapa en första bildtext för bilden med RNN-modellen.
4. Förfina bildtexten genom att använda språkmodellen.
5. Utdata:
- En naturlig språktext för inmatningsbilden.
Datauppsättningar:
- COCO (Common Objects in Context):En storskalig datauppsättning av bilder med objektkommentarer och texttexter.
- Flickr8k:En datauppsättning med 8 000 bilder med mänskliga texter.
- Flickr30k:En större datauppsättning med 30 000 bilder och mänskligt skrivna bildtexter.
Utvärdering:
- Mätvärden:
- BLEU (Bilingual Evaluation Understudy):Mäter likheten mellan genererade bildtexter och mänskligt skrivna referenstexter.
- METEOR (mått för utvärdering av översättning med explicit ordning):Ett annat mått på likhet mellan genererade och referenstexter.
- CIDEr (Consensus-based Image Description Evaluation):Ett mått som tar hänsyn till konsensus mellan flera mänskliga domare.