刁彬斌 董立



【摘 要】人工智能課程是一門綜合性很強、具有戰略意義的綜合學科。人工智能課程的實施存在著教什么和如何教的問題。本文以基于Kitten block軟件的體驗型人工智能校本課程的開展為例,以知現象、懂原理、會還原、做創新為目標,通過前進與后退的小貓(語音識別)、微笑檢測儀(人臉識別)、石頭剪刀布(機器學習)三個課程案例,闡述人工智能校本課程的實施和實施過程中重難點的解決。
【關鍵詞】人工智能課;校本課程;Kitten block軟件;語音識別;人臉識別;機器學習
【中圖分類號】G434 【文獻標識碼】A
【論文編號】1671-7384(2021)05-062-03
人工智能課程的開展與實施,是對一線信息技術教師實現自我價值的一次重大機會與挑戰。但是現階段實施人工智能課程面臨兩大考驗:“無米下鍋”和如何教的問題。“無米下鍋”指很多人工智能項目動輒幾千甚至上萬元一套的設備成本。這就需要學校前期進行大量的課程資金投入。如何教,指很多人工智能項目需要以Python為代表的代碼程序進行人工智能課程的教學。小學或初中學生要學習人工智能課程,需要前期進行編程課程的學習。
“無米下鍋”與如何教,成為很多學校開展人工智能課程的攔路虎。而現階段很多小學在信息技術課上經常使用圖形化編程授課。能不能在圖形化課程基礎上,進行小投入的普惠型人工智能課程的開展呢?現階段有很多圖形化編程軟件已經包含很多人工智能體驗模塊。通過使用這些人工智能模塊,完全可以開展體驗型人工智能課程的開展。
筆者以Kitten block軟件為載體,開展了人工智校本課程。下面將自己的一些經驗與大家進行分享。
Kitten block是一款免費的圖形化編程軟件。支持圖形化程序控制Micro:bit、Arduino等開源硬件,可以實現輕量化機器學習、語音識別/朗讀、視覺識別、Tensor Flow等人工智能項目。官方網址為https://www.kittenbot.cn/。
在開展人工智能課程的過程中,需要保證計算機處于連接互聯網狀態。輕量級人工智能模塊的本質是本地計算機調用百度、訊飛等科技公司的人工智能接口完成數據解析與數據回傳。教師和學生在開展本課程前需要學習圖形化編程的先導課程。Kitten block在界面上沿襲學生的使用習慣,學習成本比較低。
課程的實施過程
人工智能校本課程的終極目標可以概括為十二字:“知現象,懂原理,會還原,做創新”。知現象,就是讓學生知道生活中,哪些設備用到了人工智能以及對應技術。懂原理,解決的是學生知其然,并知其所以然的問題。會還原,做到腦與手的統一,采用Kitten block軟件對現實問題的簡單實驗還原。做創新,主要是讓學生學會舉一反三,發散學生思維,同時培養學生獨立思考的能力。
如以語音識別課程為例,可以采用小米智能音箱作為課程的引入點,拋出“語音識別”這一人工智能技術點,然后圖文并茂講解語音識別的技術原理。講述完語音識別原理之后,教師可以帶領學生完成基于Kitten block簡單案例的制作過程,使學生掌握新知識的技術要點。以教師為主體的講授過程,可以高效地完成新知識的積累過程。
教師授課新知識之后,進入以學生為主體的“做創新”環節,這一環節也是課程的重點環節。學生作為課程主體,發散自己的思維,結合新舊知識與自己的個人生活體驗,完成“創造”過程,實現知識的提升與升華。
基于Kitten block軟件的體驗型人工課程校本課,只是在授課過程中以Kitten block軟件為主要實施主體。在上課的過程中可以依照現有條件,引入智能設備體驗,如手機App程序等可以加強學生視覺感官的設備與設施。學生在視覺上受到新技術的震撼,能夠增加學生學習的主觀能動作用。
課程實施的難點解決
Kitten block軟件中集成了語音識別、語言翻譯、語音合成、人臉識別、機器學習等人工智能項目。下面就課程的實施難點提出一點解決思路。
1.程序模塊的加載方法
Kitten block可以支持若干開源硬件及人工智能模塊的編程,它默認展示基本的Scratch功能,其他程序模塊通過擴展的方式進行加載。加載擴展程序的方法很簡單,點擊程序左下角的擴展按鈕,在展開的擴展程序界面點擊相應的功能名稱,即可完成相應模塊的加載(圖1)。
2.語音識別項目的干擾問題
在語音識別項目中,結果準確率是困擾大家的一個普遍問題。提高語音識別準確率,可以從以下幾個方面入手:(1)盡量使用外接麥克風。有些電腦內置麥克風設備,但電腦運行過程中可能會產生一定的電磁干擾。在實施語音識別項目時若出現識別成功率低的問題,可以嘗試使用外接麥克風。(2)環境噪音干擾問題。環境噪音干擾,也是語音識別率低下的重要因素。在語音輸入實現過程中,盡量要保持環境處于安靜狀態。在課程的開展過程中,會有多組學生實施語音輸入實驗。各個不同輸入者,也存在互相干擾的問題,應保持錯峰有序輸入。(3)實驗實施者語音語速問題。在語音輸入過程中,要盡量語音正確、語速適中,盡量使用普通話進行語音輸入。
3.接受體驗型項目的局限性
在體驗人工智能項目時,需要接受程序的局限性。主要體現在“按鍵事件”的喚醒機制,即人工智能項目還需要按鍵盤喚醒。如以語音識別的“前進與后退的小貓”程序為例(圖2)。本程序需要使用“Baidu Ai”拓展模塊,實現語音前進、后退控制小貓向右走和向左走。但是需要使用空格鍵實現語音的輸入過程。圖像識別、機器學習等項目也存在這個局限性。
4.人臉識別項目的圖像問題
Kitten block的“Face All”模塊可以通過人臉檢測實現年齡、性別、表情等人臉特征分析。但初學者開展本項目時,常常遇到不知道如何開啟攝像頭的問題。其實解決方法也很簡單,只需在使用前加載并開啟“視頻偵測”模塊。
講授人工智能課程的同時,可以滲透情感價值觀的教育。如以“微笑檢測儀”程序為例(圖3)。這個程序不僅涉及人臉識別的程序模塊,同時還希望學生保持樂觀向上的精神,多多微笑。編寫程序時,先引入微笑、平靜、憤怒三個角色。在背景中進行人臉識別程序的編寫,程序執行時,點擊綠旗,開始攝像并開啟人臉檢測功能,當空格鍵被按下,進行人臉檢測。當檢測到人臉時,執行微笑率檢測程序,然后根據微笑率的數值范圍發送不同的廣播。相應的角色收到廣播之后,顯示兩秒之后隱藏。
5.機器學習的實施
機器學習是研究如何使用機器來模擬人類學習活動的一門學科。機器學習的重要環節是完成模型訓練的過程。Kitten block軟件中,可以進行輕量級的機器學習程序設計。如以“石頭剪刀布”機器識別程序為例。這個程序實現了人與電腦的對戰過程,如果訓練得當,機器勝算的概率幾乎是100%。其實現思路是綠旗子被點擊時,初始化特征庫。然后通過A、S、D三個按鍵分別完成手部錘子、剪刀、布特征的提取,最后當空格被按下的時候,完成人機對戰過程。其成功率的高低,取決于特征模型的精確性。大家錄制錘子等手勢時,需要盡量保證攝像頭視野內無雜物,且盡量讓攝像頭從多個角度拍攝錘子手勢。
開展人工智能課程的學習,可以開闊學生的視野,提高學生的認知層次,完成看得見摸得著的實際作品,更能實現學生手與腦的聯動。Kitten block軟件對Arduino、Micro:bit開源硬件及拓展傳感器有著良好的支持。同時,它還能支持KOI錦鯉等離線型人工智能模塊。學生完全可以結合開源硬件課程完成人工智能型創客作品。
實施普惠型人工智能課程只起到敲門磚和拋磚引玉的作用。如果想完成更加強大和高階的人工智能課程,需要深入研究代碼編程與人工智能框架結構。為了在人工智能時代,自己不落伍,需要大家更艱辛的付出。
作者單位:北京宏志中學 ?北京市通州區漷縣中學