• No results found

Oövervakad maskininlärning för att upptäcka bottar i online-tävlingar

N/A
N/A
Protected

Academic year: 2021

Share "Oövervakad maskininlärning för att upptäcka bottar i online-tävlingar"

Copied!
36
0
0

Loading.... (view fulltext now)

Full text

(1)

INOM

EXAMENSARBETE TEKNIK, GRUNDNIVÅ, 15 HP

STOCKHOLM SVERIGE 2017,

Oövervakad maskininlärning för att upptäcka bottar i online-

tävlingar

EMIL MÅRTENSSON LUKAS SAARI

KTH

SKOLAN FÖR INDUSTRIELL TEKNIK OCH MANAGEMENT

(2)
(3)

Oövervakad maskininlärning för att upptäcka bottar i online-tävlingar

EMIL MÅRTENSSON LUKAS SAARI

DD152X Examensarbete i datateknik, kommunikation och industriell ekonomi Kungliga Tekniska Högskolan

Handledare: Joakim Gustafsson, Bo Karlsson Examinator: Joakim Gustafsson

2017-05-02

(4)

ii

Abstract

Digital marketing is a fast-growing market and its actors are constantly looking for innovative and new ways of marketing. In this paper, an actor on this market called Adoveo will be studied. Their specialization and value proposition is to include a competition part in their advertisement campaigns, giving its participators the possibility to win a prize. What could turn out to be problematic is that the prizes are not rewarded to human contestants, instead going to a bot that can participate in the competition with unreasonably good results.

The purpose of this paper is to try to separate bots from human contestants with the data provided from Adoveo. To that end, two unsupervised machine learning algorithms were implemented to cluster the data points, Gaussian Mixture Model and K-Means. The result was an uninterpretable cluster struc- ture from which there was no reliable identification of bot-like and human-like behaviour to be made. The reason behind this was twofold, the design of the competition and a lack of decisive attributes in the data. Recommendations were provided to how both of these issues could be rectified.

Finally, an analysis was provided on the business value of bot-securing competitions and the value it gives to the company. The analysis showed that the business value of bot-securing competitions would be beneficial, because it would give a competitive advantage against competitors and also improve business with advertisers and consumers.

(5)

ii

Sammanfattning

Digital marknadsföring är i dagsläget en snabbt växande bransch och ak- törer söker ständigt efter nya sätt att bedriva marknadsföring. I denna rapport studeras en av dessa aktörer, Adoveo, vars värdeerbjudande är att inklude- ra ett tävlingsmoment i reklamkampanjerna som ger deltagare möjlighet att vinna priser. Problematiskt är dock att priserna riskeras att inte delas ut till mänskliga deltagare, utan istället delas ut till bottar som deltar i tävlingarna både omänskligt många gånger och med omänskligt bra resultat.

Syftet med rapporten är att med hjälp av data från denna aktör försöka skilja mänskliga deltagare från bottar. För detta tillämpades två oövervakade maskininlärningsalgoritmer för att klustra datapunkterna, Gaussian Mixture Model och K-medelvärde. Resultatet var en otydlig klusterstruktur där det inte gick att pålitligt identifiera något kluster som mänskligt respektive botliknande.

Orsakerna bakom denna osäkerhet var främst designen av reklamtävlingarna samt att attributen i den studerade datan var otillräckliga. Rekommendationer gavs till hur dessa problem skulle kunna åtgärdas.

Slutligen genomfördes en analys avseende affärsnyttan med botsäkra täv- lingar och vilket mervärde det skapar för företaget. Analysen visade att af- färsnyttan från att botsäkra tävlingarna skulle vara stor, då det skulle ge för- delar gentemot konsumenter såväl som annonsörer och konkurrenter.

(6)

Innehåll

Innehåll iii

1 Introduktion 1

1.1 Bakgrund . . . 1

1.2 Uppdragsgivarens intresse . . . 2

1.3 Problemformulering . . . 3

1.4 Syfte . . . 3

1.5 Samhälleliga och etiska aspekter . . . 4

2 Teori 5 2.1 Introduktion till maskininlärning . . . 5

2.2 Övervakad inlärning . . . 6

2.3 Oövervakad inlärning . . . 6

2.4 Algoritmer inom oövervakad inlärning . . . 6

2.4.1 K-medelvärde . . . 6

2.4.2 K-Nearest Neighbour(K-NN) . . . 7

2.4.3 Gaussian Mixture Model . . . 8

2.5 Hantering av saknade data . . . 8

2.6 Standardisering av data . . . 8

2.7 Siluettvärde . . . 9

3 Metod 10 3.1 Data som användes . . . 10

3.2 Antaganden om botliknande beteende . . . 11

3.3 Val av algoritmer . . . 11

3.4 Val av program för genomförande . . . 11

3.5 Tillvägagångssätt . . . 12

4 Resultat 13 4.1 Resultat från egna tävlingsförsök . . . 13

4.2 Fördelning av data . . . 13

4.3 Inlärningskurvor i data . . . 15

4.4 Resultat från silhuettvärdering . . . 15

4.5 Resultat från Gaussian Mixture Model med tre kluster . . . 16 iii

(7)

INNEHÅLL iv

4.6 Resultat från Gaussian Mixture Model med sex kluster . . . 17

4.7 Resultat från K-medelvärde med sex kluster . . . 18

5 Diskussion och slutsatser 20 5.1 Fördelning av indata och dess indikationer . . . 20

5.2 Problematisk design av tävlingen . . . 21

5.3 Diskussion av resultatet från GMM . . . 21

5.4 Diskussion av resultatet från K-medelvärde . . . 22

5.5 Rekommendationer till ändringar av tävlingens design . . . 22

5.6 Förslag på andra attribut för oövervakad inlärning . . . 23

5.7 Affärsnytta med att detektera bottar . . . 24

5.7.1 Affärsnytta gentemot konsumenter . . . 24

5.7.2 Affärsnytta gentemot annonsörer . . . 25

5.7.3 Affärsnytta gentemot konkurrenter . . . 25

Litteraturförteckning 27

(8)

Kapitel 1

Introduktion

I detta kapitel beskrivs bakgrunden till rapporten. Den undersökta frågeställningen samt rapportens syfte förklaras också.

1.1 Bakgrund

I dagens samhälle pågår en stark digitaliseringstrend där allt fler branscher och funktioner förflyttas till webben. Allt eftersom även människors beteenden och ak- tiviteter följer samma trend så följer reklamen naturligt med i samma utveckling.

Omsättningen för digital reklam var i hela världen 2015 så mycket som 59,6 miljar- der dollar (PWC, 2015) och bara i Sverige var den 1,3 miljarder dollar (IRM, 2015), vilket är runt 12 miljarder kronor.

Det finns två huvudsakliga betalmodeller för digital reklam, antingen kan an- nonsörer ta betalt för varje visning eller för varje klick (Martin Rödén, intervju, 12 april, 2017). Båda betalmodellerna går att utnyttja i både mindre och mer stor- skaliga bedrägerier. Syftet med bedrägerierna kan exempelvis vara att förhindra att annonsörer når ut till riktiga kunder genom att dränera deras marknadsföringskassa genom att visa reklamen för datorer istället för riktiga människor (Daswani et al., 2008). Bedrägerierna görs främst med hjälp av botnätverk, det vill säga automatise- rade program planterade på flera datorer som utför arbetsuppgifter utan att ägaren till datorn är medveten om det. Det kan också vara möjligt för en enskild användare att skriva ett enkelt program eller skript som körs lokalt på den egna datorn för att göra detta.

