日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

通過(guò)Elasticsearch機(jī)器學(xué)習(xí)實(shí)現(xiàn)業(yè)務(wù)數(shù)據(jù)的智能檢測(cè)和預(yù)測(cè)

Elasticsearch機(jī)器學(xué)習(xí)是一種利用機(jī)器學(xué)習(xí)技術(shù)對(duì)Elasticsearch數(shù)據(jù)進(jìn)行智能檢測(cè)和預(yù)測(cè)的工具,可以自動(dòng)識(shí)別數(shù)據(jù)模式和數(shù)據(jù)異常,生成新的特征和聚合結(jié)果,為數(shù)據(jù)分析和應(yīng)用提供支持。Elasticsearch機(jī)器學(xué)習(xí)可以提高數(shù)據(jù)的可用性和價(jià)值,還可以為用戶提供更加智能和高效的數(shù)據(jù)分析和應(yīng)用解決方案。本文通過(guò)兩個(gè)示例介紹無(wú)監(jiān)督機(jī)器學(xué)習(xí)和監(jiān)督機(jī)器學(xué)習(xí)的實(shí)踐。

背景信息

Elasticsearch機(jī)器學(xué)習(xí)分為無(wú)監(jiān)督機(jī)器學(xué)習(xí)Unsupervised和監(jiān)督機(jī)器學(xué)習(xí)Supervised兩類:

  • 無(wú)監(jiān)督機(jī)器學(xué)習(xí)包括Single metric和Populartion等場(chǎng)景,對(duì)數(shù)據(jù)進(jìn)行異常檢測(cè)。該模式不需要訓(xùn)練機(jī)器學(xué)習(xí)什么是異常,機(jī)器學(xué)習(xí)算法將自動(dòng)檢測(cè)數(shù)據(jù)中的異常或異常模式。

  • 監(jiān)督機(jī)器學(xué)習(xí)包括Regression和Classification等場(chǎng)景,使用分類和回歸算法解決非常復(fù)雜的問(wèn)題。該模式需要一定的數(shù)據(jù)訓(xùn)練預(yù)測(cè)任務(wù),然后使用訓(xùn)練出來(lái)的任務(wù)來(lái)對(duì)未來(lái)的數(shù)據(jù)進(jìn)行分類、預(yù)測(cè)。

場(chǎng)景大類

場(chǎng)景

類別

說(shuō)明

異常檢測(cè)Anomaly Detection

單一指標(biāo)檢測(cè)Single metric

unsupervised

檢測(cè)單個(gè)時(shí)序中的異常,數(shù)據(jù)分析僅在一個(gè)索引字段上執(zhí)行。

多指標(biāo)檢測(cè)Mutil metric

unsupervised

使用一個(gè)或多個(gè)指標(biāo)檢測(cè)異常,并根據(jù)需要拆分分析,數(shù)據(jù)分析在多個(gè)索引字段上執(zhí)行。

填充Populartion

unsupervised

通過(guò)與Population中的行為進(jìn)行比較,檢測(cè)不尋常的行為。

Population是指某一研究領(lǐng)域內(nèi)所有可能被研究的個(gè)體、事物或現(xiàn)象的總體。

高級(jí)用法和功能 Advanced

unsupervised

提供了更多的選項(xiàng)和設(shè)置,以便用戶可以更好地定制和優(yōu)化機(jī)器學(xué)習(xí)任務(wù),以適應(yīng)不同的應(yīng)用場(chǎng)景和數(shù)據(jù)類型,用于更高級(jí)用例的機(jī)器學(xué)習(xí)。

歸類Categorization

unsupervised

識(shí)別和分析日志消息中的特征和模式,將日志消息分為不同的組別,并檢測(cè)其中的異常情況。

數(shù)據(jù)分析Data Frame Analytics

離群值檢測(cè)Outlier detection

unsupervised

用聚類分析和異常檢測(cè)算法訓(xùn)練任務(wù),用于快速檢測(cè)數(shù)據(jù)中的異常點(diǎn)或異常行為。

回歸Regression

supervised

回歸預(yù)測(cè)數(shù)據(jù)集中的數(shù)值。

分類Classification

supervised

