Data Science Team at ParallelDots – End of Year Report PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Data Science Team hos ParallelDots – Årets slutrapport

Data Science Team at ParallelDots – End of Year Report PlatoBlockchain Data Intelligence. Vertical Search. Ai.

2020 [og første halvdel af 2021] var en sort svane. Familier, samfund og virksomheder måtte stå over for ting, de ikke kunne have forestillet sig. I dette indlæg vil jeg forsøge at fremhæve, hvordan ParallelDots AI-team har tilpasset sig i denne periode og bygget til næste generation af vores detail-AI-løsninger.

ParallelDots gik i fuld fjernarbejdstilstand i februar 2020, og siden da har teamet ikke mødtes fysisk i en dag. Vi havde altid været en meget tæt sammentømret enhed før det, og derfor blev de første par uger totalt brugt på at opbygge en fjernarbejdskultur. Vi skulle tænke på bedre kommunikation og en meget anderledes ejerstruktur. Da virksomheden også havde et forretningschok, var disse uger hårde. Jeg er personligt stolt af den måde, vores team håndterede presset på og ikke bare justerede, men udviklede sig til at blive den topteknologiske kærnemaskine, det altid har været. Bare et par uger med tweaks, og vi var tilbage ved at være fantastiske.

Udfordringer for AI-team [omkring marts 2020]

[Du vil måske finde 'hvorfor' af forskellige AI-algoritmer og systemer, vi bygger, som kedeligt, jeg ved det, fordi jeg ville have 😉 , hvis du bare er interesseret i 'hvordan', eller alt det nye seje teknologi og algoritmer, gå ned til afsnittet 'Nye systemer og algoritmer']