Tidigare forskning har bedrivits gällande att upptäcka bedrägerier inom reklam med hjälp av maskininlärning genom att träna upp program på data som redan klassificerats som antingen bedragare eller äkta användare (Oentaryo et al., 2014).

I den här studien har vi istället valt att tillämpa maskininlärning på oklassificerad data för att upptäcka bedragare, vilket är ett område som inte undersökts förut.

Reklamkampanjerna som studeras i denna rapport innehåller även ett tävlingsmo-

1

(9)

KAPITEL 1. INTRODUKTION 2

ment, som användare måste man alltså efter ett klick på annonsen utföra ytterligare moment, och datan innehar därför nya attribut som tidigare studier inte haft till- gång till.

1.2 Uppdragsgivarens intresse

Adoveo är en reklambyrå vars värdeerbjudande är att skapa nytänkande och inter- aktiva reklamkampanjer. Detta görs genom att konsumenter får titta på en film som är omkring trettio sekunder lång och som handlar om det annonserande företaget eller den nya produkten. Efter filmen får konsumenten svara på ett fåtal frågor med givna svarsförslag, som behandlar det som visades i filmen. Beroende på kampan- jens utformning får sedan konsumenter som svarade rätt på alla frågor exempelvis en värdekupong för en produkt, eller så får de tio snabbaste den dagen ett pris från företaget bakom kampanjen. Adoveo har alltså inkorporerat ett tävlingselement i reklamkampanjerna.

Figur 1.1: Frågedelen av Adoveos reklamkampanj med Hitta.se

Ett möjligt problem som kan uppstå är att konsumenter försöker fuska i syfte att vinna priserna. Detta kan exempelvis ske genom att man skriver ett program som svarar automatiskt på frågorna, en så kallad bot. Botten kan då svara väldigt många gånger och mycket snabbare än vad som är möjligt för en människa. Integriteten hos tävlingarna riskeras därmed eftersom priser endast kommer delas ut till ett fåtal bedragare istället för riktiga konsumenter. Detta är skadligt för annonsören som betalar för både priserna och reklamkampanjen utan att uppnå den önskade publiciteten och följaktligen även för Adoveo eftersom de får missnöjda kunder. Att säkerställa tävlingarnas integritet är enligt Adoveo av dessa anledningar essentiellt

(10)

KAPITEL 1. INTRODUKTION 3

Figur 1.2: Resultatdelen av Adoveos reklamkampanj med Hitta.se

för att annonsörer ska anse att deras värdeerbjudande är ett tilltalande alternativ.

Även om Adoveo kommunicerat att de starkt misstänker att bottar deltar i deras tävlingar så kan de dock inte med full säkerhet bekräfta att så är fallet.

1.3 Problemformulering

Frågan som undersöks är:

”Hur kan maskininlärning användas med hjälp av oklassificerade data för att upptäcka bottar i online-tävlingar?”

Delfrågor som hör till är:

• Vilka parametrar är användbara för att upptäcka bottar i online-tävlingar?

• Kan bottar i online-tävlingar upptäckas med hjälp av maskininlärning på ett pålitligt sätt, det vill säga en låg andel falska positiver respektive falska ne- gativa?

• Hur kan online-tävlingar utformas för att motverka bottar?

Frågan som undersöks inom området industriell ekonomi är:

”Hur kan Adoveo gynnas av en lösning som motverkar bottar i deras reklamkampanjers tävlingar?”

1.4 Syfte

Rapportens syfte är att ta reda på om maskininlärning är en användbar metod för att upptäcka bottar i online-tävlingar och hur online-tävlingar bör utformas för att både möjliggöra detta och samtidigt motverka att bottar överhuvudtaget deltar. Även om maskininlärning i tidigare studier använts för att upptäcka falska

(11)

KAPITEL 1. INTRODUKTION 4

klick inom reklam och för att hitta kreditkortsbedragare, så är det inom online- tävlingar vanligare att använda diverse heuristiska regler och autentiseringsmetoder såsom captchas (Pozzolo, 2015). Vår rapport behandlar alltså något som tidigare inte utforskats och kommer vara av intresse för aktörer som bedriver tävlingar på internet och vill säkra deras integritet.

1.5 Samhälleliga och etiska aspekter

Att säkerställa integriteten hos online-tävlingar inom reklam är av intresse för alla inblandade samhällsaktörer; konsumenter, annonsörer och företag som tillhandahål- ler reklamtjänster. Om bottar kan delta obehindrat skulle det inte vara någon idé för legitima konsumenter att ens vara med i tävlingen eftersom de har en betydligt lägre chans att vinna. Nöjet från att delta såväl som värdet från potentiella priser skulle då utebli. Hur konsumenter uppfattar tävlingarna är av stor vikt för företaget som betalar för att marknadsföra sig via denna tjänst eftersom det direkt påverkar publiciteten som ges, vilket följaktligen påverkar lönsamheten för företag som säljer reklamtjänsterna. För dessa aktörer är det alltså viktigt att säkra förtroendet till online-tävlingar för att skydda marknadssegmentets fortlevnad.

Eftersom maskininlärning analyserar stora mängder data om användare finns även en etisk aspekt i arbetet. Hur mycket personlig information borde företag egentligen få spara i syfte att utveckla sina produkter? Det finns också risk för att maskininlärningsalgoritmer som tränas med hjälp av data som innehåller informa- tion om exempelvis användares bakgrund kan ge upphov till diskriminerande utfall (Bostrom and Yudkowsky, 2014). Ett utfall skulle kunna vara att många bedragare härleds till ett specifikt land, vilket därmed riskerar att cementera kulturella fördo- mar. Potentiella åtgärder som implementeras ovarsamt kan då försvåra för legitima användare med liknande användarmönster att delta i tävlingarna.

(12)

Kapitel 2

Teori

I detta kapitel presenteras relevant teori som hjälper läsaren att förstå innehållet i efterföljande delar av rapporten.

2.1 Introduktion till maskininlärning

Det finns två vedertagna definitioner på maskininlärning, den första är mindre for- mell och skrevs på slutet av 50-talet (Samuel, 1959):

The field of study that gives computers the ability to learn without being explicitly programmed.

Den senare och mer specifika definitionen från 1997 skriven av Tom Mitchell är (Mitchell, 1997):

A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as

measured by P, improves with experience E.

Inom diskursen för maskininlärning framförs frågan vad lärande egentligen är och om det faktiskt kan appliceras på datorer. Den senare definitionen visar att man gått från ett kognitivt synsätt till en operationell, där man istället ser på inlärning som att man utifrån erfarenhet kan ändra sitt beteende för att bättre lösa en upp- gift. Ännu mer fritt går maskininlärning att beskriva som att man ger datorer ett mänskligt beteende då den kan memorera, anpassa och generalisera. Detta innebär däremot inte att datorn kan föra djupare resonemang, utan enbart att den kan för- utspå tidigare okänd datas etikettering baserat på kända egenskaper den lärt sig från tidigare data.

Maskininlärning delas vanligtvis in i tre olika typer. Dessa är övervakad maski- ninlärning, oövervakad maskininlärning och reinforcement learning (Maglogiannis, 2007). I denna rapport kommer endast oövervakad att tillämpas.

5

(13)

KAPITEL 2. TEORI 6

2.2 Övervakad inlärning

Inom övervakad inlärning har data förbehandlats genom att varje element tilldelats en etikett för vilken kategori den tillhör. Den klassificerade träningsdatan används sedan för att träna upp programmet, varpå det kan användas för att klassificera ny data som är oklassificerad. För utdatan finns det två olika typer, regression och klassifikation. Inom regressionsproblem vill man härleda en mappning som ger kon- tinuerliga utdata, exempelvis för att förutspå huspriser beroende på husens storlek.

