陳凱
在高中信息技術(shù)課程標(biāo)準(zhǔn)中,“人工智能初步”屬于選擇性必修中的一項模塊,此模塊的總體教學(xué)目標(biāo)的定位,不僅有“描述典型人工智能算法基本過程”,也有“親歷設(shè)計與實現(xiàn)簡單智能系統(tǒng)的基本過程”。整體考察信息技術(shù)教學(xué)內(nèi)容,發(fā)現(xiàn)必修模塊中諸多基礎(chǔ)知識和技能與“人工智能初步”教學(xué)模塊的內(nèi)容有所關(guān)聯(lián),如必修模塊中的“信息系統(tǒng)”和人工智能中的智能系統(tǒng)的實現(xiàn)有關(guān);“數(shù)據(jù)處理與分析”與人工智能中機器學(xué)習(xí)訓(xùn)練有關(guān);至于編程和算法,無疑更是與機器學(xué)習(xí)算法有著密切的聯(lián)系。對于將要開設(shè)選擇性必修“人工智能初步”課程的教師來說,研究如何將人工智能的知識概念以及思想方法融入信息技術(shù)課程必修部分較為基礎(chǔ)的教學(xué)內(nèi)容中,是十分合理的需求。
策略一:建立貫穿始終的任務(wù)驅(qū)動路徑
對于已經(jīng)決定選擇“人工智能初步”模塊作為教學(xué)內(nèi)容的教師來說,可以研究如何充分地圍繞必修模塊中教學(xué)內(nèi)容,為將來的人工智能教學(xué)做好知識概念上的鋪墊。教師可以使用思維導(dǎo)圖或知識圖譜作為工具,對知識、技能相互的關(guān)聯(lián)進行梳理,然后規(guī)劃出合理的任務(wù)驅(qū)動路徑。
如以“K均值聚類算法”為中心繪制思維導(dǎo)圖,如圖1,梳理出在日常信息技術(shù)教學(xué)基礎(chǔ)模塊的知識點與某種機器學(xué)習(xí)算法的關(guān)系,然后根據(jù)這些關(guān)系合理規(guī)劃不同階段的教學(xué)重點。
根據(jù)圖1,可以試著規(guī)劃出一條有著核心任務(wù),且又貫徹整個學(xué)習(xí)過程的任務(wù)驅(qū)動路徑,如圖2。
路徑圖2由左到右提示了概念和技能出現(xiàn)在教學(xué)過程中可能的進度,另外,圍繞著核心任務(wù),技能與概念兩兩呼應(yīng),恰好呈現(xiàn)出對稱的結(jié)構(gòu)。當(dāng)然,在實際教學(xué)中,不一定要求有如此完美的對稱關(guān)系,或者,也可以圍繞其他任務(wù)來規(guī)劃路徑,也可以在路徑中加入更多內(nèi)容(如信息系統(tǒng)、開源硬件等)。但無論怎樣,此圖體現(xiàn)出可以對知識圖譜進行分析,從而規(guī)劃出在信息技術(shù)教學(xué)基礎(chǔ)模塊中,可融合人工智能教學(xué)驅(qū)動任務(wù)的知識技能提升路徑。毫無疑問,必然會有一些人工智能的知識技能不處于這條進階路徑上,如若課時或教學(xué)資源有限,則可相對簡單地對其大致工作原理作講解或展示。
策略二:無遮蔽地展現(xiàn)某一特定人工智能算法實現(xiàn)過程
無遮蔽地展現(xiàn)實現(xiàn)過程是指,不僅知道人工智能實現(xiàn)過程中的基本原理,也要能夠明白實現(xiàn)過程中涉及的數(shù)學(xué)公式和程序代碼的作用。因為教學(xué)時間或?qū)W生水平的限制,顯然不可能對許多種不同的人工智能算法實現(xiàn)過程都做到無遮蔽展現(xiàn),但仍然可以考慮至少選取某一特定的人工智能算法作為無遮蔽展現(xiàn)計算過程的重點講解對象。根據(jù)心理學(xué)“激勵—反饋”理論,學(xué)習(xí)者在對學(xué)習(xí)內(nèi)容有真正的了解后,就會對自己的學(xué)習(xí)動力產(chǎn)生強化作用,促進其能以更積極的態(tài)度投入到新的學(xué)習(xí)中,從而提高學(xué)習(xí)效率。另外,若能無遮蔽地展現(xiàn)某種人工智能算法實現(xiàn)過程,那么教師也能比較方便地組織實踐活動,對學(xué)生學(xué)習(xí)情況進行評價。同時,學(xué)生也可以借助這些比較簡單的可以無遮蔽展現(xiàn)過程的算法的學(xué)習(xí)過程,體驗比較普遍的計算思維的形成過程和計算機科學(xué)方法的應(yīng)用,從而為將來更艱深的算法學(xué)習(xí)打下基礎(chǔ)。
根據(jù)一項針對已經(jīng)開展過人工智能教學(xué)的教師的小范圍調(diào)查,在諸多人工智能算法中,教師們認(rèn)為較能適應(yīng)高中階段學(xué)生水平,且能在比較少的課時(調(diào)查以8課時為教學(xué)時間限制)中,無遮蔽地展現(xiàn)實現(xiàn)過程的算法有:廣度優(yōu)先搜索算法、深度優(yōu)先搜索算法、貝葉斯分類算法、決策樹分類算法、K近鄰算法等,這些算法具有涉及的數(shù)學(xué)原理相對淺顯、算法的實現(xiàn)過程相對比較簡單、算法過程細(xì)節(jié)中的每一步都能進行跟蹤等特點。而那些教師們認(rèn)為不太能夠無遮蔽地展現(xiàn)完整過程的算法,要么是計算模型構(gòu)建復(fù)雜,要么是涉及比較艱深的數(shù)學(xué)知識,或者是很難跟蹤計算過程中的具體步驟細(xì)節(jié)。對于那些暫時無法做到無遮蔽展現(xiàn)過程的算法,教師在擱置問題的同時,應(yīng)為算法中涉及的計算機科學(xué)以及數(shù)學(xué)上的工具或原理,給出有指向性的進階路徑,鼓勵學(xué)生自主探究學(xué)習(xí)。
策略三:創(chuàng)設(shè)突出機器學(xué)習(xí)思維的簡單任務(wù)
在高中階段,是否應(yīng)該將無遮蔽地展現(xiàn)機器學(xué)習(xí)的過程,落實在具體的程序代碼上,目前還有很大的爭論。因為教師和學(xué)生會面臨一個非常實際的問題,那就是,無論再簡單的人工智能算法,其代碼量還是非常大的。但有一個辦法,可以消解教學(xué)中的負(fù)擔(dān),按照自頂向下,逐段分解的辦法,把特定的人工智能算法的某些部分,分配到前期基礎(chǔ)模塊算法學(xué)習(xí)的各個部分中去,如此,當(dāng)整體的人工智能算法出現(xiàn)時,再按機器學(xué)習(xí)的思維,對前期已經(jīng)講解過的各個模塊重新進行總裝。
還可以從簡化機器學(xué)習(xí)任務(wù)及精煉算法過程方面來進行考慮。下面列舉一些已有過實踐且有初步成效的方法,并不全面,權(quán)當(dāng)拋磚引玉。
(1)簡化數(shù)據(jù)輸入和輸出形式。許多代碼案例都是從數(shù)據(jù)集、電子表格或數(shù)據(jù)庫中獲取供機器訓(xùn)練的大量數(shù)據(jù),這就增加了實施的復(fù)雜性,可以考慮預(yù)先將數(shù)據(jù)以列表的形式準(zhǔn)備好,供學(xué)生復(fù)制粘貼到代碼中,這樣就大大減少了程序代碼的復(fù)雜性。在運算結(jié)果的輸出環(huán)節(jié),既可以讓學(xué)生調(diào)用由教師預(yù)先編寫好圖表顯示的函數(shù),也可以直接以字符形式輸出,復(fù)制粘貼到電子表格中,再以圖表形式展現(xiàn),也可降低代碼量。當(dāng)然,如果在課程計劃中,原本就打算將數(shù)據(jù)輸入和輸出展示這部分內(nèi)容,作為整個人工智能學(xué)習(xí)驅(qū)動任務(wù)的一部分,就另當(dāng)別論了。
(2)簡化數(shù)據(jù)結(jié)構(gòu)。在許多人工智能算法的實施場景中,需要處理的數(shù)據(jù)是二維形式存儲的,但有許多算法,其最關(guān)鍵的解決問題的思維方法,即便對一維的數(shù)據(jù)也是同樣有效的,如一般會用點乘運算來提取二維圖像特征,但實際上,也可以用點乘運算提取一維數(shù)據(jù)(比如某個波形)的特征。在算法實現(xiàn)上,對一維數(shù)據(jù)進行點乘運算無疑要容易得多,效果也很突出,甚至用電子表格就可以實現(xiàn)了。如用多個一維的列表來代替矩陣的使用,從而使得學(xué)習(xí)曲線變得平緩。教師應(yīng)該提醒學(xué)生,這只是為了聚焦人工智能實現(xiàn)算法的關(guān)鍵思想,而暫且擱置了對數(shù)據(jù)結(jié)構(gòu)的優(yōu)化。
(3)降低算法實現(xiàn)的普遍性。一些算法之所以復(fù)雜,是因為它要考慮多種不同的用戶需求,若降低算法實現(xiàn)的普遍性,便可大幅度減少代碼量,也可突出算法中體現(xiàn)智能實現(xiàn)的關(guān)鍵思維方法。如以K均值聚類為例,它要考慮用戶可能將數(shù)據(jù)按特征分成多少類;它還要考慮初始多個分類中心點的選取。若不考慮這些普遍性的要求,“粗暴”地設(shè)置初始數(shù)據(jù)在一條直線上,K值為2,且初始中心點位于數(shù)軸兩端,那么程序代碼就可以簡單到僅有20行左右。
以上是圍繞“人工智能初步”教學(xué)目標(biāo)的定位,討論人工智能教學(xué)融入高中信息技術(shù)課程基礎(chǔ)模塊的幾種不同的策略,可供有需要的教師參考,并希望能在更多的教學(xué)實踐后得到反饋和持續(xù)改進。
作者單位:上海市位育中學(xué)