- Forbehandling:
1. Billeder ændres til en fast opløsning.
2. Farvenormalisering anvendes for at fjerne belysningsvariationer.
- Funktionsudtræk:
1. Deep convolutional neurale netværk (CNN'er) bruges til at udtrække kraftfulde og diskriminerende funktioner fra billeder.
2. CNN-arkitekturen er trænet på et stort datasæt af billeder med tilhørende tekstetiketter.
- Generering af billedtekster:
1. Et tilbagevendende neuralt netværk (RNN) bruges til at generere billedtekster til billeder baseret på de udtrukne funktioner.
2. RNN er trænet til at maksimere sandsynligheden for den korrekte billedtekst givet billedfunktionerne.
- Sprogmodel:
1. En ekstra sprogmodel bruges til at forbedre den grammatiske korrekthed og flydende af de genererede billedtekster.
2. Sprogmodellen trænes på et stort korpus af tekstdata.
Algorithme:
1. Input:
- Billede
- Foruddannet CNN-model
- Foruddannet RNN-model
- Sprogmodel
2. Trin:
1. Tilpas størrelse og farvenormaliser inputbilledet.
2. Udtræk dybe træk fra billedet ved hjælp af CNN-modellen.
3. Generer en indledende billedtekst til billedet ved hjælp af RNN-modellen.
4. Forfin billedteksten ved at anvende sprogmodellen.
5. Output:
- En naturlig sprogtekst til inputbilledet.
Datasæt:
- COCO (Common Objects in Context):Et stort datasæt af billeder med objektannoteringer og tekstoverskrifter.
- Flickr8k:Et datasæt med 8.000 billeder med menneskeskrevne billedtekster.
- Flickr30k:Et større datasæt med 30.000 billeder og menneskeskrevne billedtekster.
Evaluering:
- Metrics:
- BLEU (Bilingual Evaluation Understudy):Måler ligheden mellem genererede billedtekster og menneskeskrevne referencetekster.
- METEOR (Metric for Evaluation of Translation with Explicit Ordering):Endnu et mål for lighed mellem genererede og reference billedtekster.
- CIDEr (Konsensusbaseret billedbeskrivelsesevaluering):En metrik, der tager hensyn til konsensus blandt flere menneskelige dommere.