I klassifikationsproblem vill man mappa indata till en diskret utdatamängd, exem- pelvis för att förutspå om en cancer är malign eller harmlös beroende på dess storlek.

Matematiskt går detta att beskriva som att man söker följande funktion h:

h : X → Y, X ∈ Rn, Y ∈ Rn (2.1)

Där X är indata och Y är utdata, sådan att h minimerar en kostnadsfunktion J (x, y)

2.3 Oövervakad inlärning

Om datan saknar etiketter går den inte att träna upp med övervakade algoritmer.

Istället använder man sig av oövervakad inlärning, då är det upp till algoritmen själv att hitta mönster i datan för att kunna klassificera den. Detta kan exempelvis göras med klustringsalgoritmer, nearest-neighbor algoritmer eller statistiska algo- ritmer. Nya data kan man sedan snabbt placera i rätt kluster. Användaren kan då även försöka dra slutsatser över vad som utmärker elementen i ett visst kluster.

Exempel på användningsområden är bedrägeridetektering, marknadssegmentering och nyhetsklassificering (Berkhin, 2006).

2.4 Algoritmer inom oövervakad inlärning

2.4.1 K-medelvärde

K-medelvärde är en av de vanligaste algoritmerna inom oövervakad maskininlär- ning. Det är en iterativ algoritm som försöker hitta de k stycken bästa klustren för den givna datan. Detta görs genom användandet av k stycken centroider, som alla representerar centrumet för ett av klustren. Som utgångspunkt väljs centro- iderna vanligtvis till varsin slumpmässig datapunkts koordinater. Datapunkterna ges initialt tillhörighet till det klustret vars centroid de är närmast. I den itera- tiva processen flyttas centroiderna sedan mot centrumet av deras kluster och alla datapunkterna tilldelas återigen klustertillhörighet med avseende på de nya centro- iderna. Processen fortsätter tills något stoppvillkor är uppfyllt, exempelvis att inga datapunkter byter kluster mellan iterationerna. Algoritmen syftar alltså till att dela upp datapunkterna i k stycken kategorier.

(14)

KAPITEL 2. TEORI 7

Figur 2.1: Slumpmässig datamängds- fördelning

Figur 2.2: Initial fördelning av kluster till centroider

Figur 2.3: Centroidförflyttning till masscentrumet av klustren i figur 2.2

Figur 2.4: Slutgiltig centroid- och kluster- placering

Figurerna visar vad som sker vid en körning med K-medelvärde. Figur 2.2 visar ett exempel på en initial gissning av centroider för värdet k = 2. Successivt flyttas centroiderna närmre de slutgiltiga klustrens centrum tills datamängden tydligt är uppdelad i två kluster.

En svårighet med k-medelvärde är att bestämma vilket värde på k som ska väljas för att erhålla den bästa representationen. Även fast man bara har två kategorier som datan ska delas in i kan flera kluster ändå ge värdefull insikt om datan eftersom flera kluster av olika orsaker ändå kan signifiera samma kategori (Chiang and Mirkin, 2010).

2.4.2 K-Nearest Neighbour(K-NN)

K-nearest neighbor är en av de simplaste maskininlärningsalgoritmerna. Den fun- gerar genom att datapunkterna tolkas som punkter i ett euklidiskt Rn-rum. Klas-

(15)

KAPITEL 2. TEORI 8

sificeringen kan sedan göras med avseende på punktens medelavstånd till dess k närmsta punkter, avståndet till den k:te närmsta punkten, eller beroende på hur de k närmsta punkterna kategoriserats. Datapunkten kan då exempelvis klassificeras som en anomali ifall avståndet överstiger ett visst värde. För att detta ska fungera väl är det viktigt att k väljs till ett lämpligt tal. Avståndet mellan två datapunk- ter beräknas med något mätetal, exempelvis euklidiskt avstånd eller cosinuslikhet.

Metoden innebär att globala anomalier kan identifieras, men inte lokala anomalier (Amer and Goldstein, 2012).

Innan datan används kan en dimensionsreducering krävas eftersom den höga di- mensionen resulterar i att det euklidiska rum som datan upptar blir glest. Följden blir då att de olika avståndsmåtten minskar i effektivitet (Hasanlou and Samadza- degan, 2012).

2.4.3 Gaussian Mixture Model

Gaussian mixture model är en oövervakad klustringsalgoritm som liknar K-medelvärde.

Största skillnaden är att den istället för att ge en hård klassificering gällande vilket kluster datapunkter tillhör, så är den probabilistisk och ger därmed sannolikheten för att datapunkter tillhör de olika klustren. Detta fungerar genom att algoritmen sammanfogar flera normalfördelade (Gaussiska) kurvor för olika variabler till en en- da kurva, vilken sedan med hjälp av avståndsberäkningar används för att bestämma sannolikheterna. För att algoritmen inte ska riskera att divergera och hitta lösningar med oändlig sannolikhet krävs en stor mängd datapunkter (Scikit-Learn, 2016).

2.5 Hantering av saknade data

Den enklaste metoden för att hantera saknade datapunkter är purification. Detta kan göras enligt två olika strategier, antingen genom att ta bort datarader och datakolumner där data saknas, eller genom att gissa värden för saknade data. Att ta bort data skapar problem om mycket data saknas och löser inte heller problem med saknade datapunkter i indata när algoritmen senare ska användas. Att gissa värden kan göras med många olika tillvägagångssätt, där det enklaste baseras på statistik i form av att man gissar på det vanligast förekommande värdet. Detta riskerar dock att skapa en bias mot det gissade värdet.

2.6 Standardisering av data

För att datan ska kunna hanteras korrekt av algoritmerna behöver den vara förbe- handlad, antingen genom normalisering (omskalning) eller standardisering. Detta eftersom algoritmer som K-medelvärde bildar kluster som påverkas av variansen för varje dimension (Mohamad and Usman, 2013). Ifall datan inte är förbehandlad kommer extremvärden då ges en alltför hög vikt vid beräkningarna av centroider-

(16)

KAPITEL 2. TEORI 9

na (Milligan and Cooper, 1988). Om datan är normaliserad antar alla datapunkter värden inom intervallet [0,1] och är den standardiserad får den ett medelvärde på 0 och standardavvikelse på 1 genom att beräkna varje nytt värde med:

x0 = x − ¯x

σ (2.2)

Där x är det gamla värdet, ¯x medelvärdet för dimensionen och σ är dess stan- dardavvikelse.

2.7 Siluettvärde

Siluettvärdering är en metod som används vid klustring för att bedöma om beräkna- de klustren är av hög kvalitet. Till varje punkt beräknas ett värde inom intervallet [-1,1], där ett högre värde indikerar att punkten är väl matchad till sitt kluster gentemot de andra klustren. Genomsnittsvärdet för alla punkter är då ett mått på hur väl grupperad datan är och kan användas för att välja rätt antal kluster (Rousseeuw, 1987).

(17)

Kapitel 3

Metod

3.1 Data som användes

Den mottagna datan från Adoveo behandlade ca 70 000 tävlingsförsök i en reklam- kampanj. Filerna mottogs i .xlsx-format. Datan filtrerades så att enbart användba- ra attribut fanns kvar. En utgångspunkt var att attributet måste vara linjärt och baserat på det enskilda deltagarförsöket för att det ska vara användbart i maskinin- lärningsalgoritmerna. Nya attribut sammanställdes dessutom genom att beräkna aggregerade värden som ansågs ha relevans för botdetekteringen. De nya attributen beräknades med program skrivna i programmeringsspråket Python.

