Hoppa till huvudinnehåll
RISE logo
-

Från prototyp till produktion – Engineering Operational AI

Markus Borg, senior forskare mjukvaruutveckling

 

Artikeln publicerades i nyhetsbrevet Om AI 15 december 2021

Produktägaren Sara tittar motvilligt i kalendern. Hennes AI-pilotprojekt är kraftigt försenat. Solskenshistorien skulle bana väg för organisationen i den nya AI-eran. Men modellen funkar dåligt i operativ miljö, kräver mycket handpåläggning, och vissa litar inte alls på de senaste versionerna. Nu ser Sara även tecken på att lösningen inte skalar till den tilltänkta applikationen. Den optimistiska satsningen är på väg mot ett fiasko.  

Kanske du känner igen dig i Saras situation? För de flesta är det ett stort steg att ta en modell för maskininlärning (ML) från en lovande prototyp till en operativ lösning. Utveckling av produkter och tjänster baserade på ML ställer helt nya krav. Samtidigt ger ML möjligheten att lösa problem som varit olösbara med konventionell mjukvaruutveckling. Andrej Karpathy, AI-direktör på Tesla, har myntat begreppet Software 2.0 för att markera skillnaden. 

Beprövade metoder räcker inte till 

Vid utveckling av system med ML-modeller är det inte längre bara utvecklarnas källkodsinstruktioner som uttrycker all logik. Här tränas modellerna för att fånga mönster i träningsdata i form av parametervärden. Och antalet parametrar i moderna neurala nätverk är i magnituden 100 miljoner. De beprövade metoderna för kvalitetssäkring räcker inte längre till.  

Och vad innebär kodtäckningstester när de få källkodsinstruktionerna främst gör anrop till externa ML-ramverk som TensorFlow och PyTorch? Vad tillför kodgranskning i en era där data har blivit en kritisk tillgång med direkt påverkan på funktionaliteten?  

Världen över forskas det intensivt på AI Engineering – ingenjörsmässig utveckling av pålitliga AI-system. Dessutom forskas det för att systematiskt sammanställa olika organisationers erfarenheter. Och diverse riktlinjer och tumregler börjar skönjas. Målet är att hjälpa fler att nå det som kallas Operational AI – hållbart värdeskapande AI-lösningar som är driftsatta i verksamheten. Det steget är heller inte en slutstation: AI-system måste aktivt övervakas och underhållas ända tills de avvecklas. Google var tidigt ute med att rapportera i en välciterad erfarenhetsrapport kring teknisk skuld – det är i driften de huvudsakliga kostnaderna gömmer sig. 

Ny form av kravhantering för AI  

Kravhantering är ett område som behöver anpassas för AI Engineering. ML är en kraftfull teknik som låter oss träna modeller för att generalisera kunskap till nya observationer. Vi vet att modellerna kommer att göra fel ibland. Hantering av osäkerheten blir en nyckel för att kravställa nya produkter och tjänster. Utan tydlig kravhantering blir det svårt att kvalitetssäkra de nya AI-systemen.  

Införande av ML påverkar hela kravhanteringsprocessen från elicitering till validering. Dessutom tillkommer nya kategorier av krav, till exempel modellernas förklarbarhet och opartiskhet i träningsdata.  

Nya forskningscommunities har vuxit fram där AI kombinerats med de engelska begreppen explainability och fairness. Givetvis är begreppen relevanta även för konventionella mjukvarusystem men de dras till sin spets när ML kommer in i bilden. 

Nya regelverk påverkar 

Organisationer som utvecklar AI-system påverkas även av externa regelverk. Nya säkerhetsstandarder som tar höjd för AI växer fram i olika branscher. EU har med all tydlighet visat att det kommer att krävas ordning och reda om kritiska AI-system ska lanseras på unionens inre marknad.  

I april publicerade Europeiska kommissionen ett förslag till en ny förordning om regler för artificiell intelligens (AI Act). Blir förslaget verklighet så tvingas AI-utvecklare förbereda sig för genomlysning av nationell behörig myndighet. 

Oberoende utvärdering kan krävas för den AI som bedöms medföra betydande risker för människors hälsa, säkerhet eller grundläggande rättigheter. Ett rigoröst regelverk växer fram som kräver transparenta utvecklingsmetoder för att möta nya data-, produkt- och processkrav.  

