Detta är ett gästinlägg av Jihye Park, en dataforskare vid MUSINSA.
MUSINSA är en av de största modeplattformarna online i Sydkorea, betjänar 8.4 miljoner kunder och säljer 6,000 4 modemärken. Vår månatliga användartrafik når 90 miljoner, och över XNUMX % av vår demografi består av tonåringar och unga vuxna som är känsliga för modetrender. MUSINSA är en trendsättande plattformsledare i landet, ledande med enorma mängder data.
MUSINSA Data Solution Team engagerar sig i allt relaterat till data som samlas in från MUSINSA Store. Vi gör full stackutveckling från logginsamling till datamodellering och modellservering. Vi utvecklar olika databaserade produkter, inklusive Live Product Recommendation Service på vår app huvudsida och Keyword Highlighting Service som upptäcker och lyfter fram ord som "storlek" eller "nöjdhetsnivå" från textrecensioner.
Utmaningar i processen för automatisk granskning av bilder
Kvaliteten och kvantiteten på kundrecensioner är avgörande för e-handelsföretag, eftersom kunder fattar köpbeslut utan att se produkterna personligen. Vi ger krediter till de som skriver bildrecensioner på produkterna de köpt (det vill säga recensioner med bilder på produkterna eller bilder på dem som bär/använder produkterna) för att förbättra kundupplevelsen och öka köpkonverteringsgraden. För att avgöra om de inskickade bilderna uppfyllde våra kriterier för krediter, inspekteras alla bilder individuellt av människor. Våra kriterier säger till exempel att en "Stilrecension" ska innehålla foton som visar hela kroppen på en person som bär/använder produkten medan en "Produktrecension" ska ge en fullständig bild av produkten. Följande bilder visar exempel på en produktrecension och en stilrecension. Uppladdarens samtycke har beviljats för användning av bilderna.
Över 20,000 XNUMX foton laddas upp dagligen till MUSINSA Store-plattformen som kräver inspektion. Inspektionsprocessen klassificerar bilder som 'paket', 'produkt', 'fullängd' eller 'halvlängd'. Bildinspektionsprocessen är helt manuell, så det var extremt tidskrävande och klassificeringar görs ofta olika av olika individer, även med riktlinjerna. Inför denna utmaning använde vi Amazon SageMaker för att automatisera denna uppgift.
Amazon SageMaker är en helt hanterad tjänst för att bygga, träna och distribuera modeller för maskininlärning (ML) för alla användningsfall med helt hanterad infrastruktur, verktyg och arbetsflöden. Det lät oss snabbt implementera den automatiska bildinspektionstjänsten med goda resultat.
Vi kommer att gå in i detalj om hur vi åtgärdade våra problem med ML-modeller och använde Amazon SageMaker längs vägen.
Automatisering av granskningsbilden
Det första steget mot att automatisera bildgranskningsprocessen var att manuellt märka bilder, och därmed matcha dem med lämpliga kategorier och inspektionskriterier. Till exempel klassificerade vi bilder som en "helkroppsbild", "bild av överkroppen", "förpackningsbild", "produktbild" etc. I fallet med en produktrecension gavs krediter endast för en produktbild. På samma sätt, i fallet med en Style Review, gavs krediter för ett helkroppsskott.
När det gäller bildklassificering var vi till stor del beroende av en förtränad modell för konvolutionellt neuralt nätverk (CNN) på grund av den stora volymen av ingångsbilder som krävs för att träna vår modell. Även om definition och kategorisering av meningsfulla funktioner från bilder är avgörande för att träna en modell, kan en bild ha ett obegränsat antal funktioner. Därför var det mest meningsfullt att använda CNN-modellen, och vi förtränade vår modell med 10,000 XNUMX+ ImageNet-datauppsättningar, sedan använde vi överföringsinlärning. Detta innebar att vår modell kunde tränas mer effektivt med våra bildetiketter senare.
Bildsamling med Amazon SageMaker Ground Truth
Transfer learning hade dock sina egna begränsningar, eftersom en modell måste nyutbildas på högre skikt. Detta innebär att det hela tiden krävde ingångsbilder. Å andra sidan fungerade denna metod bra och krävde färre ingångsbilder när den tränades på hela lager. Den identifierade lätt funktioner från bilder från dessa lager eftersom den redan hade tränats med en enorm mängd data. På MUSINSA körs hela vår infrastruktur på AWS, och vi lagrar kunduppladdade foton i Amazon Simple Storage Service (S3). Vi kategoriserade dessa bilder i olika mappar baserat på etiketterna vi definierade, och vi använde Amazon SageMaker Ground Truth av följande skäl:
- Mer konsekventa resultat – I manuella processer kan en enskild inspektörs misstag matas in i modellutbildningen utan ingripande. Med SageMaker Ground Truth kunde vi låta flera inspektörer granska samma bild och se till att indata från den mest pålitliga inspektören fick högre betyg för bildmärkning, vilket ledde till mer tillförlitliga resultat.
- Mindre manuellt arbete – SageMaker Ground Truth automatiserad datamärkning kan tillämpas med en tröskel för konfidenspoäng så att alla bilder som inte kan maskinmärkas med säkerhet skickas för mänsklig märkning. Detta säkerställer den bästa balansen mellan kostnad och noggrannhet. Mer information finns i Amazon SageMaker Ground Truth Developer Guide.
Med den här metoden minskade vi antalet manuellt klassificerade bilder med 43 %. Följande tabell visar antalet bilder som bearbetats per iteration efter att vi antog Ground Truth (observera att tränings- och valideringsdata är ackumulerade data, medan andra mätvärden är per-iterationsbasis). - Ladda resultat direkt – När vi bygger modeller i SageMaker kunde vi ladda de resulterande manifestfilerna som genererats av SageMaker Ground Truth och använda dem för utbildning.
Sammanfattningsvis krävde kategorisering av 10,000 22 bilder 980 inspektörer fem dagar och kostade $XNUMX.
Utveckling av bildklassificeringsmodell med Amazon SageMaker Studio
Vi behövde klassificera recensionsbilder som helkroppsbilder, överkroppsbilder, paketbilder, produktbilder och produkter i tillämpliga kategorier. För att uppnå våra mål övervägde vi två modeller: den ResNet-baserade SageMaker inbyggda modellen och Tensorflow-baserat MobileNet. Vi testade båda på samma testdatauppsättningar och fann att den inbyggda SageMaker-modellen var mer exakt, med en 0.98 F1-poäng mot 0.88 från TensorFlow-modellen. Därför bestämde vi oss för den inbyggda modellen SageMaker.
Smakämnen SageMaker Studio-baserad modellutbildningsprocess var som följer:
- Importera märkta bilder från SageMaker Ground Truth
- Förbearbeta bilder – bildstorleksändring och förstoring
- Ladda Amazon SageMaker inbyggd modell som en Docker-bild
- Justera hyperparametrar genom rutnätssökning
- Tillämpa transfer learning
- Justera om parametrar baserat på träningsmått
- Spara modellen
SageMaker gjorde det enkelt att träna modellen med bara ett klick och utan att behöva oroa sig för att tillhandahålla och hantera en flotta av servrar för utbildning.
För hyperparametersvarvning använde vi rutnätssökning för att bestämma de optimala värdena för hyperparametrar, som antalet träningslager (num_layers
) och träningscykler (epochs
) under överföringsinlärning hade påverkat vår klassificeringsmodells noggrannhet.
Modellservering med SageMaker Batch Transform och Apache Airflow
Bildklassificeringsmodellen vi byggde krävde ML-arbetsflöden för att avgöra om en recensionsbild var kvalificerad för krediter. Vi etablerade arbetsflöden med följande fyra steg.
- Importera recensionsbilder och metadata som måste granskas automatiskt
- Härleda bildernas etiketter (slutledning)
- Bestäm om poäng ska ges baserat på de angivna etiketterna
- Lagra resultattabellen i produktionsdatabasen
Vi använder Apache luftflöde för att hantera arbetsflöden för dataprodukter. Det är en plattform för schemaläggning och övervakning av arbetsflöden utvecklad av Airbnb känd för enkla och intuitiva webbgränssnittsgrafer. Den stöder Amazon SageMaker, så den migrerar enkelt koden som utvecklats med SageMaker Studio till Apache Airflow. Det finns två sätt att köra SageMaker-jobb på Apache Airflow:
- Använder Amazon SageMaker Operators
- Använda Python-operatörer : Skriv en Python-funktion med Amazon SageMaker Python SDK på Apache Airflow och importera den som en anropsbar parameter
Det andra alternativet låter oss underhålla vår befintliga Python koder som vi redan hade på SageMaker Studio, och det krävde inte att vi skulle lära oss nya grammatiker för Amazon SageMaker Operators.
Men vi gick igenom en del försök och misstag, eftersom det var första gången vi integrerade Apache Airflow med Amazon SageMaker. Lärdomarna vi lärde oss var:
- Boto3 uppdatering: Amazon SageMaker Python SDK version 2 krävs Boto3 1.14.12 eller senare. Därför behövde vi uppdatera Boto3-versionen av vår befintliga Apache Airflow-miljö, som var 1.13.4.
- IAM-roll och tillståndsarv: AWS IAM-roller som används av Apache Airflow behövde ärva roller som kunde köra Amazon SageMaker.
- Nätverkskonfiguration: För att köra SageMaker-koder med Apache Airflow behövde dess slutpunkter konfigureras för nätverksanslutningar. Följande slutpunkter baserades på AWS-regionerna och tjänsterna som vi använde. För mer information, se AWS webbplats.
api.sagemaker.ap-northeast-2.amazonaws.com
runtime.sagemaker.ap-northeast-2.amazonaws.com
aws.sagemaker.ap-northeast-2.studio
Utkomster
Genom att automatisera processer för granskning av bildinspektioner fick vi följande affärsresultat:
- Ökad arbetseffektivitet – För närvarande inspekteras 76 % av bilderna i kategorierna där tjänsten tillämpades automatiskt med en inspektionsnoggrannhet på 98 %.
- Konsekvens i att ge poäng – Poäng ges utifrån tydliga kriterier. Det fanns dock tillfällen då krediter gavs olika för liknande fall på grund av skillnader i inspektörernas bedömningar. ML-modellen tillämpar regler mer konsekvent med och högre konsekvens i tillämpningen av våra kreditpolicyer.
- Minskade mänskliga fel – Varje mänskligt engagemang innebär en risk för mänskliga fel. Till exempel hade vi fall där Style Review-kriterier användes för produktrecensioner. Vår automatiska inspektionsmodell minskade dramatiskt riskerna för dessa mänskliga fel.
Vi fick följande fördelar specifikt genom att använda Amazon SageMaker för att automatisera bildinspektionsprocessen:
- Etablerat en miljö där vi kan bygga och testa modeller genom modulära processer – Det vi gillade mest med Amazon SageMaker är att den består av moduler. Detta låter oss bygga och testa tjänster enkelt och snabbt. Vi behövde uppenbarligen lite tid för att lära oss om Amazon SageMaker först, men när vi väl lärde oss kunde vi enkelt tillämpa det i vår verksamhet. Vi tror att Amazon SageMaker är idealisk för företag som kräver snabb tjänsteutveckling, som i fallet med MUINSA Store.
- Samla pålitlig indata med Amazon SageMaker Ground Truth – Att samla in indata blir allt viktigare än att modellera sig själv inom ML-området. Med den snabba utvecklingen av ML kan förtränade modeller prestera mycket bättre än tidigare, och utan ytterligare justering. AutoML har också tagit bort behovet av att skriva koder för ML-modellering. Därför är förmågan att samla in kvalitetsdata viktigare än någonsin, och användningen av märkningstjänster som Amazon SageMaker Ground Truth är avgörande.
Slutsats
Framöver planerar vi att automatisera inte bara modellservering utan även modellträning genom automatiska batcher. Vi vill att vår modell ska identifiera de optimala hyperparametrarna automatiskt när nya etiketter eller bilder läggs till. Dessutom kommer vi att fortsätta att förbättra prestandan hos vår modell, nämligen återkallningar och precision, baserat på den tidigare nämnda automatiserade träningsmetoden. Vi kommer att öka vår modelltäckning så att den kan inspektera fler recensionsbilder, minska fler kostnader och uppnå högre noggrannhet, vilket allt kommer att leda till högre kundnöjdhet.
För mer information om hur du använder Amazon SageMaker för att lösa dina affärsproblem med ML, besök produktwebbsida. Och, som alltid, håll dig uppdaterad med det senaste AWS Machine Learning News här.
Innehållet och åsikterna i det här inlägget tillhör tredjepartsförfattaren och AWS ansvarar inte för innehållet eller noggrannheten i detta inlägg.
Om författarna
Jihye Park är en Data Scientist på MUSINSA som ansvarar för dataanalys och modellering. Hon älskar att arbeta med allestädes närvarande data som e-handel. Hennes huvudsakliga roll är datamodellering men hon har också intressen inom datateknik.
Sungmin Kim är Sr. Solutions Architect på Amazon Web Services. Han arbetar med startups för att arkitekt, designa, automatisera och bygga lösningar på AWS för deras affärsbehov. Han är specialiserad på AI/ML och Analytics.
- '
- "
- 000
- 100
- 107
- 98
- Annat
- Airbnb
- Alla
- amason
- Amazon SageMaker
- Amazon SageMaker Ground Sannhet
- Amazon Web Services
- analys
- analytics
- Apache
- OMRÅDE
- Automatiserad
- AWS
- BÄST
- kropp
- varumärken
- SLUTRESULTAT
- Byggnad
- företag
- företag
- fall
- utmanar
- klassificering
- CNN
- koda
- Samla
- förtroende
- Anslutningar
- samtycke
- innehåll
- fortsätta
- Konvertering
- convolutional neuralt nätverk
- Kostar
- kredit
- krediter
- kundupplevelse
- Kundnöjdhet
- Kunder
- datum
- dataanalys
- datavetare
- Demografi
- Designa
- detalj
- utveckla
- Utvecklare
- Utveckling
- Hamnarbetare
- e-handel
- Teknik
- Miljö
- etc
- erfarenhet
- Mode
- Funktioner
- Fed
- Förnamn
- första gången
- FLOTTA
- Framåt
- full
- fungera
- Ge
- Mål
- god
- Rutnät
- Gäst
- gäst inlägg
- riktlinjer
- här.
- Hur ser din drömresa ut
- How To
- HTTPS
- Människa
- IAM
- identifiera
- bild
- IMAGEnet
- förbättra
- Inklusive
- Öka
- informationen
- Infrastruktur
- IT
- Lediga jobb
- korea
- märkning
- Etiketter
- leda
- ledande
- LÄRA SIG
- lärt
- inlärning
- läsa in
- maskininlärning
- Metrics
- ML
- modell
- modellering
- modulära
- övervakning
- nämligen
- nät
- neural
- neurala nätverk
- nyheter
- nätet
- Verksamhet
- Åsikter
- Alternativet
- Övriga
- prestanda
- plattform
- Plattformar
- Strategier
- Precision
- Produkt
- Produktion
- Produkter
- inköp
- Python
- kvalitet
- skäl
- minska
- Resultat
- översyn
- Omdömen
- Risk
- regler
- Körning
- sagemaker
- sDK
- Sök
- känsla
- Tjänster
- portion
- Enkelt
- So
- Lösningar
- LÖSA
- Söder
- Sydkorea
- specialiserat
- Startups
- Stater
- bo
- förvaring
- lagra
- lämnats
- Stöder
- Tonåren
- tensorflow
- testa
- tid
- verktyg
- trafik
- Utbildning
- Trender
- rättegång
- ui
- Uppdatering
- us
- volym
- webb
- webbservice
- VEM
- ord
- Arbete
- arbetsflöde
- fungerar