Saltmätargatan 8A, 113 59 Stockholm

+46 (0) 8 410 55 700 info@middlecon.se

Machine learning : En stor möjlighet för företagen

Under de senaste åren har en helt ny form av mjukvaruutveckling uppkommit, nämligen machine learning. Att skapa machine learning modeller skiljer sig radikalt från att skapa en traditionell mjukvarumodell. Det involverar och kräver andra slags aktiviteter, annorlunda arbetsflöden och andra kompetensuppsättningar. Det finns idag ett stort behov på marknaden vilket ger möjlighet för företagen att bygga ett helt ny generation av mjukvaruverktyg. Att utveckla denna våg av nya extremt efterfrågade verktyg skulle innebära en stor ökning i företagsvärdet.

Hur skiljer sig traditionell mjukvaruutveckling från machine learning?

Det som skiljer traditionell utveckling från maskininlärning är hur systemet byggs för att följa uppsatta regler. Inom traditionell utveckling behöver utvecklaren explicit definiera varje beslut systemet kan ta och vad resultatet av den givna inputen är. Oavsett hur många gånger en given situation händer kommer systemet alltid göra exakt det den är programmerat till. En maskininlärd modell, som är tränad på data från domänen, kommer istället att lära sig dessa regler. Fördelen med en maskininlärd modell är att den kan lära sig komplexa regler och situationer utan att utvecklaren explicit behöver programmera varje regel.

Det innebär att arbetsuppgifterna för programvaruingenjörer kommer att bli helt annorlunda. Deras primära arbetsuppgift blir istället att fastställa de övergripande parametrarna som kommer att leda modellens inlärningsprocess samt att utvärdera och övervaka modellens prestanda när den har fullföljt inlärningsprocessen.

Det finns i nuläget inga välutvecklade verktyg för machine learning. Behovet blir större med varje dag, vilket skapar enorma möjligheter för företagen.

Nedan går vi igenom några viktiga kategorier där dessa verktyg kommer att behövas.

Data Labeling

Den dominerande ML metoden kallas nuvarande för supervised learning, som kräver att en etikett ska bifogas till varje datainformation i ett dataset för att modellen ska kunna lära sig av den. Processen för att skapa dessa etiketter är tidskrävande. Vissa startups sköter det glamorösa arbetet – att märka etikett för företagens samlingar av data. Rob Toews skriver “ These startups’ business models often rely on labor arbitrage, with large forces of workers labeling data by hand in low-cost parts of the world like India. Some players are working on technology to automate parts of the labeling process”

Det är oklart hur hållbara dessa företag kommer att vara på lång sikt. Som tidigare nämnt kan behovet av massiva etiketterade datasets försvinna när AI utvecklingen tävlar framåt.

Dataset Augmentation

Forskare och entreprenörer arbetar med innovationer för att minska mängden real-world data som behövs för att träna modeller och för att öka värdet på befintliga datasets. En av de mest lovande av dessa är synthetic data, som är en teknik som gör det möjligt för AI-utövare att artificiellt konstruera datan som behövs för att utbilda sina modeller. När synthetic data ökar i trovärdighet kommer machine learning bli både billigare och snabbare, samt öppna upp för väldigt många affärsmöjligheter.

Det första fallet för kommersiell användning där synthetic data har tillämpats är autonoma fordon. Företag, som nyligen lanserade Synthesis AI, försöker bygga synthetic data toolkits för att bredda synen på data. Ett annat verktyg är data curation, den utvecklar och modifierar datasets för att optimera kostnaden, effektiviteten och kvaliteten på model training runs. Gradio och Alectio är två lovande startups som just nu driver denna möjlighet.

Den mest lovande uppsättningen av dataverktyg som sannolikt kommer att bli allt mer värdefullt hör till ”semi-supervised learning”, en ny teknik som utbildar modeller genom att utnyttja en liten mängd märkt data tillsammans med stora volymer omärkt data. Semi-supervised learning är en mycket lovande teknik eftersom omärkta data är mycket billigare och lättare att framställa än den märkta datan.

Modelloptimering

När företaget väl har förberett sitt dataset är det dags för nästa steg, vilket är att fastställa specifikationer av machine learning modeller där datan kommer att matas in. Det inkluderar beslut angående vilken algoritm som ska användas samt vilka modellparametrar som ska ställas in för att optimera resultatet såsom noggrannhet och träningstid. För en djup inlärningsmodell, skulle sådana specifikationer exempelvis vara antal lager av det neurala nätverket samt hur många training epochs modellen kommer att köras innan den stoppas. Processen att fastställa dessa modellspecifikationer kan vara oerhört komplex. Nya mjukvaruverktyg kan stödja och delvis automatisera denna process.

Ett välkänt företag som utvecklar verktyg för modelloptimering är SigOpt, med särskilt fokus på hyperparameter optimization. De flesta av “end-to-end”  machine learning plattformar erbjuder en liknande uppsättning funktioner. “Firms are realizing that they don’t need to reinvent the wheel when it comes to state-of-the-art modeling,” säger Scott Clark, VD och grundare av SigOpt.

“There are a wave of enterprise solutions that are transforming modeling from an art into more of a science. The best AI teams are taking advantage of these tools today and are seeing a massive impact on their ability to efficiently deliver results.”

Experiment Spårning & versionskontroll

