



夸美紐斯在其開創“教育學”這一學科的巨著《大教學論》的第十一章中,曾指出“在此以前沒有一所完善的學校”,這句話在目前同樣適用。因為我們目前也正處于一個“重新定義教育和學習”的新時代。就像在夸美紐斯的學校中,每個人都平等地接受語文、數學、科學和藝術教育一樣,人工智能教育的出現,給了我們一種重新看待學校和學習的視角。人工智能需要普及,僅僅將人工智能看成學習方式的觀點需要被修正甚至變革。這樣,我們面臨的首個問題就是人工智能教育的教學內容是什么。
本期對話,北京師范大學的在讀博士吳俊杰、上海人工智能實驗室的戴娟和浙江省溫州中學的謝作如老師,將共話中小學AI教育需要怎樣的工具,從學習工具角度分析AI教育教什么和怎么教的問題,從這個意義上說,人工智能教育的“大教學論”的序幕才算是拉開了。
北京師范大學在讀博士,創客教育普惠課程發起人,www.chinaaitest.com人工智能創客素養能力測評專家。研究方向為創客教育的評價及教師專業發展、科創教育指導下的跨學科項目課程與拔尖創新人才培養。
上海人工智能實驗室智能教育中心主任,商湯科技教育研究院院長,曾任職美國蘋果Siri部門產品總監和美國微軟Window Phone部門資深產品經理。
》 謝作如
浙江省溫州中學人工智能實驗室負責人,正高級教師,省特級教師,省“萬人計劃”教學名師,中國電子學會現代教育技術分會副主任委員,中國教育技術協會信息技術教育專委會常務理事,上海人工智能實驗室智能教育中心AI科創教育顧問,浙江教育出版社出版的高中信息技術教材分冊主編,清華大學“大、中、小學一條龍教學研究”實驗教材編寫組信息技術教材副主編。
AI教育和創客教育、智慧教育的關系
吳俊杰:我知道謝作如老師目前在領銜研發一款AI教育工具。準確地說,是他對當前的AI學習工具不滿意,決定“出山”自己來做一個新的。因此,我想先問謝作如老師一個問題:近兩年,“AI教育”在中小學是一個熱詞,是不是可以用AI教育來替代創客教育,或者說AI教育已經替代了創客教育?
謝作如:我不認同AI教育替代了創客教育這一說法。AI教育與創客教育,從來就不是替代和被替代的對立關系。雖然創客教育強調的是在造物中學習,而AI教育關注的是技術學習,用AI技術去解決問題。但是二者關系非常密切,因為創客總是會用更先進的工具去解決問題,當AI技術的門檻降下來了,或者說AI技術“大規模業余化”了,創客們就自然而然會用AI作為工具,去造智能的物,解決更多的問題。
我給學生上人工智能課的時候,會有意識地找一些身邊的真實問題作為案例,讓學生去解決。創客教育強調的是“為解決問題而學習”,學習AI要解決的問題不能局限在計算機本身,應該源自真實的物理世界,這樣才能激發學生的學習興趣。所以,AI教育也會像創客教育一樣,采用項目式學習的理念。例如,這十來年中,我和學生經常在創客空間研究各種識別人體姿勢的技術,這些研究項目既可以說是創客教育,也可以說是AI教育。因而,AI教育和創客教育是互補的,不是對立的。
吳俊杰:記得2017年時,我們在北京組織了一次小型研討會,和AI行業專家一起探討如何開展AI教育。那時,國務院《新一代人工智能發展規劃》發布不久,人工智能成為一個熱詞,但中小學卻不知道如何實施。后來我們把研討會的主要觀點整理為一期對話,標題是“人工智能教育:袪魅、進展與實務”。一轉眼五年過去了,當時的一些觀點,是否發生了變化?
謝作如:想起那次會議我記憶猶新。記得我們討論了整整半天后得出結論:AI教育至少有兩個教育目標,一是培養適應AI時代的人,二是培養能研發AI應用的人。對于中小學來講,重點是先要解決第一個目標,每一個孩子都必須學會如何與AI和平相處。下一步是吸引一部分孩子對AI產生興趣,試著用AI解決一些問題。而要做到這些,需要有一系列AI項目和一套AI課程,還需要好的AI開發和學習工具。
吳俊杰:現在還有一個教育名詞叫做智慧教育,它和人工智能教育似乎也有很多關聯,能否簡單分析一下?
謝作如:因為常常有人將人工智能教育簡化為“智能教育”,這就和智慧教育看起來特別像。其實智慧教育就是教育信息化,關注的是以物聯網、大數據、人工智能為代表的新技術在教育中的應用,與今天討論的將人工智能作為學生學習內容的教育是兩回事。但我一直將智慧教育中的很多應用場景,如智慧教室、智慧校園作為學生研究人工智能技術的實踐場,讓學生從智慧教育的用戶走向工程師、設計師。
AI課程及其與學習工具的關系
吳俊杰:戴娟老師既是實驗室智能教育中心的負責人,也是一名資深的中小學AI教育研究者,早在2018年就帶著團隊開發AI課程。我想請戴娟老師談談在中小學AI教育深耕多年后的心得。
戴娟:我學的就是AI專業,2018年,一個偶然的契機讓我走上了青少年AI教育之路。這是一項開創性的工作,我們的想法和認知隨著實際教學活動的反饋也在發生改變。通常的人工智能的定義是制造出能思考、能學習、能推理、能決策和能行動的機器。基于這一點,我們努力去開發能夠體驗和應用AI的課程,幫助中小學生更好地了解AI技術及其應用。
隨著研究的深入,我們逐步認識到了AI教育對于孩子成長還有另一層意義。因為AI也是一種認知科學,當教孩子們訓練計算機來理解語言和作文的時候,他們需要深入理解語言的本質;當教孩子們如何教會機器學習并且了解機器有哪些學習的方法的時候,他們需要思考關于學習的問題;當教孩子們如何教會機器推理和決策(機器的思考)的時候,他們需要研究關于思考的問題。人類的大腦具有思考其自身的能力,AI作為一種人造的體外智能,可以幫助孩子們將其形式化的心智和認知發展轉化為具象的學習過程。
吳俊杰:謝老師長期工作在一線,您能否評價一下當前的中小學AI教育現狀,并說說對AI教育的期望?
謝作如:我認為到現在為止,AI教育并沒有得到很好的發展。雖然中小學冠名為AI教育的課程很多,但是良莠不齊。我將當前的中小學AI課程分成三類,第一類是“渾水摸魚”型,就是把之前的編程、機器人課程,甚至包括樂高積木拼搭之類的課程改個名。第二類是“陽春白雪”型,把高校的人工智能課直接拿過來給中小學,可惜代碼太復雜,只能體驗。第三類是“撓癢癢”型,或者稱為AI應用課程。這類課程把AI部分交給了硬件,如智能攝像頭、離線語音識別模塊,對學生來說,無非用了功能更強大一點的電子模塊,哪怕做出了智能作品,但對AI的原理并不了解。
在我眼里,真正的AI教育是第四類課程。通過這類課程的學習,學生能夠掌握機器學習的方法,親歷整理數據、選擇模型、訓練模型以及最終解決問題的過程。學生只有親歷了用機器學習解決問題的過程,才能深刻理解數據、算法和算力對人工智能的意義。2019年,我在編寫初中AI教材和初中信息科技教材時,就希望能編寫出這樣的課程,但因為缺少好的AI學習工具,很多想法沒辦法落地。對初學者而言,現有的AI開發框架都太難了,且不說TensorFlow和Pytorch了,就連Keras對中學生的代碼能力要求也太高了。
吳俊杰:我在景山學校當了十幾年的創客教師,能深刻理解學習工具對課程開發的重要性。記得在開源硬件Arduino出現之前,學習單片機是挺難的;在掌控板和SIoT(一款開源MQTT服務器)出現之前,學習物聯網也是挺難的。現在,我已經明白了開發AI學習工具的初衷了——因為當前的AI開發工具太難,學生掌握起來有難度,而圖形化類自稱能做AI編程的工具又太簡單。那么,謝老師您認為一個好的AI學習工具應該是什么樣的?
謝作如:這幾年,我一直在找一款好的AI學習工具,我希望這個工具入門簡單,讓學生用簡潔的代碼就能完成深度學習的訓練,訓練出來的模型能夠部署為真正的AI應用,借助這一工具又能體驗最新的AI算法模型。簡單地說,這款工具同時具有學習工具和開發工具的特點,就如Python一樣,代碼簡單,又能用來解決真實問題。
吳俊杰:我很認同您的分析,因為找不到這樣的學習工具,那就自力更生做一個,對吧?謝老師研發的AI學習工具叫什么名字?
謝作如:因為是源自開源AI算法框架OpenMMLab,針對中小學在語法方面做優化,降低技術門檻,因而取名為MMEdu。
MMEdu是一個什么樣的工具
吳俊杰:戴娟老師能否簡單介紹一下OpenMMLab?
戴娟:OpenMMLab最早來自香港中文大學的MultiMediaLab(MMLab)實驗室,由湯曉鷗教授領銜建設。上海人工智能實驗室在2021世界人工智能大會上發布了新一代OpenMMLab,作為深度學習時代計算機視覺領域具有影響力的開源算法平臺,OpenMMLab升級后涵蓋更廣泛的算法領域和應用場景,實現了從訓練到部署的全鏈條價值。
MMEdu項目的出發點是將OpenMMLab“降維”,希望將技術門檻降到中小學生也能使用。目前MMEdu項目的負責人就是謝作如老師,研發團隊主要是實驗室的實習生,分別來自上海交大、中國科學院大學、上海科技大學等高校的AI專業大四學生或者研究生。他們大多是OpenMMLab的用戶,具有很強的AI研究和開發能力。
吳俊杰:我明白了,相當于是基于OpenMMLab團隊的科研成果,延續其在工業和科研領域的硬實力,開發了針對中小學的以“實干興邦”為導向的真正的人工智能工具MMEdu。謝老師,您參與了好幾個版本的AI教材編寫,能不能從教材編寫的角度來談談MMEdu的開發?
謝作如:當前的中小學教材里用到的大部分AI工具,基本上都是由國外團隊開發的軟件。以高中的《人工智能初步》教材為例,六個版本的教材涉及機器學習和神經網絡的,全部使用Google公司的AI開發框架TensorFlow。因為TensorFlow有個前端的工具叫做Keras,教材中所有的神經網絡都用Keras搭建,但Keras的使用門檻還是比較高,它不是為中小學生的學習開發的。
因為缺少好的AI工具,教材中的機器學習案例都局限于解決一些鳶尾花識別、手寫體識別的分類問題,幾乎不會涉及更復雜一點的AI識別問題,如圖片中的目標檢測,即圖片里面有多少個手表或者是有多少支筆之類的問題。
吳俊杰:所以,您認為大部分的人工智能教材里的例子,在難度上太簡單,很難用這些AI知識去解決生活中的真實問題,是嗎?
謝作如:在高中人工智能教材編寫過程中,的確能看出情境單一、應用窄化、知識陳舊的問題,如機器學習算法停留在決策樹和回歸上,卷積神經網絡內容非常淺,甚至回避,深度學習更是一片空白。“人工智能初步”模塊是選修課程,學生一旦選學以后,就意味著要走一條深入學習人工智能的專業道路,可教材并沒有提供這條道路,沒有讓學生學到最關鍵最有用的東西。但是,不能因為這一點去指責教材的編寫者,沒有好的工具誰也沒辦法。我也不例外,對自己前幾年編寫的AI教材不太滿意,才有了強烈的開發一個好工具的想法。
吳俊杰:我也教過AI課程,講過機器學習和蟻群算法,但一直覺得深度學習很高深,還沒有研究過。那么,中小學生能掌握這些連我現在都還不太理解的技術嗎?
謝作如:這一輪人工智能的興起,就在于深度學習的成功。而深度學習背后的原理,到目前為止還存在一個技術瓶頸,那就是“不可解釋性”。也就是說,現在大家都是把深度學習作為一個黑箱子去使用,因而才有AI工程師戲稱訓練模型過程為“煉丹”。對于中小學生來說,并不是一定要弄清楚原理才能去使用深度學習這一技術。例如,現在幾乎每個孩子打開平板就會用它上網、玩游戲,但他們知道“觸屏”技術的原理嗎?知道TCP/IP和HTTP協議嗎?從這一點看,要讓中小學生把AI當作“黑盒”工具先用起來,至于背后的數學原理,等上了高校再研究吧,這點神秘感還能成為他們探索未知的動力。
基于這樣的認識,我就特別想讓學生去接觸一些前沿的AI應用,如目標檢測和對抗神經網絡等。我第一次看到對抗神經網絡的案例是在創客空間,一位學生用百度的PaddlePaddle運行了自動生成貓臉,身邊的其他同學和我一樣,眼睛都亮了。只可惜代碼太復雜,寫教材的時候我沒有辦法將這樣的例子寫進去。因而,當我了解到OpenMMLab愿意為中小學做“降維”的時候,就特別激動,因此才有了MMEdu的故事。
吳俊杰:您不擔心這個工具開發出來以后,它也會像借用AI開放平臺接口技術的編程語言一樣,學生只是敲了幾行代碼去調用,并沒有學到真正的技術?
謝作如:我們先來看兩段代碼吧(如下頁圖1)。
前面一段是調用某AI開放平臺的代碼,后面是MMEdu的模型推理代碼,功能都是識別一張手勢的圖,輸出結果。如果去除了開放平臺的一些必要用戶信息,兩段代碼都非常簡潔,很容易理解。但不同的是,前者調用的是部署在云端的公用AI模型,后者則是用自己在本地訓練的模型權重文件(“latest.pth”)做的推理。前者如同用“翻譯軟件”讀英語,自己并沒有真正懂英語,而后者是真正地掌握了技術,可以根據自己的需要訓練不同的AI模型。
那么,用MMEdu訓練一個AI模型困難嗎?我們再來看一段用MMClassification模塊訓練的圖片分類模型的代碼(如圖2)。
現在,吳老師是不是已經發現MMEdu的模型訓練和推理的代碼都非常簡潔也很好理解,讀起來非常像偽代碼?其實,深度學習本來就不復雜,無非是找到一組數據(數據集),搭建一個神經網絡模型,然后開始訓練,當訓練出來的模型識別效果不錯或者發現繼續訓練準確度也不會再提高時,就可以停止訓練,保存這個相應的權重文件,如圖3所示。
為什么MMEdu代碼可以做到這么簡潔?吳老師看“model = MMClassification(backbone='LeNet')”這句代碼,“LeNet”是一個典型的神經網絡,用于手寫數字和字母的識別效果特別好,也是卷積神經網絡中必學的內容。如果用Keras寫代碼,搭建LeNet網絡需要挺長的一段代碼,而MMEdu寫出網絡名稱就能直接調用。這就是用OpenMMLab研究AI的優勢所在。請戴娟老師來解釋一下背后的原理,她在香港中文大學讀書時參與過OpenMMLab的開發。
戴娟:OpenMMLab現任負責人林達華老師曾經這樣歸納——OpenMMLab助力開發者縮短AI項目路徑。這是因為OpenMMLab內置很多類似“LeNet”的經典網絡,如MobileNet、yolov3等。這些內置的經典網絡也叫做SOTA模型,SOTA是“state-of-the-art”的縮寫,指在某項研究任務中,目前表現最好、最先進的模型。在科技屆有句名言叫“不要重復造輪子”(Stop Trying to Reinvent the Wheel),也就是說,像這些SOTA模型本來就沒有必要讓開發人員費力去重新搭建,直接調用就可以了。
謝作如:OpenMMLab的這一功能讓我想到了Python。以排序為例,以前我們教VB,所以要學習冒泡、選擇之類的排序算法。現在用Python了,要排序就直接用“sorted”或者“sort()”,非常方便。必修教材也不再介紹排序算法了,只有在研究算法的時候(如“算法基礎”模塊)才會自己寫代碼演示排序的原理。同樣,MMEdu雖然內置了很多SOTA模型,但用戶也可以借助MMBase模塊,一層一層地搭建出個性化的模型。
吳俊杰:我理解了。的確,開源硬件的出現也是如此,是為了降低單片機開發的難度,用Arduino的引腳代碼控制引腳就很簡單,像PWM、舵機控制的代碼,直接封裝為函數,不用單獨去寫。這樣看來,創客教育的經歷為謝老師開發AI學習工具提供了很好的經驗。那么,MMEdu在代碼簡化方面還做了哪些工作?
謝作如:除了內置SOTA模型,MMEdu還統一了數據集的格式,如圖片分類采用了ImageNet,物體檢測采用了COCO。學生按照數據集的要求整理好數據,在代碼中指定路徑就可以了。我們認為學生整理數據集也是一種通用的能力,像物理實驗素養一樣,可以稱為人工智能實驗素養。
此外,MMEdu簡化了訓練時的各種參數。我們請項目組的同學給這些參數都設定好缺省值,這樣一來,雖然犧牲了一部分的性能,但入門就簡單了。目前,MMEdu訓練時一般只需要寫一個參數,那就是Epoch,即訓練的輪次。
需要說明的是,訓練參數雖然都設置了缺省值,但是學生如果理解了某個參數的價值,訓練時就可以添加這個參數,如默認“validate”為“True”,表示訓練時能看到準確率,改為“False”則能夠提高一點速度。這就給學生們一種暗示:掌握的AI知識越多,訓練出來的模型可能就越好,速度也可能更快。這些參數添加的方式和OpenMMLab完全一致,也就是說當學生掌握了MMEdu,再遷移到OpenMMLab是無縫的。
吳俊杰:您的這段話也啟發了我,在物理課程與教學論專業有一個詞叫做概念的進階,指學生對概念的理解就像臺階一樣。例如,“力”這個概念,在小學階段“力”就是一種來自身體的直觀感受;到了初中,“力”可以通過測力計之類的工具測量,能看到具體的數值;到了高中,就進階到牛頓第二定律、牛頓第三定律的層次;到了大學,“力”這個概念可能不一定存在了,變成動量的一種流動形式。我感覺用MMEdu學習AI,也是這樣逐步“進階”的過程。那能不能用簡短的一句話來定義MMEdu是一個怎樣的工具?
謝作如:我的定義是一款“開箱即用”的AI學習或者開發工具。這里的“開箱即用”不僅僅是內置了SOTA模型之類,還包括了環境的配置。MMEdu直接解壓就能使用,老師們再也不用為環境配置而發愁了。
吳俊杰:我再問一個初級的問題。在一般老師看來,調用AI開放平臺就能實現很多的AI應用,那么,學生用MMEdu自己訓練模型,與使用AI開放平臺相比有什么區別?我是指能不能解決某些用AI開放平臺無法解決的問題?
謝作如:現在的AI開放平臺的確功能非常強大,已經能夠實現很多AI識別功能。以某AI開放平臺為例,上傳一張動物的照片,能夠返回準確度很高的識別結果。但是,如果用戶僅僅想識別出自己家的寵物,則需要啟用“EasyDL定制動物識別”功能,雖然這一過程并不用寫代碼,但是操作非常煩瑣,而且還要收費。在MMEdu上,學生們只要自己給寵物多拍幾張不同角度的照片,再找一些其他的動物照片,分為兩組,按照前面的代碼開始訓練就可以了。只要數據集做得好,識別效果也是相當不錯的。
用簡單的語言去概括:AI開放平臺提供的是通用的AI能力,而自己訓練的模型,實現的是個性化的AI能力。最重要的是,通過MMEdu訓練模型得到的AI解決問題能力是真實的、永久的。
吳俊杰:這是一個有說服力的例子,我也心動了。我記得謝老師在前面提到過很多工具,如TensorFlow、Pytorch和Keras,還有PaddlePaddle。MMEdu和這些工具之間是什么關系呢?
戴娟:TensorFlow、Pytorch和PaddlePaddle都可以稱為AI開發框架,而Keras、OpenMMLab可以稱為前端的API工具,是基于AI開發框架的封裝。MMEdu則是對OpenMMLab進一步封裝(如下頁圖4)。TensorFlow和Pytorch目前是AI領域最大的兩個陣營,PaddlePaddle的用戶規模要少很多。實際上,Keras也是支持Pytorch的,而OpenMMLab修改底層后也能夠支持TensorFlow或者PaddlePaddle。但因為TensorFlow并沒有真正開源,因而目前學術界使用Pytorch的越來越多了。
吳俊杰:那用MMEdu訓練出來的模型,能不能運行在樹莓派、虛谷號之類的迷你電腦上?
戴娟:目前MMEdu已經能夠部署到樹莓派和Jetson Nano上。當然,你可別期望在迷你電腦上訓練模型,速度真的太慢了。另外,OpenMMLab中有個模塊叫做MMDeploy,是一個模型部署工具,其功能是把機器學習訓練生成的算法模型,部署到各類移動或者邊緣計算設備上去,并使之高效運行,從而將算法模型實際地應用到現實生活的各類任務中去。目前MMDeploy所支持的算法模塊有檢測(MMDetection)、分割(MMSegmentation)、分類(MMClassification)、編輯(MMEditing)和文字識別(MMOCR)等,支持后端推理引擎類型有ONNX Runtime、TensorRT和OpenVINO等。相信在不久的將來,用MMEdu訓練出來的模型,能夠部署到更多的迷你終端上。
謝作如:再補充一點,MMEdu還內置了siot、pinpong、PyWebIO等與開源硬件或者物聯網互動的庫,學生可以在自己的計算機或者算力服務器上訓練模型,然后部署到各種開源硬件上。在溫州中學人工智能實驗室里,就部署了好幾個學生設計的AI與智能家居設備互動的作品。學生們已經把智慧校園真正當作了AI技術的實踐場。
MMEdu的未來展望
吳俊杰:聊了這么多,回到一個傳統的問題, OpenMMLab是個開源的工具,是否要求他人用MMEdu的訓練結果(指模型和權重文件)也開源?或者說MMEdu能不能用于商用項目?
戴娟:我們的確很希望有更多的人來貢獻他們的數據集和訓練出來的模型權重,所以后面在策劃做一個社區。智能教育中心目前有一個團隊專門做社區,但問題在于需要建設一個怎樣的機制,才能吸引師生們參與到這個社區中去,開源他們的研究成果?靠著某種協議強制開源似乎不可行。我想只要我們堅持把MMEdu做好,開源的機制總會慢慢設計出來。
謝作如:MMEdu肯定能用于商用項目,正如很多創客會用開源硬件來做產品原型一樣。我倒特別期待有團隊用MMEdu做商業項目,因為這更能說明MMEdu是一個真正的AI開發工具。
對話后記
完成了這一次的對話,讓我認識了一個既熟悉又陌生的謝作如。我認識謝作如老師很多年,他一直在研究前沿技術,而我一直只研究成熟技術的普及,此次MMEdu的出現,在中小學AI教育領域讓人工智能成為一種成熟的技術,并且可以成為提高教育的社會生產力的一種通用工具了。
人工智能是科學,科學是全人類的財富,科學家是促進社會進步最重要的一支力量,科學普及是教育也是育人,真正的教育是直接產生社會價值的,也會讓社會變得更加美好。我相信,依靠人類的力量,一個屬于人工智能教育的“大教學”的時代,即將來臨。
(吳俊杰)