{"id":35274,"date":"2019-10-31T22:03:22","date_gmt":"2019-10-31T19:03:22","guid":{"rendered":"https:\/\/prohoster.info\/blog\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk\/"},"modified":"2019-10-31T22:03:22","modified_gmt":"2019-10-31T19:03:22","slug":"razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk","title":{"rendered":"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/8fe88b798a64e2ed8e77dbbc89558827.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVi p\u00e5minner om att Elastic Stack bygger p\u00e5 den icke-relationella databasen Elasticsearch, webbgr\u00e4nssnittet Kibana och datainsamlingsverktyg (det mest k\u00e4nda \u00e4r Logstash, olika Beats, APM och andra). En av de trevliga till\u00e4ggarna till hela denna produktstack \u00e4r dataanalys med hj\u00e4lp av maskininl\u00e4rningsalgoritmer. I artikeln unders\u00f6ker vi vad dessa algoritmer inneb\u00e4r. Vi ber er att l\u00e4sa vidare.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nMaskininl\u00e4rning \u00e4r en betald funktion i den kvalitetsfria Elastic Stack och ing\u00e5r i X-Pack. F\u00f6r att b\u00f6rja anv\u00e4nda den beh\u00f6ver man bara aktivera en 30-dagars provversion efter installationen. Efter att provperioden har l\u00f6pt ut kan man beg\u00e4ra st\u00f6d f\u00f6r f\u00f6rl\u00e4ngning eller k\u00f6pa en prenumeration. Kostnaden f\u00f6r prenumerationen baseras inte p\u00e5 datavolym, utan p\u00e5 antalet anv\u00e4nda noder. Nej, datavolymen p\u00e5verkar sj\u00e4lvklart antalet noder som beh\u00f6vs, men denna licensieringsmetod \u00e4r mer m\u00e4nniskov\u00e4nlig i f\u00f6rh\u00e5llande till f\u00f6retagets budget. Om h\u00f6g prestanda inte \u00e4r n\u00f6dv\u00e4ndig kan man spara pengar.<\/p>\n<p>ML i Elastic Stack \u00e4r skrivet i C++ och fungerar utanf\u00f6r JVM, d\u00e4r sj\u00e4lva Elasticsearch k\u00f6rs. Det vill s\u00e4ga att processen (den kallas f\u00f6r autodetect) konsumerar allt som JVM inte tar hand om. P\u00e5 demov\u00e4ggen \u00e4r det inte s\u00e5 kritiskt, men i produktionsmilj\u00f6 \u00e4r det viktigt att avs\u00e4tta separata noder f\u00f6r ML-uppgifter.<\/p>\n<p>Maskininl\u00e4rningsalgoritmer delas in i tv\u00e5 kategorier - <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9E%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81_%D1%83%D1%87%D0%B8%D1%82%D0%B5%D0%BB%D0%B5%D0%BC\">med l\u00e4rare<\/a><\/noindex> och <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9E%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B1%D0%B5%D0%B7_%D1%83%D1%87%D0%B8%D1%82%D0%B5%D0%BB%D1%8F\">utan l\u00e4rare<\/a><\/noindex>. I Elastic Stack tillh\u00f6r algoritmen kategorin \"utan l\u00e4rare\". Enligt <noindex><a rel=\"nofollow\" href=\"http:\/\/www.ijmlc.org\/papers\/398-LC018.pdf\">denna l\u00e4nk<\/a><\/noindex> kan man se den matematiska grunden f\u00f6r maskininl\u00e4rningsalgoritmer.<\/p>\n<p>F\u00f6r att utf\u00f6ra analys anv\u00e4nder maskininl\u00e4rningsalgoritmen data som lagras i Elasticsearch-index. Uppdrag f\u00f6r analys kan skapas b\u00e5de fr\u00e5n Kibana-gr\u00e4nssnittet och via API. Om man g\u00f6r detta via Kibana \u00e4r vissa saker inte n\u00f6dv\u00e4ndiga att veta. Till exempel, ytterligare index som algoritmen anv\u00e4nder under arbetets g\u00e5ng. <\/p>\n<p><b class=\"spoiler_title\">Ytterligare index som anv\u00e4nds i analysprocessen<\/b>.ml-state - information om statistiska modeller (analysinst\u00e4llningar);<br \/>\n.ml-anomalies-* - resultat fr\u00e5n ML-algoritmer;<br \/>\n.ml-notifications - inst\u00e4llningar f\u00f6r aviseringar om analysresultat.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/a6a67b0c05c6650a158d99010c2872f1.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDatabasen i Elasticsearch best\u00e5r av index och de dokument som lagras i dem. Om man j\u00e4mf\u00f6r med en relationsdatabas kan man likna ett index vid databasens schema och ett dokument vid en post i en tabell. Denna j\u00e4mf\u00f6relse \u00e4r villkorlig och ges f\u00f6r att f\u00f6renkla f\u00f6rst\u00e5elsen av det f\u00f6ljande materialet f\u00f6r dem som bara h\u00f6rt talas om Elasticsearch.<\/p>\n<p>Genom API:et finns samma funktionalitet tillg\u00e4nglig som via webbgr\u00e4nssnittet, s\u00e5 f\u00f6r tydlighetens skull och f\u00f6r att f\u00f6rst\u00e5 koncepten kommer vi att visa hur man konfigurerar via Kibana. I menyn till v\u00e4nster finns en sektion f\u00f6r maskininl\u00e4rning d\u00e4r man kan skapa en ny uppgift (Job). I Kibana-gr\u00e4nssnittet ser detta ut som p\u00e5 bilden nedan. Nu kommer vi att g\u00e5 igenom varje typ av uppgift och visa vilken analys som kan konstrueras h\u00e4r.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/c0c0bede29fbe38a72270d2128926122.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSingle Metric \u2014 analys av en enda m\u00e4tning, Multi Metric \u2014 analys av tv\u00e5 eller fler m\u00e4tningar. I b\u00e5da fallen analyseras varje m\u00e4tning i en isolerad milj\u00f6, det vill s\u00e4ga att algoritmen inte tar h\u00e4nsyn till beteendet hos de parallellt analyserade m\u00e4tningarna, vilket kan ha framkommit i fallet med Multi Metric. F\u00f6r att g\u00f6ra ber\u00e4kningen med h\u00e4nsyn till korrelationen mellan olika m\u00e4tningar kan man till\u00e4mpa Population-analys. Advanced \u00e4r en finjustering av algoritmerna med ytterligare alternativ f\u00f6r specifika uppgifter. <\/p>\n<h2>Single Metric<\/h2>\n<p>\nAnalys av f\u00f6r\u00e4ndringar i en enda m\u00e4tning \u00e4r det enklaste man kan g\u00f6ra h\u00e4r. Efter att ha klickat p\u00e5 Skapa uppgift kommer algoritmen att s\u00f6ka efter avvikelser.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/d84d29539c3b97be7a15aac8708bc3be.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nI f\u00e4ltet <i>Aggregation<\/i> kan man v\u00e4lja tillv\u00e4gag\u00e5ngss\u00e4tt f\u00f6r att s\u00f6ka efter avvikelser. Till exempel, n\u00e4r <i>Min<\/i> v\u00e4rden som \u00e4r l\u00e4gre \u00e4n typiska kommer att anses som avvikande. Det finns <i>Max, Hign Mean, Low, Mean, Distinct<\/i> och andra. Beskrivning av alla funktioner kan ses <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/current\/ml-functions.html\">via l\u00e4nken<\/a><\/noindex>.<\/p>\n<p>I f\u00e4ltet <i>Field<\/i> anger numeriskt f\u00e4lt i dokumentet som vi ska analysera.<\/p>\n<p>I f\u00e4ltet <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/blog\/explaining-the-bucket-span-in-machine-learning-for-elasticsearch\"><i>Bucket span<\/i><\/a><\/noindex> \u2014 granulariteten av intervallen p\u00e5 tidslinjen som analysen kommer att g\u00f6ras p\u00e5. Man kan lita p\u00e5 automatiseringen eller v\u00e4lja manuellt. P\u00e5 bilden nedan ges ett exempel p\u00e5 f\u00f6r l\u00e5g granularitet \u2014 du kan missa en avvikelse. Med denna inst\u00e4llning kan man justera algoritmens k\u00e4nslighet f\u00f6r avvikelser.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/a2808c0b451703a50d74f7737332ea8b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVaraktigheten av de insamlade data \u00e4r en nyckelfaktor som p\u00e5verkar effektiviteten i analysen. Vid analysen best\u00e4mmer algoritmen \u00e5terkommande intervall, ber\u00e4knar konfidensintervall (grundlinjer) och identifierar avvikelser \u2014 ovanliga avvikelser fr\u00e5n normalt beteende hos m\u00e4tningen. Bara som exempel:<\/p>\n<p>Grundlinjer f\u00f6r ett litet datasegment:<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/2a3cbeaa8cf08a2a5dec87071be27db8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nN\u00e4r algoritmen har n\u00e5got att l\u00e4ra sig \u2014 ser grundlinjerna ut s\u00e5 h\u00e4r:<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/13d636ab405a85d89e2ae4ebfe8bb6bd.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEfter att uppdraget har k\u00f6rts, identifierar algoritmen avvikande anomalier fr\u00e5n normen och rankar dem efter sannolikheten f\u00f6r anomalier (f\u00e4rgen p\u00e5 motsvarande etikett anges inom parentes):<\/p>\n<p>Varning (bl\u00e5): mindre \u00e4n 25<br \/>\nMindre (gul): 25-50<br \/>\nSt\u00f6rre (orange): 50-75<br \/>\nKritiskt (r\u00f6d): 75-100<\/p>\n<p>I diagrammet nedan visas ett exempel p\u00e5 funna anomalier.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/ed87198f99f0cc93ffc16ce458054a9f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nH\u00e4r syns siffran 94, som anger sannolikheten f\u00f6r anomalier. Det \u00e4r uppenbart att eftersom v\u00e4rdet \u00e4r n\u00e4ra 100, s\u00e5 \u00e4r detta en anomali. I kolumnen under diagrammet anges en f\u00f6rsvinnande liten sannolikhet p\u00e5 0,000063634% att detta v\u00e4rde f\u00f6rekommer.<\/p>\n<p>F\u00f6rutom att s\u00f6ka efter anomalier i Kibana kan man ocks\u00e5 initiera prognoser. Detta g\u00f6rs enkelt och fr\u00e5n samma vy med anomalier \u2014 knappen <i>Prognos<\/i> i det \u00f6vre h\u00f6gra h\u00f6rnet.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/73429a947befb8834972ebbfe48c2d48.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPrognosen str\u00e4cker sig h\u00f6gst 8 veckor fram\u00e5t. \u00c4ven om man verkligen \u00f6nskar \u2014 mer \u00e4n s\u00e5 g\u00e5r inte enligt design.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/7622608e4b952be741be486f89d1bc43.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nI vissa situationer kan prognosen vara mycket anv\u00e4ndbar, exempelvis n\u00e4r man \u00f6vervakar anv\u00e4ndarlast p\u00e5 infrastrukturen.<\/p>\n<h2>Multi Metric<\/h2>\n<p>\nVi g\u00e5r vidare till den n\u00e4sta m\u00f6jligheten av ML i Elastic Stack \u2014 analys av flera metrik i en enda sats. Men det betyder inte att en metrik kommer att analyseras i f\u00f6rh\u00e5llande till en annan. Det \u00e4r samma sak som Single Metric, men med flera metrik p\u00e5 en sk\u00e4rm f\u00f6r att underl\u00e4tta j\u00e4mf\u00f6relse av p\u00e5verkan av en p\u00e5 den andra. Vi kommer att tala om analysen av beroendet mellan en metrik och en annan i delen Population.<\/p>\n<p>Efter att ha klickat p\u00e5 rutan med Multi Metric kommer ett f\u00f6nster med inst\u00e4llningar att dyka upp. Vi kommer att stanna vid dem mer i detalj.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/eaa06c8b24b393209ef1fb5ba9cfbd62.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nF\u00f6rst m\u00e5ste du v\u00e4lja f\u00e4lten f\u00f6r analys och aggregering av data p\u00e5 dessa. Aggregeringsalternativen h\u00e4r \u00e4r desamma som f\u00f6r Single Metric (<i>Max, Hign Mean, Low, Mean, Distinct<\/i> och andra). D\u00e4refter kan data vid behov delas upp enligt ett av f\u00e4lten (f\u00e4ltet <i>Split Data<\/i>). I exemplet delade vi upp detta efter f\u00e4ltet <i>OriginAirportID<\/i>. Observera att diagrammet f\u00f6r metrik nu visas som en m\u00e4ngd olika diagram till h\u00f6ger.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/746a91b28a010a037c66a569fcf47a1b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nF\u00e4ltet <i>Key Fields (Influencers)<\/i> p\u00e5verkar direkt de funna anomalierna. Som standard kommer det alltid att finnas minst ett v\u00e4rde h\u00e4r, men du kan l\u00e4gga till fler. Algoritmen kommer att ta h\u00e4nsyn till p\u00e5verkan av dessa f\u00e4lt vid analysen och visa de mest \"inflytelserika\" v\u00e4rdena.<\/p>\n<p>Efter att ha startat kommer gr\u00e4nssnittet i Kibana att se ut ungef\u00e4r s\u00e5 h\u00e4r.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/c6efd8f4815ad150b046c82780c36574.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDetta \u00e4r en s\u00e5 kallad v\u00e4rmekarta \u00f6ver anomalier f\u00f6r varje v\u00e4rde av f\u00e4ltet. <i>OriginAirportID<\/i>, som vi angav i <i>Split Data<\/i>. Precis som i fallet med Single Metric indikerar f\u00e4rgen niv\u00e5n av avvikelse. En liknande analys \u00e4r praktisk att g\u00f6ra, till exempel f\u00f6r arbetsstationer f\u00f6r att sp\u00e5ra de med misst\u00e4nkt m\u00e5nga inloggningar osv. Vi har redan skrivit <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/galssoftware\/blog\/447522\/\">om misst\u00e4nksamma h\u00e4ndelser i EventLog Windows<\/a><\/noindex>, som ocks\u00e5 kan samlas in och analyseras h\u00e4r.<\/p>\n<p>Under v\u00e4rmekartan finns en lista \u00f6ver avvikelser, och man kan g\u00e5 till varje enskild avvikelse f\u00f6r en detaljerad analys.<\/p>\n<h2>Population<\/h2>\n<p>\nF\u00f6r att s\u00f6ka efter avvikelser mellan correlationer mellan olika metrik i Elastic Stack finns det en specialiserad Population-analys. Just med hj\u00e4lp av den kan man leta efter avvikande v\u00e4rden i prestandan hos en server i j\u00e4mf\u00f6relse med andra, till exempel vid en \u00f6kning av antalet f\u00f6rfr\u00e5gningar till det m\u00e5l systemet.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/00542d57f2a937d424b2db5e692a6289.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nI denna illustration anges i Population-f\u00e4ltet det v\u00e4rde som de analyserade metrikerna kommer att relatera till. I detta fall \u00e4r det namn p\u00e5 processen. Som resultat kommer vi att se hur CPU-belastningen hos varje process p\u00e5verkade varandra.<\/p>\n<p>Observera att grafen med de analyserade uppgifterna skiljer sig fr\u00e5n fallen med Single Metric och Multi Metric. Detta gjordes i Kibana av design f\u00f6r att f\u00f6rb\u00e4ttra uppfattningen av distributionen av v\u00e4rdena i de analyserade uppgifterna.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/4af704044bf544ca6cd221404288e6c4.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nFr\u00e5n grafen kan man se att processen <i>stress<\/i> (f\u00f6r \u00f6vrigt skapad av ett specialverktyg) p\u00e5 servern <i>poipu<\/i>, som p\u00e5verkade (eller var inflytelserik) i uppkomsten av denna avvikelse.<\/p>\n<h2>Avancerad<\/h2>\n<p>\nAnalys med finjustering. Vid avancerad analys i Kibana visas ytterligare inst\u00e4llningar. Efter att ha klickat p\u00e5 skapande-menyn p\u00e5 rutan Avancerad visas en s\u00e5dan h\u00e4r dialogruta med flikar. Fliken <i>Job Details<\/i> har medvetet utel\u00e4mnats, d\u00e4r finns grundl\u00e4ggande inst\u00e4llningar som inte r\u00f6r sj\u00e4lva analysinst\u00e4llningen.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/abe7941ad56acf3ee7ab992fa5fe7b94.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nI <i>summary_count_field_name<\/i> kan valfritt ange namnet p\u00e5 f\u00e4ltet i dokumenten som inneh\u00e5ller aggregerade v\u00e4rden. I detta exempel \u2014 antalet h\u00e4ndelser per minut. I <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/current\/ml-configuring-categories.html\"><i>categorization_field_name<\/i><\/a><\/noindex> anges namnet p\u00e5 f\u00e4ltet i dokumentet som inneh\u00e5ller ett visst variabelv\u00e4rde. Med m\u00f6nstrets hj\u00e4lp kan detta f\u00e4lt anv\u00e4ndas f\u00f6r att dela upp de analyserade uppgifterna i delm\u00e4ngder. Observera knappen <i>Add detector<\/i> p\u00e5 f\u00f6reg\u00e5ende illustration. Nedan resultatet av att klicka p\u00e5 denna knapp.<\/p>\n<p><img decoding=\"async\" alt=\"F\u00f6rst\u00e5else av Maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK)\" src=\"\/wp-content\/uploads\/2019\/06\/cce9a6401d6baa72c68b8e0c3c6ab209.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nH\u00e4r \u00e4r ett ytterligare inst\u00e4llningsblock f\u00f6r att anpassa anomalidetektorn f\u00f6r en specifik uppgift. Konkreta anv\u00e4ndningsfall (s\u00e4rskilt inom s\u00e4kerhet) planerar vi att ta upp i kommande artiklar. Till exempel, <noindex><a rel=\"nofollow\" href=\"https:\/\/discuss.elastic.co\/t\/dec-4th-2018-en-ml-rarity-analysis-with-machine-learning\/158979\">titta p\u00e5<\/a><\/noindex> ett av de behandlade fallen. Det handlar om att hitta s\u00e4llan f\u00f6rekommande v\u00e4rden och realiseras <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/7.1\/ml-rare-functions.html\">med funktionen rare<\/a><\/noindex>.<\/p>\n<p>I f\u00e4ltet <i>function<\/i> kan du v\u00e4lja en specifik funktion f\u00f6r att s\u00f6ka efter anomalier. F\u00f6rutom <i>rare<\/i>, finns det ett par andra intressanta funktioner \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/7.1\/ml-time-functions.html\"><i>time_of_day<\/i> och <i>time_of_week<\/i><\/a><\/noindex>. Dessa identifierar anomalier i beteendet hos m\u00e4tv\u00e4rden under dagen eller veckan respektive. Andra analysfunktioner <noindex><a rel=\"nofollow\" href=\"https:\/\/www.elastic.co\/guide\/en\/elastic-stack-overview\/7.1\/ml-functions.html\">finns i dokumentationen<\/a><\/noindex>.<\/p>\n<p>I <i>field_name<\/i> anger det f\u00e4lt i dokumentet som analysen kommer att baseras p\u00e5. <i>By_field_name<\/i> kan anv\u00e4ndas f\u00f6r att dela analysresultaten efter varje s\u00e4rskilt v\u00e4rde av det angivna f\u00e4ltet. Om <i>over_field_name<\/i> anv\u00e4nds blir det population-analys, som vi diskuterade ovan. Om ett v\u00e4rde anges i <i>partition_field_name<\/i>, kommer separata baslinjer att ber\u00e4knas f\u00f6r varje v\u00e4rde av detta dokumentf\u00e4lt (till exempel kan namnet p\u00e5 servern eller processen p\u00e5 servern fungera som v\u00e4rde). I <i>exclude_frequent<\/i> kan du v\u00e4lja <i>all<\/i> eller <i>none<\/i>, vilket inneb\u00e4r uteslutning (eller inkludering) av ofta f\u00f6rekommande v\u00e4rden i dokumentf\u00e4lten.<\/p>\n<p>I artikeln har vi f\u00f6rs\u00f6kt ge en s\u00e5 kortfattad presentation som m\u00f6jligt av maskininl\u00e4rningens m\u00f6jligheter i Elastic Stack, men det finns fortfarande m\u00e5nga detaljer kvar att ta upp. Ber\u00e4tta g\u00e4rna i kommentarerna om vilka fall ni har lyckats l\u00f6sa med hj\u00e4lp av Elastic Stack och f\u00f6r vilka uppgifter ni anv\u00e4nder det. F\u00f6r att kontakta oss kan ni anv\u00e4nda privata meddelanden p\u00e5 Habr eller <noindex><a rel=\"nofollow\" href=\"https:\/\/gals.software\/solutions\/elasticstack\">kontaktformul\u00e4ret p\u00e5 webbplatsen<\/a><\/noindex>.<br \/>\n<br \/>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/galssoftware\/blog\/455387\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0430\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e \u0432 \u043e\u0441\u043d\u043e\u0432\u0435 Elastic Stack \u043b\u0435\u0436\u0430\u0442 \u043d\u0435\u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 Elasticsearch, \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 Kibana \u0438 \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u0438-\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0441\u0430\u043c\u044b\u0439 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 Logstash, \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 Beats, APM \u0438 \u0434\u0440\u0443\u0433\u0438\u0435). \u041e\u0434\u043d\u043e \u0438\u0437 \u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0445 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0439 \u0432\u0441\u0435\u0433\u043e \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u2014 \u0430\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0447\u0442\u043e \u0438\u0437 \u0441\u0435\u0431\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u044d\u0442\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b. \u041f\u0440\u043e\u0441\u0438\u043c \u043f\u043e\u0434 \u043a\u0430\u0442. \u041c\u0430\u0448\u0438\u043d\u043d\u043e\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":26487,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35274","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u0430\u043f\u043e\u043c\u043d\u0438\u043c.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0441 Machine Learning \u0432 Elastic Stack (\u043e\u043d \u0436\u0435 Elasticsearch, \u043e\u043d \u0436\u0435 ELK) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0430\u043f\u043e\u043c\u043d\u0438\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:03:22+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:03:22+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Vi l\u00e4r oss om maskininl\u00e4rning i Elastic Stack (\u00e4ven k\u00e4nd som Elasticsearch, \u00e4ven k\u00e4nd som ELK) | ProHoster","description":"Vi p\u00e5minner.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0441 Machine Learning \u0432 Elastic Stack (\u043e\u043d \u0436\u0435 Elasticsearch, \u043e\u043d \u0436\u0435 ELK) | ProHoster","og:description":"\u041d\u0430\u043f\u043e\u043c\u043d\u0438\u043c.","og:url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/razbiraemsya-s-machine-learning-v-elastic-stack-on-zhe-elasticsearch-on-zhe-elk","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:03:22+00:00","article:modified_time":"2019-10-31T19:03:22+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35274","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 22:37:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:07:28","updated":"2026-01-21 22:37:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/35274","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=35274"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/35274\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media\/26487"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=35274"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=35274"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=35274"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}