De attributen som studerades var:

1. IP-Counter – Räknare för varje IP-adress. Varje gång en IP-adress stöttes på ökades en räknare för denna, för att på detta sätt upptäcka IP-adresser som förekommer många gånger.

2. Correct % – Procentuell andel rätt som varje IP-adress har över alla dess tävlingsförsök. Identifierar brute-force attacker genom att de kommer ha en låg procentuell andel rätt över alla sina försök, som konvergerar mot procentsatsen 25% eftersom fyra svarsalternativ ges.

3. Competition Time – Total tid för tävlingsförsöket. Kan identifiera tävlings- försök som är för snabba för att kunna vara mänskliga.

4. Timestamp – Tid på dygnet för tävlingsförsöket. Identifierar mönster gällande vilka tider på dygnet bedragare är mest verksamma. Detta har i tidigare studier visat sig vara användbart (Oentaryo et al., 2014).

5. Time Window – Glidande fönster för antalet gånger en IP-adress deltagit un- der ett givet tidsintervall. Bottar kommer sannolikt delta ett mycket stort antal gånger under tidsintervallet. Kan användas för att identifiera mänskliga deltaganden från publika IP-adresser (givet att de inte deltar samtidigt som

10

(18)

KAPITEL 3. METOD 11

botten), eftersom de kommer delta ett lägre antal gånger under sitt tidsinter- vall.

6. View Stage – Att en deltagare endast upprepar frågorna (view stage två) istället för att visa videon igen (view stage noll) kan indikera att det är en bot som använder brute-force.

3.2 Antaganden om botliknande beteende

Antaganden som gjordes om bottars karaktärsdrag avseende de olika attributen är:

• Hög ”IP Counter” eftersom de deltar många gånger.

• ”Correct %” konvergerar mot 25% eftersom det finns fyra svarsalternativ, vilket i genomsnitt ger 25% vid slumpmässigt svarande.

• Låg ”Competition Time” eftersom de svarar så snabbt som möjligt.

• Hög ”Time Window” eftersom de deltar många gånger under de tidsintervallen då de är aktiva.

• ”View Stage” är lika med två eftersom de enbart är intresserade av att upprepa frågorna.

3.3 Val av algoritmer

Klustringsalgoritmer ansågs fungera väl för vår givna data eftersom bottar ger upp- hov till många liknande datapunkter, vilka bör kunna klassificeras som samma klus- ter (Judith Butepage, intervju, 27 februari, 2017). Gaussian mixture model användes eftersom den ger sannolikheter för klustertillhörigheten och är en probablistisk al- goritm. Då datan är oklassificerad är det lämpligt att beräkna sannolikheter för klustertillhörigheter istället för att bestämma definita klassificeringar enligt Bute- page. K-medelvärde användes för att få flera resultat att dra slutsatser ifrån. Den studerade k-NN tillämpades inte eftersom den inte ansågs passa vårt arbete, då bottar ger upphov till många punkter nära varandra, varför dessa inte skulle klas- sificeras som anomalier.

3.4 Val av program för genomförande

Maskininlärningsalgoritmerna implementerades i Python med hjälp av biblioteket scikit-learn som innehåller funktionalitet för maskininlärning. Samtliga av de pre- senterade algoritmerna fanns i scikit-learn. Biblioteket är skapat för att användas i vetenskapliga rapporter (Pedregosa et al., 2011). För att göra de grafiska diagram- men och tabellerna användes Excel samt biblioteket Matplotlib till Python. Excel användes även i kombination med egenskrivna Python-program för sammanställan- det av data.

(19)

KAPITEL 3. METOD 12

3.5 Tillvägagångssätt

Först undersöktes reklamkampanjen som den mottagna datan tillhörde. Frågorna besvarades med olika metoder för att avgöra vad som är en förväntad tävlingstid för bottar respektive människor. Metoderna var att läsa igenom frågorna ordentligt för att svara ärligt, att klicka igenom manuellt så snabbt som möjligt och att skriva ett skript som klickar igenom så snabbt som möjligt.

Datans attribut studerades sedan för att bestämma tumregler för vad som är misstänksamt beteende. Attributens relevans för klustringen bedömdes också ge- nom att skapa histogram i Excel för att analysera deras fördelning. För de 19 IP-adresserna som förekom mer än 1000 gånger studerades deras första 1000 täv- lingsförsök för att analysera inlärningseffekten för tävlingstid och procentuell andel rätt svar. Effekten är en beskrivning på hur man vid upprepade försök gör bättre ifrån sig på samma moment (Ritter and Schooler, 2001).

Indatan till klustringsalgoritmerna standardiserades med inbyggda verktyg i scikit-learn. Med valda tumregler tillämpades GMM för flera olika kombinationer av attribut, varpå manuella bedömningar gjordes på resultatens användbarhet. Be- dömningarna grundade sig i vilka kombinationer av kluster och attribut som ansågs ge bäst resultat. Med bäst resultat menas att de resulterande klustren gick att dela upp i mänskligt respektive botliknande beteende. Körningar gjordes för två, tre och fyra attribut i taget. Mängden kluster för varje körning valdes med silhuettpoäng.

K-medelvärde applicerades sedan på samma attribut och samma mängd kluster som gav bäst resultat för GMM. Utöver att jämföra klustren som bildades mot de anta- ganden som fanns om botliknande beteende försökte också nya samband att hittas i klustren.

(20)

Kapitel 4

Resultat

4.1 Resultat från egna tävlingsförsök

Metod Competition time

Ärliga tävlingsförsök då frågorna lästes igenom ordentligt 4000ms Klicka igenom manuellt så snabbt som möjligt 250ms Skript som klickar igenom så snabbt som möjligt 10ms

Tabell 4.1: Egna tävlingsförsök med de snabbaste uppnådda tävlingstiderna

4.2 Fördelning av data

I histogrammet för ”Competition Time” syns att en övervägande majoritet av alla värden är under 6 000 ms, men att det finns en del väldigt stora värden. Exempelvis är det allra största värdet 22 794 073 ms, eller strax över sex timmar. Valet gjordes därför att filtrera bort alla tävlingsförsök där tävlingstiden överstiger 30 000 ms då klusteralgoritmerna är känsliga för avvikande värden. Höga värden för tävlingstid kan exempelvis bero på att man lämnar webbsidan öppen och gör något annat, vil- ket är en anomali men en ointressant sådan. Den lägsta tävlingstiden i datan var 43 ms, vilket var markant långsammare än vårt egna skript som nådde en tid på 10 ms.

Histogrammet för ”IP Counter” är aningen missvisande då det bara är några få IP-adresser som förekommer i staplarna med högre värden. Exempelvis utgörs stapeln mellan 3000 och 8000 av en enda IP-adress och dess 5000 deltagarförsök.

Egentligen är det bara 19 stycken av totalt 1552 unika IP-adresser som deltagit mer än 1000 gånger. I histogrammet för ”View Stage” syns att en övervägande majoritet av alla datapunkter har värdet 2. De flesta deltagare väljer alltså att enbart svara på frågorna igen utan att se om videon.

13

(21)

KAPITEL 4. RESULTAT 14

Figur 4.1 Figur 4.2

Figur 4.3 Figur 4.4

Figur 4.5 Figur 4.6

(22)

KAPITEL 4. RESULTAT 15

4.3 Inlärningskurvor i data

Figur 4.7: Inlärningskurva för andel rätta svar

Figur 4.8: Inlärningskurva för täv- lingstid

