VaCDA: Variational Contrastive Alignment-based Scalable Human Activity Recognition
Dit artikel stelt VaCDA voor, een multi-source domeinadaptatie-framework dat variationele autoencoders en contrastief leren integreert om een gedeelde latente ruimte te leren, waardoor gegevensheterogeniteit effectief wordt aangepakt en menselijke activiteitsherkenning over diverse apparaten, posities en gebruikers wordt verbeterd.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je voor dat je een robot probeert te leren om menselijke activiteiten zoals wandelen, rennen of zitten te herkennen. Je hebt veel data van mensen die smartwatches om hun pols dragen, maar je wilt dat de robot ook werkt voor mensen die sensoren om hun enkels dragen, of voor mensen die een ander merk telefoon gebruiken.
Het probleem is dat de data er heel anders uitziet, afhankelijk van waar het apparaat zit, wie het draagt, of wat voor apparaat het is. Het is alsof je een chef probeert te leren een "kipgerecht" te herkennen door hem alleen foto's van gefrituurde kip te laten zien, maar hem vervolgens vraagt om geroosterde kip, gegrilde kip en kippensoep te identificeren. De ingrediënten zijn hetzelfde, maar de presentatie is totaal anders. Dit wordt "domain shift" genoemd, en het zorgt er meestal voor dat de robot in de war raakt.
De auteurs van dit artikel, Soham Khisa en Avijoy Chakma, hebben een nieuw systeem gebouwd genaamd VaCDA om dit op te lossen. Dit is hoe het werkt, met behulp van eenvoudige analogieën:
1. Het Probleem: De "Rommelige Kamer"
Stel je voor dat je verschillende kamers (datasets) hebt vol met speelgoed (activiteitsdata).
- Kamer A heeft speelgoed dat verspreid over de vloer ligt.
- Kamer B heeft hetzelfde speelgoed netjes op planken gestapeld.
- Kamer C heeft het speelgoed dat in het water drijft.
Als je een robot traint om een "bal" te vinden in alleen Kamer A, zal hij in Kamer B of C hopeloos falen. Traditionele methoden proberen de kamers exact hetzelfde te laten lijken, maar dat is moeilijk als de kamers zo verschillend zijn.
2. De Oplossing: De "Universele Vertaler" (VAE)
Het eerste deel van hun oplossing is een Variational Autoencoder (VAE). Zie dit als een super slimme vertaler of een "compressiemachine".
- In plaats van te proberen de rommelige vloer er precies uit te laten zien als de nette plank, neemt de VAE al het verschillende speelgoed uit alle verschillende kamers en vertaalt dit naar een enkele, universele taal (een "latent space").
- In deze universele taal is een "bal" gewoon een "bal", ongeacht of deze op de vloer, op een plank of in het water lag.
- Dit stelt het systeem in staat om de ruis (zoals het specifieke apparaat of de lichaamshouding) te negeren en zich te concentreren op de kernvorm van de activiteit.
3. De Verfijning: Het "Zoek de Verschillen"-spel (Contrastive Learning)
Er is een risico bij de vertaler: deze kan te goed worden in het generaliseren. De vertaler zou kunnen besluiten dat een "bal" en een "kubus" hetzelfde zijn omdat ze beide rondachtig zijn.
Om dit op te lossen, voegden de auteurs Contrastive Learning toe. Stel je een spel van "Zoek de Verschillen" voor of een strenge leraar:
- Positieve Paren: De leraar laat de robot twee foto's van dezelfde activiteit zien (bijv. twee verschillende mensen die wandelen) en zegt: "Deze zijn hetzelfde! Houd ze in je gedachten dicht bij elkaar."
- Negatieve Paren: De leraar laat een foto van wandelen en een foto van rennen zien en zegt: "Deze zijn totaal verschillend! Duw ze in je gedachten ver uit elkaar."
Door de Vertaler (VAE) te combineren met de Strenge Leraar (Contrastive Learning), leert het systeem om vergelijkbare activiteiten bij elkaar te groeperen, terwijl het verschillende activiteiten gescheiden houdt, zelfs als ze van verschillende apparaten of mensen komen.
4. Het Resultaat: Een Schaalbare Teamspeler
De meeste oude systemen konden slechts leren van één bron (bijv. de data van één persoon) om een andere te helpen. VaCDA is bijzonder omdat het schaalbaar is.
- Stel je voor dat je een nieuwe taal probeert te leren. Oude methoden laten je misschien praten met één moedertaalspreker.
- VaCDA laat je naar tien verschillende moedertaalsprekers tegelijk luisteren, die allemaal verschillende dialecten spreken, en het systeem ontdekt de gemeenschappelijke grammaticaregels die voor hen allemaal gelden.
Wat hebben ze gevonden?
De auteurs hebben dit systeem getest op vier echte datasets met betrekking tot smartwatches, smartphones en verschillende lichaamshoudingen.
- Cross-Position: Wanneer een sensor van de pols naar de enkel werd verplaatst, was VaCDA veel beter in het herkennen van activiteiten dan eerdere methoden.
- Cross-Device: Wanneer er werd overgeschakeld van een smartphone naar een smartwatch, presteerde VaCDA het best.
- Cross-Person: Bij het aanpassen aan een nieuw persoon deed het erg goed, hoewel het in sommige specifieke gevallen iets achterbleef bij de beste bestaande methode.
Kortom: VaCDA is een nieuwe manier om computers te leren menselijke beweging te begrijpen door rommelige, verschillende data te vertalen naar een gemeenschappelijke taal en vervolgens een "zoek de verschillen"-spel te gebruiken om ervoor te zorgen dat ze niet in de war raken. Het werkt beter dan oudere methoden wanneer de data van verschillende plaatsen, mensen of apparaten komt.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.