俞璐 王琳 武欣嶸 曾維軍
摘要:我國人工智能發(fā)展戰(zhàn)略對高端人工智能人才的培養(yǎng)提出了迫切需求,高等院校為相關(guān)專業(yè)研究生開設(shè)人工智能課程成為大勢所趨。作者所在課程組面向?qū)W院應用型研究生的培養(yǎng)目標和定位,著眼研究生編程實踐能力的培養(yǎng)和提高,立足學院現(xiàn)有人工智能相關(guān)課程,跨越課程界限,體系化設(shè)計實踐教學環(huán)節(jié),提出了基礎(chǔ)編程實踐、經(jīng)典算法實現(xiàn)、算法綜合應用、實踐創(chuàng)新競賽共四個層次的編程實踐內(nèi)容。同時,課程組還探索了與之相適應的實踐教學模式與方法,并在多年的教學過程中加以實踐,取得了良好的教學效果。
關(guān)鍵詞:人工智能;編程實踐;體系化
中圖分類號:G424.1? 文獻標識碼:A? 論文編號:1674-2117(2021)21-0093-04
前言
人工智能的迅速發(fā)展正在深刻和深遠地改變著人類社會的生產(chǎn)、生活,甚至改變著世界格局。 要想構(gòu)筑我國人工智能發(fā)展的先發(fā)優(yōu)勢,必須搶抓人工智能發(fā)展的重大戰(zhàn)略機遇。2017年我國頒布的《新一代人工智能發(fā)展規(guī)劃》中明確指出,“加快培養(yǎng)聚集人工智能高端人才”是當前的重點任務之一。[1]對為數(shù)眾多的暫時沒有條件建立人工智能學院和增設(shè)人工智能學科、人工智能專業(yè)的工科高等院校而言,開設(shè)人工智能課程是培養(yǎng)人工智能應用型人才、拓寬人工智能專業(yè)教育內(nèi)容、形成“人工智能+X”復合專業(yè)培養(yǎng)新模式最有效和直接的手段。
概述
人工智能課程的“理論實踐相結(jié)合”特點非常鮮明,在理論指導編程實踐的同時,編程實踐會促進和加深對理論知識的理解。人工智能課程的基礎(chǔ)理論部分較為系統(tǒng)和完善,有大量體系化的教學資源和規(guī)范化的教學案例可供參考與效仿。相對而言,人工智能課程中的實踐環(huán)節(jié)可借鑒的成熟范例并不多見,而且實踐環(huán)節(jié)較多地依賴于學生的專業(yè)背景和學校的培養(yǎng)目標,更能體現(xiàn)復合專業(yè)培養(yǎng)新模式的特色,因此吸引了眾多教育工作者開展了深入的研究與探討。[2-6]
筆者所在課程組以學院研究生開設(shè)的人工智能相關(guān)課程為內(nèi)容展開研究,不囿于單門課程,而是結(jié)合學院辦學定位和人才培養(yǎng)目標,進行跨課程的頂層設(shè)計,通過構(gòu)建人工智能課程體系化的編程實踐環(huán)節(jié),提高學生動手實踐能力和人工智能應用能力,為科教興國和科技強軍貢獻力量。
學院研究生培養(yǎng)的現(xiàn)狀
為了更好地適應國家對專業(yè)人才的需求和新型陸軍對軍事人才的需求,學院研究生人才培養(yǎng)的目標定位正逐漸從研究型人才向應用型人才轉(zhuǎn)變。無論是軍人研究生還是地方研究生,無論是學術(shù)學位研究生還是專業(yè)學位研究生,對其應用能力的需求都被提高到前所未有的高度。相對于傳統(tǒng)的研究型人才,應用型人才培養(yǎng)更加重視學生的動手實踐能力和學以致用的能力,突出培養(yǎng)學生應用理論知識動手解決實際問題的能力。
學院研究生培養(yǎng)包括信息與通信工程、電子科學與技術(shù)、計算機科學與技術(shù)三個學碩專業(yè)和計算機應用、電子信息兩個專碩專業(yè)。這些專業(yè)與人工智能密切相關(guān),培養(yǎng)的研究生或者直接研究人工智能,或者結(jié)合專業(yè)領(lǐng)域拓展人工智能的應用。目前,學院針對研究生開設(shè)了“模式識別”“深度學習”“網(wǎng)絡運維與數(shù)據(jù)分析”等人工智能課程,此外,“最優(yōu)化理論與方法”“智能計算”課程也與人工智能具有較強的關(guān)聯(lián)。鑒于這些課程理論知識的相關(guān)性和培養(yǎng)能力的一致性,如何突破不同課程的限制,從高處著眼,統(tǒng)一設(shè)計和構(gòu)建這些課程的編程實踐環(huán)節(jié),使得對學生編程實踐能力和人工智能應用能力的培養(yǎng)過程具有持續(xù)性,是值得深入思考和研究的問題。
人工智能課程編程實踐內(nèi)容的層次化設(shè)計
課程組針對研究生的應用型培養(yǎng)目標,開設(shè)了人工智能相關(guān)課程,統(tǒng)一設(shè)計了如下的編程實踐內(nèi)容并在教學中進行了探索式應用。
學院絕大多數(shù)研究生在本科階段已經(jīng)學習過Python或者matlab,具備一定的編程知識。以此為基礎(chǔ),課程組為人工智能相關(guān)課程設(shè)計了基礎(chǔ)編程實踐、經(jīng)典算法實現(xiàn)、算法綜合應用、實踐創(chuàng)新競賽共四個層次的編程實踐內(nèi)容,任課教師可根據(jù)需要選擇。四部分內(nèi)容的層次關(guān)系如下圖所示。
1.基礎(chǔ)編程實踐
在研究生基礎(chǔ)課階段,擬從事人工智能相關(guān)研究與應用的學生通常會選修“最優(yōu)化理論與方法”和“智能計算”課程。這兩門課程分別介紹傳統(tǒng)規(guī)劃方法和智能優(yōu)化算法,為人工智能后續(xù)課程的學習奠定了必要的數(shù)學基礎(chǔ),同時鍛煉了學生的編程實踐能力。課程組根據(jù)理論教學內(nèi)容設(shè)計了基本優(yōu)化算法的編程實踐環(huán)節(jié),包括傳統(tǒng)的線性、非線性規(guī)劃算法(圖中“基礎(chǔ)編程實踐”層次模塊的虛線以下)和智能優(yōu)化算法(圖中“基礎(chǔ)編程實踐”層次模塊的虛線以上)兩類,其中智能優(yōu)化算法以群體智能算法(蟻群、魚群、蜂群、狼群、粒子群等)為重點。這些實踐環(huán)節(jié)要求學生獨立編程實現(xiàn)算法每一個步驟,不調(diào)用現(xiàn)成的工具包,不參考網(wǎng)上程序,旨在加深學生對算法原理的理解,并扎實培養(yǎng)學生對編程語言的靈活運用能力,以期提高編程技巧。
2.經(jīng)典算法實現(xiàn)
這部分內(nèi)容是人工智能課程系列實踐環(huán)節(jié)的重點,依托“模式識別”和“深度學習”兩門課程。實踐環(huán)節(jié)分為獨立自主編程與基于平臺編程兩類。獨立自主編程主要實現(xiàn)機器學習中最基本最經(jīng)典的算法,包括感知器、Fisher判別、線性回歸、Logistic回歸、決策樹、PCA(Principle Component Analysis,主成分分析)、EM(Expectation Maximization,期望最大化)算法、Adaboost、Q學習等,不依賴計算平臺,不參考網(wǎng)上程序,旨在加深對算法原理細節(jié)的理解?;谄脚_編程允許調(diào)用現(xiàn)成的工具包和模塊,如SVM(Support Vector Machine,支持向量機)應用、HMM(Hidden Markov Model,隱Markov模型)應用考查學生調(diào)用現(xiàn)有工具包完成分類任務的能力,關(guān)注對調(diào)用接口的熟悉和參數(shù)選擇的技巧。分類和聚類是“模式識別”課程中的兩個重要內(nèi)容,相對而言,聚類算法分配的課時較少,對學生的要求是能夠在理解聚類算法原理的基礎(chǔ)上根據(jù)實際問題選擇合適的聚類算法。鑒于聚類算法種類眾多而課時有限,課程組設(shè)計了聚類算法的比較實驗,允許學生調(diào)用平臺自帶的聚類算法,針對特定聚類任務進行性能的分析和比較。“深度學習”課程的實踐環(huán)節(jié)都是基于平臺的編程,畢竟一個深度網(wǎng)絡的完全自主編程實現(xiàn)超過了學院大部分碩士研究生的能力。課程組選擇了應用最為廣泛的CNN(Convolution Neural Network,卷積神經(jīng)網(wǎng)絡)、LSTM(Long-Short Term Memory,長短期記憶網(wǎng)絡)、VAE(Variational Auto Encoder,變分自編碼器)和GAN(Generative Adversarial Network,生成對抗網(wǎng)絡)作為實驗對象,要求學生基于深度學習平臺(Tensorflow或者Pytorch)搭建神經(jīng)網(wǎng)絡解決分類和樣本生成任務。
3.算法綜合運用
完成了經(jīng)典算法實現(xiàn)環(huán)節(jié),就可以進行算法綜合運用的實踐環(huán)節(jié)了。這部分內(nèi)容依托“網(wǎng)絡運維與數(shù)據(jù)分析”課程,主要是在公開的網(wǎng)絡數(shù)據(jù)集上完成網(wǎng)絡運維中的數(shù)據(jù)分析問題,如網(wǎng)絡流量分類/預測、網(wǎng)絡異常檢測/預測、網(wǎng)絡態(tài)勢分析展示等任務。參考的方法通常是KDD(Knowledge Discovery and Data Mining,知識發(fā)現(xiàn)與數(shù)據(jù)挖掘)、ICML(International Conference on Machine Learning,國際機器學習會議)等頂級會議上發(fā)表的最前沿的研究成果。有了此前機器學習基本算法的基礎(chǔ),學生理解并實現(xiàn)這些頂級會議上的方法成為可能。課程組設(shè)計了多個實戰(zhàn)編程環(huán)節(jié),教師可根據(jù)實際情況選用。
4.創(chuàng)新實踐競賽
在完成了人工智能相關(guān)課程的學習之后,筆者鼓勵學生走出去參加包括數(shù)學建模競賽和人工智能競賽在內(nèi)的創(chuàng)新實踐競賽,這些競賽對于檢驗和提高學生的理論指導實踐能力、發(fā)現(xiàn)和解決問題的能力大有裨益。對于全國研究生數(shù)學建模競賽和研究生軍事數(shù)學建模競賽,學院是統(tǒng)一組隊參加的,近十年來的題目中人工智能題目占據(jù)的比例越來越大,還有一些問題本身不是人工智能問題,但其解決方案中人工智能方法也占據(jù)一席之地。除了歷史悠久的數(shù)學建模競賽,各種人工智能競賽平臺近年來也相繼問世。這些競賽面向?qū)嶋H應用中各種類型的任務和難題,以實測數(shù)據(jù)上的性能為評比標準。競賽題目通常與人工智能課程契合度很高,如PRCV(Pattern Recognition and Computer Vision)競賽中的“短視頻實時分類”“大規(guī)模行人檢索”“車紋識別”“高速低功耗視覺理解”等題目都是經(jīng)典機器學習算法的綜合運用,對檢驗和鍛煉學生學以致用的能力很有幫助。
人工智能課程實踐環(huán)節(jié)的教學方法
“內(nèi)容為王”,但是內(nèi)容不是全部??茖W合理的實驗內(nèi)容也要依靠科學合理的教學模式和方法才能取得最佳的教學效果。配合實踐環(huán)節(jié)的體系化層次化設(shè)計,課程組在實踐環(huán)節(jié)中采用了如下的教學方法。
1.靈活多樣的考核機制
針對不同層次不同類型的實踐環(huán)節(jié),采用不同的驗收標準。對于旨在提高編程能力的“基礎(chǔ)編程實踐”,以及“經(jīng)典算法實現(xiàn)”中的自主編程,驗收的標準主要是編程技巧,matlab中是否善用矩陣、Python中善用高級的數(shù)據(jù)結(jié)構(gòu)、實現(xiàn)同樣的功能用了多少行代碼及時間復雜度多少等都是評價編程質(zhì)量的指標。對于“經(jīng)典算法實現(xiàn)”中的基于平臺編程以及“算法綜合運用”環(huán)節(jié),驗收的標準是對平臺、對算法、對模塊的選擇、分析和評判能力,針對具體的問題能否在短時間內(nèi)選定適合的算法,并基于平臺迅速搭建起模型,是考查的重點。對于“創(chuàng)新實踐競賽”,最直接的評價標準就是是否獲獎,當然,參賽的收獲與感悟也是我們關(guān)心的。對于一些需要比較的算法實現(xiàn),如聚類的各種算法、VAE和GAN等,算法實現(xiàn)過后對實驗結(jié)果的分析和比較通常更能反映出學生對理論知識的思考和理解,也是實踐環(huán)節(jié)驗收的重要指標。
與以上的實驗驗收標準相對應,課程組設(shè)計了靈活多樣的考核機制。對于選課人數(shù)不超過20人的小班,可以采用逐人逐實驗現(xiàn)場驗收的形式,針對性地進行個性化提問以了解學生的付出和收獲。對于人數(shù)較多的班次,可以采用實驗報告的形式,隨機挑選一些學生和一些實驗進行現(xiàn)場提問和驗收。在課程學習期間,如果參加了創(chuàng)新競賽并獲獎,可以作為附加分以資鼓勵。
2.因人而異的實踐任務
選修同一門課程的學生在基礎(chǔ)和研究方向上可能有較大差異,學習課程的目的和要求也各不相同,對此課程組在布置實踐任務時采用了因人而異、一人一議的方式。在課程開設(shè)之初,任課教師會了解每一名學生的專業(yè)和研究方向。對于只是應用人工智能方法來輔助畢業(yè)課題的學生,可以降低“基礎(chǔ)編程實踐”以及“經(jīng)典算法實現(xiàn)”中自主編程的要求,允許調(diào)用平臺提供的模塊完成任務?!皠?chuàng)新實踐競賽”也只需鼓勵他們參加數(shù)學建模競賽,而不是純粹的人工智能競賽。對于計算機科學與技術(shù)專業(yè)的學生,通常是研究人工智能方法而不是簡單應用,那么他們需要高標準完成全部實踐環(huán)節(jié),而且在實驗驗收時還要側(cè)重考查他們對人工智能理論的理解。
3.持續(xù)長效的反饋機制
編程能力的提高不是一時之功,有時也不是在一門課程中就能顯現(xiàn)。為了檢驗實踐環(huán)節(jié)的設(shè)置以及教學模式方法是否科學合理、提高學生編程實踐能力的目標是否達成,需要有持續(xù)長效的反饋機制,不限于一門課的學習期間,甚至不限于學生的在校時間。對于人工智能相關(guān)的幾門課程,同一位學生后續(xù)課程中表現(xiàn)出的編程實踐能力是對此前課程編程實踐環(huán)節(jié)的反饋,創(chuàng)新實踐競賽的成績是對課程實踐環(huán)節(jié)的反饋。任課教師和學生的導師之間也應建立起經(jīng)常性的聯(lián)系,學生在課題研究階段的表現(xiàn),甚至是畢業(yè)后工作期間的心得體會也可以作為人工智能課程所有實踐環(huán)節(jié)的反饋。通過這種持續(xù)長效的反饋機制,課程組可以不斷地修正調(diào)整實踐內(nèi)容和教學方法,以期獲得更好的教學效果,實現(xiàn)應用型人才培養(yǎng)的目標。
結(jié)語
人工智能的迅速發(fā)展和廣泛應用大幅提高了工科院校人工智能相關(guān)課程開設(shè)、建設(shè)和改革的緊迫性。結(jié)合筆者所在學院應用型研究生的培養(yǎng)目標,課程組跨越課程界限,統(tǒng)一設(shè)計了人工智能相關(guān)課程的實踐教學環(huán)節(jié),并探索了與之配套的教學模式和方法。教學實踐表明,體系化的實踐教學環(huán)節(jié)和針對性的教學方法取得了良好的教學效果。
參考文獻:
[1]國務院.新一代人工智能發(fā)展規(guī)劃[R].2017.
[2]柯永振,王瑞昆,楊帥.普通高校計算機專業(yè)研究生編程能力培養(yǎng)的思考和實踐[J].計算機教育,2019(01):52-54.
[3]王金龍.人工智能編程教育課程區(qū)域化實踐研究[J].現(xiàn)代職業(yè)教育,2021(16):204-205.
[4]楊其峰.人工智能與編程教育校本課程化研究與實施[J].教學管理與教育研究, 2019(18):98-99.
[5]王少青.人工智能應用型人才培養(yǎng)課程體系構(gòu)建[J].計算機時代,2020(07):93-95.
[6]徐圓圓.“人工智能”專業(yè)教學與實驗系統(tǒng)的研究與實現(xiàn)[D].北京:北京郵電大學,2019.