分類預(yù)測(cè)數(shù)據(jù)集中數(shù)據(jù)點(diǎn)的類別。

準(zhǔn)備工作

  1. 創(chuàng)建阿里云Elasticsearch實(shí)例,本文使用8.5版本Elasticsearch實(shí)例。具體操作,請(qǐng)參見(jiàn)創(chuàng)建阿里云Elasticsearch實(shí)例

    說(shuō)明

    不同版本Elasticsearch機(jī)器學(xué)習(xí)的使用可能存在差異性。更多信息,請(qǐng)參見(jiàn)Machine learning官方文檔

  2. 登錄Kibana控制臺(tái)。具體操作,請(qǐng)參見(jiàn)登錄Kibana控制臺(tái)

  3. 添加樣例數(shù)據(jù)。

    1. 在Kibana主頁(yè),通過(guò)添加集成開始使用區(qū)域單擊試用樣例數(shù)據(jù)

    2. 樣例數(shù)據(jù)頁(yè)簽,單擊其他樣例數(shù)據(jù)集

    3. 分別單擊Sample flight dataSample web logs數(shù)據(jù)集下的添加數(shù)據(jù)

      添加數(shù)據(jù)變?yōu)?b data-tag="uicontrol" id="d48fab40fabcc" class="uicontrol">查看數(shù)據(jù)時(shí),表示該數(shù)據(jù)集已添加完成。添加樣例數(shù)據(jù)后,Kibana會(huì)自動(dòng)創(chuàng)建kibana_sample_data_flights索引和kibana_sample_data_logs索引。

      image.png

創(chuàng)建機(jī)器學(xué)習(xí)任務(wù)

本文通過(guò)以下兩個(gè)示例介紹無(wú)監(jiān)督機(jī)器學(xué)習(xí)和監(jiān)督機(jī)器學(xué)習(xí)的實(shí)踐。

創(chuàng)建單指標(biāo)機(jī)器學(xué)習(xí)任務(wù)

本操作通過(guò)單指標(biāo)檢測(cè)構(gòu)建一個(gè)無(wú)監(jiān)督機(jī)器學(xué)習(xí)任務(wù),使用Kibana自帶的樣例數(shù)據(jù)Sample web logs,該數(shù)據(jù)集為訪問(wèn)Web服務(wù)器的模擬數(shù)據(jù),通過(guò)分析樣例數(shù)據(jù)了解用戶的訪問(wèn)行為、優(yōu)化網(wǎng)站性能和檢測(cè)異常訪問(wèn)等。

下面是數(shù)據(jù)集Sample web logs中的一條數(shù)據(jù)信息。

{
  "_index": "kibana_sample_data_logs",
  "_type": "_doc",
  "_id": "n6GHI4gBmNQSVxOwNnPn",
  "_version": 1,
  "_score": null,
  "_source": {
    "agent": "Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.50 Safari/534.24",
    "bytes": 847,
    "clientip": "122.62.233.59",
    "extension": "",
    "geo": {
      "srcdest": "CN:CO",
      "src": "CN",
      "dest": "CO",
      "coordinates": {
        "lat": 31.24905556,
        "lon": -82.39530556
      }
    },
    "host": "www.elastic.co",
    "index": "kibana_sample_data_logs",
    "ip": "122.62.233.59",
    "machine": {
      "ram": 4294967296,
      "os": "win xp"
    },
    "memory": null,
    "message": "122.62.233.59 - - [2018-08-21T02:34:54.901Z] \"GET /logging HTTP/1.1\" 200 847 \"-\" \"Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.50 Safari/534.24\"",
    "phpmemory": null,
    "referer": "http://twitter.com/success/paul-w-richards",
    "request": "/logging",
    "response": 200,
    "tags": [
      "success",
      "info"
    ],
    "timestamp": "2023-06-06T02:34:54.901Z",
    "url": "https://www.elastic.co/solutions/logging",
    "utc_time": "2023-06-06T02:34:54.901Z",
    "event": {
      "dataset": "sample_web_logs"
    }
  },
  "fields": {
    "@timestamp": [
      "2023-06-06T02:34:54.901Z"
    ],
    "utc_time": [
      "2023-06-06T02:34:54.901Z"
    ],
    "hour_of_day": [
      2
    ],
    "timestamp": [
      "2023-06-06T02:34:54.901Z"
    ]
  },
  "sort": [
    1686018894901
  ]
}
說(shuō)明

