Zephyrnet-logo

Deep Learning Image Captioning-technologie voor zakelijke toepassingen

Datum:

Deep Learning Image Captioning-technologie voor zakelijke toepassingen
Illustratie: © IoT For All

Technologieën die worden toegepast om de opeenvolging van pixels op de afbeelding om te zetten in woorden met kunstmatige intelligentie, zijn niet zo ruw als vijf jaar of meer geleden. Betere prestaties, nauwkeurigheid en betrouwbaarheid maken soepele en efficiënte beeldbijschriften mogelijk op verschillende gebieden - van sociale media tot e-commerce. Het automatisch aanmaken van tags komt overeen met een gedownloade foto. Deze technologie kan blinde mensen helpen de wereld om hen heen te ontdekken.

Dit artikel behandelt gebruiksvoorbeelden van technologie voor ondertiteling van afbeeldingen, de basisstructuur, voor- en nadelen. We gebruiken ook een model dat in staat is om een ​​betekenisvolle beschrijving te maken van wat wordt weergegeven op de invoerafbeelding.

Als visie-taaldoelstelling zou beeldbijschrift kunnen worden opgelost met behulp van computervisie en NLP. Het AI-gedeelte maakt gebruik van CNN's (convolutionele neurale netwerken) en RNN's (recurrente neurale netwerken) of een ander toepasselijk model om het doel te bereiken.

Laten we, voordat we verder gaan met de technische details, kijken waar de ondertiteling van afbeeldingen staat.

AI-gestuurde beeldtagging en beschrijving van use cases

"Beeldonderschriften zijn een van de kernmogelijkheden van computervisie die een breed scala aan diensten mogelijk maken", aldus Xuedong Huang, een technische fellow van Microsoft en de CTO van Azure AI Cognitive Services in Redmond, Washington.

Hij heeft een punt, want er is al een enorm scala aan gebieden voor technologie voor het onderschrijven van afbeeldingen, namelijk: het taggen van afbeeldingen voor e-commerce, diensten voor het delen van foto's en online catalogi.

In dit geval wordt het automatisch aanmaken van tags per foto uitgevoerd. Het kan bijvoorbeeld het leven van gebruikers vereenvoudigen wanneer ze een afbeelding uploaden naar een online catalogus. In dit geval, AI herkent de afbeelding en genereert attributen - dit kunnen handtekeningen, categorieën of beschrijvingen zijn. De technologie kan ook het type item, materiaal, kleur, patroon en pasvorm van kleding voor online winkels bepalen.

Tegelijkertijd kan beeldbijschrift worden geïmplementeerd door een fotodeelservice of een online catalogus om automatisch een zinvolle beschrijving van de foto te maken voor SEO- of categoriseringsdoeleinden. Bovendien kunt u met onderschriften controleren of de afbeelding voldoet aan de regels van het platform waar deze wordt gepubliceerd. Hier dient het als een alternatief voor CNN-categorisatie en helpt het om het verkeer en de inkomsten te vergroten.

Opmerking: Het maken van beschrijvingen voor video's is een veel gecompliceerdere taak. Toch maakt de huidige stand van de techniek het al mogelijk.

Automatische beeldannotaties voor blinden

Om een ​​dergelijke oplossing te ontwikkelen, moeten we de afbeelding omzetten in tekst en vervolgens in spraak. Dit zijn twee bekende toepassingen van Deep Learning-technologie.

Een app genaamd AI zien ontwikkeld door Microsoft stelt mensen met oogproblemen in staat om de wereld om hen heen te zien met behulp van smartphones. Het programma kan tekst lezen wanneer de camera erop wordt gericht en geeft geluidsmeldingen. Het kan zowel gedrukte als handgeschreven tekst herkennen en objecten en mensen identificeren.

