(TF)² #6 – Hur kan en algoritm förklara sig?

Alla är överens om att förklarbarhet är viktigt i AI. För två år sedan släppte EU sina officiella riktlinjer kring etisk AI. I dessa tryckte de speciellt på vikten av robusthet och förklarbarhet för att människan inte ska tappa kontrollen över algoritmerna. Fackuttrycket för förklarbar AI är XAI, men vad är en förklaring egentligen?

På Tenfifty brukar vi säga att du ska kunna fråga din AI-modell samma frågor som du hade velat ställa till en mänsklig expert.

  • Vad tror du?

  • Varför?

  • Hur säker är du?

  • Hur kan jag lita på dig?

Ingen missar att svara på den första frågan. En prognos eller förutsägelse är ofta själva poängen med en modell. Tredje punkten, hur säker modellen är, pratade vi om i förra bloggposten – Vad händer när en AI tvekar?. Men Varför säger du detta? är grundfrågan i förklarbarhet. Det är egentligen en ganska djup fråga. Mänskliga experter kan inte alltid förklara hur de kommer till en slutsats. I bland är resonemanget för komplicerat för att förklara i detalj. I bland är det baserat på svårförklarad intuition och mönsterigenkänning.

En expertförklaring är ofta en förenkling av ett resonemang. En maskininlärningsmodell kan till exempel basera sitt beslut på att medelvärdet av tusen krångliga formler som den räknat fram råkar bli ett visst värde. En förklaring av detta måste förenkla. Men hur mycket ska man förenkla? Det beror på vad mottagaren kan antas förstå och vad mottagaren ska göra med förklaringen.

Givet allt detta så krävs det egentligen en mental modell av mottagaren, samt en förståelse för vilka beslut som förklaringen ska hjälpa. Detta är precis den sortens kunskap som maskiner ännu inte besitter. Hur en modell ska förklara sig är alltså ett beslut som måste tas i förväg av en människa som analyserat helheten.

Detta är den luriga biten. För olika domäner finns det redan färdiga sätt att förklara, beroende på behov. I rapporter använder vi ofta färdiga metoder, men om man behöver förklara löpande i ett gränssnitt så behövs ofta en större kreativitet och egna lösningar.

Tabulära modeller

Den vanligaste typen av modell är tabulära modeller. Där gör man en modell från vad man visste till vad som hände, baserat på observationer. Ett trevligt mjukvarupaket för att förklara sådana modeller är Shap. Bilden nedan visar “feature importance” för ett klassiskt dataset som visar hur olika faktorer påverkar huspriser i Boston.

Till vänster har vi förtkortningar på olika variabler som kan påverka huspris. Variabler längre upp, påverkar modellen starkare. Varje punkt är ett exempel och röda punkter är exempel där variabeln påverkar starkt. LSTAT (uppfattad status kring området) påverkar alltså starkast och alla starka (röda) påverkningar minskar huspriset. RM (antal rum) påverkar i stället starkt positivt.

På ett liknande sätt kan vi förklara en enskild prisuppskattning från modellen. Om du hypotetiskt lägger in data om ditt hus i modellen och får svaret 24.41, så kan modellen förklara påverkan av de olika variablerna enligt nedan. Detta ger bara en förenklad bild över hur modellen tänker, eftersom de oftast tittar på kombinationer av variabler snarare än separat påverkan.

Textmodeller

Om du i stället har en textmodell som klassificerar text, så är ett fint sätt att förklara varför den valde en specifik klass, att färglägga orden kring vilka ord som ökar trolighet för klassen och vilka som minskar den.

Även detta är en förenkling eftersom moderna textmodeller tittar på kombinationer av ord och i vilket sammanhang som de står, men det är en bra början. Både textmodeller och bildmodeller kan förklaras med det populära paketet ELI5 (nätslang för “Explain Like I’m 5”).

Bildmodeller

Bilder kan generellt vara lite lurigare att förklara, men på samma sätt som för text, så kan en bildmodell förklara vilken del av bilden som den tycker är viktig när den säger att det finns en hund på bilden.


Ett annat sätt att förklara bilder, som man experimenterar med, är att peka ut exakt vilka exempel från träningsdatan som påverkar resultatet mest. På detta sätt kan man upptäcka underligheter bland kategorier i träningsdatan eller få se en bild där en felaktig kategori som modellen spottar ur sig faktiskt ser ut som bilden.

Slutligen

Det finns några områden, till exempel självkörande bilar, där förklarbarhet är ett viktigt olöst problem där vi hade tjänat på att ha bättre metoder. För de flesta fall som man möter i praktiken brukar dock modellerna kunna förklara sig väl, om man tänkt på att ha med den aspekten.

Välj en AI-leverantör som kan förklara sig!

David Fendrich

CTO, Tenfifty

Föregående
Föregående

Välkommen till Team Tenfifty, Benita!

Nästa
Nästa

Examensarbete med fokus på tal-till-text