記一只小風扇的升級之路:
之前為大家帶來了兩篇關于SVM的介紹與基于python的使用方法。相信大家都已經上手體驗,嘗鮮了鳶尾花數據集了吧。這里想問下大家,當看到模型訓練出來的時候,大家是不是都驚詫于模型訓練的速度,以及所需要的數據之少吧?毫不驕傲的說啊,干相似的事情使用傳統機器學習需要更少的資源。
本期小編就繼續給大家帶來一個真正的上手項目,基于SVM的電機異常檢測系統。首先,請允許小編先將時間軸撥回到那個無風的夏天:
天氣漸熱,相信大家一定和小編一樣被炎熱的天氣搞得生無可戀了。然而,就在小編打算原地躺平,突然一道光出現了。小編遇到了人類歷史上最重要的發明-電風扇。正可謂一扇在手,汗也不流了,敲鍵盤的手速也變快了,可以說,腦子轉的都快了~那接下來要研究的問題-怎樣能使電扇悄無聲息的吹風呢?
小風扇簡直是給我們加了buff,腦子立馬超頻運轉了。溫度降低了,智商也就占領高地了。那我們何不做一個小風扇的demo呢?我們讓吹風扇這個事情,變得更加官方呢。說干就干,先來看下硬件平臺:
硬件平臺包括我們的主控板:MCX-N9XX-BRK板,一顆三色LED燈(異常閃紅,正常綠色),主角小風扇,外加貼在上面的MPU6050,用來采集電機運行狀態。還有顯示單元LCD屏幕,屏上曲線顯示的是當前系統健康值:所謂健康值是評判系統異常的指標。同時還有一個旋轉的變色小風扇,顏色同LED變化方式一致。系統框圖:
MCX-N9XX-BRK通過I2C采集3軸加速度計的數值,處理后將結果顯示到LCD模塊。程序流程圖如下:
程序分為三個task:
1. sensor task負責采集傳感器數據
2. ALGO task負責將采集到的數據進行處理得到特征值,并送到推理引擎進行判斷,此處的推理引擎所用到的就是我們的SVM
3. GUI task負責顯示整個推理和訓練頁面 程序分為兩個狀態,訓練和推理。訓練階段,和python上寫的測試代碼邏輯一致,將采集到的數據送至SVM進行模型訓練。這里需要特別指出的是,我們這里要訓練的實際上是一個單分類模型,即訓練前需要首先確定一個運轉狀態,例如:小風扇正常運轉沒有外界干擾。訓練結束后,即進入推理階段。此時,如果通過外部干擾,改變了風扇運行狀態,比如有堵轉,遮擋進風口的情況,此時系統就會判定狀態改變,發出報警信號。以上就是完整的程序執行流。 最后,我們來看下程序一些參數:
可以看到,數據都非常誘人,程序大小、ram占用、推理時間上,相較于深度學習都有明顯的優勢。同時,最為誘人的是,我們的SVM是支持在線訓練的,這樣就意味著,我們可以根據實際工況進行訓練,以滿足實際需求。
審核編輯:劉清
-
led燈
+關注
關注
22文章
1554瀏覽量
107030 -
SVM
+關注
關注
0文章
154瀏覽量
32181 -
機器學習
+關注
關注
66文章
8122瀏覽量
130556 -
python
+關注
關注
51文章
4675瀏覽量
83466
原文標題:讓機器學習回歸傳統SVM實戰
文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論