李大威,艾 欣
(東華大學信息科學與技術學院,上海 201620)
隨著我國科技、教育事業的快速發展,在國內外頻繁密切的學術交流背景下,當前我國的高等教育已經邁入了全新的階段。除了科研實力以外,國內高校的人才培養,特別是研究生的培養質量也已經不可避免地加入國內外同行的激烈競爭和比較中。信息與計算機技術的飛速發展對相關學科的課程體系和教學內容帶來了全新的內涵和挑戰,特別是近幾年AI學科的異軍突起,對許多產業和國民生活都帶來了廣泛的影響。深度學習技術的流行使數據挖掘和機器學習等研究生課程具有了更豐富的內涵和更廣的應用范圍。這些因素都迫使我們一直在思考如何推動信息學部的研究生教學改革,傳統的教師主動傳授、學生被動接受的授課方式顯然已經不適應當前的人才培養需要[1]。因此很多信息與計算機學科的教師與科研人員提出了諸如CDIO、翻轉課堂[2]等教學新模式,鼓勵線上線下、網絡公開課與實際課堂綜合的教學方式[3-10]。
隨著“大數據”時代的到來,重要的決策將日益基于數據和分析而做出,而并非基于經驗與直覺[11]。數據分析是綜合使用檢索策略、數學工具與算法、計算機等從大量數據中獲取用于決策的知識與規律,輔助決策者做出正確策略的一種方法。數據的有效分析離不開機器學習技術,機器學習是人工智能的基礎,也是致力于研究如何通過計算的手段、利用經驗來改善系統自身性能的一門學科;也是通過模擬或實現人類的學習行為以獲取新的知識技能的一門學問。因此“數據分析與機器學習”不僅是信息學部的重要教學內容,也已經成為人工智能課程群的一門主干課程。由于課程難度較高,為了保證教學效果,不少學者開始提出使用案例式與分層教學方法,以實踐帶動理論知識的講解為理念進行教學改革,取得了一些成果。比如周志華[12]撰寫的“機器學習”教材被同學們親切地稱為“西瓜書”,正是因為其中有不少以西瓜數據作為范例的算法講解。胡雪蕾等[13]在“機器學習”課程改革中引入問題驅動的教學法和實踐驅動教學法進行了教學改革。在這些機器學習相關的課程教改成果啟發下,本文以我校控制科學與工程研究生專業為例,介紹“數據分析與機器學習”課程在案例式教學和實驗教學等方面的改革特色。該課程為控制科學與工程學位點的專業選修課,同時面向學術型與專業型的一年級碩士研究生開放。該課程每年開課一學期,共32 學時、2 學分,選課學生人數每年穩定在80 名左右。
“數據分析與機器學習”課程的教學特點和問題以及針對這些問題進行的教改舉措主要有:
雖然選修本課程的研究生絕大部分來自控制科學與工程及控制工程這兩個專業,但同學們的本科專業則五花八門。對2018、2019 兩級選修課程的學生的本科專業進行了調研,結果以餅圖的形式展示于圖1,可見近兩年間半數學生來自于自動化專業,剩下許多同學本科學習的是電氣工程及其自動化、機械與動力工程、物理與光電等相關專業,對本課程需要的數學知識和機器學習相關入門概念的了解比較薄弱。

