開(kāi)發(fā)機(jī)器學(xué)習(xí)項(xiàng)目的五個(gè)步驟 — 掌握要點(diǎn),應(yīng)用并不困難!
邊緣機(jī)器學(xué)習(xí)具有許多優(yōu)勢(shì),。 然而,由于開(kāi)發(fā)方法與標(biāo)準(zhǔn)程序設(shè)計(jì)方法截然不同,,許多機(jī)器學(xué)習(xí)開(kāi)發(fā)者可能會(huì)擔(dān)心自己難以駕馭。
其實(shí),,完全沒(méi)有必要擔(dān)心,。一旦熟悉了步驟,并掌握了機(jī)器學(xué)習(xí)項(xiàng)目的要點(diǎn),,就能夠開(kāi)發(fā)具有價(jià)值的機(jī)器學(xué)習(xí)應(yīng)用,。此外,意法半導(dǎo)體(STMicroelectronics,;ST)提供解決方案,,以促進(jìn)邊緣機(jī)器學(xué)習(xí)得到廣泛應(yīng)用發(fā)揮全部潛力。本文描述機(jī)器學(xué)習(xí)項(xiàng)目的必要開(kāi)發(fā)步驟,,并介紹了ST MEMS傳感器內(nèi)嵌機(jī)器學(xué)習(xí)核心(MLC)的優(yōu)勢(shì),。
圖一 : 嵌入式ST傳感器的機(jī)器學(xué)習(xí)核心
首先,針對(duì)機(jī)器學(xué)習(xí)模型--判定樹(shù)(Decision Tree),,該模型與MLC一起內(nèi)嵌在ST MEMS中,。
當(dāng)用戶想要在嵌入式系統(tǒng)中使用機(jī)器學(xué)習(xí)或深度學(xué)習(xí)功能時(shí),通??砂凑找韵挛鍌€(gè)步驟進(jìn)行開(kāi)發(fā)(圖二),。
圖二 : AI項(xiàng)目開(kāi)發(fā)的五個(gè)步驟
在步驟1中,開(kāi)發(fā)者需要收集機(jī)器學(xué)習(xí)所需的數(shù)據(jù),。該數(shù)據(jù)集的一部分(訓(xùn)練集)將用于訓(xùn)練模型,,另一部分(測(cè)試集)將用于評(píng)估所構(gòu)建模型的性能。機(jī)器學(xué)習(xí)的數(shù)據(jù)集中典型的拆分比率為:訓(xùn)練集80%,,測(cè)試集20%,。
在步驟2中,需要對(duì)數(shù)據(jù)進(jìn)行標(biāo)注,。開(kāi)發(fā)者需要將收集到的數(shù)據(jù)標(biāo)注類別(例如「跑步」,、「散步」、「靜止」等),;而判定樹(shù)是一種基于開(kāi)發(fā)者所決定的分類模型,。
分類則是指根據(jù)重要的屬性對(duì)數(shù)據(jù)進(jìn)行分類:這種屬性在機(jī)器學(xué)習(xí)領(lǐng)域被稱為「類別」。
接下來(lái),,在步驟3中,,使用預(yù)先準(zhǔn)備的數(shù)據(jù)集訓(xùn)練機(jī)器學(xué)習(xí)模型。該任務(wù)亦稱為「fitting」,。訓(xùn)練結(jié)果的準(zhǔn)確性在很大程度上取決于訓(xùn)練集的內(nèi)容和數(shù)量,。
在步驟4,將訓(xùn)練過(guò)的機(jī)器學(xué)習(xí)模型嵌入到系統(tǒng)中,。用戶可以利用Pythonlibrary直接運(yùn)行模型,。 對(duì)于在MCU等組件上運(yùn)行的機(jī)器學(xué)習(xí)算法,開(kāi)發(fā)者可以在執(zhí)行之前將該library轉(zhuǎn)換為C程序,。 而針對(duì)MEMS MLC等硬件連接型解決方案,,開(kāi)發(fā)者可以在執(zhí)行之前使用專用軟件UNICO-GUI將library轉(zhuǎn)換為register setting。
最后步驟5,,驗(yàn)證機(jī)器學(xué)習(xí)模型,。 如果驗(yàn)證結(jié)果與預(yù)期的結(jié)果不能匹配,則開(kāi)發(fā)者必須審視上述步驟中需要改進(jìn)的部分,,以及如何改進(jìn),。
模擬人類在進(jìn)行分類的思維方式-判定樹(shù)
在機(jī)器學(xué)習(xí)興起之前,,判定樹(shù)模型就已經(jīng)用于數(shù)據(jù)分類。例如雜志上的性格測(cè)試 - 在測(cè)試中,,您需要依照順序回答多個(gè)問(wèn)題(順序是依照每個(gè)問(wèn)題的分支而決定的),,之后再根據(jù)結(jié)果推斷測(cè)試者的性格。這是一個(gè)典型的判定樹(shù)范例,。為了創(chuàng)造一個(gè)機(jī)器學(xué)習(xí)分類模型,,需要在每個(gè)階段組合多個(gè)檢查點(diǎn)(稱為decision node)。
在另一個(gè)例子中,,一位經(jīng)驗(yàn)豐富的房地產(chǎn)經(jīng)紀(jì)人評(píng)估來(lái)訪客戶是否會(huì)根據(jù)如下圖所示的判定樹(shù)購(gòu)買房產(chǎn):他將到達(dá)一個(gè)最終節(jié)點(diǎn)(或稱leaf),,并根據(jù)每個(gè)node的條件做出最終決定。
圖三 : 判定樹(shù)范例(以房地產(chǎn)業(yè)者為例)
在開(kāi)發(fā)判定樹(shù)之前,,必須通過(guò)分類算法確定三個(gè)要點(diǎn),,即要解決的問(wèn)題、分類過(guò)程中感興趣的參數(shù)(特征值,,即input),,以及要尋找的最終答案(即output)。 在房地產(chǎn)經(jīng)紀(jì)人的例子中,,問(wèn)題是預(yù)測(cè)客戶是否會(huì)購(gòu)買房產(chǎn),。 答案是客戶是否會(huì)購(gòu)買房產(chǎn)。
總之,,特征處理是獲得準(zhǔn)確答案的關(guān)鍵,。 在這種情況下,特征可以包括客戶的收入,、房產(chǎn)的價(jià)格,、房間的數(shù)量,以及是否有停車位等等,。得到的答案很大程度上取決于特征值,、特征的順序,以及分類閾值(用于區(qū)分?jǐn)?shù)據(jù)的thresholds),。為了創(chuàng)造機(jī)器學(xué)習(xí)判定樹(shù),,開(kāi)發(fā)者必須先定義需要的特征和閾值。接著可以透過(guò)反復(fù)學(xué)習(xí)來(lái)改善判定樹(shù)的結(jié)構(gòu)以獲得更準(zhǔn)確的答案,,進(jìn)而優(yōu)化每個(gè)node的特征選擇順序和分類閾值,。
判定樹(shù)方法看起來(lái)像是傳統(tǒng)的「if-then-else」方法,那不同之處在哪呢,?
關(guān)鍵在于所使用的特征,、決策節(jié)點(diǎn)的位置、閾值和判定樹(shù)的結(jié)構(gòu)不是由設(shè)計(jì)人員事先決定的,而是模型根據(jù)數(shù)據(jù)集學(xué)習(xí)而來(lái),。 事實(shí)上,,若依據(jù)米蘭、東京或上海的房地產(chǎn)數(shù)據(jù)集訓(xùn)練模型(例如,,房地產(chǎn)模型)時(shí),,可能會(huì)得到不同的結(jié)果,。
走過(guò)AI邊緣裝置的過(guò)渡期-在內(nèi)建MLC的ST MEMS傳感器上運(yùn)行嵌入式判定樹(shù),。
ST提供了LSM6DSOX、LSM6DSO32X,、LSM6DSRX和ISM330DHCX(這些裝置將MEMS傳感器與3軸加速度計(jì),、3軸陀螺儀和MLC整合),以及IIS2ICLX(整合了超高精度2軸加速度傳感器和MLC),。
因應(yīng)機(jī)器學(xué)習(xí)分類的需求,,我們進(jìn)行了硬件邏輯優(yōu)化且具備出色的傳感器規(guī)格(圖三),內(nèi)建MLC的MEMS動(dòng)作傳感器為使用者提供具有低功耗和較高實(shí)時(shí)精度的個(gè)人化嵌入式判定樹(shù)(圖三),。 MLC可以執(zhí)行高達(dá)32個(gè)特征值的判定樹(shù),。 意法半導(dǎo)體也提供了開(kāi)發(fā)環(huán)境,以便開(kāi)發(fā)者輕松開(kāi)發(fā)在MLC中運(yùn)行的判定樹(shù),。
開(kāi)發(fā)者可以在機(jī)器學(xué)習(xí)常用平臺(tái)(如Weka,、RapidMiner、MATLAB和Python(圖四))上進(jìn)行開(kāi)發(fā),。 盡管這些平臺(tái)相當(dāng)靈活且多功能,,開(kāi)發(fā)者仍需具備足夠的知識(shí)和技能才能妥善開(kāi)發(fā)適合該應(yīng)用的判定樹(shù)。
圖四 : MEMS MCL訓(xùn)練流程
為此,,意法半導(dǎo)體針對(duì)ST MEMS傳感器開(kāi)發(fā)板提供了Unico-GUI軟件,,其中包含多種特征,便于輕松開(kāi)發(fā)判定樹(shù)并載入至MLC,。 Unico-GUI用戶能夠輕松,、直觀地收集數(shù)據(jù),并透過(guò)簡(jiǎn)單易用的GUI來(lái)訓(xùn)練,、驗(yàn)證模型,。
意法半導(dǎo)體推出高度通用、配備多種傳感器的開(kāi)發(fā)板,,可滿足廣泛的硬件規(guī)格需求(圖5),。 開(kāi)發(fā)板配備支持MLC的MEMS動(dòng)作傳感器,并具有支持無(wú)線連接,、可由電池供電,、可在SD卡上存儲(chǔ)數(shù)據(jù)等特點(diǎn),具有高度通用性,可用于廣泛的應(yīng)用(包括汽車,、工業(yè)用儀表和消費(fèi)性電子裝置),。 意法半導(dǎo)體更提供AlgoBuilderSuite PC軟件,該軟件(搭配使用Unicleo)提供GUI,,可以輕松在開(kāi)發(fā)板上操作,,并進(jìn)行數(shù)據(jù)搜集。 有了AlgoBuilderSuite,,開(kāi)發(fā)者可以輕松,、直觀地對(duì)傳感器進(jìn)行程序設(shè)計(jì),且無(wú)需編寫撰寫任何程序,。
圖五 : 數(shù)據(jù)收集 – ST軟件與硬件工具
本文引用地址:http://www.eepw.com.cn/article/202112/430173.htm