I figur 4.7 och 4.8 ser man tydligt hur både andelen rätta svar och tävlingstiden sjunker desto fler gånger någon deltar med samma IP-adress genom att trendlinjerna lutar nedåt. Efter att en IP-adress deltagit mer än cirka 500 gånger stabiliseras korrekt svarsandel på frågorna kring 30 %, vilket är bättre än total slump. För tävlingstid stabiliseras det kring 900 ms.

4.4 Resultat från silhuettvärdering

En silhuettvärdering tillämpades för GMM och K-medelvärde för att bestämma lämpligt antal kluster, vilket gav följande resultat:

Figur 4.9: Silhuettvärden för GMM Figur 4.10: Silhuettvärden för K- medelvärde

Ur grafen för GMM går det att utläsa att det finns två stycken lokala maxi- mum vid tre respektive sex kluster. Silhuettvärdena varierar mycket, men är över- lag väldigt låga vilket innebär att det inte bildas någon tydlig klusterstruktur. För K-medelvärde är silhuettvärdena högre och variationen mellan dem är låg.

(23)

KAPITEL 4. RESULTAT 16

4.5 Resultat från Gaussian Mixture Model med tre kluster

Figur 4.11: GMM med tre stycken kluster

Figur 4.12: Klustercentrum för GMM med tre stycken kluster

I figur 4.11 syns att det inte bildades några tydligt avskilda kluster. Som datan är fördelad är det svårt att visuellt avgöra någon naturlig klusterstruktur, detta återspeglas i klustercentrumens placering i figur 4.12 som är mycket nära varandra.

Notera att axlarna har olika skala mellan de båda figurerna. Från silhuettvärde- na var det väntat att fördelningen skulle vara otydlig likt i figur 4.11, då ett lågt silhuettvärde tyder på att datapunkterna i varje kluster ligger nära datapunkter tillhörande ett annat kluster.

Medelvärdet för klustrens attribut då de inte standardiserats, medelvärdet för sannolikheten att de tillhör det tilldelade centrumet, samt en räknare för antalet punkter tillhörande varje kluster, redovisas i tabell 4.2 nedan. I tabell 4.3 redovisas varje klusters extremvärden:

Label IP Coun- ter

Competition time (ms)

Time window Probability Number of points

0 26 4475 25 0,969 13648

1 2174 772 148 0,887 27666

2 609 2001 50 0,821 29897

Tabell 4.2: Tabell över medelvärdet av resultatet från GMM med tre kluster Datapunkterna är till antalet relativt jämt fördelade mellan de tre klustren.

Alla tre kluster innehåller datapunkter som ansågs vara bot-liknande, exempelvis kluster 0 har en IP-adress som förekommit 154 gånger inom samma tidsintervall och en datapunkt med en tävlingstid på 93 ms. Gemensamt för alla kluster är den stora spridningen mellan min- och maxvärden, vilket indikerar att anomalier är utspridda över samtliga kluster. Det var på grund av det låga silhuettvärdet väntat och var en anledning till att en större mängd kluster valdes vid nästa körning av GMM.

(24)

KAPITEL 4. RESULTAT 17

Label Min IP Counter

Max IP Counter

Min Comp Time

Max Comp Time

Min Time Window

Max Time Window

0 1 154 93 29986 1 154

1 90 8756 63 5386 1 383

2 10 8755 43 29306 1 368

Tabell 4.3: Min- och maxvärden hos datapunkterna i respektive kluster för GMM med tre kluster

4.6 Resultat från Gaussian Mixture Model med sex kluster

Figur 4.13: GMM med sex stycken klus- ter

Figur 4.14: Klustercentrum för GMM med sex stycken kluster

I figur 4.13 och 4.14 syns en tydligare klusterfördelning med en större spridning mellan centrumen. Datapunkter tillhörande de olika klustren överlappar dock fort- farande varandra till stor del och vissa centrum är väldigt närbelägna.

Medelvärden respektive extremvärden för varje kluster redovisas av tabellerna ne- dan:

Label IP Counter Competition Time

Time Window Probability Number of points

0 653 726 94 0,877 23278

1 5509 1014 93 0,938 6114

2 20 4904 19 0,944 11890

3 120 1318 35 0,817 11477

4 2036 697 239 0,916 7487

5 1182 3693 69 0,914 10965

Tabell 4.4: Medelvärdet av resultatet från GMM med sex kluster

(25)

KAPITEL 4. RESULTAT 18

Label Min IP Counter

Max IP Counter

Min Comp Time

Max Comp Time

Min Time Window

Max Time Window

0 80 1702 43 1952 1 245

1 1642 8752 209 4244 1 237

2 1 144 93 29986 1 144

3 7 332 87 4524 1 131

4 224 4782 106 2487 127 383

5 10 8756 63 29306 1 368

Tabell 4.5: Min- och maxvärden hos datapunkterna i respektive kluster för GMM med sex kluster

Tabell 4.4 och 4.5 visar att kluster 1 och 4 innehåller datapunkterna med IP- adresser som varit med väldigt många gånger. Alla kluster innehåller extremt låga värden för tävlingstid. Kluster 4 innehåller datapunkter med utmärkande högt del- tagande inom samma tidsintervall.

4.7 Resultat från K-medelvärde med sex kluster

Figur 4.15: K-medelvärde med sex styc- ken kluster

Figur 4.16: Klustercentrum för K- medelvärde med sex stycken kluster I figurerna syns tydligt avgränsade kluster och spridningen mellan centrumen är stor. Detta är i linje med de högre silhuettvärdena som gavs för K-medelvärde.

(26)

KAPITEL 4. RESULTAT 19

Medelvärden respektive extremvärden för varje kluster redovisas av tabellerna ne- dan:

Label IP Counter Competition Time Time Window Number of points

0 333 5956 27 7128

1 846 1215 116 19172

2 1841 786 237 8543

3 6478 1043 114 4493

4 95 19350 12 1495

5 498 1191 31 30380

Tabell 4.6: Medelvärdet av resultatet från K-medelvärde

Label Min IP Counter

Max IP Counter

Min Comp Time

Max Comp Time

Min Time Window

Max Time Window

0 1 3567 3482 12818 1 186

1 79 3629 43 6478 49 204

2 195 4502 106 12044 145 383

3 3674 8756 431 7928 1 227

4 1 3086 12619 29986 1 299

5 1 3673 87 3885 1 78

Tabell 4.7: Min- och maxvärden hos datapunkterna i respektive kluster för K- medelvärde med sex kluster

Medelvärdena för kluster ett, två och tre överensstämmer med ett botliknande beteende. Detta återspeglas till viss del även av deras extremvärden, men undantag finns, som att exempelvis kluster två har en högsta tävlingstid på 12044 millisekun- der.

(27)

Kapitel 5

Diskussion och slutsatser

5.1 Fördelning av indata och dess indikationer

En majoritet av datan skulle enbart utifrån antaganden om bot-liknande beteende klassificeras som bottar. Över hälften hade en tid som låg under 1000 millisekunder, för majoriteten av IP-adresserna låg genomsnittet för andel rätt besvarade frågor på 25 % och vissa IP-adresser förekom över 1000 gånger. Men under arbetets gång framkom det att de värden som vi först trodde indikerade att en bot svarat faktiskt kan komma från legitima deltagare. Det finns flera anledningar till detta, vilka fram- kom när vi själva deltog i reklamkampanjen, studerade attributen och analyserade resultaten från klustringsalgoritmerna.

