无码人妻精品一区二区三18禁,影音先锋男人AV橹橹色,污污污污污污www网站免费,日韩成人av无码一区二区三区,欧美性受xxxx狂喷水

Intel AIxBoard?+時序數據庫 TDengine,更好地幫你預測“未來”

英特爾軟(ruan)件架構師(shi), 馮偉

2023-07-24 / ,

英特爾數字化開發套件 AIxBoard 是一(yi)款 AI 架構的人(ren)工(gong)(gong)智(zhi)能(neng)嵌入(ru)式開發板(ban),體積小巧功能(neng)強大(da)(da),可以(yi)在時序數據預測、圖像分類(lei)、目標檢(jian)測分割和語(yu)音處理等應(ying)用中并行(xing)運(yun)行(xing)多個神經網絡。作為一(yi)款面向專業(ye)創客、開發者的功能(neng)強大(da)(da)的小型計算(suan)機,借助開源(yuan)人(ren)工(gong)(gong)智(zhi)能(neng)工(gong)(gong)具(ju)套件 OpenVINO ,AIxBoard 能(neng)夠(gou)讓 CPU、iGPU 都具(ju)備強勁的 AI 推理能(neng)力。

Intel AIxBoard?+時序數據庫 TDengine,更好地幫你預測“未來” - TDengine Database 時序數據庫

如果時序數據庫(Time Series Database,TSDB)TDengine 高效的(de)存儲查(cha)詢特性和(he)開放易用的(de)生態集成能力(li),疊加上 AIxBoard/OpenVINO 的(de)人(ren)工智能分析能力(li),這一(yi)強(qiang)強(qiang)組合(he)將可以(yi)幫助(zhu)用戶更(geng)簡單快速地開發(fa)出(chu)一(yi)個(ge)強(qiang)大的(de)時(shi)序數(shu)據(ju)人(ren)工智能分析系統。 本文將為大家介(jie)紹 Intel 團隊(dui)如何在 AIxBoard 開發(fa)套件(jian)上運行(xing) TDengine、OpenVINO 和(he)其他(ta)軟件(jian),搭建(jian)時(shi)序數(shu)據(ju)收集、存儲、分析和(he)展示的(de)解決方案(an),模(mo)擬實(shi)現(xian)高速公路網的(de)通行(xing)速度實(shi)時(shi)預測功能。

方案架構

本方(fang)案采用了微(wei)(wei)服(fu)務(wu)架構(gou),每個模塊(kuai)都(dou)有各(ge)自的(de) Docker 鏡像,所有微(wei)(wei)服(fu)務(wu)均使用 docker compose 管理,代(dai)碼倉庫位于 //github.com/wayfeng/traffic_prediction。

Intel AIxBoard?+時序數據庫 TDengine,更好地幫你預測“未來” - TDengine Database 時序數據庫

數據采集模塊

本(ben)方案使(shi)用的(de)(de)(de)(de)數(shu)(shu)(shu)據(ju)(ju)集(ji)來(lai)自加(jia)州交(jiao)通(tong)部的(de)(de)(de)(de) PeMS 交(jiao)通(tong)數(shu)(shu)(shu)據(ju)(ju)庫——包含(han)在加(jia)州的(de)(de)(de)(de)高速公路(lu)上收集(ji)的(de)(de)(de)(de)大(da)量真實數(shu)(shu)(shu)據(ju)(ju)。我們模(mo)(mo)擬傳感器 sensor 應用 MQTT 協議發布(bu)通(tong)行速度(du)(du)數(shu)(shu)(shu)據(ju)(ju),其中模(mo)(mo)擬數(shu)(shu)(shu)據(ju)(ju)來(lai)自 PeMSD7 數(shu)(shu)(shu)據(ju)(ju)集(ji)的(de)(de)(de)(de)測試(shi)部分,模(mo)(mo)擬模(mo)(mo)塊(kuai)根據(ju)(ju)系(xi)統時間提(ti)取數(shu)(shu)(shu)據(ju)(ju)集(ji)對應的(de)(de)(de)(de)當時速度(du)(du),再加(jia)上少(shao)量隨(sui)機(ji)分布(bu)的(de)(de)(de)(de)誤差(cha),作為整個系(xi)統的(de)(de)(de)(de)輸入。通(tong)過 MQTT broker,我們能(neng)夠接收到模(mo)(mo)擬傳感器發布(bu)的(de)(de)(de)(de)速度(du)(du)數(shu)(shu)(shu)據(ju)(ju),隨(sui)后將(jiang)這部分數(shu)(shu)(shu)據(ju)(ju)轉發給 TDengine 進(jin)行存儲。

