Ga verder naar de inhoud

Metadata creëren en verrijken met behulp van artificiële intelligentie bij meemoo

Deze paper bespreekt het gebruik van artificiële intelligentie-toepassingen (AI-toepassingen) voor de creatie en verrijking van beschrijvende metadata bij meemoo, Vlaams instituut voor het archief. We leggen eerst uit waarom we AI-tools gebruiken voor de creatie en verrijking van metadata, en welke AI-toepassingen we specifiek gebruiken. We beschrijven vervolgens hoe we daarbij evolueerden van kleinschalige naar grootschalige projecten, en hoe meemoo ambieert om die projectmatige aanpak te laten resulteren in een structurele werking rond het inzetten van AI-toepassingen in functie van de creatie en verrijking van metadata. We geven details over onze aanpak, resultaten, geleerde lessen en toekomstige stappen en we beschrijven hoe het gebruik van AI-toepassingen niet alleen technische uitdagingen met zich meebrengt, maar ook een reeks juridische en ethische vragen oproept. Deze paper belicht hoe we, als een dienstverlenende organisatie die meer dan 180 organisaties in de cultuur-, media- en overheidssector in Vlaanderen ondersteunt, dat traject niet alleen afleggen maar dat doen in nauwe samenwerking met onze partners en hoe we tot gedeelde oplossingen komen.

Auteurs

  • Bart Magnus (meemoo, Vlaams instituut voor het archief)
  • Matthias Priem (meemoo, Vlaams instituut voor het archief)
  • Nastasia Vanderperren (meemoo, Vlaams instituut voor het archief)
  • Peter Vanden Berghe (Sopra Steria Benelux)
  • Ellen Van Keer (meemoo, Vlaams instituut voor het archief)
  • Rony Vissers (meemoo, Vlaams instituut voor het archief)

Met dank aan David Chambaere, Kristof Cnops, Alexander Derveaux, Jonas De Vos, Giovanni Lardenoit, Sam Legrand, Kenzo Milleville, Walter Schreppers, Joren Sips, Dieter Suls, Bram Ulrichts, Alec Van den Broeck, Brecht Van de Vyvere, Henk Vanstappen en Steven Verstockt.

Inleiding

Het creëren van beschrijvende metadata is een tijdrovende uitdaging voor veel collectiebeherende organisaties, maar het is essentieel om digitaal archiefmateriaal vindbaar en doorzoekbaar te maken. Bij meemoo, Vlaams instituut voor het archief, onderzoeken we al enkele jaren de mogelijkheden van artificiële intelligentie om deze metadata op een (semi)geautomatiseerde manier te creëren.

In dit artikel bespreken we de AI-toepassingen die we gebruiken en hoe we geëvolueerd zijn van kleinschalige experimenten naar grootschalige projecten en ons nu richten op een structurele inzet van AI. We staan stil bij de geboekte resultaten en de lessen die we uit enkele van onze projecten hebben geleerd.

Meemoo en het gebruik van AI voor de creatie en verrijking van beschrijvende metadata

Meemoo, Vlaams instituut voor het archief

Meemoo is een dienstverlenende non-profit organisatie, gevestigd in Gent (België), die gesubsidieerd wordt door de Vlaamse overheid en zich inzet voor de digitale archiefwerking van meer dan 180 organisaties in de cultuur-, media- en overheidssector in Vlaanderen. Deze organisaties noemen we onze contentpartners. Zij beheren omvangrijke nog te digitaliseren, reeds gedigitaliseerde of digitaal geboren collecties en archiefmaterialen. Wij ondersteunen hen hierbij met verschillende diensten. Onze contentpartners omvatten vandaag ongeveer 50 podiumkunstenorganisaties, 50 musea, 28 archiefinstellingen, 7 erfgoedbibliotheken, 19 erfgoedcellen, 9 regionale omroepen, 3 nationale omroepen en 8 overheidsinstellingen.1

We ondersteunen onze contentpartners vooral bij het digitaliseren van audiovisueel materiaal uit hun collecties en archieven. Recentelijk hebben we ook grootschalige digitaliseringsprojecten uitgevoerd voor kranten2- en fotocollecties, glasplaten in het bijzonder.3 We maken ook digitale foto's van hoge kwaliteit van kunstwerken en andere soorten topstukken.4 Daarnaast organiseren we de instroom van zowel gedigitaliseerd materiaal en archiefstukken als bestaande digitale collecties van onze contentpartners in ons archiefsysteem. Het doel hiervan is deze te bewaren, te beheren, te gebruiken en toegankelijk en beschikbaar te maken voor hergebruik door derden.5 Het meemoo-archiefsysteem bevat momenteel meer dan 7 miljoen digitale objecten, goed voor ruim 26 petabyte aan hoogwaardig digitaal archiefmateriaal. We ondersteunen onze contentpartners bij het toegankelijk maken van hun digitaal archiefmateriaal door API's aan te bieden. Bovendien ontsluiten we geselecteerd digitaal archiefmateriaal via onze eigen overkoepelende platformen en andere kanalen.6 Ons belangrijkste platform richt zich op educatief gebruik en bedient dagelijks duizenden leerkrachten en leerlingen in Vlaanderen.7 Daarnaast verzamelen en delen we actief kennis over onze werkdomeinen en digitale erfgoedprocessen in het algemeen.8 We initiëren ook uiteenlopende projecten met partners uit diverse sectoren.9

Beschrijvende metadata creëren met behulp van AI

Als onze contentpartners onvoldoende beschrijvende metadata hebben voor hun digitaal archiefmateriaal, is het moeilijk om dit materiaal gemakkelijk vindbaar en doorzoekbaar te maken voor geïnteresseerde gebruikers. Dat beperkt de bruikbaarheid en valorisatie aanzienlijk.

Handmatig beschrijvende metadata creëren is echter een tijdrovend en duur proces, zeker als het gaat om grote hoeveelheden audiovisuele en/of fotografische opnamen. Om de inhoud van audiovisuele opnamen te beschrijven, moeten de informatiedragers van begin tot eind worden afgespeeld en bekeken. En fotografische negatieven moeten eerst omgezet worden in een positief beeld voordat ze gemakkelijk 'gelezen' kunnen worden door het menselijk oog. Een bijkomende uitdaging is dat de audiovisuele en/of fotografische opnamen vaak niet de kern vormen van de collecties en archieven van onze contentpartners. Bovendien is archiefbeheer voor een aantal van hen geen kernactiviteit, bijvoorbeeld voor podiumkunstenorganisaties.

