Zephyrnet-logo

Wat zijn vectorinbeddingen? | Definitie van TechTarget

Datum:

Wat zijn vectorinbeddingen?

Vectorinsluitingen zijn numerieke representaties die de relaties en betekenis van woorden, zinsdelen en andere gegevenstypen vastleggen. Door middel van vectorinbedding worden essentiële kenmerken of kenmerken van een object vertaald in een beknopte en georganiseerde reeks getallen, waardoor computers snel informatie kunnen ophalen. Soortgelijke gegevenspunten worden dichter bij elkaar geclusterd nadat ze zijn vertaald naar punten in een multidimensionale ruimte.

Gebruikt in een breed scala aan toepassingen, vooral bij natuurlijke taalverwerking (NLP) en machinaal leren (ML), helpen vectorinbeddingen bij het manipuleren en verwerken van gegevens voor taken zoals vergelijkingen van overeenkomsten, clustering en classificatie. Wanneer u bijvoorbeeld naar tekstgegevens kijkt, kunnen woorden zoals hoe en poesje soortgelijke betekenissen overbrengen, ondanks verschillen in de samenstelling van de letters. Effectief semantisch zoeken is afhankelijk van nauwkeurige representaties die deze semantische gelijkenis tussen termen adequaat vastleggen.

[Ingesloten inhoud]

Zijn inbedding en vectoren hetzelfde?

De voorwaarden vectoren en inbedding kunnen door elkaar worden gebruikt in de context van vectorinbedding. Ze verwijzen allebei naar numerieke gegevensrepresentaties waarin elk data punt wordt weergegeven als een vector in een hoogdimensionale ruimte.

Vector verwijst naar een reeks getallen met een gedefinieerde dimensie, terwijl vectorinbedding deze vectoren gebruikt om gegevenspunten in een doorlopende ruimte weer te geven.

Dit artikel is onderdeel van

Inbedding verwijst naar het uitdrukken van gegevens als vectoren om belangrijke informatie, semantische koppelingen, contextuele kwaliteiten of de georganiseerde weergave van gegevens die zijn geleerd via trainingsalgoritmen of machine learning-modellen.

Soorten vectorinbedding

Vectorinsluitingen zijn er in verschillende vormen, elk met een aparte functie voor het weergeven van verschillende soorten gegevens. Hier volgen enkele veelvoorkomende typen vectorinbedding:

  • Woordinsluitingen. Woordinsluitingen zijn vectorrepresentaties van individuele woorden in een doorlopende ruimte. Ze worden vaak gebruikt om semantische verbanden tussen woorden vast te leggen in taken zoals sentiment analyse, taalvertaling en woordovereenkomst.
  • Inbedding van zinnen. Vectorrepresentaties van volledige zinnen worden zininbedding genoemd. Ze zijn nuttig voor taken als sentimentanalyse, tekstcategorisatie en het ophalen van informatie, omdat ze de betekenis en context van de zin vastleggen.
  • Documentinsluitingen. Documentinsluitingen zijn vectorrepresentaties van hele documenten, zoals artikelen of rapporten. Ze worden doorgaans gebruikt bij taken als documentgelijkenis, clustering en aanbevelingssystemen en leggen de algemene betekenis en inhoud van het document vast.
  • Gebruikersprofielvectoren. Dit zijn vectorrepresentaties van de voorkeuren, acties of eigenschappen van een gebruiker. Ze worden gebruikt klantsegmentatie, gepersonaliseerde aanbevelingssystemen en gerichte advertenties om gebruikersspecifieke gegevens te verzamelen.
  • Afbeeldingsvectoren. Dit zijn vectorrepresentaties van visuele items, zoals afbeeldingen of videoframes. Ze worden gebruikt bij taken zoals Object herkenning, afbeeldingen zoeken en op inhoud gebaseerde aanbevelingssystemen om visuele kenmerken vast te leggen.
  • Productvectoren. Deze vertegenwoordigen producten of artikelen als vectoren en worden gebruikt bij productzoekopdrachten, productclassificatie en aanbevelingssystemen om kenmerken en overeenkomsten tussen producten te verzamelen.
  • Gebruikersprofielvectoren. Gebruikersprofielvectoren vertegenwoordigen de voorkeuren, acties of eigenschappen van een gebruiker. Ze worden gebruikt bij gebruikerssegmentatie, gepersonaliseerde aanbevelingssystemen en gerichte reclame om gebruikersspecifieke gegevens te verzamelen.