Kopen Google Reviews introduceerde ook een tool die een tekstbeschrijving voor de afbeelding kan maken, waardoor blinden of mensen met zichtproblemen de context van de afbeelding of afbeelding kunnen begrijpen. Deze machine learning tool bestaat uit meerdere lagen. Het eerste model herkent tekst en handgeschreven cijfers in de afbeelding. Dan herkent een ander model eenvoudige objecten van de omringende wereld, zoals auto's, bomen, dieren, enz. En een derde laag is een geavanceerd model dat in staat is om het hoofdidee in de volledige tekstuele beschrijving te achterhalen.

AI-ondertiteling van afbeeldingen voor sociale media

Beeldbijschriften die zijn gegenereerd met behulp van een op AI gebaseerde tool, zijn al beschikbaar voor Facebook en Instagram. Bovendien wordt het model steeds slimmer en leert het nieuwe objecten, acties en patronen te herkennen.

Facebook creëerde bijna vijf jaar geleden een systeem dat Alt-tekstbeschrijvingen kon maken. Tegenwoordig is het nauwkeuriger geworden. Voorheen beschreef het een afbeelding met algemene woorden, maar nu kan dit systeem een ​​gedetailleerde beschrijving genereren.

Logo-identificatie met AI

Technologie voor het onderschrijven van afbeeldingen wordt ook ingezet met andere AI-technologieën. DeepLogo is bijvoorbeeld een neuraal netwerk op basis van de TensorFlow Object Detection API. En het kan logo's herkennen. De naam van het geïdentificeerde logotype verschijnt als onderschrift op de afbeelding. De onderzoek op het GAN-gebaseerde logotype-synthesemodel zou licht kunnen werpen op hoe GAN's werken.

Onderzoek naar deep learning-modellen voor beeldbijschriften

We hebben een model toegepast dat een betekenisvolle tekstbeschrijving voor afbeeldingen creëert, rekening houdend met mogelijke gebruikssituaties. Het bijschrift kan bijvoorbeeld een actie en objecten beschrijven die de belangrijkste objecten op elke afbeelding zijn. Voor training hebben we de dataset Microsoft COCO 2014 gebruikt.

COCO-dataset is een grootschalige dataset voor objectdetectie, segmentatie en ondertiteling. Het bevat ongeveer 1.5 miljoen verschillende objecten verdeeld in 80 categorieën. Elke afbeelding is geannoteerd met vijf door mensen gegenereerde bijschriften.

We hebben gesolliciteerd Andrej Karpathy's training, validatie en testsplitsingen voor het verdelen van datasets om onderdelen te trainen, valideren en testen. We hadden ook statistieken nodig zoals BLEU, ROUGE, METEOR, CIDEr, SPICE om de resultaten te evalueren.

ML-modellen vergelijken voor beeldbijschriften

Gewoonlijk codeert de basisarchitectuur voor beeldbijschriften de invoer in een vaste vorm en decodeert deze, woord voor woord, in een reeks.

De Encoder codeert het ingevoerde beeld met drie kleurkanalen in een kleinere afdruk met "geleerde" kanalen. Deze kleinere gecodeerde afbeelding is een samenvattende weergave van alles wat nuttig is in de originele afbeelding. Voor codering kan elke CNN-architectuur worden toegepast. We kunnen ook overdrachtsleren gebruiken voor het encodergedeelte.

De decoder kijkt naar het gecodeerde beeld en genereert woord voor woord een onderschrift. Vervolgens wordt elk voorspeld woord gebruikt om de volgende term te creëren.

Bekijk voordat u verder gaat wat we hebben ontvangen als resultaat van het maken en testen van het model met het Meshed-Memory-transformatormodel.

Voorbeeld van het gebruik van een deep learning-model voor ondertiteling van afbeeldingen
Voorbeeld van het gebruik van een deep learning-model voor ondertiteling van afbeeldingen
Voorbeeld van het gebruik van een deep learning-model voor ondertiteling van afbeeldingen

Op AI gebaseerde beeldbijschriften