數據存儲模塊

數(shu)據存儲使用 TDengine 的(de)(de)官方 Docker 鏡像進(jin)行(xing)。借助(zhu) TDengine 豐(feng)富的(de)(de)生態協作能力(li),只需經過(guo)簡單配置,即可(ke)通過(guo) MQTT broker 將(jiang)數(shu)據寫入(ru) TDengine,并(bing)通過(guo) Grafana 對 TDengine 存儲的(de)(de)數(shu)據進(jin)行(xing)展示。

數據分析模塊

分析模塊(gcrnn)集成(cheng)了 OpenVINO 和 TDengine 客戶(hu)端。在每(mei)一次分析過程中,我們使(shi)用(yong) TDengine 客戶(hu)端查詢已經存入的(de)各(ge)路(lu)段通(tong)行速度,并使(shi)用(yong) TDengine 的(de)數(shu)據聚合函數(shu)獲取過去一小時的(de)每(mei) 5 分鐘均值,將生成(cheng)的(de)張量作為 OpenVINO Runtime 的(de)輸入,然后(hou)使(shi)用(yong) TDengine 客戶(hu)端將 OpenVINO Runtime 推理輸出——也(ye)就是模型預(yu)測的(de)未來通(tong)行速度——寫入TDengine。定時重(zhong)復(fu)這一過程,即可實時預(yu)測各(ge)個路(lu)段未來的(de)通(tong)行速度。

數據展示

數(shu)(shu)據展(zhan)示(shi)模(mo)塊使用了 Grafana 官(guan)方提供的 Docker 鏡像。TDengine 官(guan)方支(zhi)持(chi) data source plugin,可以輕(qing)松為(wei) Grafana 提供數(shu)(shu)據。為(wei)了避免(mian)重復配(pei)(pei)置(zhi)數(shu)(shu)據源(yuan)和 Dashboard,這里可以使用 Grafana 的 Profiling 功能,通過配(pei)(pei)置(zhi)文件使 Grafana 容器(qi)在啟動時將 TDengine 設置(zhi)為(wei)默認(ren)數(shu)(shu)據源(yuan),同時也可以加載準備好的 Dashboard。

相關資(zi)料參見 Provision Grafana://grafana.com/docs/grafana/latest/administration/provisioning

方案效果

本文本例中采(cai)用的(de)(de) PeMSD7 子(zi)集(ji)(ji),其(qi)中包(bao)含了加州第(di)七區 (District 7) 的(de)(de)高(gao)速(su)公路網中設置的(de)(de) 228 個(ge)速(su)度傳感(gan)器(qi)采(cai)集(ji)(ji)到的(de)(de) 44 個(ge)工作日的(de)(de)數據(ju),這(zhe)些(xie)傳感(gan)器(qi)每 30 秒采(cai)集(ji)(ji)一次所在路段的(de)(de)通過速(su)度,最終的(de)(de)數據(ju)則是通行(xing)速(su)度每 5 分鐘的(de)(de)平均值。

Intel AIxBoard?+時序數據庫 TDengine,更好地幫你預測“未來” - TDengine Database 時序數據庫

