說起樂高積木,大多數(shù)人一定都想的是小孩子的玩具吧?但如果再加上Cortex-M4處理器,一兩個馬達(dá)和一些電線綁帶,你能把它玩得有“技術(shù)含量”嗎?當(dāng)然,“技術(shù)流”玩家還是有的,Sebastian F?rster,這位來自德國的嵌入式系統(tǒng)開發(fā)者,便用這些東西搭建了一個四足機(jī)器人,并且用神經(jīng)網(wǎng)絡(luò)教會它走路。這個被命名為“Scratchy”小怪物的機(jī)器人,一共有四個伺服電機(jī)控制四條腿,使用超聲波探測距離,主控則用的是STM32F407探索開發(fā)板。
對此,Arm深度學(xué)習(xí)技術(shù)總監(jiān)Mark Connor專程和Sebstian見面并對他進(jìn)行了采訪,請他談了一下為什么要做這個“小怪物”以及他的心得體會,讓我們一起來圍觀下吧。
能否談?wù)勀阍趺聪氲揭プ鲞@個“小怪物”的嗎?
我目前碩士學(xué)位論文的題目就是有關(guān)如何在更小的Cortex-M處理器上實(shí)現(xiàn)機(jī)器學(xué)習(xí),通過一個神經(jīng)網(wǎng)絡(luò)的實(shí)例來做性能測試。而作為測試的一部分,我把FANN神經(jīng)網(wǎng)絡(luò)庫移植到了Cortex-M4上,并且我不想做太學(xué)術(shù)太死板的東西,而希望是有型的東西,于是我選擇做個機(jī)器人。如你所見,其實(shí)我沒做的很復(fù)雜,就先把一些樂高積木連到電機(jī)上,然后再連到一塊有足夠Flash和SRAM的STM32F4開發(fā)板上。
“小怪物”的成功也證明了我論文的結(jié)論——在小型的基于Cortex-M設(shè)備上運(yùn)行機(jī)器學(xué)習(xí)算法是完全可能的。
你有沒有試圖自己對腿部動作進(jìn)行編程?
當(dāng)然沒有,這顯然應(yīng)該是讓AI去干的!“小怪物”的結(jié)構(gòu)允許我可以獨(dú)立地訓(xùn)練向前和向后的步法,讓我大吃一驚的是,雖然它沒有膝關(guān)節(jié),但是也能工作。因?yàn)镈eep Mind在 Atari Q-Learner上取得了很大的成功,所以我也決定使用Q-Learning,并且我可以在他們的基礎(chǔ)之上編寫Q-learning的代理。 FANN庫其實(shí)是由其他人開發(fā)并在LGPL許可下開源的,我只是單純移植到了Cortex-M4上。
你是如何決定網(wǎng)絡(luò)拓?fù)涞模?/p>
SRAM的大小限制了拓補(bǔ)結(jié)構(gòu),神經(jīng)網(wǎng)絡(luò)可以做的更大,但使用額外的變量會消耗非常多的存儲器空間,而我更想直接在Cortex-M4上直接進(jìn)行訓(xùn)練。在我看來,使用兩個或三個前饋層并沒有太大區(qū)別,盡管我沒有直接比較它們,而我想壓榨一下處理器!
用微控制器進(jìn)行當(dāng)前的神經(jīng)網(wǎng)絡(luò)研究是否容易?
其實(shí)裸C(非CUDA)框架完全可以適用于512Kb閃存和256Kb SRAM,我很幸運(yùn)地找到FANN,但是我需要編寫一個小文件系統(tǒng),以便庫可以直接從閃存加載保存的網(wǎng)絡(luò)權(quán)重。”
你對那些有興趣構(gòu)建和培訓(xùn)自己的機(jī)器人的開發(fā)者,有什么建議嗎?
-
機(jī)器人
+關(guān)注
關(guān)注
213文章
29748瀏覽量
212888 -
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4814瀏覽量
103622
原文標(biāo)題:如何利用神經(jīng)網(wǎng)絡(luò)教會“小怪物”走路?
文章出處:【微信號:arm_china,微信公眾號:Arm芯聞】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
【「# ROS 2智能機(jī)器人開發(fā)實(shí)踐」閱讀體驗(yàn)】機(jī)器人入門的引路書
BP神經(jīng)網(wǎng)絡(luò)與卷積神經(jīng)網(wǎng)絡(luò)的比較
BP神經(jīng)網(wǎng)絡(luò)的優(yōu)缺點(diǎn)分析
BP神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)的關(guān)系
人工神經(jīng)網(wǎng)絡(luò)的原理和多種神經(jīng)網(wǎng)絡(luò)架構(gòu)方法

【「具身智能機(jī)器人系統(tǒng)」閱讀體驗(yàn)】2.具身智能機(jī)器人的基礎(chǔ)模塊
卷積神經(jīng)網(wǎng)絡(luò)與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的比較
RNN模型與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的區(qū)別
Moku人工神經(jīng)網(wǎng)絡(luò)101

什么是拖動示教?機(jī)器人拖動示教方式分析

協(xié)作機(jī)器人拽拖示教詳解
焊接機(jī)器人示教模式怎么設(shè)置

評論