Begreppet NLP står för Natural Language Processing och behandlar metoder för analys av text. Exempel på texter som kan vara användbara att analysera är e-post, kundrecensioner, kontrakt eller transkript från videor eller radiointervjuer.
Vi människor gör också en tolkning och analys av textens innehåll när vi läser. Vi letar efter meningsstrukturen för att ta reda på vem som nämns, vad fallet handlar om, vad som är argument eller följd, om det nämns människor, platser eller kända händelser.
NLP är användbart när detta ska automatiseras eftersom mängden text som ska analyseras blir för stor för oss, eller där repeterbar noggrannhet behövs. Mängden text, antalet förfrågningar till kundcenter, antalet webbsidor med nyheter eller diskussioner har ökat avsevärt och därför behöver fler företag lösningar för att bearbeta denna typ av information på ett effektivt sätt.
Den klassiska uppfattningen av data är tabeller med rader och kolumner, som många känner till från Excel och databaser. Detta är strukturerad data, i den mening att det är förutbestämt att ”beloppskolumnen” är ett decimaltal och till exempel måste innehålla belopp i svenska kronor motsvarande saldot på kontot. Strukturerad data är redo för analys och visualisering, även om det också kan finnas tvetydigheter och dålig datakvalitet i dessa data.
Exempel på strukturerad data är:
- Säljtransaktioner
- Lager
- Kunddata
- Frågeformulär
Ett hav av data
Tillgången på information och datamängden som är relevant för varje enskild organisation har ökat mycket och denna utveckling förväntas fortsätta. Enligt IDC genereras årligen 163 zettabyte data årligen (1 zettabyte motsvarar 1 biljon gigabyte) över hela världen. Den största delen av denna tillväxt sker i form av ostrukturerad data.
Exempel på ostrukturerad data är:
- E-postmeddelanden
- Bilder
- Video
- Facebook-konversationer
- Ljudfiler
Text är också data!
All text, oavsett om den är skriven som text eller tolkad från videor eller ljudfiler, kommer att ha någon form av struktur. Webbsidor kommer att ha formella fält om vad som är titeln, vad som är texten, undertexter på bilder beskriver oftast bilden och så vidare. Informella inlägg på sociala medier måste också formuleras så att läsarna får meningsinnehållet och vad inlägget hänvisar till.
Det är därför Natural Language Processing (NLP) genom olika tekniker kan analysera texten, identifiera strukturen och leverera de strukturella element den hittar på ett sätt som är lättare att använda i ytterligare analyser.
Här är ett exempel från en webbsida:
Tekniker och processer som används i NLP inkluderar:
- Förbehandling som ”normaliserar” texten. Onödiga skiljetecken, specialtecken och markering (t.ex. html) tas bort här. Sammansatta ord kan delas upp, ord med låg meningskvalitet tas bort, och så vidare.
- Grammatisk nedbrytning – identifiering av meningsstruktur, ämne, objekt, verb, tid/form, singular och pluralformer.
- Alternativet till grammatik är AI, där språkutbildning sker på massiva volymer inlärningsdokument.
- Enhetsutvinning, dvs letar efter kända språkkonstruktioner eller objekt som människor, platser, datum eller e-postadresser.
- Åtgärdsanalys där man letar efter vad som sägs och vad som görs – det vill säga allt runt verb.
- Scopesanalys, dvs. analys av textens uppdelning, så att du kan länka människor eller platser du hittar till handlingar, uttalanden eller åsikter du hittar. En mening är ett omfång, ett stycke är ett annat och mindre strikt omfång, och dokumentet med alla dess meningar och stycken har ett ännu bredare omfång. Tanken är att saker som visas i samma mening har en större koppling än saker som bara nämns i samma dokument.
- Sentimentanalys, som letar efter stämningar i texten. Är man arg? Eller glad, positiv eller farlig? Förutom att bestämma ”stämningen” i en text (eller undertext/omfattning) syftar denna teknik till att ranka längs en skala. Hur glad? Hur farlig?
- Otvetydighets- eller entydighetsanalys. Om en text säger ”Jag älskar Paris, och särskilt Hilton”, måste detta kopplas till staden och hotellet, inte till Paris Hilton.
Svårigheten med grammatik är att den är helt språkberoende, varför NLP-lösningar kan fungera bra på till exempel en engelsk text, men vara helt hopplösa på en tysk eller fransk text. Tänk bara på all komplexitet i det svenska språket, med dialekter, konstiga termer vi använder i vardagligt tal, slang och ironi.
Ett alternativ till grammatik är som sagt AI. Google använder detta i stor utsträckning i sin översättningsteknik, Google Translate. Fördelen är att du kan stödja många språk, men nackdelen är ganska slarvig noggrannhet.
Hur skapar man en datadriven organisation?
Hur skapar jag värde från ostrukturerad data med hjälp av NLP?
Värdet är redan synligt i många områden i många typer av applikationer. Här är några exempel:
- Inkommande e-postmeddelanden till kundcenter analyseras för att klassificera de argaste, viktigaste och dyraste fallen och för att kategorisera dem så att de kan vidarebefordras till rätt avdelning, eller ännu bättre – automatiskt bearbetade, godkända eller besvarade.
- Chatbots kan vara extremt frustrerande om de är ”för dumma” och inte förstår olika sätt att formulera samma sak. Om du lägger till NLP i tillägg kan kvaliteten ökas kraftigt och användbarheten blir bra.
- Marknadsövervakning eller marknadsanalys använder NLP för att kartlägga hur ett varumärke, en produkt eller ett område nämns, både när det gäller humör, men också vem som deltar i recensionerna, när och var nämnandet sker. Detta gör det lättare att lägga fram en bra strategi vid lanseringar eller andra varumärkesaktiviteter.
- Övervakningsmyndigheter kan lyssna på hundratusentals samtal, både ljud och online, utan att anställda är närvarande på annat sätt än att fånga konversationer som är värda närmare granskning eftersom de diskuterar människor, platser eller händelser på sätt som träffar ett mönster man är intresserad av.
- Du kan erbjuda tillgång till dokument och insikter genom att skriva eller säga vad du letar efter, som ett alternativ till att behöva navigera, filtrera och sortera med tangentbord och mus. Detta är mycket användbart i Business Intelligence. Se exempel nedan.