Hoe worden vectorinsluitingen gemaakt?

Vectorinbeddingen worden gegenereerd met behulp van een ML-aanpak die een model traint om gegevens in numerieke vectoren om te zetten. Meestal een diepe convolutioneel neuraal netwerk wordt gebruikt om dit soort modellen te trainen. De resulterende inbedding is vaak compact – alle waarden zijn niet nul – en hoogdimensionaal – tot wel 2,000 dimensies. Populaire modellen zoals Word2Vec, GLoVE en BERT converteer woorden, zinsdelen of alinea's naar vectorinsluitingen voor tekstgegevens.

De volgende stappen zijn vaak betrokken bij het proces:

  1. Stel een grote dataset samen. Er wordt een dataset samengesteld die de specifieke gegevenscategorie vastlegt waarvoor inbedding bedoeld is (of het nu gaat om tekst of afbeeldingen).
  2. Verwerk de gegevens voor. Afhankelijk van het type gegevens, de reiniging, voorbereiding en gegevens voorbewerken omvat het elimineren van ruis, het vergroten of verkleinen van foto's, het normaliseren van tekst en het uitvoeren van aanvullende bewerkingen.
  3. Train het model. Om verbanden en patronen in de data te identificeren, wordt het model getraind met behulp van de dataset. Om de ongelijkheid tussen de doelvector en de voorspelde vector te verkleinen, worden de parameters van het vooraf getrainde model tijdens de trainingsfase gewijzigd.
  4. Genereer vectorinsluitingen. Na training kan het model nieuwe gegevens omzetten in numerieke vectoren, waardoor een betekenisvolle en gestructureerde representatie ontstaat die de semantische informatie van de originele gegevens effectief inkapselt.

Vectorinsluitingen kunnen worden gemaakt voor een breed scala aan gegevenstypen, waaronder tijdreeksgegevens, tekst, afbeeldingen, audio, driedimensionale (3D) modellen en video. Vanwege de manier waarop de inbedding wordt gevormd, zullen objecten met vergelijkbare semantiek vectoren in de vectorruimte hebben die dicht bij elkaar liggen.

Waar worden vectorinsluitingen opgeslagen?

Vector-insluitingen worden opgeslagen in gespecialiseerde databases, bekend als vector-databases. Deze databases zijn hoogdimensionale wiskundige representaties van datakenmerken. In tegenstelling tot standaard op scalair gebaseerde databases of onafhankelijke vectorindexen, bieden vectordatabases specifieke efficiëntieverbeteringen voor het opslaan en ophalen van vectorinbedding op schaal. Ze bieden de capaciteit om grote hoeveelheden gegevens effectief op te slaan en op te halen voor vectorzoekfuncties.

Vectordatabases bevatten verschillende belangrijke componenten, waaronder prestaties en fouttolerantie. Om ervoor te zorgen dat vectordatabases fouttolerant zijn, moeten replicatie- en sharding technieken worden gebruikt. Replicatie is het proces waarbij kopieën van gegevens over meerdere knooppunten worden geproduceerd, terwijl sharding het proces is waarbij gegevens over verschillende knooppunten worden verdeeld. Dit zorgt voor fouttolerantie en ononderbroken prestaties, zelfs als een knooppunt uitvalt.

Vectordatabases zijn effectief in machinaal leren en kunstmatige intelligentie (AI)-applicaties, omdat ze gespecialiseerd zijn in het beheren ongestructureerde en semi-gestructureerde data.

Toepassingen van vectorinbedding

