729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-01-09
MASKINBASERAD
HUMORIGENKÄNNING
Kan en maskin känna igen humoristiska texter?
Sammanfattning
I en studie av Mihalcea och Strapparava (2006) har ett system utvecklats för att testa om
maskiner kan känna igen humor i texter. Denna rapport kommer att redogöra för detta
system.
Linköpings Universitet
Gabrielle Silfver
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
Sammanfattning
Den här rapporten redogör för automatisk humorigenkänning genom att beskriva ett system
skapat för att skilja mellan humoristiska texter och icke-humoristiska texter. Då begreppet
humor är svårdefinierat består de humoristiska texterna av One-liners som är en specifik typ
av skämt. Syftet med systemet är att testa om maskiner kan känna igen humor med hjälp av
automatiska klassifikationstekniker. Jag kommer att förklara hur insamlingen av datamaterial
till humoristisk respektive icke-humoristiskt datamaterial går till samt hur dessa sedan blir
åtskilda med automatiska klassifikationstekniker som är innehållsbaserade samt med hjälp av
humorspecifika kännetecken för humor. Även en kombination av dessa kommer att testas.
Resultatet i studien visade på att automatiska klassifikationstekniker är framgångsrika
tillvägagångssätt för att en maskin ska kunna känna igen humor i texter.
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
Innehåll
Sammanfattning....................................................................................................................................... 1
Inledning.................................................................................................................................................. 3
Övergripande förklaring av systemet ...................................................................................................... 4
Datamaterial ............................................................................................................................................ 5
Humoristisk data.................................................................................................................................. 5
Icke-humoristisk data .......................................................................................................................... 6
Automatisk humorigenkänning ............................................................................................................... 7
Humorspecifika stilistiska kännetecken. ............................................................................................. 7
Innehållsbaserad inlärning:.................................................................................................................. 8
Textklassifikationsalgoritmer .......................................................................................................... 8
Experiment och resultat ........................................................................................................................... 9
Diskussion/Slutsats................................................................................................................................ 11
Referenser.............................................................................................................................................. 12
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
Inledning
Humor utgör en stor del av människors sociala förhållanden och är en vital del i
kommunikationen mellan människor. Därför är det inom artificiell intelligens relevant att
kunna utveckla system som gör det möjligt för datorer att förstå och känna igen humor.
Fördelarna med humor är inte bara i underhållningssyfte utan är även ett framgångsrikt sätt att
fånga människors uppmärksamhet samt bidra till ett starkare minne och därmed en bra
inlärningsmetod. Humor är ett brett begrepp med många teorier inom olika områden som
lingvistik, psykologi och filosofi. På grund av oklarheten i definitionen är det ett relativt
outforskat område inom Artificiell Intelligens.
I den här rapporten har jag studerat ett system skapat av Mihalcea och Strapparava som
utvecklats för att testa om maskiner kan känna igen humor med hjälp av automatiska
klassifikationstekniker. Jag har valt att studera maskinell humor då det för mig var intressant
att få en inblick i detta delproblem inom AI och svårigheterna i att utveckla ett kreativt
mänskligt beteende hos en maskin. Jag tyckte även att det var spännande med upplägget i
denna studie i enlighet med datainsamlingsmetod, textklassificering samt diskussionen
författarna för kring ämnet humor inom AI.
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
Övergripande förklaring av systemet
Systemet är utvecklat av Mihalcea och Strapparava (2006) och de har inriktat sig på en
specifik del av humor kallad ”One-liner”.
Mihalcea och Strapparavas definition av en One-liner är en kort mening (högst 15ord) med en
komisk effekt, intressant lingvistisk struktur innehållande simpel syntax, retorisk (rytm, rim)
och en frekvent användning av kreativt språk som fångar läsarens uppmärksamhet.
Systemets syfte är att testa om maskiner kan känna igen humor med hjälp av automatiska
testklassificerare samt vilken typ av teknik som är mest framgångsrik i denna aspekt.
De har definierat humor-igenkänningsproblemet som en traditionell maskininlärningsuppgift
där positiva - (humoristiskt datamaterial) och negativa (icke-humoristiskt datamaterial) exempel kommer att ges till en automatisk textklassificerare.
Med hjälp av en bootstrappingprocess har de hämtat ut One-liners till det humoristiska
datamaterialet från webben. För att kunna jämföra med icke-humoristiska texter har de hämtat
data från Reuters news titles, ordspråk, meningar från the british national corpus (BNC), och
Open Mind Common Sense (OMCS). Den insamlade datan kommer att väljas ut för att passa
både strukturellt och stilistiskt med One-liners. De har sedan använt sig av två olika
automatiska textklassifikationstekniker för att låta maskinen avgöra om texten är humoristisk
eller inte. Dessa tekniker har varit stilistiska kännetecken för humor och innehållsbaserade.
De har även använt sig av två olika automatiska innehållsbaserade textklassifikationsmetoder
samt jämfört dessa två. Till sist har de även testat en kombination av dessa tekniker.
Resultatet visade att maskiner klarar att utföra uppgiften att känna igen humor med hjälp av
dessa tekniker då resultatet alltid var bättre än den bestämda baselinen (50%). De tar även upp
de aspekter av vad systemet hade problem med.
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
Datamaterial
För att kunna testa om humorigenkänning fungerar hos maskiner bör data set från både
humoristiska data set och icke-humoristiska data set samlas för att sedan systemet ska kunna
träna på dessa och därefter kunna avgöra om en text är humoristisk eller icke-humoristisk..
Att det finns många icke-humoristiska texter att hämta data sets ifrån säger sig själv,
problemet är att hitta data sets med humoristiska exempel, i detta fall One-liners. Två
angreppssätt har använts för att lösa detta problem, dels för att öka kvantitet och dels för att
höja kvaliteten på datan som samlats in.
Humoristisk data
Då det finns begränsat med oneliners på
webben har en bootstrappingfunktion
använts för att automatiska konstruera
20.000 One-liners. Det övergripande
målet med bootstrappingalgoritmen är att
automatiskt samla en stor del One liners.
Detta börjar med en ”frö”-lista
innehållandes 5-10 One-liners som
manuellt har blivit definierade. Via en
sökfunktion med en webbsökmotor
definierar algoritmen sedan automatiskt
en lista av webbsidor där minst ett av
elementen i ”frö”-listan förekommer. När
algoritmen har hittat webbsidan tolkar
den innehållet och lägger till eventuella
nya One-liners i ”frö”-listan, denna
process upprepas tills den tillräckliga
mängden One-liners är samlad.
För att detta ska fungera krävs det att
bootstrappingalgoritmen har restriktioner
som förhindrar att onödig data samlas
samt styr processen åt rätt håll. I detta
system har bootstrappingalgoritmen två restriktioner.
Bild 1. Bootstrapping(Mihalcea, Strapparava, 2006)
Den första är en tematisk restriktion som appliceras på innehållet på webbsidorna.
Restriktionen implementeras genom att begränsa webbsidans innehåll till ett tema med hjälp
av en samling nyckelord. Om nyckelordet finns i URLen kommer en sökning att göras på
hemsidan i enlighet med ”frö”-listan. Samlingen nyckelord består av sex ord: ”onelines”,
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
”one-liners”, ”humor”, ”humour”, ”joke”, ”funny”. Dessa ord indikerar att innehållet på
webbsidan är humorrelaterat.
Den andra restriktionen är strukturell och bearbetar HTMLstrukturen på webbsidan som
beräknar om det förekommer texter som är stilistiskt liknande en One-liner. Detta utförs med
hjälp av ”frö”-One-linern. Förekommer något element från ”frö”-listan av One liners på listan
av uppräknade texter finns det stor sannolikhet att andra One-liners förekommer på
webbsidan. Om en ”frö”-One-liner hittas på en hemsida föregången av HTMLtaggen <li>2
kan andra texter, med respektive tagg och uppräkning, med stor sannolikhet vara One-liner.
<li>2 är ett föremål i en lista.
Bootstrappingprocessen startar med en liten ”frö”-samling innehållandes tio oneliners och
resulterar sedan i en samling av 24.000 One liners. Efter borttagningen av kopiorna finns
därefter ca 20.000 One liners till det humoristiska datamaterialet.
Icke-humoristisk data
Det icke-humoristiska datamaterialet har samlats genom att identifiera meningar som inte är
komiska men som håller samma struktur och komposition som One-liners. Strukturell likhet
var framställd genom att varje exempel i det icke-humoristiska datamaterialet följer samma
längdrestriktion som det humoristiska datamaterialet, det vill säga, en mening på 10-15 ord.
Likheten i komposition har identifierats genom att identifiera exempel som liknar One liners i
kreativitet och intention.
De har använt sig av fyra databaser för att samla icke-humoristisk datamaterial.
Reuters news titles, nyhetsartiklar publicerade i Reuters nyhetsflöde över perioden 1996-1997.
I likhet med One liners består titlarna av korta meningar med simpel syntax som används för
att fånga läsarens uppmärksamhet.
Ordspråk manuellt framtagna från en engelsk ordspråkssamling. Ordspråk är korta meningar
innehållande fakta eller subjektiv information. One-liners kan ibland vara komiskt
modifierade ordspråk.
The british national corpus (BNC). Till skillnad från Reuters och ordspråk har BNC-meningar
inga kreativa inslag och meningarna valdes med hjälp av en implementation av en vektorisk
modell för att hitta meningar som innehållsmässigt liknade de One-liners som hittats med
hjälp av bootstrappingalgoritmen.
Open mind common sense (OMCS). Där meningar av uttalanden om sunt förnuft har hämtats.
Dessa databaser har valts för att göra humorigenkänningsuppgiften svårare och därmed mer
trovärdig. De vill undvika att den automatiska textklassifieraren ska lära sig att skilja på
humoristiska och icke-humoristiska texter enbart tack vare textlängd eller
vokabulärskillnader. Dessa databaser tillförser det icke-humoristiska datamaterialet med
exempel som till stor del liknar det humoristiska datamaterialets aspekter men som skiljer sig
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
i den komiska effekten. Hypotesen är att de mer kreativa texterna som Reuters och Ordspråk
ska vara mest lika One-liners och därmed svårare för systemet att klassificera.
Automatisk humorigenkänning
I experimentet använder dom sig av automatiska textklassifikationstekniker genom heuristik
baserat på humorspecifika stilistiska egenskaper (alliteration, struktur, slang) och
innehållsbaserade egenskaper inom ett framesystem formulerat som en typisk
klassifikationsuppgift, och kombinerat stylistisk och innehållsbaserade egenskaper integrerade
i ett framesystem för maskininlärning.
Humorspecifika stilistiska kännetecken.
Mihalcea och Strapparava har försökt identifiera en grupp stilistiska kännetecken som
karaktäriserar humoristiska texter som var både signifikanta och rimliga att implementera i
användandet av existerande maskinläsande resurser. De fokuserar specifikt på alliteration,
struktur och vuxenslang.
Alliteration
I tidigare studier om humor har underlag för strukturen och fonetikens betydelse för innehållet
i ett skämt tagits fram. Även om skämtet inte uttalas högt är One-liners ofta beroende av
lingvistiska fenomen som producerar en komisk effekt med hjälp av upprepning av ord och
rim. Detta är vanligt för reklam och löpsedlar för att fånga läsarens intresse.
För att kunna hämta ut alliterationskedjor har Mihalcea och Strapparava räknat antalet
alliteration/rim-kedjor som förekommer i varje exempel i deras datamaterial. Med hjälp av ett
index som är skapat i CMU pronantiation dictionary har kedjorna automatiskt samlats
(http://www.speech.cs.cmu.edu/cgi-bin/cmudict).
Den underliggande algoritmen är en matchningsmaskin som försöker hitta den största och
längsta strängmatchningskedjan genom att använda transkriptionerna från CMU. Till exempel
meningen ”Infants don’t enjoy infancy like adults do adultery” där algoritmen hittar två
alliterationskedjor (infan-ts,infan-cy) och (adult-s, adult-ery) som visar den fonetiska
matchningen ih1 n f ah0 n” and “ah0 d ah1 l t.
Jag testade denna funktion på One linern ”There’s a fine line between cuddling and holding
someone down so they can’t get away”, där jag antog att matchningsalgoritmen skulle hitta
alliterationskedjan (hold-ing och cuddl-ing), därefter sökte jag efter den fonetiska
matchningen i CMU och fick resultatet HH OW1 L D IH0 NG . AH0 N D . K AH1 D L IH0
NG.
CMU använder sig av ett fonemset som är baserat på ett symbolset från ARPAbet. ARPAbet
är en kod skapad för att återge en visuell presentation av talat språk och är skapad av
Advanced Reasearch Projects Agency. I det fonemset som CMU använder sig av finns 39
fonem där vissa vokaler är mer avgörande och mer betydelsebärande än andra. Om vokalerna
bär en stor betydelse har den ett värde på 1, om vokalerna har mindre betydelse har de värde 2
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
samt om vokalen inte har någon betydelse alls har den värdet 0. I mitt exempel visar resultatet
att det är ljudet ”OW” i Holding som avgör den största skillnaden mellan detta och ordet
Cuddling där ljudet ”AH” har fått samma siffra i enlighet med det första ordet, det vill säga 1.
Ändelsen ”-ing” har i båda orden fått 0 vilket indikerar att detta är den del som är lik mellan
orden och avgör alltså inte vad som gör att orden låter olika. Detta indikerar alltså att de
rimmar eftersom båda orden har samma värden.
Algoritmen undviker att hitta ointressanta kedjor genom att ha en stoppordlista där orden inte
kan vara en del av en alliterationskedja.
Motsatser
Humor är ofta beroende av någon form av orimlighet. Det är dock svårt att hitta i texter men
det är desto lättare att hitta motsatser. Mihalcea och Strapparava har använt sig av
WORDNET som lexikal resurs för att hitta ord som är motsatser till varandra. WORDNET är
en lexikal databas innehållande semantiska relationer mellan ord samt synonymer. Den
används ofta som lexikal resurs för artificiellt intelligenta system och i textanalyser.
I WORDNET har de letat särskilt efter den strukturella relationen mellan substantiv, verb,
adjektiv och adverb. För adjektiv används en synonymrelation mellan adjektiv och därmed
hitta motsatser mellan ord.
Vuxenslang
Vuxenslang innehåller ofta någon typ av sexuell anspelning och är väldigt populärt inom
humor vilket gör det relativt lätta att hitta med hjälp av ett sexorienterat lexikon. Återigen är
det WORDNET som används, domänen SEXUALITET (http://wndomains.fbk.eu/). Listan
med ord som togs valde inte de orden som hade en polysemi på mer än 4 olika betydelser per
ord för att undvika ord med för mycket mångtydighet. Efter detta annoterades orden i enlighet
med ordens kontext i korpusen.
Alla dessa tre stilistiska kännetecken för humor kan ibland förekomma samtidigt i en One
liner.
Innehållsbaserad inlärning:
I tillägg till dessa stilistiska kännetecken har även innehållsbaserade kännetecken för humor
framtagits där humorigenkänningsuppgiften är formulerad som ett traditionellt
textklassifikationsproblem. De två textklassifierare som användes var Naive Bayes och
Support Vector Machines (SVM), resultaten från dessa jämfördes sedan. Anledningen till
varför dessa valdes var för att de skiljer sig i metod vilket gynnar jämförelsen samt att de varit
framgångsrika i tidigare studier.
Textklassifikationsalgoritmer
Naive Bayes
Bayes theorem handlar om sannolikhet och är en subjektiv ansats till att förklara sannolikhet.
Naive Bayes är den vanligaste ansatsen till Bayesiska nätverksmodellen som används i
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
maskininlärning. Modellen är naive för att den antar att alla attribut är villkorligt oberoende
av varandra, givet klassen och växer linjärt med antalet attribut. Det finns olika versioner av
Naive Bayes, till detta system har multinominalmodellen använts. Multinominalmodellen
fungerar bättre när det gäller variation i dokumentlängd och har visat sig fungera bättre i
tidigare arbeten (McCallum, Nigam, 1998).
Support Vector Machines (VSM)
SVM är en klassifikationsalgoritm som jobbar binärt för att separera positiv data med negativ
data med hjälp av (p-1) hyperplanedimensioner. Exemplen delas in i en respektive binära
kategorier och är därför inte en probalistisk binärlinjeklassifierare,
Experiment och resultat
Syftet med studien var att visa till vilken grad automatiska klassifikationstekniker kan
appliceras på maskinellt humorigenkännande. För att få mer insikt i de olika aspekter som kan
påverka hur pass bra detta fungerar har flera experiment utförts. De aspekter som tagits i akt
är hur precisionen för klassificeringen blir när stilistiska och innehållsbaserade tekniker
används, den icke-humoristiska datans påverkan samt metoden för klassifikation, det vill
säga, Naive bayes och Support Vector Machines.
För att testa systemet har en 10 korsvalidering används för att ge så precisa resultat som
möjligt. En 10-korsvalidering innebär att man delar upp den insamlade datan i tio delar där
nio av de delarna fungerar som träningsdata och den sista delen blir testdata. Detta görs tio
gånger där respektive del får agera testdata. Detta för att undvika att testdatan ska representera
för mycket eller för lite data av den negativa och den positiva datan. Base-line för
experimentet är 50% då det är 50% som är negativ respektive positiv data i datamängden. Det
vill säga att om systemet kan klassificera mer än 50% av dokumenten i testdatan, på rätt sätt,
har den utfört uppgiften på ett önskat sätt.
Humorspecifika stilistiska kännetecken
När de humorspecifika stylistiska kännetecknen testades visade det sig att alliteration är det
mest fördelaktiga stylistiska kännetecknet för att avgöra om en text är humoristisk eller inte
där det visade sig ha bättre precision än både motsatser och vuxenslang i alla negativa dataset
test (Reuters, BNC, Ordspråk, OMCS). För att utföra dessa tester användes beslutsträd.
Beslutsträden tränades på en liten del av datan för att
sedan testas på resten av datan. Varje humoristiskt
stilistiskt kännetecken fick ett numeriskt värde
tilldelat och fungerade sedan som heurestiker.
Bild 2.Beslutsträd
(Mihalcea, Strapparava, 2006)
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
Om datan vid testet fick ett värde som kom över den gräns som satts vis träningen blev de
klassade som en humoristisk text. Resultatet indikerade att det är Reuters texter som är minst
lik One-liners och att alliteration är det mest effektiva sättet för en maskin att avgöra om en
text är humoristisk eller inte samt att ordspråk är den som är mest lik One-liners.
Innehållsbaserad inlärning
Det andra experimentet var en klassisk textklassificeringsuppgift där tester på det insamlade
datamaterialet gjordes med hjälp av Naive Bayes och Support Vector Machines (SVM). Här
utfördes en mer innehållsbaserad riktlinje för om en text var humoristisk eller ickehumoristisk med hjälp av bag-of-words och sannolikhetsvärden. Bag-of-words innebär att
orden som respektive negativa och positiv textsträng innehåller analyseras oberoende av
varandra samt sannolikhetsvärdet för hur stor chans det är att den givna meningen är positiv
eller negativ utifrån de orden. Textklassificerarna har tränats med hjälp av 10-korsvalidering
och det är sedan det som dessa utgår ifrån när de avgör om en text är positiv eller negativ.
Reuters var även här den typ av text som var minst lik One-liners medan BNC var det som var
mest likt. Detta indikerar att humoristiska texter är väldigt lika vanliga texter men att man
fortfarande kan skilja på dessa med hjälp av text-klassificeringstekniker.
Kombinationen av stilistiska kännetecken för humor och innehållsbaserad inlärning
Efter de två första experimenten testades även en kombination av dessa två tekniker. De valde
att göra detta genom att använda en sekventiell inlärningsmetod där resultaten från den
innehållsbaserade textklassificeringen användes och testades med de stilistiska
klassificeringsmetoderna. För att undvika att gapet mellan dessa två inlärningsmoment skulle
påverka att lågprestationer från den innehållsbaserade klassificeringen blev bortprioriterade
använde de sig av ett minnes-baserat program kallat TiMBL. TiMBL är en öppen källkod som
implementerar ett flertal minnesbaserade lärande algoritmer. Den används främst för
processering av naturligt språk och innehåller bland annat algoritmen IB1-IG som är en
implementation av k-nearest neighbor-klassificering samt IGTree som är en
beslutsträdsalgoritm till IB1-IG. Detta system implementerades på den andra delen av
inlärningen, den stilistiska.
Resultatet visade en signifikant förbättring i jämförelse med de tidigare testerna.
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
Diskussion/Slutsats
”Computers are not intelligent, they just think they are.”
Skämt å sido, detta system har visat att maskiner automatiskt kan känna igen humor med hjälp
av automatiska textklassifikationstekniker. Att systemet i alla tester gav ett resultat som var
bättre än baseline (50%) är uppmuntrande. Jag tror dock inte att det här resultatet räcker för
att bevisa att maskiner kan känna igen humor vilket även Mihalcea och Strapparava diskuterar
i sin artikel. One-liners är en väldigt liten del av humor och problemet kvarstår att
definitionen av humor fortfarande är oklar. Att få en maskin att förstå inkongruens och ironi
är en mycket större utmaning och detta kommer att krävas för att humorigenkännande ska
fungera. Detta är någonting som inte ens människor klarar att förstå i vissa situationer. Det
visade sig att det var de mest vanliga texterna som var lika One-liners när textklassificeringen
utfördes och därmed inte de kreativa texterna som Mihalcea och Strapparava först trodde.
Detta indikerar även att det bör forskas mer kring vad som faktiskt kännetecknar humor.
Detta är ett intressant sätt att tackla det artificiellt intelligenta delproblemet maskinell humor.
Jag har lärt mig mycket av att studera hur de har gått tillväga för att utföra uppgiften och har
förstått att det är många vägar man kan ta om man vill lösa artificiella problem. Det är bra att
de testade många olika typer av negativa data för att se hur detta påverkade samt att de även
insåg att de även skulle testa en kombination av de olika klassificeringsmetoderna.
One-liners är som sagt en liten del och kan inte bevisa någonting generellt för området humor
eller bidra till något genomslag men det är en början och förhoppningsvis kan detta leda till
vidare forskning för kreativ språkigenkänning hos maskiner i framtiden. Maskiner kanske i
framtiden inte bara tror att de är intelligenta, kanske de faktiskt blir det tillslut.
729G43
Artificiell Intelligens
IDA – Institutionen för datavetenskap
Gabrielle Silfver
gabsi721
2014-04-15
Referenser
Andrew McCallum, K. N. (1998). A comparsion of event models for naive bayes text
classification. AAAI press, ss. 41-48.
Rada Mihalcea, C. S. (2005). Computational laughing: Automatic recognition of humorous
One-liners.
Rada Mihalcea, C. S. (den 1 Maj 2006). Learning to laugh (automatically): Computational
models for humor recognition. Computational Intelligence, ss. 126-142.
.