Ongeveer negen jaar geleden zijn we begonnen met het verkennen van de mogelijkheden van het gebruik van AI-tools om beschrijvende metadata op een (semi)geautomatiseerde manier te creëren. AI is een verzamelnaam voor allerlei slimme toepassingen die met behulp van machine learning snel goed gedefinieerde complexe taken kunnen uitvoeren die voorheen een aanzienlijke menselijke inbreng vereisten, waaronder de creatie van beschrijvende metadata.

Een overkoepelende aanpak voor het inzetten van AI

Niet alle organisaties in de culturele, media- en overheidssector beschikken over de kennis en middelen die nodig zijn om AI-toepassingen in te zetten in hun archiefwerking. Dit geldt ook voor een groot aantal contentpartners van meemoo. We zoeken daarom als dienstverlenende organisatie naar een gecentraliseerde oplossing waarmee we verschillende organisaties, in het bijzonder onze contentpartners, kunnen bedienen. Een centraal beheerde oplossing vermijdt ook dat elke afzonderlijke organisatie haar eigen diepgaande technische expertise moet ontwikkelen.

Een grote groep organisaties die gedeelde AI-toepassingen gebruiken, betekent ook een aanzienlijke schaalvergroting. Dat heeft een positief effect op de kostprijs per verwerkt item of uur archiefmateriaal. Dit geldt zowel voor de aankoop van AI-toepassingen en -diensten op de commerciële markt als voor het gebruik van de AI-diensten die we zelf ontwikkelen.

We kunnen AI-toepassingen op verschillende manieren inzetten en aanbieden. De huidige praktijk is om ze centraal in te zetten op het archiefmateriaal dat we bewaren voor onze contentpartners en de resultaten met hen te delen. Op de langere termijn zouden we deze AI-toepassingen ook als software as a service (SaaS) kunnen aanbieden aan contentpartners of andere organisaties. Zij kunnen ze dan zelfstandig gebruiken.

Het is van cruciaal belang dat de aangeboden oplossingen op een toegankelijke en (kosten)efficiënte manier kunnen worden gebruikt door de diverse geïnteresseerde partijen. Daar komen flink wat uitdagingen bij kijken. Die uitdagingen betreffen niet alleen de snelle evolutie van de technologie, maar bijvoorbeeld ook het uittekenen en implementeren van efficiënte workflows, het uitklaren van ethische en juridische kwesties, en het beheer van zowel de betrokken toepassingen, data als de gebruikersgemeenschap.

Het inzetten van AI bij meemoo

Afbeelding 1: gezichtsdetectie toegepast op een groepsfoto van vier voormalige Belgische premiers (Jean-Luc Dehaene, Leo Tindemans, Wilfried Martens en Mark Eyskens). Oorspronkelijke foto: Michiel Hendryckx. CC BY-SA 3.0.
Afbeelding 2: met NEL worden personen, organisaties en locaties uniek geïdentificeerd en de gegevens over hen semantisch verrijkt.

Bij meemoo richten we ons momenteel op het inzetten van enkele specifieke AI-toepassingen, namelijk gezichtsherkenning, spraakomzetting (Speech-To-Text of STT) en optische tekenherkenning (Optical Character Recognition of OCR). We passen ook named entity recognition (NER) en named entity linking (NEL) toe op de resultaten van de twee laatstgenoemde toepassingen.

Gezichtsherkenning en OCR zijn Computer Vision-toepassingen die getrainde algoritmen gebruiken om op grote schaal naar patronen in beelden te zoeken. Met gezichtsherkenning detecteren en identificeren we (relevante) individuen die voorkomen in gedigitaliseerde of digitaal geboren foto's en video's (Afbeelding 1). Hierdoor kunnen we op een (semi)geautomatiseerde manier bepalen wie er in het beeldmateriaal aanwezig is en een onderscheid maken tussen verschillende individuen die samen verschijnen. In video's kunnen we zelfs bepalen wanneer elke persoon in beeld verschijnt. De door meemoo gebruikte oplossingen genereren op een automatische manier beschrijvende metadata, maar de resultaten worden ter validatie handmatig gecontroleerd, bijvoorbeeld om de nauwkeurigheid van de resultaten te meten.

STT zet gesproken taal van audio- en video-opnamen om in machineleesbare tekst. OCR zet gedrukte tekst uit gedigitaliseerde kranten om in machineleesbare tekst. NER is een Natural Language Processing-toepassing die named entities detecteert in ongestructureerde tekst, bijvoorbeeld de resultaten van OCR of STT, en ze vervolgens classificeert in vooraf gedefinieerde semantische categorieën, zoals namen van personen, organisaties, locaties of tijdsaanduidingen. Met NEL koppelen we die termen aan overeenkomstige termen in online trefwoordenlijsten en kennisdatabases, zoals Wikidata.org. Hierdoor kunnen we de personen, organisaties en locaties uniek identificeren en de gegevens over hen semantisch verrijken (Afbeelding 2).

We hebben ook concrete plannen om AI-toepassingen in te zetten voor stemherkenning, audioclassificatie (onder andere ruis, gesproken woord of muziek) en het genereren van korte samenvattende beschrijvingen. De mogelijkheden van deze bijkomende toepassingen willen we verkennen in de periode 2024-2026.

Meemoo's AI-projecten voor het creëren en verrijken van beschrijvende metadata

De eerste projecten voor het creëren van beschrijvende metadata met behulp van AI

Afbeelding 3: gezichtsdetectie toegepast op een foto van podiumkunstenaars Josse De Pauw en Fumiyo Ikeda. Oorspronkelijke foto: Michiel Hendryckx. CC0.

In 2015 gebruikten we OCR om de gedrukte tekst van 270.000 gedigitaliseerde pagina's van Belgische kranten uit de Eerste Wereldoorlog om te zetten in machineleesbare tekst. In 2017 gebruikten we NER om in die tekst persoonsnamen te detecteren. Vervolgens gebruikten we NEL om de namen te matchen en te linken met de Namenlijst, een database van het In Flanders Fields Museum met gegevens over meer dan 500.000 gesneuvelden uit de Eerste Wereldoorlog. Het eindresultaat was de publicatie van bijna 122.000 links naar aanvullende informatie over de personen, elk met een score die de betrouwbaarheid van de matching aangeeft.1011

