開發與維運

Elastic:機器學習的實踐 – multi metric job

這篇文章是之前文章 “機器學習的實踐 - single metric job” 的續篇。如果你對 Elastic 的機器學習還是不太瞭解的話,請參閱之前的文章,並配置好自己的 Elasticsearch 機器。機器學習需要白金版許可。在今天的文章中,我將詳細介紹如何使用機器學習創建一個 multi metric job。

文本作者:劉曉國,Elastic 公司社區佈道師。新加坡國立大學碩士,西北工業大學碩士,曾就職於新加坡科技,康柏電腦,通用汽車,愛立信,諾基亞,Linaro,Ubuntu,Vantiq 等企業。

如果你想一站式快速體驗 Elasticsearch 所有功能(免費提供機器學習、 X-pack 能力),開通 阿里雲 Elasticsearch 1核2G,即可首月免費試用。

Kibana 中的 multi metric job 嚮導提供了一種使用多個檢測器創建更復雜作業的簡單方法。例如,在單個度量標準作業中,你正在跟蹤總請求與時間的關係。你可能還希望跟蹤其他指標,例如平均響應時間或拒絕請求的最大數量。你可以為多個指標作業合併它們,而不是為每個指標創建作業。

你還可以使用多指標作業,根據分類字段將單個時間序列拆分為多個時間序列。例如,你可以根據數據的主機名,位置或用戶拆分數據。每個時間序列都是獨立建模的。通過在每個實體的基礎上查看時間模式,你可能會發現本來可以隱藏在集中視圖中的事物。

從概念上講,你可以將其視為運行許多獨立的單指標作業。但是,通過將它們捆綁在一個多指標作業中,你可以看到該作業中所有指標和所有實體的總體得分和共享影響者。因此,多指標作業比具有許多獨立的單個指標作業更好地擴展,並且當影響者在探測器之間共享時,可以提供更好的結果。

準備數據

在今天的練習中,我們將使用 Elastic 自帶的索引 eCommerce 來做。打開 Kibana:

image.png

image.png

點擊上面的 Add data 按鈕,這樣,我們就完成了數據的導入:

image.png

我們在 Elasticsearch 中可以發現一個叫做 kibana_sample_data_ecommerce 的索引

image.png

創建 機器學習 multi metric job

打開機器學習應用:

image.png

點擊 Manage jobs:

image.png

點擊 Create job:

image.png

選擇 kibana_sample_data_ecommerce 索引:

image.png

在這裡,我們選擇 Multi metric。正如上面描述的那樣,multi metric 通過按類別字段劃分時間序列來檢測多指標中的異常。

image.png

我們選擇使用整個索引的數據。點擊 Next 按鈕:

image.png

我們選擇 High sum(taxful_total_price):

image.png

接下來,我們把分析通過 customer_full_name 來進行分別分析。同時,我們也選擇 customer_full_name 及 category 來查看我們選擇的這些 influencer 有多少是對我們的結果有影響的,影響的程度是什麼樣的。

點擊上面的 Next 按鈕:

image.png

我們把這個機器學習的任務取一個名字叫做 multi_metric_job。點擊 Next 按鈕:

image.png

上面顯示,我們的創建是成功的。點擊 Next 按鈕:

image.png

在上面,我們可以看出來針對每個客戶進行分析。點擊 Create job 按鈕:

image.png

等機器學習完成之後,我們點擊 View results 按鈕:

image.png

在上面,我們看出來一些異常。在上面,我們可以看到一些藍色和黃色的長方形塊。按照我們之前的描述:

Warning (blue): 分數低於25
Minor (yellow): 分數介於25和50之間
Major (orange): 分數介於50和75之間
Critical (red): 分數介於75和100之間

在上面,它顯示了整個客戶的異常情況,在下面也分別分析了各個客戶的異常情況。

我們也可以按照之前選擇的 category influencer 來查看每個 category 的影響:

image.png

我們的異常藍色表示異常分數低於25分,而黃色的異常分數介於25-50之間。是 Warning 和 Minor 級別的異常。

image.png

向下滾動,我們可以查看異常的詳細情況。點擊 July 5th 2020 那個異常:

image.png

上面標明,這個叫做 Stephanie Baker 的客戶,按照正常的分析,他會在 July 5th, 2020 會花錢 0.152,可是他事實上什麼也沒有花。這個和他的平常的習慣不一樣。是有什麼事情發生嗎?

在左邊,我們可以查看到 top 10 的 influencer:

image.png

因為這個是一個 multi metric job,我們也可以把它分解成為每一個 single metric job 那樣進行查看:

image.png

點擊 Single Metric Viewer:

image.png

image.png

好了,今天就先展示到這裡。希望通過這個練習大家知道如何通過機器學習來分析數據的異常。

聲明:
本文版權歸作者所有,未經許可不得擅自轉載或引用。


image.png

阿里雲Elastic Stack】100%兼容開源ES,獨有9大能力,提供免費 X-pack服務(單節點價值$6000)

相關活動


更多折扣活動,請訪問阿里雲 Elasticsearch 官網

阿里雲 Elasticsearch 商業通用版,1核2G ,SSD 20G首月免費
阿里雲 Logstash 2核4G首月免費
下載白皮書:Elasticsearch 八大經典場景應用


image.png

image.png

Leave a Reply

Your email address will not be published. Required fields are marked *