Er zijn verschillende toepassingen voor het insluiten van vectoren in verschillende industrieën. Veel voorkomende toepassingen van vectorinbedding zijn onder meer:

  • Aanbevelingssystemen. Vector-inbedding speelt een cruciale rol in de aanbevelingssystemen van industriegiganten, waaronder Netflix en Amazon. Met deze inbedding kunnen organisaties de overeenkomsten tussen gebruikers en items berekenen, waarbij gebruikersvoorkeuren en itemkenmerken in vectoren worden vertaald. Dit proces helpt bij het leveren van gepersonaliseerde suggesties die zijn afgestemd op de individuele smaak van de gebruiker.
  • Zoekmachines. Zoekmachines maken veelvuldig gebruik van vectorinbedding om de effectiviteit en efficiëntie van het ophalen van informatie te verbeteren. Omdat vectorinsluitingen verder gaan dan het matchen van trefwoorden, helpen ze zoekmachines de betekenis van woorden en zinnen te interpreteren. Zelfs als de exacte zinsdelen niet overeenkomen, kunnen zoekmachines nog steeds documenten of andere informatie vinden en ophalen die contextueel relevant is, door woorden als vectoren in een semantische ruimte te modelleren.
  • Chatbots en vraag-antwoordsystemen. Hulp bij vectorinbedding chatbots en generatieve, op AI gebaseerde vraag-antwoordsystemen in het begrijpen en produceren van mensachtige reacties. Door de context en betekenis van tekst vast te leggen, helpen insluitingen chatbots om op een betekenisvolle en logische manier te reageren op vragen van gebruikers. Bijvoorbeeld taalmodellen en AI-chatbots, inclusief GPT-4 en beeldprocessors zoals Dall-E2, zijn enorm populair geworden vanwege het produceren van mensachtige gesprekken en reacties.
  • Fraudedetectie en detectie van uitschieters. Vectorinbedding kan worden gebruikt om afwijkingen of frauduleuze activiteiten op te sporen door de gelijkenis tussen vectoren te beoordelen. Ongewone patronen worden geïdentificeerd door de afstand tussen inbedding te evalueren en te lokaliseren uitschieters.
  • Voorverwerking van gegevens. Transformeren onverwerkte gegevens in een formaat dat geschikt is voor ML en deep learning-modellen worden inbedding gebruikt bij activiteiten voor de voorverwerking van gegevens. Woordinsluitingen worden bijvoorbeeld gebruikt om woorden als vectoren weer te geven, wat de verwerking en analyse van tekstgegevens vergemakkelijkt.
  • One-shot en zero-shot leren. One-shot en zero-shot learning zijn vectorinbeddingsbenaderingen die machine learning-modellen helpen de resultaten voor nieuwe klassen te voorspellen, zelfs als ze worden geleverd met beperkte gelabelde gegevens. Modellen kunnen zelfs met een klein aantal trainingsinstanties generaliseren en voorspellingen genereren door gebruik te maken van de semantische informatie die is opgenomen in de insluitingen.
  • Semantische gelijkenis en clustering. Vectorinbedding maakt het gemakkelijker om te meten hoe vergelijkbaar twee objecten zijn in een hoogdimensionale omgeving. Dit maakt het mogelijk om bewerkingen uit te voeren zoals het berekenen van semantische gelijkenis, het clusteren en samenstellen van gerelateerde zaken op basis van hun inbedding.
Image showing vector embedding in chatbots.
Dankzij embedding kunnen chatbots op een betekenisvolle en logische manier reageren op vragen van gebruikers.

Wat voor soort dingen kunnen worden ingebed?

Er kunnen veel verschillende soorten objecten en gegevenstypen worden weergegeven met behulp van vectorinbedding. Veelvoorkomende typen dingen die kunnen worden ingesloten, zijn onder meer:

Tekst

Woorden, zinnen of documenten worden weergegeven als vectoren met behulp van tekstinsluitingen. NLP-taken – waaronder sentimentanalyse, semantisch zoeken en taalvertaling – maken vaak gebruik van inbedding.

De Universal Sentence Encoder is een van de meest populaire open source-inbeddingsmodellen en kan op efficiënte wijze individuele zinnen en hele tekstfragmenten coderen.

Afbeeldingen

Inbedding van afbeeldingen legt visuele kenmerken van afbeeldingen vast en vertegenwoordigt deze als vectoren. Hun gebruiksscenario's omvatten objectidentificatie, beeldclassificatie en omgekeerd zoeken naar afbeeldingen, ook wel bekend als zoeken op afbeelding.

Afbeeldingsinsluitingen kunnen ook worden gebruikt om visuele zoekmogelijkheden mogelijk te maken. Door inbedding uit databaseafbeeldingen te extraheren, kan een gebruiker de inbedding van een zoekafbeelding vergelijken met de inbedding van de databasefoto's om visueel vergelijkbare overeenkomsten te lokaliseren. Dit wordt vaak gebruikt bij e-commerce apps, waar gebruikers naar items kunnen zoeken door foto's van vergelijkbare producten te uploaden.

Google Lens is een toepassing voor het zoeken naar afbeeldingen die camerafoto's vergelijkt met visueel vergelijkbare producten. Het kan bijvoorbeeld worden gebruikt om internetproducten te matchen die lijken op een paar sneakers of een kledingstuk.

Audio