Tussen 2018 en 2020 onderzochten we in twee projecten met FOMU (Fotomuseum Antwerpen) en MoMu (Modemuseum Antwerpen) als inhoudelijke partners, en Datable als technische partner, de haalbaarheid van het gebruik van geautomatiseerde beeldherkenning met behulp van image recognition services voor de inhoudelijke beschrijving van cultureelerfgoedobjecten. We onderzochten op kleine schaal hoe bestaande online beeldherkenningsdiensten zoals Google Cloud Vision, Microsoft Computer Vision (nu Azure AI Vision) en Clarifai gebruikt kunnen worden om fotografische content te taggen en/of te categoriseren, en hoe en hoe we de verkregen resultaten vervolgens konden toevoegen aan de collectiemetadata.1213

In 2021-2022 onderzochten we, samen met de inhoudelijke partners ADVN (Archief voor Nationale Bewegingen), het Archief van het Vlaams Parlement, KOERS Museum voor de Wielersport, Kunstenpunt en het IDLab van de Universiteit Gent als technische partner, de toepassing van gezichtsherkenning op grotere schaal. In het FAME-project (FAce MEtadata)14 onderzochten we workflows en best practices om personen in foto’s en video’s op (semi)geautomatiseerde wijze te identificeren en metadateren met behulp van gezichtsherkenning. We onderzochten ook hoe we met behulp van bestaande beschrijvende metadata de accuraatheid van de gezichtsherkenning kunnen verbeteren. Het FAME-project richtte zich op drie soorten publieke figuren: politici en activisten, wielrenners en podiumkunstenaars (Afbeelding 3). Voor dit project stelden we in eerste instantie een namenlijst en een referentieset van portretfoto's samen voor ongeveer 6.000 relevante personen. Uiteindelijk konden we meer dan 78.440 gezichten herkennen in de collecties van de vier deelnemende contentpartners en koppelen aan bijna 1.700 personen uit onze namenlijst. 151617

De projecten die we tussen 2015 en 2022 hebben uitgevoerd, toonden duidelijk aan dat dankzij de inzet van artificiële intelligentie de creatie en de verrijking van beschrijvende metadata bij digitale collectieregistratie niet alleen tijds- en kostenefficiënter, maar ook vollediger wordt.

Het GIVE-metadataproject

Afbeelding 4: in het GIVE-metadataproject werd zowel spraakherkenning, entiteitsherkenning als gezichtsherkenning toegepast in functie van de verrijking van beschrijvende metadata.

Het GIVE-metadataproject 18 liep van 2021 tot 2023. Het richtte zich op het uitbreiden en opschalen van het gebruik van AI-toepassingen voor het genereren van beschrijvende metadata voor digitale audiovisuele archieven (Afbeelding 4).

In de eerste fase van het project werd STT-technologie toegepast op ongeveer 170.000 uur aan audio- en videobestanden. Daarna begonnen we met NER om namen van personen, organisaties of locaties in de bekomen tekst te identificeren. Vervolgens gebruikten we waar mogelijk NEL om deze entiteiten te koppelen aan overeenkomstige entiteiten in bestaande externe opendatabronnen, zoals Wikidata.org.

In de tweede fase voerden we grootschalige gezichtsherkenning uit op 124.000 uur videomateriaal. We hadden twee doelstellingen: het detecteren en herkennen van gezichten in de video's en de publieke figuren uit de video's ook identificeren. Het is belangrijk op te merken dat niet elk gedetecteerd gezicht van een persoon voor ons belangrijk genoeg is om te identificeren. Om een idee te geven van de omvang van de schaalvergroting: in het FAME-project verwerkten we iets meer dan 154.000 foto's, in het GIVE-metadataproject verwerkten we 124.000 uur video. Deze hoeveelheid video resulteert in 432.000.000 te verwerken frames, als we slechts één frame per seconde weerhouden.

Cruciaal is dat het GIVE-metadataproject niet werd geprofileerd als een onderzoeksproject. Ons doel was om workflows te ontwikkelen die integreren met het meemoo-archiefsysteem, verder schaalbaar zijn en ook na afloop van het project bruikbaar blijven. Het was niet de bedoeling om nieuwe technologieën te ontwikkelen of AI-modellen te trainen, maar om kwalitatieve beschrijvende metadata te verkrijgen door de integratie van bestaande commerciële of opensource-oplossingen.

Afstemming en samenwerking met de partners

In totaal waren 120 contentpartners betrokken bij het GIVE-metadataproject. De sleutel tot succes was ervoor te zorgen dat deze partners de nieuwe aanpak accepteerden als een levensvatbare oplossing voor het creëren van beschrijvende metadata. Een aanzienlijk deel van het project werd daarom besteed aan afstemming en samenwerking met alle partners. Het verkrijgen van instemming van alle contentpartners was cruciaal voor het ontwikkelen van een oplossing die voor iedereen geschikt is. Het implementeren van gezichtsherkenning verandert immers bepaalde processen en praktijken binnen hun organisaties.

Neem bijvoorbeeld de referentielijst van relevante publieke figuren waarop we gezichtsherkenning willen uitvoeren. In veel gevallen worden persoonsnamenlijsten vandaag beheerd door individuele organisaties zelf, zijn ze niet volledig gestandaardiseerd en worden ze slechts in beperkte mate gedeeld. In het ontwikkelingsproces werd gaandeweg duidelijk dat een overkoepelende namenlijst met een referentieset van afbeeldingen voor elk gezicht een grote meerwaarde kan leveren. Het werken met één gedeelde database met alle relevante publieke figuren vermindert de complexiteit van de oplossing in termen van databeheer. Dit vereiste een aanpassing in de manier waarop organisaties hun referentielijsten gebruiken, aangezien alle organisaties publieke figuren kunnen bewerken of toevoegen in de gedeelde database. Het grote voordeel van deze aanpak is dat elke organisatie kan profiteren van het werk van de andere organisaties. Deze mentaliteitsverandering werd mogelijk gemaakt door het projectteam en in samenwerking met de belanghebbenden.

Naast informatiesessies en nieuwsbrieven lanceerden we ook een oproep voor deelname aan een projectwerkgroep, die er uiteindelijk toe leidde dat we tien contentpartners nauwer bij het project betrokken. Deze groep werd op de hoogte gehouden met gedetailleerde informatie over de voortgang van het project en speelde een belangrijke rol in de besluitvorming over ethische kwesties, modelparametrisering en de ontwikkeling van een beheertool voor een gedeelde referentieset.