您還可以通過(guò)Transforms對(duì)導(dǎo)入的數(shù)據(jù)進(jìn)行聚合,將原始數(shù)據(jù)聚合為更高級(jí)別的指標(biāo)或統(tǒng)計(jì)數(shù)據(jù),并將聚合結(jié)果存儲(chǔ)到新的索引中,提高查詢性能和響應(yīng)時(shí)間,并為后續(xù)的分析和機(jī)器學(xué)習(xí)提供基礎(chǔ)數(shù)據(jù)。

  1. 單擊Kibana頁(yè)面左上角的image圖標(biāo),選擇Kibana > Machine Learning

  2. 在左側(cè)菜單欄,單擊異常檢測(cè) > 作業(yè)

  3. 異常檢測(cè)作業(yè)頁(yè)面,單擊創(chuàng)建作業(yè)

  4. 選擇kibana_sample_data_logs索引。

  5. 從 數(shù)據(jù)視圖 Kibana Sample Data Logs 創(chuàng)建作業(yè)頁(yè)面的使用向?qū)?/b>區(qū)域,單擊單一指標(biāo),創(chuàng)建單指標(biāo)任務(wù)。

  6. 配置單指標(biāo)任務(wù)。

    1. 時(shí)間范圍選擇使用完整的數(shù)據(jù),單擊下一步

      說(shuō)明

      樣例數(shù)據(jù)集里數(shù)據(jù)較少,所以選擇使用完整的kibana_sample_data_logs數(shù)據(jù)。

    2. 選取字段Count(Event rate),配置存儲(chǔ)桶跨度和稀疏數(shù)據(jù)后,單擊下一步

      說(shuō)明

      Count(Event rate) 作為單指標(biāo)視圖的指標(biāo)可以很好地反映出服務(wù)器在每秒內(nèi)響應(yīng)請(qǐng)求的次數(shù),可以作為異常檢測(cè)的目標(biāo)。

      • 存儲(chǔ)桶跨度:用于將時(shí)間序列數(shù)據(jù)分成不同的塊,以便進(jìn)行分析和預(yù)測(cè)。該參數(shù)定義了每個(gè)時(shí)間段的持續(xù)時(shí)間,您可以根據(jù)業(yè)務(wù)需求進(jìn)行調(diào)整。

      • 稀疏數(shù)據(jù):選擇是否將字段中的空值視為異常。在機(jī)器學(xué)習(xí)中,數(shù)據(jù)的稀疏性是指數(shù)據(jù)中存在大量的空值(缺失值)。

    3. 輸入作業(yè)ID作業(yè)描述,單擊下一步

    4. 時(shí)間范圍和任務(wù)內(nèi)存限制的驗(yàn)證沒(méi)問(wèn)題后,單擊下一步

  7. 在頁(yè)面底部,單擊創(chuàng)建作業(yè)

    Elasticsearch按照時(shí)序播放這些數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行分析學(xué)習(xí)建立任務(wù),同時(shí)對(duì)后面的數(shù)據(jù)進(jìn)行評(píng)估。

    說(shuō)明

    創(chuàng)建作業(yè)需要時(shí)間進(jìn)行驗(yàn)證,花費(fèi)的時(shí)間受索引數(shù)據(jù)的大小影響。

  8. 作業(yè)創(chuàng)建完成后,在頁(yè)面左下角單擊查看結(jié)果

    • 單擊count 的單時(shí)間序列分析右側(cè)的image.png圖標(biāo),查看單時(shí)間序列分析說(shuō)明

    • 用鼠標(biāo)左鍵拖動(dòng)時(shí)間控制條的左右邊緣或移動(dòng)時(shí)間控制條,選擇需要進(jìn)行異常檢測(cè)的時(shí)間段。

    • 在頁(yè)面右側(cè)單擊預(yù)測(cè),對(duì)未來(lái)進(jìn)行預(yù)測(cè)。

    image.png

創(chuàng)建推理機(jī)器學(xué)習(xí)任務(wù)

訓(xùn)練航班延誤預(yù)測(cè)任務(wù)