圖1 2018、2019兩級選課學生的本科專業分布情況
針對選課學生的特點,課程在教學上安排了完整的由淺入深的過程。在課時安排上,第1 周的課程全部講述與數據相關的概論知識,從課程內容的整理安排開始,先后講數據之廣、數據之大、數據之美、數據之能、數據之惑、數據之害等內容,以豐富、風趣的案例喚起學生對課程的興趣。第2 周的課程以教材為主干,對機器學習的一般方法進行簡單的概述,特別對機器學習算法的基本劃分,比如無監督學習、有監督學習以實例進行講解和區別。為了幫助本科專業為非自動化和計算機類的同學盡快能夠適應本課程,在第3 次課的前半部分,以互動式課堂習題的方式講解4 個關于向量以及向量范數的微分計算實例,并推薦一本專門查表向量與矩陣運算的開源工具書“matrix cookbook”[14],為后面課程在數學公式的推導方面奠定基礎。
機器學習的教材卷帙浩繁,國內外雖然已有不少優秀教材,但是適合于課時和涵蓋面的非常少,要么面面俱到內容繁多,要么牽涉太多艱深理論。
本課程要在32 學時內將主要的數據分析方法與機器學習技術進行全面講解難度較大,只能考慮對重點算法進行講述,因此選擇了杉山將著、許永偉譯的《圖解機器學習》作為本課程教材[15]。它的第1 個優點是使用幾何方法和多種示意圖表幫助初學者理解艱深的機器學習原理中的代數問題;第2 個優點是隨書附帶了不少在Matlab 平臺下可執行的算法小案例代碼,便于學生調試和運行各類算法,加深理解。
本門課程理論內容枯燥,在算法細節上充滿了數學公式,缺乏與實際問題的聯系。整個課程的教學涉及概率論、矩陣論、數值分析、高等數學、優化理論、多種計算機編程工具等多方面的知識,給學生的學習過程帶來了嚴峻的挑戰。因此,需要將課程內容與實際問題相連,以理論聯系實際,改進教學效果。
為了降低課程學習門檻,采用了案例式教學方法,課程設置了核密度估計模型、主成分分析算法、高斯混合模型聚類算法3 個各2 課時的大案例。這3 個大案例教學分別對應于線性學習模型、降維方法、無監督聚類方法這3 個重點教學章節,而且在案例的最后都布置了具有詳細說明和要求的編程大作業,使學生可以在課后加深對課程的認識。同時,還做到了在課程當中每45 min就至少有一個小案例進行穿插,其內容或是對算法細節的說明,或是一個完整的算法應用,很好地緩解了同學們的理解難度。以“稀疏學習”章節為例,課程使用栗子果皮多刺的形態類比1 型范數高維參數約束空間的幾何形態,幫助學生理解在1 型范數約束的最小二乘法的解容易出現在參數空間的尖端的現象。在“稀疏學習”章節,通過借鑒原子力顯微鏡對氫鍵成像所采用的伴生物間接觀測法這個小案例[見圖2(a)],闡述了使用伴生上確界曲線把不可微分的1 型范數約束的最小二乘法優化目標轉化為可微分的二次優化目標形式的思維方式[見圖2(b)]。這些小案例幫助加深了學生對機器學習算法的理解。
傳統課程考查成績主要由期中考試+期末考試成績決定,缺乏靈活性,而且書面考試并不適用于需要大量實踐與編程的研究生課程。在吸取了國外同行的豐富經驗后,決定對課程采用積累式打分法。在大課程案例講解結束后,要求學生完成對算法用編程進行實現的大作業。每項大作業不僅要求提交代碼,還需要學生對實驗結果進行分析和梳理,寫成課程報告的形式。每次大作業的成績單獨打分,全部通過加權的方式計入最終成績,在總成績中期末考試成績的比重下降到30%。