Gezichtsdetectie, gezichtsherkenning en de rol van referentiesets

Gezichtsdetectie

Afbeelding 5: bij gezichtsdetectie worden eerst gezichtsuitsnedes gecreëerd die nadien per persoon in clusters worden gegroepeerd.

Voordat je een persoon in een video kunt herkennen, moet je eerst bepalen welke elementen in de video gezichten zijn. Na uitgebreide benchmarking koos meemoo voor een combinatie van twee opensourcemodellen: YuNet en MediaPipe. Vervolgens wordt er voor elk gedetecteerd gezicht een unieke 'gezichtsafdruk' gegenereerd, ook vectorprofiel genoemd. Die vectorprofielen zijn wiskundig elementen waarin de kenmerken of eigenschappen van een gezicht worden samengebracht. Ze stellen je in staat om te meten in hoeverre twee gezichten op elkaar lijken. Tennislegende Kim Clijsters zal dankzij haar unieke vectorprofiel niet verward worden met bijvoorbeeld de Belgische actrice Maaike Cafmeyer. Voor het genereren van de unieke vectorprofielen heeft meemoo MagFace gebruikt.

Door gedetecteerde gezichten in video's te koppelen aan vectorprofielen kunnen we specifieke gezichten in meerdere frames binnen dezelfde video-opname volgen. Deze techniek, bekend als face tracking, heeft als doel om verschijningen van het gezicht van dezelfde persoon binnen een opname te groeperen. Als een persoon in meerdere opnamen voorkomt, worden deze vectorprofielen samengevoegd tot een cluster (Afbeelding 5). Op die manier kunnen we een uniek individu in dezelfde video identificeren. Vanwege technische en juridische overwegingen bewaren we alleen de drie meest geschikte gezichtsuitsnedes en de bijbehorende vectorprofielen. Alleen deze worden later weer gebruikt om te vergelijken met de gezichten / vectorprofielen in de referentieset. Als we dit niet zouden doen, zou dit resulteren in een dataset die zo groot is dat het proces op grote schaal onuitvoerbaar wordt. We houden wel heel gedetailleerde informatie bij over de tijdsintervallen waarop een persoon voorkomt in de video zodat we deze aan gebruikers kunnen tonen.

Gezichtsherkenning

Afbeelding 6: bij gezichtsherkenning worden de geclusterde gezichtsuitsnedes gematcht met gezichtsuitsnedes uit de referentieset.

De laatste stap in het proces is de eigenlijke gezichtsherkenning. Hierbij worden de drie representatieve vectorprofielen van een individu die in een video zijn gedetecteerd, vergeleken met die van de publieke figuren in de referentieset. Deze set is cruciaal voor het verbinden van de gezichtsdetectie en -herkenning. Alleen individuen in de referentieset van publieke figuren worden herkend in de 124.000 uur video in het meemoo-archief en worden vindbaar en doorzoekbaar via beschrijvende metadata.

De drie opgeslagen vectorprofielen van een persoon die in de video wordt herkend, worden gematcht met de tien meest gelijkende vectorprofielen uit de referentieset. Dankzij indexering19 kunnen we deze vergelijking zeer efficiënt uitvoeren. Als de afstand tussen de vectorprofielen voldoende klein is en als de vectorprofielen uit de video consistent overeenkomen met die van dezelfde figuur in de referentieset, beschouwen we dit als een match (Afbeelding 6). Aan deze overeenkomst wordt dan een zekerheidsscore toegekend op basis van de afstanden tussen de vectorprofielen.

Het gezicht van een niet-geïdentificeerde persoon dat in de video wordt gedetecteerd, wordt vervolgens gekoppeld aan een geïdentificeerde publieke figuur in de referentielijst. Op dat moment wordt er een identiteit toegekend aan de gedetecteerde persoon. Als de afstand te groot is, is er geen match. Dan zit de persoon in de video niet in de referentieset en kan zijn vectorprofiel dus niet gematcht worden. Daar stopt het proces echter niet, want we hebben ook een clusteralgoritme gebruikt om niet-geïdentificeerde personen over meerdere video's samen te voegen. Zo kunnen we gezichten van de meest voorkomende, niet-geïdentificeerde personen in een interface aanbieden, zodat de contentpartners kunnen proberen de betreffende publieke figuur te benoemen.

Creatie van de referentieset

Afbeelding 7: een archivaris die een persoon herkent, kan beslissen om die manueel toe te voegen aan de referentieset.

Het identificeren van eerder niet-geïdentificeerde maar relevante personen houdt in essentie in dat ze worden toegevoegd aan de referentieset. De contentpartner voegt een paar foto's en de naam van de afgebeelde publieke figuur toe en na de nachtelijke matching wordt de voorheen niet-geïdentificeerde persoon een geïdentificeerde publieke figuur. Dit geldt niet alleen voor alle video's in het archiefsysteem van de contentpartner die deze relevante publieke figuur heeft geïdentificeerd en toegevoegd, maar ook voor alle andere video's in het meemoo-archief, inclusief die van andere contentpartners. Zo plukt iedereen de vruchten van elkaars werk en expertise.

We kunnen nu ook automatisch kwaliteitsvolle afbeeldingen van gezichten selecteren uit videoframes om ze als foto toe te voegen aan de referentieset (Afbeelding 7). Hierdoor vermijden we dat een contentpartner foto's in andere bronnen moet zoeken en die vervolgens moet bijsnijden en opladen naar de referentieset. De beslissing om een persoon toe te voegen aan de referentieset van publieke figuren blijft wel een menselijke, manuele stap.

Meemoo's aanpak voor de creatie van de referentieset

Gezien de grote schaal van onze werking is het zeer belangrijk om ethische implicaties in overweging te nemen bij de beslissing om een persoon toe te voegen aan de gedeelde referentieset van publieke figuren. We hebben dit besluitvormingsproces uitgebreid besproken met belanghebbenden in werkgroepsessies. Deze gesprekken werden gevoerd met contentpartners, AI-experts, archivarissen en personen met een publiek profiel die mogelijk aan onze referentieset zouden kunnen worden toegevoegd. Hierdoor konden we het proces vanuit verschillende perspectieven bekijken en een gedeeld raamwerk van afspraken opstellen. Deze sessies werden gefaciliteerd door het Kenniscentrum Data & Maatschappij.