We bestudeerden ook voorbeelden die tot fouten leidden. Er zijn verschillende redenen waarom er fouten optreden. De meest voorkomende fouten zijn een slechte beeldkwaliteit en het ontbreken van bepaalde elementen in de initiële dataset. Het model is getraind op een dataset met algemene afbeeldingen, dus het maakt fouten als het de inhoud niet kent of niet correct kan identificeren. Dit is dezelfde manier waarop het menselijk brein werkt.

Fouten gemaakt door ondertiteling van AI-afbeeldingen
Een fout gemaakt door het AI-model voor ondertiteling van afbeeldingen

Hier is nog een casus om te illustreren hoe neurale netwerken werken. Er waren geen tijgers in het datasetmodel. In plaats daarvan koos AI het dichtstbijzijnde object dat het kent - het is vrij hetzelfde, aangezien ons brein omgaat met het onbekende.

Neurale netwerken werken met ondertiteling van onbekende objecten

Up-down aandachtsmodel voor beeldbijschriften

Dit is het eerste model om te vergelijken. Het Up-Down-mechanisme combineert het Bottom-Up- en het Top-Down-aandachtsmechanisme.

Sneller R-CNN wordt gebruikt om de verbinding tot stand te brengen tussen objectdetectie en ondertitelingstaken. Het Region-voorstelmodel is vooraf getraind op datasets voor objectdetectie vanwege het benutten van domeinoverschrijdende kennis. Bovendien gebruiken beide modellen, in tegenstelling tot sommige andere aandachtsmechanismen, aandacht in één keer met het Up-Down-mechanisme.

Snellere R-CNN (fig. 5a) wordt gebruikt voor het extraheren van beeldkenmerken. Sneller R-CNN is een objectdetectiemodel dat is ontworpen om objecten die tot bepaalde klassen behoren te identificeren en te lokaliseren met begrenzingskaders. Sneller R-CNN detecteert objecten in twee fasen.

De eerste fase, beschreven als een Region Proposal Network (RPN), voorspelt objectvoorstellen. Met behulp van hebzuchtige niet-maximale onderdrukking met een intersection-over-union (IoU)-drempel worden de topbox-voorstellen geselecteerd als input voor de tweede fase.

In de tweede fase wordt region of interest (RoI) pooling gebruikt om een ​​kleine feature map (bijv. 14×14) te extraheren voor elk boxvoorstel. Deze functiekaarten worden vervolgens samengevoegd als invoer voor de laatste lagen van de CNN. De uiteindelijke modeluitvoer bestaat dus uit een softmax-distributie over klasselabels en klassespecifieke verfijningen van begrenzingskaders voor elk voorstel voor een kader. Het schema is overgenomen uit de officiële affiche.

Sneller R-CNN-model voor beeldannotatie

Gegeven afbeeldingskenmerken V, gebruikt het voorgestelde ondertitelingsmodel een 'zacht' top-down aandachtsmechanisme om elk kenmerk te wegen tijdens het genereren van ondertitels. Dit is LSTM met een toegevoegd op-neer-aandachtsmechanisme. Op. Dit is LSTM met een toegevoegd op-neer-aandachtsmechanisme. Op een hoog niveau bestaat het ondertitelingsmodel uit twee LSTM-lagen.

Transformatormodel met maasgeheugen voor ondertiteling van afbeeldingen

Een ander model dat we hebben gebruikt om de taak voor het onderschrijven van afbeeldingen op te lossen, is Transformator met maasgeheugen. Het bestaat uit encoder- en decoderonderdelen. Beiden zijn gemaakt van stapels aandachtige lagen. De encoder bevat ook feed-forward-lagen en de decoder heeft een leerbaar mechanisme met weging.

Regio's van het beeld zijn op meerdere niveaus gecodeerd. Het model houdt rekening met relaties op zowel laag als hoog niveau. Geleerde kennis wordt gecodeerd als geheugenvectoren. Lagen van encoder- en decoderonderdelen zijn verbonden in een mesh-achtige structuur. De decoder leest uit de uitvoer van elke coderingslaag en voert zelfaandacht uit op woorden en kruist de aandacht op de algehele coderingslagen, waarna de resultaten worden gemoduleerd en opgeteld.