Anledningen till att det är svårt att dra några slutsatser om vilka deltagarförsök som är gjorda av bottar kan till att börja med bero på att det inte varit någon bot som deltagit. Även om det inte går med säkerhet att säga att bottar deltagit, så talar dock det faktum att det finns över 1000 deltagare med en tid under 200 milli- sekunder för det. Detta då vi själva manuellt aldrig lyckades besvara frågorna på en tid under 250 millisekunder. Att IP-adresser som vi misstänker vara bottar ibland kan ha betydligt längre svarstider på flera sekunder kan bero på att hemsidan tar olika lång tid att ladda. Detta var något vi märkte då vi skrev vårt egna skript.

Om man exempelvis har en fördröjning så att skriptet endast körs en gång varan- nan sekund kan det då hända att skriptet på grund av hemsidans laddningstider inte klickar igenom alla tre frågor på en körning och att det då tar två sekunder extra eftersom det dröjer tills nästa körning innan tävlingsförsöket fullföljs. Att vi lyckades skriva ett eget skript som klarade av tävlingen på 10ms, markant kortare än den snabbaste tiden på 43ms i vår data, visar dock på att om det finns något bot som deltagit så är den inte särskilt sofistikerad. Alternativt skulle en långsamma- re bot kunna vara skriven med flit för att inte dra till sig alltför stor uppmärksamhet.

IP-adresserna går inte att använda och samtidigt vara säker på att det är sam- ma användare som utfört försöket, då de inte är unika för en användare. Flera

20

(28)

KAPITEL 5. DISKUSSION OCH SLUTSATSER 21

IP-adresser i datan tillhör exempelvis mobila master eller större arbetsplatser med gemensam IP-adress utåt för nätverket. Detta försvårar arbetet att klassificera da- tan då en viktig markör för en simpel bot är att fler försök från samma dator görs än vad än människa rimligtvis borde orka med.

Det är subjektivt att avgöra från inlärningskurvorna om tävlingstiderna sjun- ker till en nivå som är omänsklig. Att andelen rätta svar stabiliseras på 30 % är märkvärdigt då tävlingstiderna visar att en mycket liten andel tar god tid på sig att svara på frågorna, vilket indikerar att de inte läser frågorna. Ifall frågorna och sva- ren slumpas korrekt bör det istället ligga på 25 % och det går inte att med säkerhet säga varför värdet på antal rätta svar blir över det förväntade. Något som går att utläsa från inlärningskurvorna är att deltagare i början tar god tid på sig att be- svara frågorna, för att senare svara slumpmässigt och snabbt. En möjlig förklaring till detta beteende diskuteras i nästa punkt.

5.2 Problematisk design av tävlingen

Själva designen av tävlingen kan ha påverkat användarnas svarsmönster. Då frå- gorna till kampanjerna inte alltid baserades på videon blev det ett gissningsspel att svara på dem ifall man inte aktivt letade efter svaren. Faktorer som ren lathet kan därför göra att en användare väljer att försöka svara på frågorna snabbt utan hän- syn till att läsa frågorna tydligt och sedan upprepar detta några gånger tills man antingen ger upp eller får alla rätt. Detta beteende med flera snabba försök inom en kort tidsperiod är likt det som förväntas från ett botprogram, vilket försvårar arbetet att hitta bottar eftersom deras datapunkter blir en i mängden istället för att vara anomalier. Att det största priset delas ut till den som varje dag är snabbast av alla uppmuntrar även det ett bot-liknande beteende, eftersom om man svarar med en ärlig metodik inte kommer att ha en chans att vinna.

5.3 Diskussion av resultatet från GMM

Klustringens resultat påverkades av extremvärden även efter bortfiltreringen av de längsta tävlingstider. Att sedan standardisera datan minskade denna påverkan mar- kant och ledde till en bättre klusterfördelning. GMMs resultat kan ges av olika lokala maximum, vi valde att inte ta någon större hänsyn till det utöver att klustra flera gånger eftersom resultatens användbarhet tidigt insågs vara marginell. Variationer- na mellan olika körningar var dessutom låg.

Eftersom en klustringsalgoritm inte ger någon information om vad som är rätt svar, utan enbart grupperar data efter liknande egenskaper, måste resultatet tolkas mot antaganden avseende karaktärsdrag för bottar. Utifrån de antagandena som gjordes i metodavsnittet kring botlikt beteende skulle vi för GMM med tre kluster klassificera kluster 0 som mest människolik med sin höga genomsnittliga tävlings-

(29)

KAPITEL 5. DISKUSSION OCH SLUTSATSER 22

tid och låga antal återkommande IP adresser. Kluster 1 skulle kunna klassificeras som en bot då den uppvisar mycket omänskligt beteende med sitt höga antal åter- kommande IP adresser och låga tävlingstid. Medelvärdena i kluster 2 kan betraktas både som bot-liknande eller människolika. Enligt dessa klassificeringar skulle samt- liga kluster dock innehålla stora mängder falska positiver och falska negativa. Vid GMM med sex kluster påträffades samma problem trots det större antalet kluster.

Målsättningen med oövervakad maskininlärning, att resultatet ska ge databe- handlaren möjlighet att dra nya slutsatser, anses inte ha uppfyllts. Detta eftersom att utifrån antaganden om bottar beteende bestämma heuristiska regler, som att exempelvis alla som svarar på mindre än 200ms är en bot, skulle sannolikt ge bättre resultat än något som går att utröna från en analys av vår tillämpning av GMM.

5.4 Diskussion av resultatet från K-medelvärde

Utifrån de antagandena som gjordes i metodavsnittet kring bottars beteende skulle vi välja att klassificera kluster ett, två och tre i figur 3 som bottar. Bland des- sa kluster går det dock ändå att hitta tävlingsförsök som tog över tolv sekunder, IP-adresser som varit med under 100 gånger och tidsintervall med bara ett enda deltagande. Dessa är alla särdrag som inte är typiska för bottar, klassificeringen skulle alltså sannolikt ge problem med falska positiver. På samma sätt går det att bland de övriga klustren (noll, fyra och fem) att hitta datapunkter som skulle kunna betraktas som bottar.

Initialiseringen av centroiderna kan ha påverkat slutresultatet då man riskerar att fastna i lokala maxima. För att motverka denna felkälla upprepades klustringen flertalet gånger, vilket visade att skillnaden mellan olika körningar var låg. Målsätt- ningen med att kunna dra nya slutsatser efter tillämpningen av maskininlärnings- algoritmen anses precis som för GMM inte ha uppfyllts för K-medelvärde.

5.5 Rekommendationer till ändringar av tävlingens design

I detta avsnitt diskuteras potentiella ändringar av tävlingens design som skulle kun- na genomföras för att både minska mängden mänskliga deltagare som efterliknar ett botliknande beteende och för att komplicera skapandeprocessen av fungerande bottar. Detta skulle minska mängden bottar som deltar och dessutom underlätta identifierandet av bottar eftersom de kommer bli tydligare anomalier istället för att uppfattas som en i mängden.

Till att börja med rekommenderas företaget att lägga in en maxgräns för hur många gånger, exempelvis tio, som samma användare kan delta i tävlingen varje dag. Detta skulle då kunna baseras på cookies och även om mer sofistikerade del- tagare kan rensa cookies för att komma runt detta så skulle denna enkla åtgärd

(30)

KAPITEL 5. DISKUSSION OCH SLUTSATSER 23

sannolikt leda till att personer som deltar betydligt mer än tio gånger per dag skul- le bli mer sällsynta. För att ytterligare minska antalet personer som deltar många gånger kan man även kräva att konsumenter tittar på hela filmen igen ifall de vill svara på frågorna fler gånger, istället för att låta de svara på frågorna om och om igen.