Belangrijke elementen om een robuust ondersteunend kader voor de gedeelde referentieset te verzekeren, zijn onder andere

  • afspraken over wie toegang heeft tot de referentieset en wie publieke figuren eraan kan toevoegen;
  • een praktische handleiding over de juridische en ethische context, waarin vragen worden beantwoord zoals welke (soorten) foto's mogen worden toegevoegd;
  • een handleiding waarin onder andere wordt uitgelegd welke technische kenmerken een representatieve foto moet hebben voor de referentieset, bijvoorbeeld het afbeelden van slechts één persoon, hoe bij te snijden met behoud van marges en leeftijdsdiversiteit in foto's.

Met het oog op het beheer hebben we enkele specifieke extra functionaliteiten opgenomen in de beheertool voor de gedeelde referentieset. Net als Wikidata.org registreren we automatisch wie welke wijzigingen aanbrengt in welke persoonsrecords. Dit vergroot de transparantie. Contentpartners kunnen zichzelf als 'betrokken partij' voor een specifieke persoon aanduiden, zodat elke organisatie kan werken met zijn 'eigen' personenlijst (een subset van de volledige referentieset). De volledige referentieset wordt nog steeds gebruikt bij de volgende matching, maar een contentpartner kan bijvoorbeeld besluiten om in een later stadium alleen de resultaten met betrekking tot personen voor wie hij 'betrokken partij' is te importeren in zijn eigen collectiebeheersysteem. We houden de gegevens in persoonsrecords zo beperkt mogelijk: we bewaren voornamelijk een kleine set representatieve foto's van elke persoon, hun naam, een korte beschrijving en een link naar hun Wikidata-item. Deze aanpak vereenvoudigt het beheer en voorkomt dat de tool zelf een person name authority wordt. Contentpartners kunnen links toevoegen naar andere interne of externe bronnen, zoals de authority files van hun eigen collectiebeheersysteem of andere openbare bronnen.

De beslissingen bij meemoo om AI-tools te gebruiken en te ontwikkelen

Bouwen of kopen?

Afbeelding 8: bouwen of kopen?

Aan het begin van het GIVE-metadataproject werden we geconfronteerd met verschillende technische vragen en we hebben voor elke vraag een vergelijkbare aanpak gekozen. Eerst hebben we de functionele vereisten voor de gewenste oplossing op een rijtje gezet voor zowel de spraakherkennings-, gezichtsherkennings- als entiteitsherkenningstechnologie. Daarbij hebben we een onderscheid gemaakt tussen must-haves en nice-to-haves.

Aan de hand van deze vereisten organiseerden we vervolgens een marktbevraging. We evalueerden wat de commercieel verkrijgbare oplossingen op dat moment konden leveren en gingen ook na waar opensourcemodellen of -libraries toe in staat waren (Afbeelding 8). Met het oog op de selectie van de meest geschikte oplossing op basis van prijs en kwaliteit, wogen we de kosten van commerciële oplossingen af tegen de kosten voor integratie van opensourcemodellen in onze workflow en benchmarkten we de kwaliteit van de modellen.

Bouwen: oplossing voor gezichtsherkenning

Voor gezichtsherkenning splitsten we onze zoektocht op in twee verschillende delen. Enerzijds wilden we gezichten van een aantal voorafbepaalde publieke figuren terugvinden en benoemen (detectie en herkenning), anderzijds wilden we ook de meest voorkomende nog niet benoemde gezichten in het videomateriaal identificeren. We gingen ervan uit dat individuen die vaker voorkomen waarschijnlijk relevanter zijn. We vroegen vervolgens aan domeinspecialisten, waaronder archivarissen en collectieregistratoren, om deze te benoemen.

Op basis van deze vereisten werd opnieuw een marktbevraging georganiseerd. Slechts een beperkt aantal aanbieders bood een geschikte gezichtsherkenningsoplossing voor onze doeleinden aan. Met name het vinden en clusteren van vaak voorkomende maar nog naamloze gezichten, het labelen ervan en het toevoegen aan de referentielijst bleek een functionaliteit die niet standaard beschikbaar was. De kostprijs per uur verwerkte video was ook vrij hoog. Aangezien het FAME-project had aangetoond dat opensourcemodellen resultaten van hoge kwaliteit kunnen opleveren, en aangezien de totale ontwikkelingskosten vergelijkbaar waren met de kosten van het gebruik van een commerciële oplossing, besloten we de gezichtsherkenningsoplossing zelf te ontwikkelen met behulp van beschikbare opensourcecomponenten.

Kopen: STT- en NER-oplossingen

Voor STT kozen we ervoor een oplossing te kopen omdat er op dat moment onvoldoende goede voorgetrainde modellen beschikbaar waren. Aangezien meemoo met publieke middelen werkt, was hiervoor een aanbestedingsprocedure nodig. Naast prijs lag de focus uiteraard op kwaliteit. Die werd vooral afgemeten aan de word error rate. Daarnaast werd gekeken naar extra eigenschappen van de oplossing, zoals sprekerherkenning, het aantal ondersteunde talen en de updatefrequentie van de modellen.

Om de vergelijking van de aangeboden oplossingen op basis van word error rate te objectiveren, creëerden we manueel 240 minuten ground-truth data. Deze dataset bevatte een doorsnede van het archiefmateriaal, voornamelijk in het Nederlands gesproken, gaande van studio-opnamen tot straatopnamen, dialecten of opnamen van toneelstukken. Dit hielp ons te begrijpen hoe de software zou presteren op de content van onze partners. De vergelijking zelf werd uitgevoerd met behulp van de EBU Benchmark STT tool. Speechmatics kwam als beste oplossing uit de bus. Het is interessant om op te merken dat het opensourcemodel Whisper beschikbaar werd tijdens het aanbestedingsproces eind 2022. We hebben dit opgenomen in onze benchmarkoefening. We stelden vast dat het goede resultaten behaalde, vooral op meer uitdagende inhoud, maar dat het nog niet op het niveau van de state-of-the-art modellen zat.

Na een gelijkaardig vergelijkingsproces kozen we ook een commercieel beschikbare oplossing voor NER. We gebruikten opnieuw onze ground-truth dataset om de opensourcemodellen spaCY en flair te vergelijken met de commerciële concurrent TextRazor. De transcripties werden verrijkt met trefwoorden. Zo konden we meten hoeveel entiteiten correct herkend werden. We stelden vast dat de prestaties van TextRazor vergelijkbaar waren met die van de opensourcemodellen. Omdat deze commerciële oplossing bovendien in staat was om de entiteiten meteen te linken aan Wikidata, hebben we beslist om ze te gebruiken voor zowel NER als NEL.