本操作通過(guò)回歸算法訓(xùn)練一個(gè)監(jiān)督機(jī)器學(xué)習(xí)任務(wù),使用Kibana自帶的樣例數(shù)據(jù)Sample flight data,該數(shù)據(jù)集為虛構(gòu)的航班數(shù)據(jù),通過(guò)回歸算法根據(jù)歷史數(shù)據(jù)訓(xùn)練航班延誤時(shí)間的任務(wù)。預(yù)測(cè)任務(wù)可以為航空公司和旅客提供重要的參考信息,幫助旅客更好地規(guī)劃行程和航班安排。

下面是Sample flight data數(shù)據(jù)集中的一條數(shù)據(jù)信息。

{
  "_index": "kibana_sample_data_flights",
  "_type": "_doc",
  "_id": "7b0aeogBmNQSVxOwslB_",
  "_version": 1,
  "_score": null,
  "_source": {
    "FlightNum": "QYX9S3I",
    "DestCountry": "CH",
    "OriginWeather": "Cloudy",
    "OriginCityName": "Chicago",
    "AvgTicketPrice": 824.8516378170061,
    "DistanceMiles": 4442.909325899777,
    "FlightDelay": false,
    "DestWeather": "Thunder & Lightning",
    "Dest": "Zurich Airport",
    "FlightDelayType": "No Delay",
    "OriginCountry": "US",
    "dayOfWeek": 4,
    "DistanceKilometers": 7150.1694661808515,
    "timestamp": "2023-06-02T07:28:15",
    "DestLocation": {
      "lat": "47.464699",
      "lon": "8.54917"
    },
    "DestAirportID": "ZRH",
    "Carrier": "Logstash Airways",
    "Cancelled": false,
    "FlightTimeMin": 420.59820389299125,
    "Origin": "Chicago O'Hare International Airport",
    "OriginLocation": {
      "lat": "41.97859955",
      "lon": "-87.90480042"
    },
    "DestRegion": "CH-ZH",
    "OriginAirportID": "ORD",
    "OriginRegion": "US-IL",
    "DestCityName": "Zurich",
    "FlightTimeHour": 7.009970064883188,
    "FlightDelayMin": 0
  }
}
  1. 單擊Kibana頁(yè)面左上角的image.png圖標(biāo),選擇Kibana>Machine Learning

  2. 在左側(cè)菜單欄,單擊數(shù)據(jù)幀分析 > 作業(yè)

  3. 數(shù)據(jù)幀分析作業(yè)頁(yè)面,單擊創(chuàng)建作業(yè)

  4. 選擇kibana_sample_data_flights索引。

  5. 創(chuàng)建作業(yè)配置區(qū)域,配置作業(yè)基本參數(shù)。

    1. 選中回歸任務(wù)。

      image.png

    2. 因變量選擇FlightDelayMin,因變量即要預(yù)測(cè)的目標(biāo)變量。

    3. 在已包括字段中,取消選中Cancelled、FlightDelay和FlightDelayType字段。

      Cancelled、FlightDelay和FlightDelayType字段對(duì)預(yù)測(cè)航班延誤時(shí)間沒(méi)有影響,排除多余字段可避免任務(wù)受到不必要的影響,提升預(yù)測(cè)準(zhǔn)確性。

    4. 拖動(dòng)圓點(diǎn),調(diào)整訓(xùn)練百分比。

      您可以根據(jù)業(yè)務(wù)實(shí)際情況,調(diào)整參加訓(xùn)練的數(shù)據(jù)量百分比,本文設(shè)置訓(xùn)練百分比為90%。

      說(shuō)明

      如果數(shù)據(jù)量比較大,還需要考慮訓(xùn)練的時(shí)間問(wèn)題,訓(xùn)練時(shí)間會(huì)隨著數(shù)據(jù)量的增加而增加。數(shù)據(jù)量比較大時(shí)建議選擇較小的比例進(jìn)行訓(xùn)練,例如50%或者更低的比例,然后不斷地進(jìn)行矯正,直到得到合適的正確率。

  6. 單擊繼續(xù),配置其他選項(xiàng)

    1. 設(shè)置功能重要性值為5。計(jì)算5個(gè)對(duì)于預(yù)測(cè)結(jié)果重要的特征,以便我們了解哪些特征對(duì)于預(yù)測(cè)結(jié)果的貢獻(xiàn)最大,有助于進(jìn)行特征選擇和任務(wù)優(yōu)化。

    2. 設(shè)置預(yù)測(cè)字段名稱為FlightDelayMin_prediction。指定要預(yù)測(cè)的目標(biāo)變量的名稱。

    3. 取消選中使用估計(jì)的模型內(nèi)存限制,設(shè)置模型內(nèi)存限制為500MB。指定機(jī)器學(xué)習(xí)任務(wù)可以使用的內(nèi)存上限。如果數(shù)據(jù)集比較大,任務(wù)較為復(fù)雜,可能會(huì)消耗大量?jī)?nèi)存,如果超出了限制,可能會(huì)導(dǎo)致任務(wù)訓(xùn)練失敗或者性能下降,因此需要根據(jù)數(shù)據(jù)集的大小和任務(wù)的復(fù)雜度來(lái)設(shè)置適當(dāng)?shù)膬?nèi)存上限。

    4. 設(shè)置最大線程數(shù)為1。用于指定訓(xùn)練任務(wù)的最大線程數(shù),如果設(shè)置的線程數(shù)過(guò)多,可能會(huì)導(dǎo)致內(nèi)存不足或者系統(tǒng)崩潰

    5. 單擊繼續(xù),設(shè)置作業(yè)ID為flightdelaymin_job。

    6. 單擊繼續(xù),自動(dòng)對(duì)任務(wù)進(jìn)行驗(yàn)證。

    7. 驗(yàn)證通過(guò)后,單擊繼續(xù)

    8. 創(chuàng)建區(qū)域,單擊創(chuàng)建,創(chuàng)建任務(wù)。

      生成任務(wù)需要時(shí)間,具體耗時(shí)由訓(xùn)練的數(shù)據(jù)量大小決定。

  7. 任務(wù)創(chuàng)建完畢后,單擊查看結(jié)果,查看分析作業(yè)的結(jié)果。

    模型評(píng)估區(qū)域,查看任務(wù)的可靠性。

    • 泛化誤差:衡量任務(wù)在新數(shù)據(jù)上表現(xiàn)的能力,反映了任務(wù)的泛化能力。泛化誤差越小,表示任務(wù)具有更好的泛化能力,能夠更準(zhǔn)確地對(duì)未知數(shù)據(jù)進(jìn)行預(yù)測(cè)。

    • 訓(xùn)練誤差:指任務(wù)在訓(xùn)練數(shù)據(jù)集上的表現(xiàn)能力,反映了任務(wù)在學(xué)習(xí)過(guò)程中所做的誤差。訓(xùn)練誤差越小,表示任務(wù)在訓(xùn)練數(shù)據(jù)集上的表現(xiàn)越好。

    • 評(píng)估指標(biāo)說(shuō)明:

      • 均方誤差:評(píng)估回歸任務(wù)性能的重要指標(biāo),數(shù)值越小表示任務(wù)的預(yù)測(cè)結(jié)果越精確。通過(guò)計(jì)算真實(shí)值與回歸任務(wù)預(yù)測(cè)值之間的差值的平均平方和獲得。

      • R平方:評(píng)估回歸任務(wù)性能的重要指標(biāo),數(shù)值越接近1表示任務(wù)的擬合程度越好。一般認(rèn)為超過(guò)0.8的任務(wù)擬合優(yōu)度比較高。

      • 均方根對(duì)數(shù)誤差:數(shù)值越小,表示任務(wù)的預(yù)測(cè)效果越好。通過(guò)對(duì)預(yù)測(cè)值和真實(shí)值取對(duì)數(shù)后計(jì)算誤差平方和的平均值獲得。

      說(shuō)明

      比較多個(gè)回歸任務(wù)時(shí),需要同時(shí)考慮均方誤差和R平方,以找到最佳平衡任務(wù)或適合特定數(shù)據(jù)集的任務(wù)。

      • 均方誤差為0或R平方值為1通常是不可能的,因?yàn)槿蝿?wù)的預(yù)測(cè)結(jié)果受到多種因素的影響,而這些因素?zé)o法全部考慮到并完全消除誤差。

      • 均方根對(duì)數(shù)誤差為NaN表示任務(wù)預(yù)測(cè)的結(jié)果或真實(shí)結(jié)果存在非正數(shù)或零的情況。

      更多詳細(xì)信息請(qǐng)參見(jiàn)回歸評(píng)估

