我們都知道,人類有學習的能力。由于人類不斷的追求學習和進步,我們今天才處于一個美好的文明社會。百科上是這么定義學習的:學習是通過閱讀、觀察、實踐等手段獲得知識或技能的過程,是使得個體得到持續性變化的行為方式。
在工業革命過后,關于機器學習的話題不停被人們提及和研究。
不難想象,具備有學習能力的機器人,由于經驗可以被無窮無盡的芯片儲存,機器人做出的判斷將越來越精準,犯錯的幾率也將趨于零。正因為這些優勢,機器學習被應用在了高級的、復雜條件下的視覺識別、決策判定等領域。
最近,某著名手機品牌又火了一把,它可以通過攝像頭,識別人臉并完成解鎖手機等功能。有趣的是,不管主人造型怎么變化,它都能認出主人的臉。
人臉視覺識別
實際上,該手機搭載有神經網絡芯片,通過機器學習,它能不斷的記住主人在每個造型下的微小區別(積累經驗)并進行橫向對比,最終它將基本不會認錯人。
同樣的,在 RoboMaster2017 的賽場上,有著一個九宮格大能量機關。這是當前版本的賽場中,唯一需要用到機器學習式視覺識別的人工智能機關。
擊打大能量機關
激活機關的過程有些復雜。機器人先要識別上方的 LED 數字燈,按照先后順序,依次識別并擊打下方每 1.5 秒就變換一次位置的手寫體數字,連續 5 次擊打成功即可激活機關。
大能量機關
我們來看下這個機關的難點:上方數碼管為有序、隨機變化的固定形態數字,下方九宮格為每 1.5 秒隨機變化位置和字體的手寫體數字,1.5 秒內只要錯了一個就要重頭開始。手寫體數字舉例如下:
各種形態的數字 1
面對各種字體的數字一,若按照上一期的傳統視覺方法來識別,機器人需要將這五種情況“背下來”。但是,萬一比賽出現了第 6 種數字一,機器人就會徹底蒙圈了:“這是啥?沒見過,不認識。
通過上面兩個例子,我們可以知道,RoboMaster 賽場中的大能量機關屬于更高級的、復雜條件下的視覺識別難題,需要用機器學習來解決。
機器人具備機器學習的能力,實際上是在說它的計算機程序具備機器學習的能力。
一個計算機程序不斷地實戰,過程中不斷累積經驗,自己提高解決問題的能力,則認為該程序具有機器學習能力。簡單說,就是丟給機器一大堆樣本范例,讓它自己學習理解,再舉一反三,解決范例以外的問題如果是經過機器學習訓練的機器人呢?只要訓練得當,哪怕蘿卜君變異成白蘿卜,變成炒蘿卜絲,都逃不過它的法眼,一眼看穿!
要想讓機器人能通過程序學習,首先需要搭建機器學習系統的架構。前人栽樹,后人乘涼。對于初學者來說,大部分常見的架構都是搭建好的,有些甚至只需要在軟件中敲入幾行代碼就能完成一個機器學習系統的搭建。由谷歌開發的 TensorFlow,在機器學習研究領域中較為主流,其代碼質量高、成熟度高。