Geleerde lessen en resultaten

Geleerde lessen: het FAME-project

In het FAME-project20 ontdekten we dat er geen gebruiksvriendelijke, kant-en-klare technische oplossing voor gezichtsherkenning bestaat die cultureelerfgoedorganisaties in Vlaanderen individueel en op een kostenefficiënte manier kunnen gebruiken. Veel erfgoedorganisaties zullen, althans voorlopig, aangewezen blijven op overkoepelende oplossingen. Deze oplossingen vereisen de ontwikkeling van een (gedeelde) technische infrastructuur. We ontdekten ook dat de integratie van de resultaten van gezichtsherkenning als nieuwe metadata in de informatiebeheersystemen van onze projectpartners nog steeds technische uitdagingen oplevert.

We hebben verder geleerd dat de workflow twee bijzonder tijdrovende taken met zich meebrengt: het creëren van een referentieset van foto's en het handmatig valideren van de identificaties die door de AI-toepassing worden voorgesteld. Er is onderzoek nodig om deze processen tijdsefficiënter te maken. Ook moet worden onderzocht of de referentieset door verschillende organisaties samen kan worden opgebouwd en door hen collectief kan worden gebruikt.

Een belangrijke uitdaging ligt in de toepassing van gezichtsherkenningstechnologie op enorme hoeveelheden videomateriaal. Video's worden in het gezichtsherkenningsproces eerst omgezet in reeksen stilstaande beelden voordat ze een soortgelijke workflow als de foto's kunnen doorlopen. Video's bestaan vaak uit 25 stilstaande beelden (frames) per seconde. Een uur video bevat dus 90.000 frames. Zelfs als we slechts 1 frame per seconde zouden weerhouden, zou een uur video nog steeds 3.600 frames opleveren. Vectorprofielen vereisen enorme rekenkracht en verwerkingstijd voor analyse (in het FAME-project werden gezichtskenmerken samengevoegd tot 512-dimensionale vectoren), vooral omdat videomateriaal vaak meerdere personen bevat. Het is mogelijk om slechts een beperkt aantal frames te analyseren van elke video-opname waarop een of meer personen te zien zijn, maar het aantal (stilstaande) beelden dat moet worden geanalyseerd voor gezichtsherkenning is bij videomateriaal veel groter dan bij fotomateriaal. Videomateriaal genereert daarom een veel groter aantal vectorprofielen die vergeleken en geclusterd moeten worden op basis van gelijkenis. Een andere vraag voor verdere opschaling is of en in welke mate handmatige validatie van gezichtsherkenningsresultaten nodig en haalbaar is.

We hebben niet alleen gemerkt dat gezichtsherkenningstechnologie snel evolueert, maar ook dat vectorprofielen niet interoperabel zijn tussen verschillende modellen. Ze moeten dus voor elk nieuw model opnieuw worden aangemaakt. Daarom is het op dit moment niet erg nuttig om vectorprofielen uit te wisselen, maar het delen van gezichtsuitsnedes en portretten (de referentieset) zou wel tot een aanzienlijke tijdwinst kunnen leiden.

Gezichtsherkenning levert de beste resultaten op als er 5 tot 10 portretfoto's voor elke persoon zijn, idealiter frontaal opgenomen en waarop de personen op verschillende leeftijden in de loop van hun carrière te zien zijn.

Resultaten: het GIVE-project

Afbeelding 9: met behulp van STT werd meer dan 110.000 van de 170.000 uur aan audio- en videomateriaal getranscribeerd. De toepassing werd niet gebruikt voor audio- en videomateriaal waarbij de taaldetectie de taal niet met voldoende zekerheid kon bepalen of wanneer er geen spraak aanwezig was in de audio- of videoclip.

De stap van gezichtsdetectie en vectorberekening is bijzonder rekenintensief en vereist een eenmalige uitvoering die parallel kan worden uitgevoerd. In het GIVE-project kozen we voor een cloudinfrastructuur vanwege de hoge rekenbehoefte maar de beperkte duur van het proces. Deze stap nam ongeveer 10 weken in beslag. We voerden de matching en clustering dagelijks 's nachts uit. Met 124.000 uur video verwerkt, duurt dit momenteel enkele uren. Publieke figuren die de vorige dag aan de referentieset zijn toegevoegd, worden binnen 24 uur herkend in deze 124.000 uur video.

We gebruikten gezichtsherkenning om 2.500 publieke figuren uit de referentieset te koppelen aan 1 of meer video's. In totaal voorzagen we zo 40.293 video's van extra beschrijvende metadata. Het groeipotentieel is enorm: we identificeren momenteel duizenden naamloze individuen die vaak voorkomen en die aan onze referentieset van publieke figuren kunnen worden toegevoegd indien ze relevant zijn. De kwaliteit van de gezichtsherkenning is uitzonderlijk hoog. Fouten komen voornamelijk voor bij tweelingen of bij vergissingen in de referentieset.

We hebben ook STT gebruikt om meer dan 110.000 van de 170.000 uur aan audio- en videomateriaal te transcriberen. We hebben STT niet toegepast op audio- en videomateriaal waarbij de taaldetectie, die vlak voor de transcriptie werd uitgevoerd, de taal niet met voldoende zekerheid kon bepalen of wanneer er geen spraak aanwezig was in de audio- of videoclip (Afbeelding 9). Het volledige corpus werd in ongeveer 4 maanden verwerkt met behulp van de SaaS-oplossing van Speechmatics en interne integratiesoftware.

In het algemeen is de kwaliteit van de transcriptie goed (zoals ook te zien was in de benchmark tijdens het aankoopproces), maar ze varieert naargelang de kwaliteit van de klank en spraak. Fragmenten waarin de taal verandert of waarin muziek voorkomt, resulteren in transcripties van mindere kwaliteit.

NER op tekst werd uitgevoerd op alle transcripties. Hierbij werden 1,7 miljoen locaties, 3,7 miljoen personen en 1,1 miljoen organisaties geïdentificeerd. Op het vlak van kwaliteit gelden hier dezelfde conclusies: over het algemeen is de kwaliteit van NER goed, maar wanneer de kwaliteit van de transcriptie daalt, daalt ook de kwaliteit van NER.

De ethische en juridische aspecten van AI-toepassingen