Kraven på bottars komplexitet skulle kunna höjas ytterligare genom att imple- mentera en fördröjning mellan att frågan dyker upp och att svarsalternativen visas.

Ett straff skulle då kunna införas för deltagare som klickar innan svarsalternativen dykt upp, exempelvis i form av att fördröjningen tills svarsalternativen visas utökas för varje för tidigt klick. Ifall längden på fördröjningen tills svarsalternativen visas även slumpades skulle bottar få stora svårigheter. För att undvika att göra tävling- en orättvis bör den sammanlagda fördröjningen för de tre frågorna dock alltid vara densamma, men att fördelningen är slumpmässig. För att undvika att de simplaste klickbottarna lyckas skulle en regel även kunna införas att det rätta svaret aldrig kan dyka upp på samma plats på skärmen (det vill säga samma knapp) på samtliga tre frågor. Botten tvingas då flytta muspekaren mellan olika knappar

För att minska incitamentet för ”riktiga” användare att efterlikna ett botlik- nande beteende kan även vinstutdelningsmetoden ändras till att vinnarna slumpas bland alla som har svarat alla rätt, istället för att det är de som svarade alla rätt snabbast som vinner. Enligt lagar om lotteri och tävlingar måste man dock ha ett prestationsmoment efter slumpmomentet för att det ska klassas som en tävling och inte ett lotteri (Lotteriinspektionen, 2016). Eftersom företaget Adoveo inte innehar en lotterilicens måste de därför ha ett slutligt prestationsmoment. Ifall man exem- pelvis ska dela ut tio priser kan detta då förslagsvis göras genom att man bland de som har svarat alla rätt slumpmässigt väljer ut tio grupper med tre personer i varje.

För att sen implementera ett prestationsmoment kan den personen i varje grupp som svarade alla rätt snabbast väljas som vinnare.

5.6 Förslag på andra attribut för oövervakad inlärning

För att potentiellt kunna dra slutsatser från datan med K-medelvärde behövs mer attribut som är linjära och unika för varje deltagarförsök. Vid framtida undersök- ningar kan man även prova att använda oövervakade algoritmer som fungerar med kategoriska data, exempelvis enhetsspecifikdata för användaren.

En datakälla som ännu är obeprövad inom oövervakad maskininlärning men an- vänts av företag för att estimera antalet bottar inom reklambranschen är musrörelse- och knappeventsloggande (Neal et al., 2015). För mobila enheter kan man också log- ga information från gyron, accelerometern och skärmtryckningar. Dessa kan samlas in med loggningsfunktioner som implementeras på reklamsidan. Bottar kommer då sannolikt kunna detekteras genom att musen antingen inte rör på sig alls, eller

(31)

KAPITEL 5. DISKUSSION OCH SLUTSATSER 24

genom att den ett fåtal gånger rör sig i helt raka linjer mellan knapparna. Ett kom- plement till detta är att även börja logga vilka knappar som trycks på i tävlingarna, genom att exempelvis benämna knappar 1, 2, 3 och 4. Troligtvis kommer många bottar trycka enligt samma mönster varje gång de deltar, vilket då gör de lätta att identifiera.

För att komma runt att flera deltagare har samma IP-adress kan man använda sig av cookies, vilket dock går att ställa in så att de inte lagras. Ett annat alternativ är browser fingerprinting, där man med JavaScript samlar information från webblä- sarinställningarna för att kunna identifiera en deltagare (Flood and Karlsson, 2012).

Det ger dock en relativt stor overhead och är mindre effektivt på mobila enheter, vilket gör att det kan visa sig svårt att identifiera enskilda enheter för Adoveo.

5.7 Affärsnytta med att detektera bottar

I detta avsnitt diskuteras utifrån Adoveos perspektiv vilken affärsnytta som skulle ges av att man inkorporerar en teknik för att detektera bottar i sin tjänst. Analysen görs utifrån tre olika perspektiv; konsumenterna som tittar på reklamen och deltar i tävlingarna, annonsörerna som ställer ut själva reklamen och konkurrenter till Adoveo.

5.7.1 Affärsnytta gentemot konsumenter

För konsumenterna är en motverkning av bottar viktigt för att integriteten hos täv- lingarna ska säkerställas. Om det blir allmänt känt att bottar utnyttjar systemet för att vinna alla de större priserna kommer intresset för att delta snabbt att sjun- ka, vilket är starkt negativt för Adoveos värdeerbjudande. På samma sätt skulle ett säkrare system för att hindra fuskare istället kunna öka deltagandet eftersom konsumenter då kommer veta att de har en större möjlighet att vinna värdefulla priser. Detta skulle även kunna uppmuntra ärliga tävlingsförsök där man faktiskt försöker svara på frågorna, istället för att konsumenter tänker att de måste anta ett botliknande beteende för att ha en chans att vinna. Ifall Adoveo skulle göra tillägg i sin tjänst för att motverka bottar är det samtidigt viktigt att det görs på ett icke påträngande sätt för att undvika att de riktiga konsumenterna upplever dessa mo- ment som störande. Annars riskerar man att åtgärdernas negativa konsekvenser för användarupplevelsen överväger nyttan och att konsumenter därmed istället skräms bort trots att man har tävlingar som är säkra mot bottar. Det är viktigt att ha i åtanke att man i slutändan fortfarande bedriver marknadsföringskampanjer och att själva marknadsföringseffekten bör prioriteras framför att ha helt botsäkrade tävlingar.

(32)

KAPITEL 5. DISKUSSION OCH SLUTSATSER 25

5.7.2 Affärsnytta gentemot annonsörer

Annonsörerna är givetvis intresserade av att deras reklam ska nå så många som möj- ligt. Eftersom en ökad affärsnytta gentemot konsumenter innebär att fler kommer vilja delta i reklamtävlingarna så kan detta därför även ses som en ökad affärsnytta gentemot annonsörer. Genom botsäkra tävlingar kan annonsörer dessutom vara säk- ra på att deras priser kommer gå till riktiga konsumenter och därigenom sannolikt också kommer spridas ut till ett större antal personer istället för att koncentreras till ett fåtal botanvändare. Följaktligen skulle den virala marknadsföringseffekten styrkas eftersom det då finns fler vinnande konsumenter som kommer bidra till en

”word of mouth” spridning (Lovett et al., 2013). För Adoveo skulle dessa fördelar i förlängningen leda till att man kan ta en ökad premie vid försäljningen av sin tjänst på grund av mervärdet av botsäkrade tävlingar samt den ökade differentieringen som det ger. Lönsamheten för deras verksamhet skulle alltså kunna öka.

5.7.3 Affärsnytta gentemot konkurrenter

Det finns tre huvudsakliga konkurrensstrategier; kostnadsledarskap, differentiering och fokusering (Porter, 2008). Adoveos konkurrenskraft härstammar från den andra av dessa, nämligen differentiering. De säljer en unik och innovativ tjänst som är i teknologisk framkant, som ingen annan på marknaden tillhandahåller. Konkurren- ter finns därmed främst i form av substitut, vilket exempelvis kan vara all annan slags reklam, men även i form av nya aktörer som försöker bryta sig in på Adoveos marknadssegment.

Affärsnyttan av botsäkrade tävlingar gentemot substitutprodukter kommer från att man gör sin produkt ännu unikare och utökar mervärdet som redan finns. För- säljningspitchen mot annonsörer blir därmed starkare eftersom man kan visa upp en större originalitet och samtidigt som man eliminerar en av sina svagheter så om- vandlar man det till något som istället är en styrka. Detta är också en svaghet som många av substituttjänsterna har, eftersom bottar är något som påverkar all slags digital marknadsföring och riskerar att dränera annonsörers reklamkassor genom att ge upphov till falska klick. Det speciella med Adoveos tävlingselement är att det ger tillgång till fler parametrar, vilket gör att man enklare kan detektera och förkasta bottarnas klick.

