李大威,艾 欣
(東華大學(xué)信息科學(xué)與技術(shù)學(xué)院,上海 201620)
隨著我國科技、教育事業(yè)的快速發(fā)展,在國內(nèi)外頻繁密切的學(xué)術(shù)交流背景下,當(dāng)前我國的高等教育已經(jīng)邁入了全新的階段。除了科研實(shí)力以外,國內(nèi)高校的人才培養(yǎng),特別是研究生的培養(yǎng)質(zhì)量也已經(jīng)不可避免地加入國內(nèi)外同行的激烈競(jìng)爭和比較中。信息與計(jì)算機(jī)技術(shù)的飛速發(fā)展對(duì)相關(guān)學(xué)科的課程體系和教學(xué)內(nèi)容帶來了全新的內(nèi)涵和挑戰(zhàn),特別是近幾年AI學(xué)科的異軍突起,對(duì)許多產(chǎn)業(yè)和國民生活都帶來了廣泛的影響。深度學(xué)習(xí)技術(shù)的流行使數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)等研究生課程具有了更豐富的內(nèi)涵和更廣的應(yīng)用范圍。這些因素都迫使我們一直在思考如何推動(dòng)信息學(xué)部的研究生教學(xué)改革,傳統(tǒng)的教師主動(dòng)傳授、學(xué)生被動(dòng)接受的授課方式顯然已經(jīng)不適應(yīng)當(dāng)前的人才培養(yǎng)需要[1]。因此很多信息與計(jì)算機(jī)學(xué)科的教師與科研人員提出了諸如CDIO、翻轉(zhuǎn)課堂[2]等教學(xué)新模式,鼓勵(lì)線上線下、網(wǎng)絡(luò)公開課與實(shí)際課堂綜合的教學(xué)方式[3-10]。
隨著“大數(shù)據(jù)”時(shí)代的到來,重要的決策將日益基于數(shù)據(jù)和分析而做出,而并非基于經(jīng)驗(yàn)與直覺[11]。數(shù)據(jù)分析是綜合使用檢索策略、數(shù)學(xué)工具與算法、計(jì)算機(jī)等從大量數(shù)據(jù)中獲取用于決策的知識(shí)與規(guī)律,輔助決策者做出正確策略的一種方法。數(shù)據(jù)的有效分析離不開機(jī)器學(xué)習(xí)技術(shù),機(jī)器學(xué)習(xí)是人工智能的基礎(chǔ),也是致力于研究如何通過計(jì)算的手段、利用經(jīng)驗(yàn)來改善系統(tǒng)自身性能的一門學(xué)科;也是通過模擬或?qū)崿F(xiàn)人類的學(xué)習(xí)行為以獲取新的知識(shí)技能的一門學(xué)問。因此“數(shù)據(jù)分析與機(jī)器學(xué)習(xí)”不僅是信息學(xué)部的重要教學(xué)內(nèi)容,也已經(jīng)成為人工智能課程群的一門主干課程。由于課程難度較高,為了保證教學(xué)效果,不少學(xué)者開始提出使用案例式與分層教學(xué)方法,以實(shí)踐帶動(dòng)理論知識(shí)的講解為理念進(jìn)行教學(xué)改革,取得了一些成果。比如周志華[12]撰寫的“機(jī)器學(xué)習(xí)”教材被同學(xué)們親切地稱為“西瓜書”,正是因?yàn)槠渲杏胁簧僖晕鞴蠑?shù)據(jù)作為范例的算法講解。胡雪蕾等[13]在“機(jī)器學(xué)習(xí)”課程改革中引入問題驅(qū)動(dòng)的教學(xué)法和實(shí)踐驅(qū)動(dòng)教學(xué)法進(jìn)行了教學(xué)改革。在這些機(jī)器學(xué)習(xí)相關(guān)的課程教改成果啟發(fā)下,本文以我??刂瓶茖W(xué)與工程研究生專業(yè)為例,介紹“數(shù)據(jù)分析與機(jī)器學(xué)習(xí)”課程在案例式教學(xué)和實(shí)驗(yàn)教學(xué)等方面的改革特色。該課程為控制科學(xué)與工程學(xué)位點(diǎn)的專業(yè)選修課,同時(shí)面向?qū)W術(shù)型與專業(yè)型的一年級(jí)碩士研究生開放。該課程每年開課一學(xué)期,共32 學(xué)時(shí)、2 學(xué)分,選課學(xué)生人數(shù)每年穩(wěn)定在80 名左右。
“數(shù)據(jù)分析與機(jī)器學(xué)習(xí)”課程的教學(xué)特點(diǎn)和問題以及針對(duì)這些問題進(jìn)行的教改舉措主要有:
雖然選修本課程的研究生絕大部分來自控制科學(xué)與工程及控制工程這兩個(gè)專業(yè),但同學(xué)們的本科專業(yè)則五花八門。對(duì)2018、2019 兩級(jí)選修課程的學(xué)生的本科專業(yè)進(jìn)行了調(diào)研,結(jié)果以餅圖的形式展示于圖1,可見近兩年間半數(shù)學(xué)生來自于自動(dòng)化專業(yè),剩下許多同學(xué)本科學(xué)習(xí)的是電氣工程及其自動(dòng)化、機(jī)械與動(dòng)力工程、物理與光電等相關(guān)專業(yè),對(duì)本課程需要的數(shù)學(xué)知識(shí)和機(jī)器學(xué)習(xí)相關(guān)入門概念的了解比較薄弱。
圖1 2018、2019兩級(jí)選課學(xué)生的本科專業(yè)分布情況
針對(duì)選課學(xué)生的特點(diǎn),課程在教學(xué)上安排了完整的由淺入深的過程。在課時(shí)安排上,第1 周的課程全部講述與數(shù)據(jù)相關(guān)的概論知識(shí),從課程內(nèi)容的整理安排開始,先后講數(shù)據(jù)之廣、數(shù)據(jù)之大、數(shù)據(jù)之美、數(shù)據(jù)之能、數(shù)據(jù)之惑、數(shù)據(jù)之害等內(nèi)容,以豐富、風(fēng)趣的案例喚起學(xué)生對(duì)課程的興趣。第2 周的課程以教材為主干,對(duì)機(jī)器學(xué)習(xí)的一般方法進(jìn)行簡單的概述,特別對(duì)機(jī)器學(xué)習(xí)算法的基本劃分,比如無監(jiān)督學(xué)習(xí)、有監(jiān)督學(xué)習(xí)以實(shí)例進(jìn)行講解和區(qū)別。為了幫助本科專業(yè)為非自動(dòng)化和計(jì)算機(jī)類的同學(xué)盡快能夠適應(yīng)本課程,在第3 次課的前半部分,以互動(dòng)式課堂習(xí)題的方式講解4 個(gè)關(guān)于向量以及向量范數(shù)的微分計(jì)算實(shí)例,并推薦一本專門查表向量與矩陣運(yùn)算的開源工具書“matrix cookbook”[14],為后面課程在數(shù)學(xué)公式的推導(dǎo)方面奠定基礎(chǔ)。
機(jī)器學(xué)習(xí)的教材卷帙浩繁,國內(nèi)外雖然已有不少優(yōu)秀教材,但是適合于課時(shí)和涵蓋面的非常少,要么面面俱到內(nèi)容繁多,要么牽涉太多艱深理論。
本課程要在32 學(xué)時(shí)內(nèi)將主要的數(shù)據(jù)分析方法與機(jī)器學(xué)習(xí)技術(shù)進(jìn)行全面講解難度較大,只能考慮對(duì)重點(diǎn)算法進(jìn)行講述,因此選擇了杉山將著、許永偉譯的《圖解機(jī)器學(xué)習(xí)》作為本課程教材[15]。它的第1 個(gè)優(yōu)點(diǎn)是使用幾何方法和多種示意圖表幫助初學(xué)者理解艱深的機(jī)器學(xué)習(xí)原理中的代數(shù)問題;第2 個(gè)優(yōu)點(diǎn)是隨書附帶了不少在Matlab 平臺(tái)下可執(zhí)行的算法小案例代碼,便于學(xué)生調(diào)試和運(yùn)行各類算法,加深理解。
本門課程理論內(nèi)容枯燥,在算法細(xì)節(jié)上充滿了數(shù)學(xué)公式,缺乏與實(shí)際問題的聯(lián)系。整個(gè)課程的教學(xué)涉及概率論、矩陣論、數(shù)值分析、高等數(shù)學(xué)、優(yōu)化理論、多種計(jì)算機(jī)編程工具等多方面的知識(shí),給學(xué)生的學(xué)習(xí)過程帶來了嚴(yán)峻的挑戰(zhàn)。因此,需要將課程內(nèi)容與實(shí)際問題相連,以理論聯(lián)系實(shí)際,改進(jìn)教學(xué)效果。
為了降低課程學(xué)習(xí)門檻,采用了案例式教學(xué)方法,課程設(shè)置了核密度估計(jì)模型、主成分分析算法、高斯混合模型聚類算法3 個(gè)各2 課時(shí)的大案例。這3 個(gè)大案例教學(xué)分別對(duì)應(yīng)于線性學(xué)習(xí)模型、降維方法、無監(jiān)督聚類方法這3 個(gè)重點(diǎn)教學(xué)章節(jié),而且在案例的最后都布置了具有詳細(xì)說明和要求的編程大作業(yè),使學(xué)生可以在課后加深對(duì)課程的認(rèn)識(shí)。同時(shí),還做到了在課程當(dāng)中每45 min就至少有一個(gè)小案例進(jìn)行穿插,其內(nèi)容或是對(duì)算法細(xì)節(jié)的說明,或是一個(gè)完整的算法應(yīng)用,很好地緩解了同學(xué)們的理解難度。以“稀疏學(xué)習(xí)”章節(jié)為例,課程使用栗子果皮多刺的形態(tài)類比1 型范數(shù)高維參數(shù)約束空間的幾何形態(tài),幫助學(xué)生理解在1 型范數(shù)約束的最小二乘法的解容易出現(xiàn)在參數(shù)空間的尖端的現(xiàn)象。在“稀疏學(xué)習(xí)”章節(jié),通過借鑒原子力顯微鏡對(duì)氫鍵成像所采用的伴生物間接觀測(cè)法這個(gè)小案例[見圖2(a)],闡述了使用伴生上確界曲線把不可微分的1 型范數(shù)約束的最小二乘法優(yōu)化目標(biāo)轉(zhuǎn)化為可微分的二次優(yōu)化目標(biāo)形式的思維方式[見圖2(b)]。這些小案例幫助加深了學(xué)生對(duì)機(jī)器學(xué)習(xí)算法的理解。
傳統(tǒng)課程考查成績主要由期中考試+期末考試成績決定,缺乏靈活性,而且書面考試并不適用于需要大量實(shí)踐與編程的研究生課程。在吸取了國外同行的豐富經(jīng)驗(yàn)后,決定對(duì)課程采用積累式打分法。在大課程案例講解結(jié)束后,要求學(xué)生完成對(duì)算法用編程進(jìn)行實(shí)現(xiàn)的大作業(yè)。每項(xiàng)大作業(yè)不僅要求提交代碼,還需要學(xué)生對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析和梳理,寫成課程報(bào)告的形式。每次大作業(yè)的成績單獨(dú)打分,全部通過加權(quán)的方式計(jì)入最終成績,在總成績中期末考試成績的比重下降到30%。
圖2 課程小案例展示
本課程對(duì)線性學(xué)習(xí)模型、主成分分析、EM 算法等重點(diǎn)章節(jié)進(jìn)行了案例式教學(xué)+大作業(yè)的課程改革。以主成分分析(PCA)所在章節(jié)為例,在講解這種無監(jiān)督降維方法時(shí),使用了4 層認(rèn)識(shí)組織教學(xué)內(nèi)容,使學(xué)生能夠?qū)訉舆f進(jìn)地認(rèn)識(shí)PCA的本質(zhì)、思想以及其局限性。第1 層認(rèn)識(shí)是通過幫助攝影者對(duì)一個(gè)茶壺的拍照角度進(jìn)行選擇的案例,來表明對(duì)三維物體拍攝的最好照片往往意味著它能表達(dá)這個(gè)物體最豐富的信息,而沒有學(xué)習(xí)過PCA概念的攝影者往往已經(jīng)在潛移默化地使用PCA 的思維方式去尋找最佳拍攝角度。通過對(duì)PCA的第1 層認(rèn)識(shí),不僅提升了學(xué)生聽課的興趣,也在潛意識(shí)上降低了學(xué)生的認(rèn)知難度,同時(shí)也做到對(duì)PCA的淺層本質(zhì)進(jìn)行了較貼切的闡述,達(dá)到了一舉三得的目的。對(duì)PCA的第2 層認(rèn)識(shí)以一個(gè)多攝像機(jī)觀測(cè)理想彈簧滑塊系統(tǒng)的工程案例開始,講述了使用能夠表達(dá)最豐富信息的向量空間正交基構(gòu)成數(shù)據(jù)映射矩陣P,使得原始數(shù)據(jù)矩陣X通過Y=PX映射為新的數(shù)據(jù)矩陣,體現(xiàn)數(shù)據(jù)真實(shí)結(jié)構(gòu)。緊接著,課程回顧了一些線性代數(shù)的定理和知識(shí),引入第3 層認(rèn)識(shí),即通過特征值分解來求PCA,完成最佳正交基的求解。最后,通過舍棄矩陣P 中不重要的主成分,就完成了數(shù)據(jù)的降維,實(shí)現(xiàn)了對(duì)PCA的第4 層認(rèn)識(shí)—即證明了PCA從根本上而言是一種無監(jiān)督線性降維方法。在課程PPT中,用1 頁P(yáng)PT對(duì)之前的PCA 4 層認(rèn)識(shí)進(jìn)行了1 頁內(nèi)容的總結(jié)[見圖3(a)],方便學(xué)生把概念串聯(lián)理解。在介紹PCA 概念后,緊接著介紹了PCA 在兩個(gè)工程實(shí)踐中的應(yīng)用,第1 個(gè)應(yīng)用是使用三維掃描儀對(duì)植物冠層進(jìn)行成像,采集并計(jì)算其點(diǎn)云空間特征,形成具有6維特征(每個(gè)點(diǎn)都有3維空間坐標(biāo)加3維法向量方向)的植物冠層點(diǎn)云數(shù)據(jù)。再使用PCA對(duì)6 維特征的植物冠層點(diǎn)云進(jìn)行降維并進(jìn)行數(shù)據(jù)可視化。第2 個(gè)應(yīng)用是設(shè)計(jì)迭代式的PCA算法,對(duì)具有一定空間形態(tài)的三維點(diǎn)集不斷使用PCA算法,擬合出最適合于點(diǎn)集的平面,最后進(jìn)行可視化。為了加深學(xué)生對(duì)這兩個(gè)工程實(shí)踐的理解,課程分別留下了兩個(gè)數(shù)據(jù)集并布置了從格式到細(xì)節(jié)的各項(xiàng)大作業(yè)要求[部分要求見圖3(b)],限制學(xué)生在10 天左右時(shí)間內(nèi)完成。在形式上,大作業(yè)不僅要求學(xué)生通過郵件系統(tǒng)提交1 份類似科研論文格式的報(bào)告,而且需要同步提交代碼。
圖3 大案例教學(xué)與對(duì)應(yīng)的大作業(yè)要求展示
在主成分分析課程的最后,回顧了這兩年P(guān)CA算法的最新發(fā)展態(tài)勢(shì)和前沿應(yīng)用,著重介紹了Proceedings of IEEE 上關(guān)于PCA 在現(xiàn)代數(shù)據(jù)集合、算法和應(yīng)用方面做的??瘍?nèi)容,鼓勵(lì)學(xué)生大膽學(xué)習(xí)最新領(lǐng)域的前沿論文,形成的PPT頁面見圖4。
為了方便選課的研究生進(jìn)行大作業(yè)的編程實(shí)踐,向?qū)W生開放了東華大學(xué)——西門子先進(jìn)自動(dòng)化實(shí)驗(yàn)室。實(shí)驗(yàn)室包含多達(dá)60 臺(tái)高性能計(jì)算平臺(tái),預(yù)裝了多種操作系統(tǒng)和多套編程環(huán)境,可以方便學(xué)生關(guān)于課程內(nèi)容進(jìn)行機(jī)器學(xué)習(xí)、深度學(xué)習(xí)算法的實(shí)踐與開發(fā)(見圖5)。西門子先進(jìn)自動(dòng)化實(shí)驗(yàn)室內(nèi)不僅配備了高性能計(jì)算平臺(tái),還有工業(yè)4.0 智能智造裝配生產(chǎn)線系統(tǒng)、多種型號(hào)的六軸KUKA 機(jī)器人系統(tǒng)以及虛實(shí)結(jié)合的工業(yè)網(wǎng)絡(luò)實(shí)踐平臺(tái)。該實(shí)驗(yàn)室是信息學(xué)院重要的多用途先進(jìn)實(shí)驗(yàn)室,也是學(xué)院重要的本碩博一體化實(shí)踐平臺(tái)。不僅服務(wù)于研究生課程數(shù)據(jù)分析與機(jī)器學(xué)習(xí),還支撐了本科的自動(dòng)化專業(yè)綜合實(shí)習(xí)、自動(dòng)檢測(cè)技術(shù)、本科畢業(yè)設(shè)計(jì)等多門課程的實(shí)踐教學(xué),也向控制理論與控制工程專業(yè)的部分碩士博士開放。
圖4 對(duì)PCA類算法近兩年在學(xué)界和業(yè)界發(fā)展的回顧以及對(duì)未來相關(guān)研究的展望
圖5 東華大學(xué)——西門子先進(jìn)自動(dòng)化實(shí)驗(yàn)室內(nèi)一角
在當(dāng)今大數(shù)據(jù)和人工智能大發(fā)展的背景下,數(shù)據(jù)分析與機(jī)器學(xué)習(xí)這門課程在研究生課程體系中的地位變得舉足輕重,為了解決在研究生課程教學(xué)中出現(xiàn)的新問題和情況,采用了案例式教學(xué)的方式進(jìn)行課程設(shè)計(jì)與教學(xué)改革。在32 學(xué)時(shí)的課程時(shí)長中,不僅特別挑選了適合教學(xué)目標(biāo)的教材,而且針對(duì)不同的教學(xué)章節(jié)和算法概念設(shè)計(jì)了大小不一的案例進(jìn)行講解,最后布置積累到最終成績的編程大作業(yè)以引導(dǎo)學(xué)生更深地理解各種算法。課程還向?qū)W生開放了完成編程大作業(yè)的實(shí)驗(yàn)室條件,在東華大學(xué)—西門子先進(jìn)自動(dòng)化實(shí)驗(yàn)室的高性能計(jì)算平臺(tái)上學(xué)生可以使用多種代碼環(huán)境實(shí)現(xiàn)機(jī)器學(xué)習(xí)算法的案例編程。從教學(xué)反饋而言,案例式教學(xué)改革的近兩年間,課程受到了較高的匿名教學(xué)評(píng)價(jià),學(xué)生的平均滿意度在95 分以上,這表明案例式教學(xué)改革措施是有效的。