有些研究課題是為了回答理論問題。有些研究課題是為了解決研究人員自己的問題。伊斯坦布爾理工大學(xué)的人工智能和智能系統(tǒng)實(shí)驗(yàn)室主任、控制和自動化工程教授 Tufan Kumbasar 的研究就屬于后一種情況。
控制和自動化工程師經(jīng)常使用反饋控制架構(gòu) (FCA) 來設(shè)計閉環(huán)控制,目的是管理或調(diào)節(jié)系統(tǒng)的行為以實(shí)現(xiàn)預(yù)期的結(jié)果。系統(tǒng)會反饋當(dāng)前狀態(tài)并將其與期望狀態(tài)進(jìn)行比較,然后系統(tǒng)進(jìn)行調(diào)整以保持期望狀態(tài)。這種類型的控制系統(tǒng)用于設(shè)置汽車的巡航控制、調(diào)節(jié)加熱系統(tǒng)和管理工廠。
通常,講授控制理論的教授會在白板上繪制 FCA。為了展示和分析系統(tǒng)的動態(tài)行為(即,它在各種輸入下的行為),教授會在模塊圖旁邊繪圖。但這需要時間,而且每次更改 FCA 后都要重新繪圖。解讀這些繪圖可能也很困難。
FCA 白板繪圖示例。(圖片所有權(quán):伊斯坦布爾理工大學(xué))“學(xué)生面臨的主要挑戰(zhàn)是識別我的板書和我糟糕的繪圖,它們根本不成比例,”Kumbasar說?!八麄兒茈y理解這種圖。”
一種替代方法是在 MATLAB和 Simulink 等科學(xué)計算軟件中重新創(chuàng)建FCA,并將計算出的繪圖投影到屏幕上?!癕ATLAB 有很好的可視化能力,”Kumbasar 說?!钡谡n堂上編碼需要花費(fèi)額外的時間和精力?!?/p>
然后,Kumbasar 想到了應(yīng)用人工智能 (AI) 來幫助控制系統(tǒng)課堂上的教學(xué)。
“初衷有點(diǎn)自私,”他說?!爱?dāng)時我擔(dān)任學(xué)院副院長,忙于許多行政工作。我同時承擔(dān)部分教學(xué)工作。有一天,我筋疲力盡,告訴我的研究生,我真的很累。我的教學(xué)要么都在計算機(jī)上完成,要么都在白板上完成?!?/p>
然后,他找到正在積極合作研究深度學(xué)習(xí)方法的研究生 Dorukhan Erdem 和 AykutBeke?!拔艺f’Dorukhan,既然你們在一起研究新穎的結(jié)構(gòu)。為我創(chuàng)建一個應(yīng)用程序怎么樣?我就當(dāng)你們的實(shí)驗(yàn)小白鼠?!?/p>
Kumbasar教授設(shè)想的應(yīng)用程序是一個深度學(xué)習(xí)系統(tǒng),它可以拍攝白板的照片并在 MATLAB 中自動重新創(chuàng)建 FCA。這種想法在 MathWorks 框架內(nèi)是可行的,其中像Simulink 這樣的控制工具與基于學(xué)科的工具箱(如 Deep Learning Toolbox 和 Computer VisionToolbox)在相同的環(huán)境中工作。
▼使用深度學(xué)習(xí)將白板轉(zhuǎn)換為模型
甘作實(shí)驗(yàn)小白鼠意味著需要繪制很多 FCA。Erdem 對這些繪圖進(jìn)行拍攝并標(biāo)注,以便計算機(jī)基于它們進(jìn)行學(xué)習(xí)。五個院系的教師為六種 FCA 中的每一種至少繪制 10 個模塊圖,總共得到 306 張圖像。教師在不同光照條件下繪制草圖,使這個挑戰(zhàn)更具有現(xiàn)實(shí)意義。然后,Erdem 和 Beke 手動標(biāo)注所有模塊和其中的符號。在訓(xùn)練期間,深度學(xué)習(xí)模型會猜測這些標(biāo)簽,并在不正確時調(diào)整其內(nèi)部參數(shù)。
最終的應(yīng)用程序流程發(fā)表在《IEEE Access》期刊上,包括五個步驟。
將白板草圖轉(zhuǎn)換為代碼的步驟圖。(圖片所有權(quán):伊斯坦布爾理工大學(xué))
首先是識別草圖與六種架構(gòu)類型中的哪一種最匹配。Kumbasar 的團(tuán)隊(duì)使用了一種稱為ResNet-50 的預(yù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),它使用 50 個網(wǎng)絡(luò)層和一些跳過中間層的長距離連接,從而提高性能。
306張圖像對于訓(xùn)練神經(jīng)網(wǎng)絡(luò)來說并不算多,尤其是這么大的神經(jīng)網(wǎng)絡(luò),因此團(tuán)隊(duì)采用了兩個技巧。首先是一種稱為遷移學(xué)習(xí)的做法。他們使用預(yù)訓(xùn)練的 ResNet-50網(wǎng)絡(luò)(該網(wǎng)絡(luò)基于成千上萬張日常物品的照片進(jìn)行訓(xùn)練)并替換了網(wǎng)絡(luò)的最終層,從而僅基于他們自己的照片訓(xùn)練該層。第二個技巧是數(shù)據(jù)增強(qiáng),該團(tuán)隊(duì)通過創(chuàng)建經(jīng)過稍微旋轉(zhuǎn)或縮放的版本來增加圖像的數(shù)量。經(jīng)過訓(xùn)練后,他們的流程的第一個步驟在對手寫反饋控制架構(gòu)進(jìn)行分類方面達(dá)到了89% 的準(zhǔn)確度。
流程中的第二個步驟是檢測模塊。程序?qū)D像轉(zhuǎn)換為二值圖像- 在黑色背景上顯示白線,沒有其他顏色或灰色。然后,它去除了字符和噪聲。接下來,它填充封閉的形狀,并將模塊與由模塊之間的反饋回路創(chuàng)建的封閉形狀分離開來。
第三個步驟是,流程識別在模塊中書寫的字符,包括數(shù)字和算術(shù)運(yùn)算符。它將圖像二值化,圍繞每個字符進(jìn)行裁剪,并應(yīng)用基于3920 個圖像進(jìn)行訓(xùn)練的另一個神經(jīng)網(wǎng)絡(luò)。
遇到的一個困難是區(qū)分“5”和“s”。Kumbasar 說,“我寫的 5 和 s太相似了。Dorukhan 總是抱怨我的書寫很糟糕。控制工程師憑直覺會認(rèn)為我不會寫 55+1,寫的應(yīng)該是 5s+1。但 AI系統(tǒng)不具備這種直覺?!北M管如此,此階段的準(zhǔn)確率達(dá)到了 96%。
第四個步驟是,應(yīng)用程序?qū)⒆址M合成 MATLAB函數(shù)。如果一個字符位于另一個字符的右上方,系統(tǒng)稱之為指數(shù),并插入“^”。如果一條水平線的上下都有字符,系統(tǒng)將其視為除法而不是減法。
用深度學(xué)習(xí)分割和區(qū)分字符。(圖片所有權(quán):伊斯坦布爾理工大學(xué))
在第五個步驟中,工作流將這些函數(shù)放到正確的模塊中,在 MATLAB 中將它們連接成一個完整的FCA。它還基于團(tuán)隊(duì)創(chuàng)建的模板創(chuàng)建一個 Simulink 圖。
Erdem表示,對于使用 ResNet-50 這樣的神經(jīng)網(wǎng)絡(luò)進(jìn)行深度學(xué)習(xí)來說,MATLAB 是有用的解決方案。Kumbasar 補(bǔ)充說,通過 MATLAB可以方便地進(jìn)行流程步驟之間的集成。他認(rèn)為,“在MATLAB 中,將數(shù)據(jù)數(shù)組和圖像從一個工具箱發(fā)送到另一個工具箱或從同一個工作區(qū)中讀取數(shù)據(jù)是很容易的?!?/p>
▼從草圖開始“當(dāng)這個 FCA 應(yīng)用程序?qū)崟r工作時,我感到很驚訝,”Kumbasar 說?!拔覀冊诓煌庹諚l件下測試整個流程,并混合了各人的書寫,可以說是盡一切可能增加了難度。
各個單獨(dú)部分都能良好地工作。Kumbasar 補(bǔ)充說,“但一旦您連接整個流程,如果一個部分出錯,另一個也會受到影響。因此,誤差始終會在從輸入到輸出的過程中放大?!痹谶@里,一切都在按部就班進(jìn)行?!癉orukhan說這是有趣的工程,讓他充滿動力。他找了很多超高難度的測試圖像?!?/p>
整個系統(tǒng)的成功程度很難度量,該團(tuán)隊(duì)尚未考察學(xué)生在實(shí)際教學(xué)中對該系統(tǒng)的體驗(yàn),新冠疫情就出現(xiàn)了。他們在YouTube上發(fā)布了一段視頻,視頻中教師在白板上繪制FCA。片刻后,相同的 FCA 出現(xiàn)在白板上方的 Simulink 投影中,隨后是展示其行為的繪圖。
提供白板繪圖的教授之一 ?lker üsto?lu 說,他對此印象深刻。如果該應(yīng)用程序作為產(chǎn)品推出,他會使用它?!八鼮榻虒W(xué)提供了便利?!?/p>
FCA 白板繪圖實(shí)時轉(zhuǎn)換為 Simulink。(視頻所有權(quán):伊斯坦布爾理工大學(xué))▼進(jìn)入理論領(lǐng)域不管該系統(tǒng)多么出色,仍有部分課堂不準(zhǔn)備用 MATLAB 轉(zhuǎn)換白板 FCA。Erdem 對該應(yīng)用程序進(jìn)行了優(yōu)化,例如將 ResNet 限制在 50 層,使其可以僅在一個 GPU 上實(shí)時運(yùn)行,但它仍需要一臺高分辨率相機(jī)和一臺具有GPU的筆記本電腦,而許多課堂并未配備這些設(shè)備。
“科學(xué)研究或者是出于好奇,或者是出于滿足需求。這項(xiàng)研究是滿足我的個人需求?!薄?Tufan Kumbasar,伊斯坦布爾理工大學(xué)人工智能和智能系統(tǒng)實(shí)驗(yàn)主任、控制和自動化工程教授
借助深度學(xué)習(xí),應(yīng)用程序能夠?qū)⒉煌L(fēng)格的書寫轉(zhuǎn)換為 MATLAB 函數(shù),并將函數(shù)放在正確的模塊中。(圖片所有權(quán):伊斯坦布爾理工大學(xué))
與此同時,研究人員正在考慮進(jìn)行幾項(xiàng)改進(jìn)。Erdem 希望該程序能夠處理六種以上的架構(gòu)。當(dāng)字符接觸到周圍的框時,系統(tǒng)也會難以識別,因此 Kumbasar 增加了置信水平,使系統(tǒng)能夠指示其標(biāo)簽的確定性。
集成模糊邏輯也是一個優(yōu)先事項(xiàng)?!霸谀:壿嬛?,您不會說超過一定身高的每個人都是高個子,而其他人都不是,”Kumbasar 解釋道?!叭藗兛赡軙f個子有點(diǎn)高,從而導(dǎo)致后續(xù)更微妙的決定。在 MATLAB 中很容易建立模糊層,模糊層將其與神經(jīng)網(wǎng)絡(luò)結(jié)合使用,或用于組成完整的模糊系統(tǒng)?!?/p>
如果該流程真的成為一種產(chǎn)品,其應(yīng)用范圍可能不僅限于課堂上。教授可能會用它將學(xué)生的手寫試卷或課下作業(yè)轉(zhuǎn)換為 MATLAB 模型來評分。學(xué)生可能用它將自己的課堂筆記數(shù)字化,并在 MATLAB 中使用 FCA。Kumbasar 說他想在研究中做同樣的事情。MathWorks 的工程師 Marco Rossi 指出,許多學(xué)生和研究人員更喜歡用筆和紙來分析問題,然后將手寫內(nèi)容放入 Simulink 中來生成 C 代碼。這種習(xí)慣可能源于控制理論的教學(xué)方式。但有了類似 Kumbasar 推出的這種工具,可能會促使人們在設(shè)計過程中更早地從紙上轉(zhuǎn)移到屏幕上,從而更輕松地使用模塊。
除了解決他自己的問題和推進(jìn)到理論研究之外,Kumbasar 還提到此項(xiàng)目的另一個好處?!斑@項(xiàng)研究也能很好地激勵本科生,”他說。讓他們認(rèn)識到工程靈感可以來自每天面對的難題。“科學(xué)研究或者是出于好奇,或者是出于滿足需求?!盞umbasar 說。“這項(xiàng)研究滿足了我的個人需求?!?/p>
審核編輯:湯梓紅
-
控制系統(tǒng)
+關(guān)注
關(guān)注
41文章
6647瀏覽量
110735 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5511瀏覽量
121355 -
FCA
+關(guān)注
關(guān)注
1文章
24瀏覽量
5217
原文標(biāo)題:教學(xué)前沿 | 深度學(xué)習(xí)將教授的白板草圖轉(zhuǎn)換為可用的模型
文章出處:【微信號:MATLAB,微信公眾號:MATLAB】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論