Ethische aspecten

Afbeelding 10: een overzicht van de momenten in de uitvoering van het GIVE-metadataproject waarop ethische afwegingen moesten worden gemaakt.
Afbeelding 11: de gezichtsherkenningsworkflow die werd toegepast in het FAME-project.

Het gebruik van AI-toepassingen, vooral gezichtsherkenning, roept bepaalde ethische vragen op (Afbeelding 10).2122 De technologie is afhankelijk van goede referentiesets. Een algoritme vergelijkt de vectorprofielen van de referentiefoto's met die van gezichten die zijn gedetecteerd in digitaal archiefmateriaal en voorspelt zo de waarschijnlijkheid dat ze de persoon in kwestie vertegenwoordigen (Afbeelding 11). Referentiefoto's kunnen afkomstig zijn uit verschillende bronnen, waaronder het publieke web. De ethiek van het op grote schaal verzamelen (inclusief 'scrapen') en bewaren van foto's van het web zonder toestemming van de afgebeelde personen en de makers, roept ernstige vragen op. En is er een verschil wanneer de gebruikte foto’s tot het publiek domein behoren, gepubliceerd zijn onder een vrije licentie of online geplaatst zijn door de betrokken persoon zelf? Er ontstaat een spanning tussen enerzijds het principe en de doelen van open content en anderzijds de ethische overwegingen bij de brede toepassing van gezichtsherkenningstechnologie. Zo rijst bijvoorbeeld de vraag of alle open data en content probleemloos mag gebruikt worden in alle AI-toepassingen, ook voor commerciële doelstellingen.

Gezichtsherkenningstoepassingen reproduceren en versterken vaak bestaande raciale en genderongelijkheden. Weinig evenwichtige trainingsdatasets dreigen te leiden tot een vooringenomenheid (bias) bij algoritmes die bepaalde personen op basis van hun etniciteit of geslacht beter of slechter herkennen. Het is niet alleen van belang om waar mogelijk bias te voorkomen, maar ook om de gevolgen te proberen beperken en de potentiële bias maximaal zichtbaar te maken.

De gebruikte AI-toepassingen steunen op (door de ontwikkelaar) getrainde modellen en die training vergt veel rekenkracht en energie. Een substantieel deel daarvan komt niet uit hernieuwbare energiebronnen. Zowel het terugdringen van nefaste effecten, bijvoorbeeld door energie-efficiënte workflows voor de analyse van vele uren videomateriaal, als transparantie hierover zijn belangrijke aandachtspunten. Modellen trainen, algoritmen finetunen en resultaten van grote hoeveelheden data valideren vragen ook veel mankracht. Er bestaan veel vragen over wie dat werk van data labeling uitvoert en in welke omstandigheden dat gebeurt. Soms gaat het om correct betaalde vaste werknemers, soms om stagiairs of vrijwilligers, al dan niet via crowdsourcing. Maar soms wordt ook een beroep gedaan op zogeheten ghost workers of click workers in lageloonlanden en penibele arbeidsomstandigheden.

Juridische aspecten

Afbeelding 12: de uitvoering van de juridische risico-analyse in het GIVE-metadataproject.

Het implementeren van AI-toepassingen brengt ook grote juridische uitdagingen met zich mee, met name op het gebied van de bescherming van persoonsgegevens en het auteursrecht. We hebben deze uitdagingen uitgebreid onderzocht.23Het kader voor dit uitgebreid juridisch onderzoek was de Belgische wetgeving.24

Afbeeldingen zijn persoonsgegevens en de verwerking ervan moet daarom voldoen aan de wetgeving voor de bescherming van persoonsgegevens. Cultureelerfgoedorganisaties kunnen zich beroepen op een taak van algemeen belang en op uitzonderingen voor verwerkingen met het oog op archivering in het algemeen belang indien ze een wettelijk mandaat hebben om dat te doen. Zeker voor kleinere organisaties is dat niet altijd even evident. Een specifieke uitdaging bij gezichtsherkenning is dat foto's worden beschouwd als biometrische gegevens wanneer ze worden verwerkt met software om een persoon uniek te identificeren. Biometrische gegevens vallen onder de categorie van ‘bijzondere’ persoonsgegevens in de Algemene verordening gegevensbescherming.25 De (grootschalige) verwerking ervan vereist strengere beschermingsmaatregelen (DPIA) (Afbeelding 12).26 Dit brengt extra lasten met zich mee voor organisaties, zoals de noodzaak om vooraf een grondige risicoanalyse uit te voeren. In onze projecten beperken we het bewaren van vectorprofielen bewust tot een minimum en delen we ze niet met derden. Er is ook meer wettelijke flexibiliteit als het gaat om publieke figuren (zoals politici en activisten, podiumkunstenaars en wielrenners), waarop we dan ook de focus hebben gelegd.

Bij gezichtsherkenning worden uit foto’s en video’s gezichten van relevante personen gesneden en opgeslagen in een referentieset. Vervolgens wordt AI-software ingezet om deze personen te identificeren in digitaal foto- en videomateriaal. Aanvullende identificaties worden als bijkomende metadata toegevoegd aan de zoekindexen van de informatiebeheersystemen. Als output van puur technische toepassingen zijn deze nieuwe metadata niet auteursrechtelijk beschermd. De foto’s en video’s zelf, die we gebruiken als input, komen daarvoor wél in aanmerking. Dat betekent dat men in de regel tot zeventig jaar na het overlijden van de maker toestemming nodig heeft om ze te reproduceren27 en publiek mee te delen. De wetgeving voorziet hierop uitzonderingen voor erfgoedorganisaties en wetenschappelijk onderzoek. En gezichten die uit foto's en video's zijn geknipt, missen vaak originele elementen om voor auteursrechtelijke bescherming in aanmerking te komen. Zij zouden gemakkelijker gedeeld kunnen worden.

Conclusies en volgende stappen

Dankzij het GIVE-metadataproject hebben we, met de medewerking van meer dan 120 contentpartners, op een uniforme manier een aanzienlijke hoeveelheid extra beschrijvende metadata kunnen creëren.