ParallelDots AI-teamrolle er at løse forskellige problemer, som flaskehalser vores AI-trænings- og implementeringsinfrastruktur hos ParallelDots. Du kan opdele disse udfordringer i: A. AI-træning og nøjagtighedsflaskehalse [eller forskningsflaskehalse] og B. Implementering/inferensflaskehalse [eller MLOPS-flaskehalse, som vi kalder dem]. I begyndelsen af ​​2020, mens vores AI-teknologi allerede behandlede over en million billeder om måneden, var nogle udfordringer, som vi forventedes at løse for at få den til at skalere op:

  1. Implementering af en inferensinfrastruktur, som automatisk kan skalere op i tilfælde af at der er for mange detailbilleder til at behandle for at bevare vores SLA'er, mens du sørger for, at implementeringen skaleres ned til små arbejdsbelastninger. GPU'er er dyre maskiner, og at have en statisk [eller hyldevare eller manuel devops] infrastruktur er en stram linje mellem at møde SLA'er og undgå høje omkostninger.
  2. At få vores detailcomputervisionsalgoritmer til at køre på telefonen. Vi havde altid tænkt på et nyt produkt, hvor on-edge AI kunne bruges i telefonen i små detailforretninger med langsom internetforbindelse til Billing/GRN/Inventory Management. Ikke bare det, nogle af vores potentielle shelfwatch-kunder ønskede implementeringer, der kunne bruges i butikker til hurtige konklusioner uden at vente på billedupload og proces. Vi var klar over, at hvis vi kunne få vores detail-AI-algoritmer til at køre på telefoner, ville det hjælpe os med at bygge vores drømme andet produkt, men det ville også hjælpe vores eksisterende produkt med at få nye kunder. Begge ovenstående udfordringer er MLOPS udfordringer, som vi kalder dem.
  3. Registrering af størrelsesvarianter af produkter i billeder. En anden udfordring var at opdage størrelsesniveauvariationer for et produkt i detailbilleder. Lad os som et eksempel sige, at du har et billede til en hylde med chips, og du skal registrere antallet af ikke kun Lays magiske masala ved hjælp af AI, men også give en opdeling mellem 10 INR / 20 INR / 30 INR pakker af Lay's Magic masala i din analyse. For folk, der ikke har arbejdet i Computer Vision, kan dette se ud som et indlysende og simpelt næste problem at løse, da AI kan finde produkter på hylden og klassificere dem som mærker med meget høj nøjagtighed. Men du kender den berømte XKCD #1425 [Der er altid en relevant XKCD til alt 😉 ] . Relevant XKCD
  4. Verifikation af dele af salgsstedsmaterialer. En anden del af analyse af hyldebilleder ud over at opdage og identificere produkter på hylden er at verificere tilstedeværelsen af ​​forskellige salgssteder på hylden. Disse salgssteder er ting, du ofte ville se i en detail- eller kirana-butik omkring dig, såsom hylder, udskæringer, plakater, gandolaer og demostativer. Vi brugte Deep Keypoint-matching til sådanne kampe i meget lang tid, og det plejede at fungere godt. Men med tiden havde kunderne bedt os om ikke bare at verificere POSM i hyldebilleder, men også om at påpege de manglende stykker, som en merchandiser kunne have savnet i en POSM. For eksempel kan en merchandiser have savnet at placere en plakat på et demo-stativ, eller den kan være blevet fjernet i butikken på grund af et uheld. For at gøre dette meget præcist på et niveau, hvor billedklassificeringen fungerer, havde vi brug for en algoritme, der fungerer overalt uden træning, da POSM'er ændres inden for uger/måneder.
  5. Uddannelse af mere nøjagtige hyldevaredetektorer. Retail Shelf Computer Vision er gået over til teknologien med at have en generisk hyldeobjektdetektor [udtræk et hvilket som helst hyldeobjekt ud uden at klassificere det] i første trin og derefter klassificere produkterne, der derefter ekstraheres i andet trin for at undgå problemerne ettrinsdetektorer + klassifikatorer skabe [Massiv produktskævhed på hylderne skaber dårlige klassificeringsoutput/træning på en masse data pr. projekt og ingen trinvis gevinst ved, at AI'en bliver bedre fra tidligere projekter og så videre]. Vi havde allerede et sådant system med en generisk hyldeobjektdetektor og en topmoderne klassificering i andet trin i 2019, men outputboksformerne på hyldeobjektdetektoren kunne have været bedre.
  6. Brug af tidligere AI-træning og fejlrettelser til at træne klassifikatorer både bedre og hurtigere. Vi træner så mange klassifikatorer [modeller, der klassificerer hyldeobjekter udtrukket af trin 1-algoritmen til et af de produktmærker, vi har brug for]. Er der en måde at bruge alle de træningsdata, vi indsamler, inklusive fejl fra tidligere klassifikatorer til at skabe en algoritme, der kan hjælpe med at træne nye klassifikatorer både hurtigt og mere præcist, er et spørgsmål, der altid er omkring. De fire forskningsproblemer [3-6], du har fundet, afspejlede nye krav til vores hyldeursprodukt [3,4] og en forbedring af den eksisterende stak [5,6]. Nu var der også et sæt forskningsproblemer fra vores NLP API'er stak.
  7. En mere generisk Sentiment Analysis API. Sentiment Analysis API, vi havde online, blev trænet på in-house kommenterede tweets og kunne derfor på trods af stor nøjagtighed fejle på mere domænespecifikke ting som f.eks. politiske eller finansielle artikler. I modsætning til tweets er sådanne forskellige domæneartikler svære at kommentere af personer, der ikke har erfaring med et datasæts domæne. At bruge en masse uannoterede data til at træne klassifikatorer, som kunne fungere på tværs af domæner, har været en stadig eksisterende udfordring.
  8. En ny målrettet sentiment API. Aspektbaseret sentimentanalyse har eksisteret i nogen tid. Vi havde endelig et internt kommenteret datasæt til en sådan analyse, men vores mål var noget mere specifikt. Vi ønskede at bygge en API, hvor du giver en sætning "Æblet var ikke velsmagende, men appelsinen var virkelig lækker." ville give et negativt output, når det analyseres for "Apple" eller Positivt, når det analyseres for orange. Vi havde derfor som mål at bygge en state of the art Aspect Based Sentiment Analysis-algoritme.

Nu hvor jeg har kedet dig med detaljerne om udfordringer, vi forsøgte at løse, lad os komme til den interessante del. Vores nye MLOPS platforme og algoritmer.

Nye systemer og algoritmer

Lad mig præsentere dig for mine nye venner, nogle fantastiske teknologisystemer og AI-algoritmer, vi har udviklet og implementeret i løbet af den sidste tid for at tackle flaskehalsene.

Mobile Product Recognition AI eller Mobile Shelf Recognition AI

Introduktion til ParallelDots Oogashop – Link

(LinkedIn-feed og video)

Vi har bygget og implementeret ikke én, men to forskellige typer AI-algoritmer på mobile enheder. Du har måske set vores ekstremt virale indlæg for nogle dage siden, hvor vi demonstrerede mobiltelefonfakturering og talte om offline hylderevisioner.

Her er linket til ShelfWatch's On-Device Image Recognition Feature (ODIN) – Link

(Genstand)

I det væsentlige er disse AI-modeller nedskalerede versioner af de modeller, vi implementerer i skyen. Med et vist tab i nøjagtighed er disse modeller nu små nok til at køre på en telefon-GPU [som er meget mindre end en server-GPU]. Tensorflows nye mobile implementeringsrammer er det, vi bruger til at implementere disse modeller i henholdsvis vores OOGASHOP og ShelfWatch app.

(Papir) Kompakt detailhyldesegmentering til mobil implementering – Link

Pratyush Kumar, Muktabh Mayank Srivastava

Autoskalering af Cloud AI-inferens

Når butikkerne åbner ca. detailudførelsesscore. Og så efter kl. 11, når detailbutikkerne lukker, har vi næppe nok AI-inferens-arbejdsbyrde. Mens Lambda-lignende autoskalering er blevet introduceret af mange udbydere, ønskede vi en skyuafhængig autoskaleringsteknik til vores AI-inferensinfrastruktur. Når der er flere billeder i vores behandlingskø, har vi brug for flere GPU'er, der knuser dem, ellers kun én eller måske ingen. For at gøre dette blev hele AI-inferenslaget flyttet til Docker-, Kubernetes- og KEDA-baseret arkitektur, hvor et vilkårligt antal nye GPU'er kan frembringes baseret på arbejdsbyrden. Ikke mere en spænde for at forsøge at administrere virksomhedens SLA og spare $$ på de dyre GPU-maskiner.

Forbedring af hyldeobjektdetektionsalgoritmerne

(Papir) Lære Gaussiske kort til tæt objektdetektion – Link

Sonaal Kant

Vi havde tidligere brugt simple Faster RCNN'er, der var trænet til udtrækning af hyldeobjekter: Simpelt objektgenkendelses-grundlinjepapir . Det fungerede godt til mange brugssager. men vi havde brug for flere moderne tilgange. I 2020 opdagede vores team en ny metode til at bruge Gaussiske kort til at få topmoderne resultater. Dette arbejde [senere offentliggjort på BMVC, en af ​​de bedste Computer Vision-konferencer BMVC hjemmeside ] hjalp os med at få ikke bare tilfredsstillende, men også de bedst mulige resultater ved registrering af hyldeobjekter.

Lær Gaussiske kort til tæt objektdetektionLær Gaussiske kort til tæt objektdetektion

Tricket er i bund og grund at bruge gaussiske korttræning som et hjælpetab til genstandsdetektering. Dette gør kasserne til forskellige produkter meget mere præcise.

Et andet spørgsmål, vi har forsøgt at løse i lang tid med hensyn til registrering af hyldeobjekter, har været, nu hvor behovet for at genkende produkter er blevet flyttet til en downstream-opgave, og opgaven er at tegne kasser over alle mulige produkter, er der en måde at bruge støj og forvrængninger indeholdt i et enormt uannoteret datasæt til bedre at kunne registrere objekter. I et nyligt værk [nævnt kl RetailVision workshop på CVPR 2021 Retail Vision Workshop ], bruger vi vores enorme lager af uannoterede hyldebilleder til at forbedre nøjagtigheden af ​​opgaven til registrering af hyldeobjekter.

(Papir) Semi-superviseret læring til tæt objektdetektion i detailhandelsscener – Link

Jaydeep Chauhan, Srikrishna Varadarajan, Muktabh Mayank Srivastava

Psuedolabel-baseret elevtræning er et trick, som vi har brugt på flere områder, ikke til registrering af hyldeobjekter. Mens andre selvlæringsteknikker kræver, at store batchstørrelser indlæses på GPU'er, hvilket gør det svært for en virksomhed som begrænset hardware som ParallelDots at prøve dem af. , pseudolabels er det, vi har tilpasset som vores trick til at lave en enkelt GPU-selvlæring.

Semi-overvåget læring til tæt objektdetektion i detailscener PseudolabelsSemi-overvåget læring til tæt objektdetektion i detailscener Pseudolabels

Bedre klassificeringsnøjagtighed

Vi har tidligere brugt adskillige tricks til at træne præcise klassificerere med høj nøjagtighed.

(Papir) Pose med tricks til klassificering af detailproduktbilleder – Link, som illustrerer, hvordan vi træner klassifikatorer med høj nøjagtighed.

Muktabh Mayank Srivastava

Alle kasser, som hyldeobjektdetektoren uddrager fra et hyldebillede, sendes gennem denne klassificering for at udlede produktets mærke.

Taske med tricks til detailhandel bedre klassificeringsnøjagtighedTaske med tricks til detailhandel bedre klassificeringsnøjagtighed

Men med de hyppigt skiftende butikskataloger skal vores produktklassificeringsorgan udvikle sig for at gøre tingene lidt anderledes. Træning af en klassifikator er ressourcekrævende, med produkter, der hurtigt tilføjes eller fjernes fra kataloger over butikker, vi har brug for en klassifikator, der kan trænes hurtigt og være mere nøjagtig eller mindst lige så præcis som metoderne, der involverer finjustering af hele rygraden. Dette lyder som at have sin kage og også vurdere det, og det er, hvad selvlæringsteknikker har vist sig at gøre i Deep Learning. Vi har forsøgt at bruge begreber om selvlæring til at skabe klassificeringer, som kan trænes meget let.

(Papir) Brug af kontrastiv læring og pseudolabels til at lære repræsentationer til klassificering af detailproduktbilleder – Link

Muktabh Mayank Srivastava

Det trick, vi bruger her, er at bruge det enorme lager af detailproduktbilleder, vi har [både kommenterede og uannoterede] til at træne en repræsentationselev, hvis output kan føres til en simpel Machine Learning-klassifikator til træning. Sådanne indlærte egenskabsrepræsentationer fungerer ganske godt. Hvor fedt er det at træne en lille logistisk regressionsklassifikator til at klassificere detailbilleder. Desværre har vi over 20 gange flere billeder til sådanne opgaver, derfor er vores opnåede nøjagtighed lige nu begrænset til den begrænsede hardwareinfrastruktur til at udføre sådan selvindlæring, og stadig slår vi state of the art på mange [ikke alle] datasæt.

Brug af kontrastiv læring og pseudolabels til at lære repræsentationer til klassificering af detailproduktbillederBrug af kontrastiv læring og pseudolabels til at lære repræsentationer til klassificering af detailproduktbilleder

Størrelsesbaseret slutning på hyldebilleder

mand med pakker med blå lægger kartoffelchipsmand med pakker med blå lægger kartoffelchips

Mens vi har opdaget mærker af forskellige produkter set på hyldebilleder, er en nylig spec, som vi har forsøgt at løse, at ræsonnere om, hvilken størrelsesvariant af et produkt er det produkt, vi er afhængige af. Mens Computer Vision-pipeline f.eks. registrerer en Lays Magic Masala på hylden og klassificerer den som Lays Magic Masala, hvordan ved vi så, om det er en 50 grams variant eller en 100 gram variant eller en 200 gram variant af produktet. Vi medtager således en tredje nedstrømsopgave for at gætte størrelsesvarianten af ​​reolen. Denne pipeline tager de forskellige kasser udtrukket fra hylden, deres mærker og skaber funktioner, som kan bruges til at gætte størrelsen. Som det er indlysende, kan du ikke bruge afgrænsningsbokskoordinater eller område til sådanne ræsonnementer, da billeder kan tages fra enhver afstand. Vi bruger funktioner som billedformat og arealforhold mellem kasser i forskellige grupper for at udlede størrelsesvarianter.

(Papir) Machine Learning-tilgange til at lave størrelsesbaserede ræsonnementer på Retail Shelf-objekter for at klassificere produktvarianter – Link

Muktabh Mayank Srivastava, Pratyush Kumar

Mange funktionstekniske tricks bruges til at træne de to varianter af ræsonnementsopgaven: Brug af XGBOOST over indskrevne funktioner og brug af et neuralt netværk over Gaussisk blandingsmodel afledte funktioner.

Machine Learning-tilgange til at udføre størrelsesbaseret ræsonnement på Retail Shelf-objekter for at klassificere produktvarianterMachine Learning-tilgange til at udføre størrelsesbaseret ræsonnement på Retail Shelf-objekter for at klassificere produktvarianter

Begrundelse om salgsstedsmaterialer

Når du går ind i en detailbutik, vil du bemærke forskellige POSM-materialer: hyldestrimler, udskæringer, plakater, gandolaer og demostativer.

Colgate salgsstedsmateriale POSM-ræsonnementColgate salgsstedsmateriale POSM-ræsonnement

Mens vi har brugt Deep Learning-baseret keypoint-repræsentationsmatchning til at verificere POSM-tilstedeværelsen i et billede, var der en opgave at ræsonnere om POSM del for del. Det er i ovenstående eksempel for eksempel, vi kan være nødvendige for at kontrollere, om produktbilledet mod højre i den ideelle hyldestrimmel er til stede på en virkelig verdensplacering eller ej. Vi kalder dette "Del"-detektion efter POSM-verifikation.

(Papir) Brug af Keypoint Matching og Interactive Self Attention Network til at verificere detail-POSM'er - Link

Harshita Seth, Sonaal Kant, Muktabh Mayank Srivastava

Grundlæggende da POSM ændres meget hurtigt ugentligt/månedligt, kan du aldrig få en masse data til at træne algoritmer for hver POSM. Så vi har brug for algoritmer, der træner på en måde på eksisterende datasæt, så de kan anvendes på ethvert datasæt. Det er vores mål med det seneste arbejde med selvopmærksomhedsnetværk for POSM'er. Vi bruger matchede nøglepunkter [på det ideelle POSM-billede og det rigtige ordbillede] og deres beskrivelser [fra begge billeder] som input for hver del separat for at bestemme den nøjagtige tilstedeværelse.

Brug af Keypoint Matching og Interactive Self Attention Network til at verificere detail-POSM'erBrug af Keypoint Matching og Interactive Self Attention Network til at verificere detail-POSM'er
Data Science Team hos ParallelDots – Årets slutrapport

En Sentiment Analysis API, der fungerer på alle domænedata

Når du træner en model til at blive implementeret som en sentimentanalyse API, kan du ikke rigtig få data fra forskellige domæner kommenteret. For eksempel var den tidligere sentimentanalysemodel, vi havde, en stor sprogmodel finjusteret over 10-15 ulige tweets, vi kommenterede internt. Så algoritmen har næppe set følelser udtrykt i forskellige domæner under læring. Vi forsøgte at bruge Self Learning til at gøre vores sentimentklassificeringsalgoritme robust til domæneændringer. Tag mere end 2 millioner uannoterede sætninger, kør en ældre version af klassificerer for at skabe pseudolabels, og oplær en ny klassifikator til at lære disse pseudolabels og boom.. du har en sentimentklassifikator, som er meget mere robust domæne, mens dens nøjagtighed i det oprindelige domæne forbliver samme. Det lyder for godt til at være sandt, tjek vores arbejde:

(Paper) Brug af Psuedolabels til træning af Sentiment Classifiers får modellen til at generalisere bedre på tværs af datasæt – Link

Natesh Reddy, Muktabh Mayank Srivastava

At lave en topmoderne metode til at opdage målrettet stemning

For os i NLP API-virksomhed er målrettet stemning, når du har sætningen "Apple var ikke så velsmagende, men appelsin var godt", en klassificering returnerer negativt, når det får input "æble", og positivt, hvis det får input orange. Dybest set en følelse rettet mod et objekt i en sætning. Vi har udviklet en ny metode, der registrerer målrettet sentiment, og som snart vil være tilgængelig som en NLP API. Forskningsfeltet svarer til Aspect Based sentiment analyse, og vores seneste arbejde får topmoderne resultater i flere datasæt, blot ved at finjustere en arkitektur, der sammenligner kontekstuel [BERT] og ikke-kontekstuel [GloVe]. Følelsen er skjult i konteksten et eller andet sted, ikke?

(Paper) Forstår BERT følelse? Udnyttelse af sammenligninger mellem kontekstuelle og ikke-kontekstuelle indlejringer for at forbedre aspektbaserede sentimentmodeller – Link

Natesh ReddyPranaydeep SinghMuktabh Mayank Srivastava

DEL 1 - Forstår BERT følelsesudnyttelse af sammenligninger mellem kontekstuelle og ikke-kontekstuelle indlejringer for at forbedre aspektbaserede sentimentmodellerDEL 1 - Forstår BERT følelsesudnyttelse af sammenligninger mellem kontekstuelle og ikke-kontekstuelle indlejringer for at forbedre aspektbaserede sentimentmodeller
DEL 2 - Forstår BERT følelsesmæssig udnyttelse af sammenligninger mellem kontekstuelle og ikke-kontekstuelle indlejringer for at forbedre aspektbaserede sentimentmodellerDEL 2 - Forstår BERT følelsesmæssig udnyttelse af sammenligninger mellem kontekstuelle og ikke-kontekstuelle indlejringer for at forbedre aspektbaserede sentimentmodeller
Data Science Team hos ParallelDots – Årets slutrapport

Frem og op

Håber du kunne lide den nye teknologi, som vi har udviklet sidste år. Svarer meget gerne på spørgsmål, hvis du har nogle. Vi fortsætter med at udvikle ny og spændende teknologi og arbejder på nogle nye seje maskinlæringsproblemer som Graph Neural Networks for Retail Recommendation, Out-Of-Distribution Image Classification og Language Models. Vi ansætter også, skriv til os på careers@paralleldots.com eller ansøg på vores AngelList-side for at blive en del af vores AI-team. Du kan ansøge, hvis du vil være Machine Learning Engineer, Backend Developer eller AI Project Manager. ParallelDots AngelList

Data Science Team at ParallelDots – End of Year Report PlatoBlockchain Data Intelligence. Vertical Search. Ai.Data Science Team at ParallelDots – End of Year Report PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Kunne du lide bloggen? Tjek vores anden blogs for at se, hvordan billedgenkendelsesteknologi kan hjælpe brands med at forbedre deres eksekveringsstrategier i detailhandlen.

Vil du se, hvordan dit eget brand klarer sig på hylderne? Klik link. for at planlægge en gratis demo til ShelfWatch.

Medstifter og Chief Data Scientist, ParallelDots at Parallelle Dots
Seneste indlæg af Muktabh Mayank (se alle)

Tidsstempel:

Mere fra Parallelle Dots