下(xia)圖(tu)為(wei)隨(sui)機挑選的(de) 3 個(ge)傳(chuan)感器(qi)采集(ji)的(de)三天通行(xing)速度(du)曲線。圖(tu)中縱坐標(biao)為(wei)通行(xing)速度(du),單位是 km/h。橫(heng)坐標(biao)是時(shi)(shi)間,每(mei)個(ge)點代表(biao) 5 分鐘。從圖(tu)中很容易看(kan)出(chu)每(mei)個(ge)傳(chuan)感器(qi)所在路(lu)段(duan)的(de)通行(xing)速度(du)隨(sui)一天時(shi)(shi)間變化都有(you)比較明(ming)顯的(de)規(gui)律,但(dan)不同路(lu)段(duan)各自的(de)規(gui)律又有(you)明(ming)顯的(de)差別(bie)。

Intel AIxBoard?+時序數據庫 TDengine,更好地幫你預測“未來” - TDengine Database 時序數據庫

對某一(yi)(yi)個(ge)或多個(ge)變量,基于(yu)過(guo)(guo)去(qu)一(yi)(yi)段(duan)時(shi)(shi)(shi)間(jian)觀察到的(de)(de)(de)值來(lai)(lai)預測未(wei)來(lai)(lai)一(yi)(yi)段(duan)時(shi)(shi)(shi)間(jian)內(nei)可(ke)能可(ke)能發生的(de)(de)(de)值,屬于(yu)典(dian)型的(de)(de)(de)時(shi)(shi)(shi)序數據預測問題。在本(ben)案例中(zhong),我(wo)們(men)希望(wang)通過(guo)(guo)每個(ge)路段(duan)過(guo)(guo)去(qu)一(yi)(yi)段(duan)時(shi)(shi)(shi)間(jian)的(de)(de)(de)通行速(su)度(du)(du),來(lai)(lai)預測未(wei)來(lai)(lai)一(yi)(yi)段(duan)時(shi)(shi)(shi)間(jian)的(de)(de)(de)通行速(su)度(du)(du)。

Intel AIxBoard?+時序數據庫 TDengine,更好地幫你預測“未來” - TDengine Database 時序數據庫

模型訓練

此前傳(chuan)統統計模(mo)型(例如 ARIMA 模(mo)型及其各個變種(zhong)模(mo)型)在(zai)(zai)時(shi)間序列預測問題取得了(le)顯著成果,但這類傳(chuan)統模(mo)型往(wang)往(wang)受限于數據平穩性假設(she),在(zai)(zai)處理(li)多個變量(liang)時(shi),變量(liang)間關系也無法(fa)體現在(zai)(zai)模(mo)型中。比如本例中,各個傳(chuan)感器所在(zai)(zai)路段在(zai)(zai)地(di)理(li)上的關聯(lian)就在(zai)(zai)傳(chuan)統模(mo)型中被忽略掉(diao)了(le)。

相關資料參(can)見(jian) Spatio-Temporal Graph Convolutional Networks: A Deep Learning Framework for Traffic Forecasting://arxiv.org/abs/1709.04875 本(ben)文(wen)采用了(le)上方參(can)考資料中介紹的(de)圖卷(juan)積(graph convolution)加 LSTM 的(de)簡化模型(xing)。模型(xing)首先需(xu)要根據(ju)傳感(gan)器間的(de)距離構建(jian)一張無(wu)向圖,并使用圖卷(juan)積作為模型(xing)的(de)第一層,配合 LSTM 層可以使模型(xing)同時(shi)學習空間和時(shi)間的(de)信(xin)息。

Intel AIxBoard?+時序數據庫 TDengine,更好地幫你預測“未來” - TDengine Database 時序數據庫