Momenteel bewaren we de verkregen metadata in een speciaal hiervoor ontworpen toolbox. Die geeft onze contentpartners toegang tot de data en geeft hen inzicht in de kwaliteit en het potentieel ervan. In de komende maanden zullen we samen met hen bepalen welke beschrijvende metadata ze zullen importeren in hun collectiebeheersystemen. Hierbij zal ook meta-metadata opgenomen worden die aangeeft dat deze nieuwe metadata automatisch werd gegenereerd. We houden bij welke AI-engine op welk moment welke metadata heeft gegenereerd en willen dat ook transparant maken voor de eindgebruiker. We doen dit in onze knowledge graph-infrastructuur, die bij uitstek geschikt is voor het bewaren van complexe metadata.

In de toekomst zullen we doorgaan met projecten waarbij AI de beschrijvende metadata van digitaal archiefmateriaal verrijkt. In eerste instantie willen we large language models voor geschreven tekst gebruiken om onderscheid te maken tussen transcripties van betere en slechtere kwaliteit. We kunnen onvoldoende vertrouwen op de betrouwbaarheidsscores van de transcriptie-engine om de kwaliteit van de transcriptie te bepalen. Vervolgprojecten zullen zich ook richten op metadatacorrecties en aanvullende AI-technieken om metadata verder te verrijken en de vindbaarheid en doorzoekbaarheid van digitale archieven te verbeteren, zoals stemherkenning, audioclassificatie en gezichtsherkenning in foto's op grotere schaal. Tot slot hebben we een project gepland om te onderzoeken hoe om te gaan met correcties op automatisch gegenereerde data.

Wij zijn ervan overtuigd dat het inzetten van AI voor metadatacreatie een essentiële vervolgstap is op het digitaliseren van erfgoed en een zeer grote meerwaarde kan betekenen voor de de vind- en doorzoekbaarheid van digitale content uit archieven.

Door mensen op gezette tijdstippen in de processen te betrekken kunnen we dit bovendien realiseren binnen een correct ethisch en juridisch kader.

Voetnoten

  1. meemoo, (2024), Contentpartners (geraadpleegd op 10 oktober 2024).
  2. meemoo, (2021), GIVE-krantenproject Primeur (geraadpleegd op 10 oktober 2024).
  3. meemoo, (2021), GIVE-glasplatenproject (geraadpleegd op 10 oktober 2024).
  4. meemoo, (2021), GIVE-Topstukkenproject (geraadpleegd op 10 oktober 2024).
  5. meemoo, (2024), Digitaliseren, digitaal bewaren en beheren’ (geraadpleegd op 10 oktober 2024).
  6. meemoo, (2024), Content toegankelijk en bruikbaar maken (geraadpleegd op 10 oktober 2024).
  7. meemoo, (2024), Audiovisueel materiaal in de klas, met Het Archief voor Onderwijs (geraadpleegd op 10 oktober 2024).
  8. meemoo, (2024), Expertise verzamelen en delen (geraadpleegd op 10 oktober 2024).
  9. meemoo, (2024), Expertise verzamelen en delen (geraadpleegd op 10 oktober 2024).
  10. meemoo, (2019), Linked data: entiteiten in je data herkennen (geraadpleegd op 10 oktober 2024).
  11. meemoo, (2019), Attestatie: heb je een juiste match? (geraadpleegd op 10 oktober 2024).
  12. Vanstappen, H., (2019), VR4CH: Visual recognition voor erfgoedcollecties, eindrapport (geraadpleegd op 10 oktober 2024).
  13. Derveaux, A., Vanderperren, H. en Vanstappen, H., (2020), Eindrapport Operationalisering van beeldherkenning in de registratiepraktijk (geraadpleegd op 10 oktober 2024).
  14. meemoo, (2022), FAME: gezichtsherkenning als tool voor metadatacreatie (geraadpleegd op 10 oktober 2024).
  15. Magnus, B., Milleville, K., Van Keer, E., Vanderperren, N., Vergauwe, A. en Vissers, R., (2022), D6 Eindrapport ‘Operationalisering van (metadata-gedreven)gezichtsherkenning in de registratiepraktijk (geraadpleegd op 10 oktober 2024).
  16. Claeys, Ph., Derveaux, A., Magnus, B., Priem, M., Vanderperren, N., Van Keer, E., Vanstappen, H. en Vissers, R., (2022), Gezichtsherkenning bij erfgoedcollecties, META, Vol. 2022, Nr. 6, pp. 10-15 (geraadpleegd op 10 oktober 2024).
  17. Milleville, K., Van den Broeck, A., Vanderperren, N., Vissers, R., Priem, M., Van de Weghe, N. en Verstockt, S., Enriching Image Archives via Facial Recognition, Journal on Computing and Cultural Heritage, Vol. 16, No. 4, pp 1–18 (geraadpleegd op 10 oktober 2024).
  18. meemoo, (2021), GIVE-metadataproject (geraadpleegd op 10 oktober 2024).
  19. Hierarchical Navigable Small Worlds (HNSW) (geraadpleegd op 10 oktober 2024).
  20. Magnus, B., Milleville, K., Van Keer, E., Vanderperren, N., Vergauwe, A. en Vissers, R., (2022), D6 Eindrapport ‘Operationalisering van (metadata-gedreven)gezichtsherkenning in de registratiepraktijk’ (geraadpleegd op 10 oktober 2024).
  21. Magnus, B. (2022), Gezichtsherkenning om erfgoed te metadateren: mag dat? (ethisch luik), META, Vol. 2022, Nr. 4, p. 5 (geraadpleegd op 10 oktober 2024).
  22. Magnus, B. (2022), Nieuwe techniek, nieuwe vragen. Hoe ethisch is gezichtsherkenning op erfgoedcollecties?, FARO tijdschrift over cultureel erfgoed, Vol. 2022, Nr. 2, pp. 66-71 (geraadpleegd op 10 oktober 2024).
  23. Van Keer, E. (2022), Gezichtsherkenning om erfgoed te metadateren: mag dat? (juridisch luik), META, Vol. 2022, Nr 5, p. 22 (geraadpleegd op 10 oktober 2024).
  24. Het kader voor dit uitgebreid juridisch onderzoek was de Belgische wetgeving.
  25. General Data Protection Regulation (GDPR).
  26. Data Protection Impact Assessment (DPIA).
  27. We moesten van elke foto eerst een kopie maken om die lokaal te kunnen opslaan.

Deze pagina aanvullen of corigeren?

Eiusmod ex minim officia eu sunt proident. Id culpa veniam id anim officia incididunt veniam excepteur cupidatat sit consectetur quis consequat. Incididunt proident commodo aliqua ipsum in duis dolore occaecat aute aliquip et pariatur velit. Cupidatat do et sunt labore.