Audio-inbedding zijn vectorrepresentaties van audiosignalen. Vector-inbedding legt auditieve eigenschappen vast, waardoor systemen audiogegevens effectiever kunnen interpreteren. Audio-insluitingen kunnen bijvoorbeeld worden gebruikt voor muziekaanbevelingen, genreclassificaties, zoeken naar audio-overeenkomsten, spraakherkenning en sprekerverificatie.

Hoewel AI wordt gebruikt voor verschillende soorten insluitingen, heeft audio-AI minder aandacht gekregen dan tekst- of beeld-AI. Google Spraak-naar-Tekst en OpenAI Whisper zijn toepassingen voor het insluiten van audio die worden gebruikt in organisaties zoals callcenters, medische technologie, toegankelijkheid en spraak-naar-tekst-toepassingen.

Grafieken

Bij het inbedden van grafieken worden vectoren gebruikt om knooppunten en randen in een grafiek weer te geven. Zij zijn gebruikt bij taken gerelateerd aan grafiekanalyse zoals linkvoorspelling, gemeenschapsherkenning en aanbevelingssystemen.

Elk knooppunt vertegenwoordigt een entiteit, zoals een persoon, een webpagina of een product, en elke rand symboliseert de link of verbinding die tussen deze entiteiten bestaat. Deze vectorinsluitingen kunnen alles bereiken, van het aanbevelen van vrienden tot sociale netwerken om cyberveiligheidsproblemen op te sporen.

Tijdreeksgegevens en 3D-modellen

Inbedding van tijdreeksen legt temporele patronen vast in sequentiële gegevens. Ze worden gebruikt internet van dingen applicaties, financiële data en sensordata voor onder meer anomaliedetectie, tijdreeksvoorspelling en patroonidentificatie.

Geometrische aspecten van 3D-objecten kunnen ook worden uitgedrukt als vectoren met behulp van 3D-modelinbedding. Ze worden toegepast bij taken als 3D-reconstructie, objectdetectie en vormmatching.

Moleculen

Inbedding van moleculen vertegenwoordigt chemische verbindingen als vectoren. Ze worden gebruikt bij het ontdekken van geneesmiddelen, het zoeken naar chemische gelijkenissen en het voorspellen van moleculaire eigenschappen. Deze inbedding wordt ook gebruikt in de computationele chemie en de ontwikkeling van geneesmiddelen om de structurele en chemische kenmerken van moleculen vast te leggen.

Image showing vector embeddings of objects.
Gestructureerde getallenreeksen worden gebruikt als vectorinbedding voor objecten.

Wat is Word2Vec?

Word2Vec is een populaire NLP-aanpak voor het insluiten van woordvectoren. Word2Vec is gemaakt door Google en is ontworpen om woorden weer te geven als dichte vectoren in een continue vectorruimte. Het kan de context van een woord in een document herkennen en wordt vaak gebruikt bij NLP-taken zoals tekstcategorisatie, sentimentanalyse en machine vertaling om machines te helpen natuurlijke taal effectiever te begrijpen en te verwerken.

Word2Vec is gebaseerd op het principe dat woorden met vergelijkbare betekenissen vergelijkbare vectorrepresentaties moeten hebben, waardoor het model semantische verbanden tussen woorden kan vastleggen.

Word2Vec heeft twee basisarchitecturen, CBOW (Continuous Bag of Words) en Skip-Gram:

  • CBOW. Deze architectuur voorspelt het doelwoord op basis van de contextwoorden. Het model krijgt een context of omringende woorden en heeft de taak het doelwoord in het midden te voorspellen. In de zin 'De snelle bruine vos springt over de luie hond' gebruikt CBOW bijvoorbeeld de context of de omringende woorden om te voorspellen vos als doelwoord.
  • Skip-Gram. In tegenstelling tot CBOW voorspelt de Skip-Gram-architectuur de contextwoorden op basis van het doelwoord. Het model krijgt een doelwoord en wordt gevraagd de omliggende contexttermen te voorspellen. Als we de bovenstaande voorbeeldzin nemen: "De snelle bruine vos springt over de luie hond", zal skip-gram het doelwoord nemen vos en ontdek contextwoorden zoals 'De', 'snel', 'bruin', 'springt', 'over', 'de', 'lui' en 'hond'.

Een breed scala aan bedrijven begint generatieve AI te omarmen, wat het disruptieve potentieel ervan aantoont. Onderzoeken hoe generatieve AI zich ontwikkelt, welke richting het in de toekomst zal uitgaan en welke uitdagingen zich daarbij kunnen voordoen.

spot_img

Laatste intelligentie

spot_img