Het model kan dus niet alleen de visuele inhoud van de afbeelding gebruiken, maar ook een voorkennis van de encoder. De schema's zijn afkomstig uit de officieel papier.

Schema voor ondertiteling van AI-afbeeldingen Schema voor ondertiteling van AI-afbeeldingen met Meshed-Memory Transformer-model
Schema voor ondertiteling van AI-afbeeldingen met Meshed-Memory Transformer-model

Vergelijking van twee modellen voor beeldbijschriften

Op basis van ons onderzoek kunnen we het Up-down-model en het M2transform-model vergelijken, omdat ze op dezelfde gegevens zijn getraind. Onderstaande tabel geeft een overzicht van beide modellen.

Tabel – Evaluatiestatistieken

BLEU1 BLEU2 Cider ROOD METEOR
UpDown-model 0.8 0.358 1.16 0.573 0.275
M2 Transformator 0.8078 0.3834 1.278 0.58 0.2876

Tabel - Inferentietijd en geheugen

Tijd Geheugen
CPU GPU CPU GPU
Updown-model 104.47s 17s 1479mb 1181mb
M2 Transformator 23 m 32 s 3m 16s 1423mb 1310mb

Beeldonderschrift: resultatenanalyse en toekomstperspectieven

Beide gebruikte modellen lieten redelijk goede resultaten zien. Met hun hulp kunnen we betekenisvolle bijschriften genereren voor de meeste afbeeldingen uit onze dataset. Dankzij de feature pre-extracting met Faster-RCNN, vooraf getraind op de enorme Visual Genome-dataset, kan het model bovendien veel objecten en acties uit het dagelijks leven van mensen herkennen en ze daarom correct beschrijven.

Wat is het verschil?

Het Updown-model is sneller en lichter dan de M2Transformer. De reden is dat de M2Transformer meer technieken gebruikt, zoals aanvullende ("gemaasde") verbindingen tussen encoder en decoder, en geheugenvectoren om de eerdere ervaring te onthouden. Ook gebruiken deze modellen verschillende aandachtsmechanismen.

Opwaartse aandacht kan in één keer worden uitgevoerd, terwijl meerkoppige aandacht die in M2Transformer wordt gebruikt, meerdere keren parallel moet worden uitgevoerd. Volgens de verkregen statistieken behaalde M2Transormer echter betere resultaten. Met zijn hulp kunnen we meer correcte en gevarieerde bijschriften genereren. M2Transformer-voorspellingen bevatten minder onnauwkeurigheden in de beschrijving, zowel voor afbeeldingen uit de dataset als voor sommige andere gerelateerde afbeeldingen. Daarom voert het de hoofdtaak beter uit.

We hebben twee modellen vergeleken, maar er zijn ook andere benaderingen van de taak van het bijschrift van afbeeldingen. Het is mogelijk om van decoder en encoder te wisselen, verschillende woordvectoren te gebruiken, datasets te combineren en transfer learning toe te passen.

Het model zou kunnen worden verbeterd om betere resultaten te bereiken die geschikt zijn voor het specifieke bedrijf, hetzij als toepassing voor mensen met zichtproblemen, hetzij als aanvullende tools die zijn ingebed in e-commerceplatforms. Om dit doel te bereiken, moet het model worden getraind op relevante datasets. Voor een systeem dat kleding correct beschrijft, is het bijvoorbeeld beter om training uit te voeren op datasets met kleding.

PlatoAi. Web3 opnieuw uitgevonden. Gegevensintelligentie versterkt.
Klik hier om toegang te krijgen.

Bron: https://www.iotforall.com/deep-learning-image-captioning-technology-for-business-applications

spot_img

Laatste intelligentie

spot_img

Chat met ons

Hallo daar! Hoe kan ik u helpen?