羅紅梅
摘要:文章通過介紹一款手機游戲APP的制作,演示了機器學習中的監(jiān)督學習過程,讓學生在游戲的過程中對機器學習和圖像識別有一個大致的了解,以期讓學生認識身邊的人工智能。
關鍵詞:圖像識別;App Inventor;機器學習
中圖分類號:TP18 文獻標識碼:A
文章編號:1009-3044(2020)01-0049-02
機器學習是人工智能的核心,深度學習是機器學習中一個新的研究方向,它能夠讓機器像人一樣具有分析學習能力,能夠識別文字、圖像和聲音等數(shù)據(jù)。為了讓中學生對機器學習、圖像識別的過程有一個感性的認識,以期引起孩子們學習人工智能的興趣,文章介紹一個簡單的圖片識別APP的制作流程。通過這個APP,手機能夠判斷出照片中的對象是什么物體。
1開發(fā)環(huán)境介紹
App Inventor是谷歌公司開發(fā)的、完全在線的手機編程軟件,它將代碼全部編寫完畢并封裝成組件,使用者只需用積木式的拖拽來完成Android編程,它也支持樂高NXT機器人,可以完成手機控制機器人。
MLforkids為訓練機器學習模型提供了一個易于使用的引導環(huán)境,可用于分類文本、數(shù)字或識別圖像,它能夠將訓練過的機器學習模型添加到App Inventor項目中,該工具完全基于網(wǎng)絡,無須安裝或復雜的設置,它使用的后臺AI平臺是IBM的Watson。
2項目設計
本項目利用A0p Inventor 2做一個手機捉迷藏游戲APP,首先在MLforkids網(wǎng)站上給機器提供樣本,每種類別至少提供十個,機器通過學習這些樣本產(chǎn)生一個模型,將這個模型導入App In-ventor 2就可以制作識別這些對象的APP。玩家找到事先定義的對象須拍照證明,手機APP將能夠分析照片并識別該對象。
2.1收集樣本
在瀏覽器中打開網(wǎng)址https://maehineleamingforkids.eo.uk/,登錄并創(chuàng)建一個新項目,注意項目名稱不可使用漢字,識別類型選擇“圖像”,點擊“訓練”按鈕后,添加三個標簽并分別命名為“Cat”“Rabbit”“Scissors”的標簽桶,標簽名也不可有漢字。點擊第一個標簽桶中的“攝像頭”按鈕,用攝像頭給第一個物體拍照,嘗試從不同側面、角度或距離拍,重復拍攝至少十張片。按相同的方法給第二和第三個物體拍照。圖1為樣本收集圖。
2.2訓練機器學習模型
在項目頁面中,點擊“學習和測試”按鈕,點擊“培養(yǎng)新的機器學習模型”按鈕,后臺IBM的Watson平臺就開始運作,當前型號狀態(tài)顯示“Available”時,說明模型已經(jīng)訓練完成。紅色顯示的URL地址就是我們后期APP制作用到的機器學習模型的唯一地址,將其拷貝下來。
2.3APP編程
在瀏覽器中輸入地址:http://app.gzjkw.net,這是廣州電教館架設的App Inventor 2服務器。無須注冊直接用QQ帳號即可登錄。新建一個App Inventor項目(注意:項目名稱不可使用中文)。在組件面版中點擊“Import Extension”,點擊“URL”將上一步獲得的地址復制到這里,點擊“Impoa”按鈕,如此即可將剛剛訓練好的機器學習模型導入,即為兒童機器學習擴展(“ML4K”),將其拖到設計界面,完成此操作后,圖標將添加到在“不可見組件”列表中。圖2為此移動游戲界面組件設計,表1為所有組件設計的參數(shù)設置。
邏輯設計將完成以下功能:點擊“開始”按鈕啟動游戲,找到對象后點擊“拍照”按鈕調(diào)用手機上的相機功能拍照,如果ML4K模型驗證是所需對象的照片,其標簽將以綠色背景突出顯示。當三個對象都被找到,即三個標簽的背景均為綠色時游戲結束,對話框提示完成游戲所花費的時間,其他邏輯設計較為簡單,圖3為ML4K模塊的關鍵部分邏輯設計。2AAPP功能測試
當機器學習模型已驗證找到所有三個對象后,計時器將停止計時并由對話框報告花費的時間,圖4為APP游戲的運行效果。
3結束語
這個項目訓練了機器學習模型來識別物體。首先通過收集這些對象的照片樣本并”標記”,即告訴計算機每張照片中的內(nèi)容,計算機使用這些標記來訓練模型,通過查找圖案的顏色和形狀來學習如何識別新照片,這被稱為“監(jiān)督學習”。樣本越具有多樣性,機器學習模型的性能越好,判斷的準確率也越高。例如可嘗試添加具有不同背景的樣本;拍攝時將對象靠近或遠離相機,也可以將對象四面顛倒,從頂部和底部拍攝對象。在這個項目中,訓練一臺電腦,看看它是如何學習,嘗試找出它的錯誤、教它如何改進,并看到它改變,這就是最簡單的人工智能。