我們提取了(le) PeMSD7 數據集中的 26 個傳感器(qi)的數據,并按(an)照(zhao)訓練(50%),驗(yan)證(zheng)(20%),和測(ce)試(shi)(shi)(30%)對其進行(xing)了(le)分(fen)割,部分(fen)測(ce)試(shi)(shi)數據用來作為數據模(mo)擬模(mo)塊的輸入(ru)。

具體模型訓練的細節參見(jian) Traffic forecasting using graph neural networks and LSTM://keras.io/examples/timeseries/timeseries_traffic_forecasting/

模型轉換

OpenVINO 自帶的(de)模型(xing)優化器能夠將 PyTorch、TensorFlow 等多種框架訓練得(de)到的(de)模型(xing)轉(zhuan)換為 OpenVINO Runtime 需要(yao)的(de)中(zhong)(zhong)間格式(IR)。具體轉(zhuan)換方法在 OpenVINO 官(guan)方文檔中(zhong)(zhong)有詳細解釋。

詳細信息可見《使用模型(xing)優化器轉換模型(xing)》://docs.openvino.ai/cn/2022.1/openvino_docs_MO_DG_Deep_Learning_Model_Optimizer_DevGuide.html

展示效果

經過一段時間運行,可以觀察到類似下(xia)圖的效果。

Intel AIxBoard?+時序數據庫 TDengine,更好地幫你預測“未來” - TDengine Database 時序數據庫

圖中第一(yi)列是(shi)隨機(ji)選(xuan)取的(de)幾個(ge)傳感器發送的(de)實(shi)(shi)時數據(ju)和使用 gcrnn 模(mo)塊(kuai)推理得到的(de)一(yi)小段時間之(zhi)后的(de)預(yu)測(ce)值。下面的(de) 4 個(ge)折線(xian)(xian)圖中,黃色(se)曲(qu)線(xian)(xian)是(shi) gcrnn 預(yu)測(ce)的(de)通行速(su)度,綠色(se)曲(qu)線(xian)(xian)是(shi)實(shi)(shi)際的(de)通行速(su)度。可以看(kan)出,使用本例中的(de)簡單模(mo)型進行推理得到的(de)預(yu)測(ce)結果(guo)與實(shi)(shi)際數據(ju)還是(shi)比(bi)較接近的(de)。

總結

本文通(tong)過(guo)模擬高速公路網通(tong)行(xing)(xing)速度(du)采集與實時(shi)(shi)(shi)預測的(de)案例,介(jie)紹了(le)(le)構建(jian)時(shi)(shi)(shi)間序(xu)列(lie)信號(hao)收集、存儲(chu)和分析的(de)基(ji)本流(liu)(liu)程以(yi)及所(suo)需工具,展(zhan)示了(le)(le)運行(xing)(xing)在(zai) Intel AIxBoard? 上的(de) TDengine 便捷高效的(de)數據收集、存儲(chu)、查詢和展(zhan)示能力,以(yi)及 OpenVINO 基(ji)于深(shen)度(du)學習進行(xing)(xing)時(shi)(shi)(shi)間序(xu)列(lie)信號(hao)分析的(de)能力。閱讀完本篇(pian)文章,你對時(shi)(shi)(shi)序(xu)數據處理和預測一定(ding)也有了(le)(le)更深(shen)的(de)體會,如(ru)果(guo)你想(xiang)要進行(xing)(xing)深(shen)度(du)技術交(jiao)(jiao)流(liu)(liu),可以(yi)添加小(xiao)Tvx:tdengine1,申請加入 TDengine 技術交(jiao)(jiao)流(liu)(liu)群。

作者介紹: 馮偉(wei),英特爾軟(ruan)件架構師,16年(nian)軟(ruan)件研(yan)發經驗,涵蓋瀏覽器、計(ji)算(suan)機(ji)視覺、虛擬機(ji)等多個領域。2015年(nian)加入英特爾,近年(nian)來專注于邊緣計(ji)算(suan)、深度學(xue)習模型落地,以及時序數據分析等方向。