王飛
“初探人臉識別系統(tǒng)”是“校園人臉識別系統(tǒng)開發(fā)”的第一課時,其要解決的根本問題是站在宏觀的角度,找到設(shè)計人臉識別項目中的共性問題:原理與技術(shù)難點實現(xiàn),進行集中突破與解決。從而保證學生在后面的課程中可以合理進行項目的分析與技術(shù)落實,切實地使人工智能相關(guān)知識與技術(shù)落地。
一個完整的人臉識別系統(tǒng)要求計算機能夠進行人臉定位、特征分析、匹配人臉等關(guān)鍵的三步,從而保證計算機對一張人臉圖像能夠看得到、看得懂、認得出。圍繞這一線索,本課從基本原理入手,最終完成身份識別。在初中階段,學生學習人工智能主要從技術(shù)體驗、原理理解、圖形化編程實踐幾個方面入手,依次進行學習理解;技術(shù)體驗層面,從計算機認識他們開始出發(fā),去體驗人工智能技術(shù)的神奇,同時開源的代碼和匹配過程的可視化,讓他們感到神秘的人工智能技術(shù)背后的技術(shù)支持;原理部分相對枯燥,同時內(nèi)容晦澀難懂。教學中嘗試使用人工智能服務(wù)平臺,并和編程解決思想過程相結(jié)合,規(guī)避復(fù)雜的特征模型提取、特征對比等數(shù)學問題;編程平臺采用基于Scratch 3.0的圖形化編程環(huán)境Scratch GUI提供的機器學習模型,利用積木模塊訓練人臉模型,并進行判定。
本課講授對象為北京師范大學附屬中學初二實驗班的學生,他們具有較強的邏輯思維和學習能力。通過一些輔助材料,如學案、微課或微視頻能夠很快掌握新知,并提出有建設(shè)性的觀點或完成個性化的作品。
在日常經(jīng)驗中,他們具有人臉識別技術(shù)相關(guān)的產(chǎn)品或應(yīng)用的使用和體驗經(jīng)歷,如需要利用人臉識別技術(shù)解鎖手機,人臉簽到系統(tǒng)等。但是對技術(shù)的認知停留在使用層面,對執(zhí)行的具體過程和背后蘊含的原理缺乏足夠的認識與理解。
在知識掌握層面,學生們已經(jīng)初步掌握了Simba編程平臺的使用方法,能夠利用圖形化編程平臺編寫簡單程序。如能夠利用圖形化指令獲取人的部分臉部特征進行判定,以此作為基礎(chǔ)制作一些簡單應(yīng)用。這些優(yōu)勢可以有助于完成對于開源工具Scratch 3.0的遷移。但對于相對復(fù)雜的技術(shù)實現(xiàn),如利用人臉識別技術(shù)識別人的身份信息,無論從原理認知還是編程實現(xiàn)上都存在著較大的困惑與障礙。因此將本節(jié)課的落腳點放在幫助學生突破原理難點,實現(xiàn)關(guān)鍵技術(shù)上,為后面的項目設(shè)計打下基礎(chǔ)。
由于是和學生第一次見面,學生的課上活動情況不明,可能會出現(xiàn)不踴躍回答問題、不集中精力上課的情況,因此需要教師在課堂上多加引導(dǎo)。
本節(jié)課旨在讓學生了解人臉識別技術(shù)在實際生活中的應(yīng)用與價值,理解人臉識別系統(tǒng)的工作過程和基本原理,能夠使用開源編程工具模擬人臉識別系統(tǒng)的工作過程,理解開發(fā)人臉識別項目的關(guān)鍵問題和相應(yīng)的解決手段。
依據(jù)《普通高中技術(shù)課程標準(實驗)》選擇性必修模塊要求:“利用開源人工智能應(yīng)用框架,搭建簡單的人工智能應(yīng)用模塊,并能根據(jù)實際需要配置適當?shù)沫h(huán)境、參數(shù)及自然交互方式?!北卷椖恐攸c關(guān)注人臉識別系統(tǒng)的設(shè)計,能夠使用Scratch3.0 GUI搭建模塊,同時能夠使用通訊模塊輔助Python代碼完成與人工智能服務(wù)平臺的通訊,完成相對復(fù)雜的交互過程。
依據(jù)《普通高中技術(shù)課程標準(實驗)》模塊1“數(shù)據(jù)與計算”要求,本課以圖形化開源工具為依托,能夠結(jié)合人臉識別項目實現(xiàn)基本的程序過程;能夠掌握系統(tǒng)運行過程中的數(shù)據(jù)傳遞過程,合理設(shè)計數(shù)據(jù)結(jié)構(gòu)和運算方法;通過圖形化編程和開源代碼提供的接口完成數(shù)據(jù)處理。
教學方式采用講授法、討論法、探究法等。用到的資源和設(shè)備有問卷星、課件、自制程序(慧眼識人、屬性判定)、Scratch3.0 GUI、Python 3.6。
游戲活動,引入新知。設(shè)計進行兩次人機互動。第一次,通過慧眼識人游戲,讓計算機識別出測試對象的身份,并叫出學生的姓名。第二次,增加難度,請測試學生戴上墨鏡或口罩,再次進行交互,判斷結(jié)果;并圍繞相關(guān)問題進行討論。
活動中提出問題和預(yù)設(shè)的回答有:(1)程序運用了哪些人工智能相關(guān)技術(shù)?(人臉識別,語音識別)(2)機器能夠識別我們身份運用的核心技術(shù)是什么?(人臉識別)(3)簡單分析機器是如何識別我們身份的?(人臉庫,人臉匹配,判定……)
計算機分析人臉識別身份,并做出響應(yīng)是人臉識別技術(shù)發(fā)展的重要方向。對身份的判定過程是打造刷臉系統(tǒng)的關(guān)鍵環(huán)節(jié)。本環(huán)節(jié)設(shè)計意圖是激發(fā)學生興趣,從實際體驗到聯(lián)系生活,引入本節(jié)課主題。
過程分析,提出問題。本環(huán)節(jié)主要圍繞計算機識別人身份的過程,從程序運行過程的角度進行討論,繪制程序運行的流程圖。并通過流程圖分析哪些問題是我們可以解決的內(nèi)容,哪些問題是目前無法解決的。
活動中提出問題和預(yù)設(shè)的回答有:(1)計算機識別人身份的步驟是什么?(圖像采集→特征對比→判定→不同語句)(2)哪些內(nèi)容是我們可以通過編程實現(xiàn)的?(圖形采集、分支結(jié)構(gòu))(3)哪些問題我們目前無法實現(xiàn)?(特征對比)
為了完成解決特征對比識別身份的問題,我們首先要弄懂人臉識別的原理,再找到相應(yīng)的編程方法。本環(huán)節(jié)設(shè)計意圖是從技術(shù)解決角度出發(fā),以程序運行過程為線索,引出需要解決的核心問題。
講授計算機識別人臉的原理與方法。本環(huán)節(jié)涉及的活動是通過觀看視頻,了解人臉識別的整個過程;在此基礎(chǔ)上,通過討論計算機如何區(qū)分兩張人臉,理解人臉對比的過程;在此基礎(chǔ)上,討論如何在多行人臉庫中找到匹配的對象,從而理解人臉識別整個技術(shù)的應(yīng)用過程。
人臉對比的過程是定位、檢測和對比技術(shù)實現(xiàn)的過程,而人臉匹配的過程是需要創(chuàng)建信息庫和匹配特征信息的。本環(huán)節(jié)設(shè)計意圖是利用視頻突破原理難點,利用案例分析人臉識別中的兩個關(guān)鍵問題。
人臉識別的技術(shù)原理體驗。本環(huán)節(jié)涉及的活動是給出一張授課教師照片,學生描述教師的面部特征,并將結(jié)果填寫在問卷星上,進行統(tǒng)計分析;將照片上傳至人工智能服務(wù)平臺,體會機器在識別面部屬性時的異同;利用程序體驗機器是如何得出相關(guān)結(jié)論的;分析人工智能服務(wù)平臺在編程中的作用。
活動中提出問題和預(yù)設(shè)的回答有:(1)如何將屬性進行分類(兩類,可以準確描述,主觀經(jīng)驗判斷)(2)人們之間判定的差異來自什么?(認知、主觀經(jīng)驗、情感等)(3)機器是如何得出結(jié)論的?(特征數(shù)據(jù)+算法+分類模型)(4)人機之間的判定差異主要來自哪里?(依靠數(shù)據(jù),無主觀經(jīng)驗和感情色彩)(5)人工智能服務(wù)平臺的作用?(支持作用)
本環(huán)節(jié)的設(shè)計意圖是利用問卷星的數(shù)據(jù)體驗人的主觀認知;觀察人工智能服務(wù)平臺,體驗機器識別人的技術(shù)操作;了解平臺對應(yīng)用開發(fā)的支持作用,同時使學生理解我們的技術(shù)只是冰山一角。
編程實現(xiàn)身份識別。通過Scratch GUI的機器學習平臺實現(xiàn)人臉身份的識別。小組為一個單位,利用模型訓練的方法使計算機能夠區(qū)分小組成員,并完成結(jié)果的輸出。輸出結(jié)果可以通過多種方式,如語音、文字等。
活動過程中學生可能會遇到各種編程問題、創(chuàng)建人臉模型庫問題和如何生成判定結(jié)果等問題,這些問題也會在各小組的討論和全班學生的交流中得到解答。本環(huán)節(jié)的設(shè)計意圖是在分析原理的基礎(chǔ)上,了解作為應(yīng)用端的用戶,在設(shè)計時的程序設(shè)計思想,體驗開源平臺在技術(shù)解決層面的方法。
本節(jié)課有原理線,從身份識別到特征對比,再到特征模型提取和模型信息匹配;也有技術(shù)線,從設(shè)計人臉庫到匹配人臉,再到返回結(jié)果應(yīng)用。通過學習本節(jié)課的內(nèi)容,學生對計算機識別人身份的整個過程與原理有了初步的了解。借助人工智能服務(wù)平臺與開源的圖形化工具,學生可以將生活中的場景進行復(fù)現(xiàn)。當然,程序還有許多不盡如人意的地方,還需要進一步討論與分析。
評價方式。本節(jié)課中,教師以提問、體驗過程、任務(wù)完成等方式進行評價。評價以過程性評價為主,聚焦學生的思維發(fā)展過程。同時這是人臉識別項目的起始課,在整個項目完成后,會對學生的作品進行最終的評價。
對于學生回答問題,教師更多關(guān)注學生的思考過程,引導(dǎo)他們發(fā)現(xiàn)問題、分析問題和解決問題的能力,關(guān)注計算思維在求解實際問題中的培養(yǎng)。在任務(wù)后期,教師要對學生的作品和在整個活動中的表現(xiàn)進行全面客觀地評價。
評價量規(guī)。實際意義和創(chuàng)意,10分。實際意義維度占5分,對應(yīng)的量規(guī)有:依托學校實際情景,具有應(yīng)用價值(4分~5分);模仿生活中的情景,有一定現(xiàn)實意義(1分~3分)。項目創(chuàng)意維度占5分,對應(yīng)的量規(guī)有:項目設(shè)計具有創(chuàng)意,有實用性(4分~5分);項目設(shè)計有一定拓展功能和推廣性(1分~3分)。
設(shè)計思路,20分。流程設(shè)計維度占10分,對應(yīng)的量規(guī)有:流程圖清晰,技術(shù)線明確,過程清晰(8分~10分);有流程描述和技術(shù)解決方案,內(nèi)容需完善(4分~7分);缺少流程設(shè)計,方案設(shè)計有待提高(0分~3分)。分工實施維度占10分,對應(yīng)的量規(guī)有:小組成員有明確的分工,任務(wù)量合理(8分~10分);小組成員有分工,內(nèi)容和任務(wù)量還需優(yōu)化(4分~7分);小組成員分工任務(wù)不明確,任務(wù)量不合理(0分~3分)。
程序?qū)崿F(xiàn),40分?;敬a維度占30分,對應(yīng)的量規(guī)有:代碼結(jié)構(gòu)清晰,功能完整實現(xiàn)(20分~30分);基本功能完成,未完成部分有思考(15分~20分);未完成基本功能的設(shè)計(5分~15分)。拓展應(yīng)用維度占10分,對應(yīng)的量規(guī)有:引入Python模塊或平臺參數(shù)解決問題(6分~10分);使用了其他組件,并進行思考與嘗試(1分~5分)。
文本展示,10分。文本設(shè)計維度占5分,對應(yīng)的量規(guī)有:文件界面簡潔美觀,結(jié)構(gòu)清晰(4分~5分);文本經(jīng)過排版,在美觀和合理性上尚需提高(1分~3分)。課件展示維度占5分,對應(yīng)的量規(guī)有:課件美觀要點突出(4分~5分);課件和文字進行了布局,內(nèi)容完整(1分~3分)。
成果表達,20分。文字表達維度占10分,對應(yīng)的量規(guī)有:項目內(nèi)容描述完整、嚴謹、思路清晰(6分~10分);項目內(nèi)容描述完整,語言文字還需推敲(2分~5分);內(nèi)容描述不清,內(nèi)容缺少邏輯和完整性(0分~1分)。語言表達維度占10分,對應(yīng)的量規(guī)有:表達完整,流程、思路清晰、有感染力(6分~10分);內(nèi)容完整,描述準確(2分~5分);語言表達存在問題,思維邏輯相混亂(0分~1分)。
教學內(nèi)容上,教師也嘗試對原理進一步挖掘。從技術(shù)實現(xiàn)角度對人臉識別的過程進行分析與討論。在授課過程中,嘗試最大化地降低教育裝備成本,并努力利用Python代碼實現(xiàn)原理的可視化。
本課教學中,因為內(nèi)容難度相對較大,所以教師講解過多。此外,原理的呈現(xiàn)方式和平臺選用的方面還有待進一步提高,從原理的理解到程序?qū)崿F(xiàn)的過程中還需搭建更加通暢的橋梁。
作者單位:北京教育科學研究院