AI Act föreslås gälla hela vägen tills dess ett AI-systemet avvecklas och slår fast att följsamheten kontinuerligt ska kunna visas. Vid misskötsamhet hotas med vite i samma omfattning som GDPR-förordningen med procent av den totala globala omsättningen. 

Testkedjan har blivit längre 

Förutom tydlig kravställning kräver kvalitetssäkring av AI att man testar hur systemen lever upp till kraven. För att samla bevis för att AI-systemet är pålitligt krävs testning. Men testning av ML är utmanande – den black-box-testning som ofta används för att undersöka funktionaliteten i ett system tycks svartare och mer svårtolkad än någonsin.  

För att skapa struktur har nya testnivåer definierats, till exempel datatestning och modelltestning. Dessa kompletterar enhets-, integrations-, system- och acceptanstestning som givetvis fortfarande krävs. Nu måste dock hela kedjan testas och det finns nya länkar att hantera.  

Forskningen kring ML-testning blomstrar med nya publikationer varje vecka och det kan vara utmanande att hålla sig à jour. I Sverige finns till exempel forskning inom sökbaserad testningtest av förklarbarhet och nya täckningsmått. Vilka metoder som har högst potential att skapa nytta är som alltid inom ML applikationsberoende. 

I ljuset av Googles erfarenhetsrapport och EU:s AI Act är det tydligt att driften av ett AI-system är lika viktig som dess utveckling.

MLOps – DevOps för AI-eran 

I ljuset av Googles erfarenhetsrapport och EU:s AI Act är det tydligt att driften av ett AI-system är lika viktig som dess utveckling. För konventionella mjukvarusystem har DevOps (en sammansättning av development och operations) vuxit fram som koncept för att stänga gapet mellan utveckling och drift. Förhoppningen med DevOps är att minimera tiden från att en utvecklare förändrar mjukvara till att förändringen är i skarp drift med bibehållen kvalitet. Tillämpas DevOps framgångsrikt ges en snabb återkoppling till hur förändringar påverkar driftsmiljön.  

Konceptet kräver ofta en förändrad mentalitet i organisationen samt en hög grad av automation. Tekniken har vuxit fram bland de stora Internet-bolagen men sprider sig till alla som vill nå kortare releasecykler. 

När det gäller AI-utveckling finns varianten MLOps (machine learning och operations). Målet är att snabbt kunna uppdatera mjukvara i drift, men i fallet med ML handlar det om att träna om modeller.  

Data science är ett experimentdrivet arbete, trots vissa dokumenterade tumregler handlar det om att prova vad som funkar. Och små förändringar kan få stora konsekvenser. Eller som Google uttrycker det med sin så kallade CACE-princip: Changing Anything Changes Everything.  

Det behövs därför nya verktyg inom MLOps för att säkerställa spårbarhet och reproducerbarhet. Rådata, pre-processering, hyperparametrar, nätverksarkitekturer – allt behöver  versionshanteras noggrant tillsammans med de resulterande modellerna.  

Dessutom är det viktigare än någonsin att övervaka lösningar i drift. Produktionsmiljön kan förändras på sätt som gör att ML-modellerna inte längre agerar inom området de tränades för. 

Infrastrukturen viktig 

En viktig komponent inom MLOps är infrastrukturlösningar: beräkningsplattformar som hanterar dataflöden, modellträning och driftsättning. För AI-tjänster är det vanligtvis molnteknik som används för att elastiskt kunna skala upp när kapacitet krävs. För inbyggda system kan det istället röra sig om motsatsen,  edge computing, där AI ska realiseras på begränsade plattformar.  

Vissa lösningar behöver hanteras i egna  datacenter, i andra fall passar det bättre att förlita sig på internetjättarnas helhetslösningar. Det finns en uppsjö olika alternativ till olika verktyg och ständigt ger sig nya utmanare in i leken. Oavsett vad man väljer kommer en hög grad av automation vara nödvändigt för continuous engineering. Kravhantering och testning måste integreras i de pipelines som ska driva framtidens pålitliga AI-system. Det sista – dyraste och svåraste – steget på AI-resan kallas ibland för Engineering Operational AI. Det är här hållbart och värdeskapande AI kan skapas – hela vägen fram till kontrollerad avveckling.  

Så att Sara och andra produktägare slipper obekväma överraskningar när prototyperna ska driftsättas. 

Engineering Operational AI