使用航班延誤預(yù)測(cè)任務(wù)

通過(guò)Kibana中的推理處理器使用上面訓(xùn)練的航班延誤預(yù)測(cè)任務(wù)。

  1. 單擊Kibana頁(yè)面左上角的image圖標(biāo),選擇Management > 開發(fā)工具

  2. 在Kibana控制臺(tái)中,執(zhí)行以下命令查看并記錄model_id值。

    GET _ml/inference/flightdelaymin_job*?human=true

    此命令表示查詢名為flightdelaymin_job的所有推理分析結(jié)果,并將結(jié)果以人類可讀的格式進(jìn)行輸出。命令中flightdelaymin_job為創(chuàng)建回歸推理任務(wù)中定義的作業(yè)ID

  3. 基于上面創(chuàng)建的回歸推理任務(wù),創(chuàng)建一個(gè)基于推理處理器的pipeline管道。

    說(shuō)明

    將代碼中的model_id值替換為您獲取到的model_id值。

    PUT _ingest/pipeline/flight_flightDelayMin_predict
    {
      "description": "Predict the number of minutes of delay for each flight",
      "processors": [
        {
          "inference": {
            "model_id": "flightDelayMin_job-168609891****",
            "inference_config": {
              "regression": {}
            },
            "field_map": {},
            "tag": "flightDelayMin_prediction"
          }
        }
      ]
    }
  4. 使用kibana_sample_data_flights索引中的數(shù)據(jù),以航班延誤時(shí)間FlightDelayMin為目標(biāo)變量,進(jìn)行數(shù)據(jù)分析和預(yù)測(cè)。

    POST _ingest/pipeline/flight_flightDelayMin_predict/_simulate
    {
      "docs": [
        {
          "_source": {
            "FlightNum": "EDGSV3T",
            "DestCountry": "CN",
            "OriginWeather": "Damaging Wind",
            "OriginCityName": "Durban",
            "AvgTicketPrice": 1065.7037805199147,
            "DistanceMiles": 7273.460817641552,
            "FlightDelay": true,
            "DestWeather": "Rain",
            "Dest": "Shanghai Pudong International Airport",
            "FlightDelayType": "Carrier Delay",
            "OriginCountry": "ZA",
            "dayOfWeek": 5,
            "DistanceKilometers": 11705.500526106527,
            "timestamp": "2023-06-03T09:34:00",
            "DestLocation": {
              "lat": "31.14340019",
              "lon": "121.8050003"
            },
            "DestAirportID": "PVG",
            "Carrier": "Kibana Airlines",
            "Cancelled": false,
            "FlightTimeMin": 881.1071804361806,
            "Origin": "King Shaka International Airport",
            "OriginLocation": {
              "lat": "-29.61444444",
              "lon": "31.11972222"
            },
            "DestRegion": "SE-BD",
            "OriginAirportID": "DUR",
            "OriginRegion": "SE-BD",
            "DestCityName": "Shanghai",
            "FlightTimeHour": 14.685119673936343,
            "FlightDelayMin": 45
          }
        }
      ]
    }

    得到的結(jié)果,如圖所示。

    image.png

    實(shí)際的航班延誤時(shí)間FlightDelayMin為45min,預(yù)測(cè)得到的航班延誤時(shí)間FlightDelayMin_prediction為50.28min,與實(shí)際相差不大。

    feature_importance里顯示了對(duì)估算航班延誤時(shí)間貢獻(xiàn)最大的5個(gè)影響因素:FlightTimeMin,DistanceKilometers,DistanceMiles,OriginAirportID和FlightTimeHour。您可以通過(guò)調(diào)整5個(gè)影響因素的值來(lái)調(diào)整任務(wù)預(yù)測(cè)結(jié)果,從而更為精確地估計(jì)未來(lái)每個(gè)航班的延誤時(shí)間。