圖2 課程小案例展示
本課程對線性學習模型、主成分分析、EM 算法等重點章節進行了案例式教學+大作業的課程改革。以主成分分析(PCA)所在章節為例,在講解這種無監督降維方法時,使用了4 層認識組織教學內容,使學生能夠層層遞進地認識PCA的本質、思想以及其局限性。第1 層認識是通過幫助攝影者對一個茶壺的拍照角度進行選擇的案例,來表明對三維物體拍攝的最好照片往往意味著它能表達這個物體最豐富的信息,而沒有學習過PCA概念的攝影者往往已經在潛移默化地使用PCA 的思維方式去尋找最佳拍攝角度。通過對PCA的第1 層認識,不僅提升了學生聽課的興趣,也在潛意識上降低了學生的認知難度,同時也做到對PCA的淺層本質進行了較貼切的闡述,達到了一舉三得的目的。對PCA的第2 層認識以一個多攝像機觀測理想彈簧滑塊系統的工程案例開始,講述了使用能夠表達最豐富信息的向量空間正交基構成數據映射矩陣P,使得原始數據矩陣X通過Y=PX映射為新的數據矩陣,體現數據真實結構。緊接著,課程回顧了一些線性代數的定理和知識,引入第3 層認識,即通過特征值分解來求PCA,完成最佳正交基的求解。最后,通過舍棄矩陣P 中不重要的主成分,就完成了數據的降維,實現了對PCA的第4 層認識—即證明了PCA從根本上而言是一種無監督線性降維方法。在課程PPT中,用1 頁PPT對之前的PCA 4 層認識進行了1 頁內容的總結[見圖3(a)],方便學生把概念串聯理解。在介紹PCA 概念后,緊接著介紹了PCA 在兩個工程實踐中的應用,第1 個應用是使用三維掃描儀對植物冠層進行成像,采集并計算其點云空間特征,形成具有6維特征(每個點都有3維空間坐標加3維法向量方向)的植物冠層點云數據。再使用PCA對6 維特征的植物冠層點云進行降維并進行數據可視化。第2 個應用是設計迭代式的PCA算法,對具有一定空間形態的三維點集不斷使用PCA算法,擬合出最適合于點集的平面,最后進行可視化。為了加深學生對這兩個工程實踐的理解,課程分別留下了兩個數據集并布置了從格式到細節的各項大作業要求[部分要求見圖3(b)],限制學生在10 天左右時間內完成。在形式上,大作業不僅要求學生通過郵件系統提交1 份類似科研論文格式的報告,而且需要同步提交代碼。

圖3 大案例教學與對應的大作業要求展示
在主成分分析課程的最后,回顧了這兩年PCA算法的最新發展態勢和前沿應用,著重介紹了Proceedings of IEEE 上關于PCA 在現代數據集合、算法和應用方面做的專刊內容,鼓勵學生大膽學習最新領域的前沿論文,形成的PPT頁面見圖4。
為了方便選課的研究生進行大作業的編程實踐,向學生開放了東華大學——西門子先進自動化實驗室。實驗室包含多達60 臺高性能計算平臺,預裝了多種操作系統和多套編程環境,可以方便學生關于課程內容進行機器學習、深度學習算法的實踐與開發(見圖5)。西門子先進自動化實驗室內不僅配備了高性能計算平臺,還有工業4.0 智能智造裝配生產線系統、多種型號的六軸KUKA 機器人系統以及虛實結合的工業網絡實踐平臺。該實驗室是信息學院重要的多用途先進實驗室,也是學院重要的本碩博一體化實踐平臺。不僅服務于研究生課程數據分析與機器學習,還支撐了本科的自動化專業綜合實習、自動檢測技術、本科畢業設計等多門課程的實踐教學,也向控制理論與控制工程專業的部分碩士博士開放。

圖4 對PCA類算法近兩年在學界和業界發展的回顧以及對未來相關研究的展望

圖5 東華大學——西門子先進自動化實驗室內一角
在當今大數據和人工智能大發展的背景下,數據分析與機器學習這門課程在研究生課程體系中的地位變得舉足輕重,為了解決在研究生課程教學中出現的新問題和情況,采用了案例式教學的方式進行課程設計與教學改革。在32 學時的課程時長中,不僅特別挑選了適合教學目標的教材,而且針對不同的教學章節和算法概念設計了大小不一的案例進行講解,最后布置積累到最終成績的編程大作業以引導學生更深地理解各種算法。課程還向學生開放了完成編程大作業的實驗室條件,在東華大學—西門子先進自動化實驗室的高性能計算平臺上學生可以使用多種代碼環境實現機器學習算法的案例編程。從教學反饋而言,案例式教學改革的近兩年間,課程受到了較高的匿名教學評價,學生的平均滿意度在95 分以上,這表明案例式教學改革措施是有效的。