Affärsnyttan gentemot nya aktörer som aspirerar att bli verksamma inom samma nisch som Adoveo ges framför allt i form av ökade inträdesbarriärer. Att skapa botsäkra tävlingar kommer kräva en hel del resurser och kommer i synnerhet om denna nisch växer allt snabbare bli en nödvändighet. Detta eftersom ifall det finns så pass många av dessa kampanjer med tävlingselement att botskapare dagligen kan vinna priser för tiotusentals kronor, så kommer incitamentet vara så pass stort att tävlingarna i allt större utsträckning skulle börja domineras av bottar. Nya aktörer kommer därmed behöva spendera tid och pengar på det innan de i detta

(33)

KAPITEL 5. DISKUSSION OCH SLUTSATSER 26

avseende kan börja ses som en likvärdig konkurrent. Ifall konkurrenters tävlingar inte är botsäkrade kommer Adoveo kunna fortsätta konkurrera med differentiering även inom sin nisch, vilket möjliggör ökade priser samt gör att de uppfattas som det självklara valet. Oavsett hur nya aktörer väljer att hantera detta så kommer Adoveo ha cementerat sitt ”first mover advantage” (Lieberman and Montgomery, 1988) och produktledarskap genom att botsäkra sina tävlingar redan nu i ett tidigt skede.

(34)

Litteraturförteckning

M. Amer and M. Goldstein. Nearest-neighbor and clustering based anomaly de- tection algorithms for rapidminer. In Proc. of the 3rd RapidMiner Community Meeting and Conference (RCOMM 2012), pages 1–12, 2012.

P. Berkhin. Grouping multidimensional data. Recent Advances in Clustering, pages 25–71, 2006.

N. Bostrom and E. Yudkowsky. The ethics of artificial intelligence. The Cambridge Handbook of Artificial Intelligence, pages 316–334, 2014.

M. M.-T. Chiang and B. Mirkin. Intelligent choice of the number of clusters in k-means clustering: an experimental study with different cluster spreads. Journal of classification, 27(1):3–40, 2010.

N. Daswani, C. Mysen, V. Rao, S. Weis, K. Gharachorloo, and S. Ghosemajumder.

Online advertising fraud. Crimeware: understanding new attacks and defenses, 40(2):1–28, 2008.

E. Flood and J. Karlsson. Browser fingerprinting. 2012.

M. Hasanlou and F. Samadzadegan. Comparative study of intrinsic dimensionality estimation and dimension reduction techniques on hyperspectral images using k-nn classifier. IEEE Geoscience and Remote Sensing Letters, 9(6):1046–1050, 2012.

IRM. Marketing Investment Sweden 2015. http://www.irm-media.se/

in-english/marketing-investment-sweden-2015, 2015. Hämtad 20/2-2017.

M. B. Lieberman and D. B. Montgomery. First-mover advantages. Strategic mana- gement journal, 9(S1):41–58, 1988.

Lotteriinspektionen. Skillnaden mellan lotteri och tävling. https://www.

lotteriinspektionen.se/globalassets/dokument/informationsdokument/

skillnaden-mellan-lotteri-och-tavling.pdf, 2016. Hämtad 10/4-2017.

M. J. Lovett, R. Peres, and R. Shachar. On brands and word of mouth. Journal of Marketing Research, 50(4):427–444, 2013.

27

(35)

LITTERATURFÖRTECKNING 28

I. G. Maglogiannis. Emerging artificial intelligence applications in computer engi- neering: real word AI systems with applications in eHealth, HCI, information retrieval and pervasive technologies, volume 160. Ios Press, 2007.

G. W. Milligan and M. C. Cooper. A study of standardization of variables in cluster analysis. Journal of classification, 5(2):181–204, 1988.

T. Mitchell. Machine Learning. McGraw Hill, 1997.

I. B. Mohamad and D. Usman. Standardization and its effects on k-means clustering algorithm. Research Journal of Applied Sciences, Engineering and Technology, 6 (17):3299–3303, 2013.

A. Neal, S. Kouwenhoven, and O. SA. Quantifying online advertising fraud: Ad-click bots vs humans. Technical report, tech. rep., Oxford Bio Chronometrics, 2015.

R. J. Oentaryo, E.-P. Lim, M. Finegold, D. Lo, F. Zhu, C. Phua, E.-Y. Cheu, G.-E.

Yap, K. Sim, M. N. Nguyen, et al. Detecting click fraud in online advertising:

a data mining approach. Journal of Machine Learning Research, 15(1):99–140, 2014.

F. Pedregosa, G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, M. Blondel, P. Prettenhofer, R. Weiss, V. Dubourg, et al. Scikit-learn: Machine learning in python. Journal of Machine Learning Research, 12(Oct):2825–2830, 2011.

M. E. Porter. Competitive strategy: Techniques for analyzing industries and compe- titors. Simon and Schuster, 2008.

A. D. Pozzolo. Adaptive machine learning for credit card fraud detection. PhD thesis, Université libre de Bruxelles Computer Science Department, 2015.

PWC. IAB internet advertising revenue report: 2015 full year re- sults. http://www.iab.com/wp-content/uploads/2016/04/IAB_Internet_

Advertising_Revenue_Report_FY_2015-final.pdf, 2015. Hämtad 20/2-2017.

F. E. Ritter and L. J. Schooler. The learning curve. International encyclopedia of the social and behavioral sciences, 13:8602–8605, 2001.

P. J. Rousseeuw. Silhouettes: a graphical aid to the interpretation and validation of cluster analysis. Journal of computational and applied mathematics, 20:53–65, 1987.

A. L. Samuel. Some studies in machine learning using the game of checkers. IBM Journal of research and development, 3(3):210–229, 1959.

Scikit-Learn. Gaussian mixture models. http://scikit-learn.org/stable/

modules/mixture.html., 2016. Hämtad 2017-02-28.

(36)

www.kth.se

References

Related documents

Det är således angeläget att undersöka vilket stöd personalen är i behov av, och på vilket sätt stöd, till personal med fokus på palliativ vård till äldre personer vid vård-

SVERAK och dess medlemmar har under denna 10 årsperiod tillskjutit nära 10 mnkr i syfte att tillskapa ett adekvat och aktuellt ID-register till gagn för katten och dess ägare i

Regeringen anser att EU, genom insatsen, bör bidra med ytterligare stöd till rättssektorn i Irak och för att öka respekten för de mänskliga rättigheterna och

Regeringen uppdrar åt Transportstyrelsen att utreda behovet av trafik- säkerhetshöjande åtgärder för gasdrivna bussar och föreslå åtgärder som kan vidtas för en

(Undantag finns dock: Tage A urell vill räkna Kinck som »nordisk novellkonsts ypperste».) För svenska läsare är Beyers monografi emellertid inte enbart

ståelse för psykoanalysen, är han också särskilt sysselsatt med striden mellan ande och natur i människans väsen, dessa krafter, som med hans egna ord alltid

Olika typer av budskap kommer att testas som Hultsfreds kommun kan använda för att visa och visualisera energianvändningen i syfte att minska energianvändningen tillsammans

RSMH, Riksförbundet för social och mental hälsa, som företräder personer med bland annat bipolär sjukdom och psykossjukdom, har tvingats stänga sina omkring 100 lokala