Machine learning innebär även prövning och misstag. Det finns utövare som ständigt anpassar sig för att förbättra sina modeller. ML-forskare kan ibland göra hundratals experiment för bara en specifik modell. Det är viktigt att företagen systematiskt spårar dessa modellexperiment på grund av reproducerbarhet och ansvarsskyldighet. Sådan vision kommer bli avgörande när oron över förmågan att förklara AI-modellerna sprider sig.

Weights & Biases, Comet, Verta.ai and SigOpt är statups som i dagsläget bygger verktyg som hjälper till att spåra experiment. “If software is eating the world, machine learning is eating software,” säger Lukas Biewald, VD och grundare  av Weights & Biases. “I got passionate about ML experiment tracking because it is underappreciated in the same way that data labeling was ten years ago.”

“I believe that in the same way no company today would dream of writing code without version control, in the near future no company will dream of building ML models without experiment tracking.”

Model Deployment and Monitoring

Att bygga en modell är bara en början för dig som vill driva en värdefull verksamhet med machine learning. En utbildad ML-modell som sitter i en Jupyter notebook på webbutvecklares lokala maskin är en imponerande teknik, men för att den ska ha kommersiell inverkan måste den användas i produktion. Att distribuera ML modeller är en stor utmaning, och även mer komplex än att bygga själva modellen. Beroende på användningsfallet kan arbetsprestation för machine learning behöva köras robust i olika hårdvarumiljöer som multi-cloud och hybrid cloud. Effektiv hantering av databehandlingsresurser blir därför allt viktigare.

Algorithmia och Seldon är två lovande startups som erbjuder verktyg för spridning av ML-modeller. Seldon skapade en lösning specifik för kubernetes, en open-source container orchestration platform som har blivit oerhört populär bland ML utövare. När en modell har tagits i produktion måste dess ägare kontinuerligt övervaka den för att se till att den fortsätter att fungera som förväntat.Verktyg för övervakning kommer att bli viktiga när fler företag sätter machine learning i produktion.

End-to-End Platforms

Vi har gått igenom de olika delarna av den totala machine learning livscykeln och diskuterat verktyg som kan stödja de enskilda segment. Ett alternativt tillvägagångssätt är att utveckla en ”end-to-end” machine learning plattform som omfattar hela livscykeln eller iallafall de flesta delar i en enda lösning. Många företag arbetar just nu med att bygga en sådan end-to-end plattform.

De stora cloud leverantörerna erbjuder olika varianter av denna End-to-end plattform.  AWSs sagemaker är en av varianterna och är troligtvis den mest avancerade av de. Google cloud har nu officiellt släppt sin variant av ML plattform nämligen Cloud AO platform pipelines. Det finns även robusta open -source alternativ och den mest populära av de är Kubeflow, ursprungligen utvecklad internt av Google.

Andra i end-to-end kategorin är välfinansierade företag som DataRobot och H2O.ai. De tillhandahåller datavetenskapliga plattformar med en bred uppsättning av funktioner som sträcker sig från front end till modell övervakning i back end. Vad de erbjuder är brett, dock är deras lösningar inte tillräckligt djupa. Dessa företag erbjuder oftast ”start” lösningar för machine learning, som inte är lämpliga för att bygga unika, komplexa eller banbrytande modeller.

Bland nystartade startups är det vanligt att börja med att bygga ett verktyg för endast en viss del av den totala ML pipeline, men de strävar efter att utöka deras erbjudande till en fullständig end – to – end lösning. Flera av dessa startups jobbar hård för att utveckla deras produkt positionering från en så kallad point solution till en helomfattande plattform.

Dagens utveckling av dessa typer av verktyg tyder på att det alltid kommer finnas en viss aptit bland programmerare att plocka ihop en anpassad uppsättning av point solution från olika leverantörer beroende på särskilda behov, arbetsflöden och preferenser. Marknaden är dock tillräckligt stor, och de olika typerna av ML-användning fält skiljer sig tillräckligt mycket för att göra det möjligt för både end-to-end plattformar och specialverktyg att existera och trivas sida vid sida.

Sammanfattning

Artificiell intelligens är våran tids största “gold rush”. Det som krävs för att stödja detta fält är idag underutvecklat vilket ger en enorm möjlighet för företagen.

Verktyg inom programvaruutveckling har alltid varit en fundamental del av den digitala ekonomin och den har alltid representerat en massiv marknad. När vi går in i nästa generation av mjukvaruutveckling, inriktad på machine learning, kommer det ultimata syftet med dessa verktyg att förbli detsamma: förbättrad produktivitet, effektivitet, kvalitetssäkring och samarbete. Men eftersom grunden i programmerarens arbetsflöden är annorlunda i machine learning än i traditionell mjukvaruteknik, måste en helt ny uppsättning med verktyg byggas.

Det enda som återstår nu är att gissa vilket värde som kommer genereras när dessa nya verktyg utvecklas. Ett gäng av lovande startups förföljer dessa möjligheter, men det finns ingen garanti att utmaningen kommer leda till seger. Stora teknikföretag och molnleverantörer som Amazon, Google och Microsoft lanserar konkurrenskraftiga erbjudanden. Open-source verktyg som Kubeflow fortsätter att växa i popularitet.

Det kommer bli spännande och dynamiskt att se utvecklingen de kommande åren!