智能計算系統?:專欄·最前線 | 中國石油大學(北京):產學研齊頭并進,初生犢攻堅克難!
發布時間:2021-03-29 | 來源:智能計算系統 | 瀏覽量:
2021年寒假期間舉辦的智能計算系統教學研討班,邀請到了來自不同高校的6名具備一定開課經驗的一線教師代表,與參會老師們共同分享探討教學心得與經驗。
2020年4月,《智能計算系統(導論)》在中國石油大學(北京)信息科學與工程學院開課,學時32。這是我們首次面向低年級大一學生的開課嘗試,教學團隊迎難而上,積極適應性調整教學內容與課程模式,切實幫助學生提高綜合能力。
今天,我們請到了中國石油大學(北京)的授課教師——劉偉峰老師,來為我們分享《智能計算系統》的開課教學經驗與心得。
劉偉峰,中國石油大學(北京)教授、博士生導師。2002年和2006年分別于中國石油大學(北京)計算機科學與技術系獲學士與碩士學位,2016年于哥本哈根大學尼爾斯·玻爾研究所獲計算科學博士學位。他的主要研究方向為數值線性代數和并行計算,其中尤其關注稀疏矩陣的數據結構、并行算法和軟件。他關于并行稀疏矩陣計算的開源代碼被眾多數學庫所采用,多種實際科學與工程應用因此獲得顯著性能提升。他的研究工作發表于SC、ICS、PPoPP、ASPLOS、IPDPS和ICPP等重要國際會議,并擔任SC、ICS、IPDPS、ICPP、Cluster和Euro-Par等多個重要國際會議的技術程序委員會委員,以及TPDS、SISC和TKDE等多個重要國際期刊的審稿人。
2020年授課情況
2020年春季學期,中國石油大學(北京)信息科學與工程學院面向大一學生,開設《智能計算系統(導論)》課程,學時32。
授課方式:線上授課
選課人數:課程對于大一本科生而言難度很大,我們原本對于選課人數的預期也比較低。為了讓老師們能夠更好地備課,我們把課程的開課時段放在整個學期的后8周,這個安排與同學們的高數和物理期末考試時間沖突,再加上五一放假減少了6個學時的課程,導致同學們在有限的學習時間內除了應付其他課程的考試,還需要吃透這門高難度的綜合性課程,“壓力山大”。同學們最初的選課熱情超過我們的預期,超過80人,但因為開設在大一,設為選修課,支持學生隨時退課,最終堅持到最后并通過期末考核的學生有19人。第一次在大一嘗試,有19人堅持下來,我們覺得已經很棒了。
授課團隊:授課團隊由5名教師組成,分別為劉偉峰(6)、魯強(2)、范江波(6)、吳雙元(6)、張麗英(6)(括號數字代表每位老師對應的授課學時)
助教團隊:助教團隊有9人,由低年級研究生和高年級本科生組成,由于最開始選課人數多,所以助教人數也安排比較多,最終選課人數縮減后,實際上是一名助教對應兩名同學,保證了良好到位的教學輔導。
實驗安排:學生不分組,2大實驗+6個小作業
考核方式:無筆試無考勤,6個小作業以報告方式考核
課程內容設置
不同于其他學校,中國石油大學(北京)此次開課,面對的是低年級的大一本科生。對于他們而言,沒有足夠的前序知識鋪墊,也沒有建立較為完善的知識體系和系統性思維,教授這門課挑戰十足。面對這種情況,劉老師與教學團隊老師們迎難而上,創新性地將《智能計算系統》課程實現“適應性降維”調整,課名改為《智能計算系統(導論)》,在課程內容和教學方式上也做了相應的改變,讓我們來看看他們是怎么做的吧!
1. 緒論部分(陳云霽,魯強,第1-2學時)
選課學生在前八周通過《智能計算系統》教材和B站公開課先行自學部分課程。
第一堂課,陳云霽老師進行了線上開班致辭,陳老師的親臨指導給歡欣鼓舞的同學們打了一劑“強心針”;之后,由對知識圖譜方面比較專業的魯強老師,在人工智能的發展歷史和典型應用場景上進行了圖文并茂、豐富多彩的介紹,幫助同學建立對人工智能和智能計算系統整體的認知與理解。
2. 機器學習基礎(范江波,第3-8學時)
首先講授學習智能計算系統所需要理解的基本機器學習知識,包括矩陣-向量計算和NumPy使用、線性回歸、三層神經網訓練和其中矩陣-向量計算的重要性。由于后期對TensorFlow的學習需要這樣的編程環境,而大一的同學很多沒有接觸過Python以及線性代數的知識,對矩陣-向量計算概念相對模糊。在授課結束后,范老師留了一些作業,包括線性回歸是如何和神經網絡產生聯系的,以及神經網絡訓練的計算過程,矩陣-向量計算的表達等。
3. 期中Project匯報(第9-10學時)
期中Project題目:淺層神經網絡運行分析
期中Project前置自學內容:除了范老師在之前講解的知識外,同學們需要自學吳恩達深度學習課程的第三周之淺層神經網絡。為了降低同學們的學習難度,老師們會給出編程答案。
期中Project要求:要求能夠結合理論,理解整個程序的架構,對語句做注釋,真正理解每段程序的含義。針對智能計算系統,老師特別要求學生需要插入time.time()函數記錄關鍵步驟運行時間,找出其中耗時最長的幾個函數,并嘗試解釋其功能和耗時較長的原因。
期中Project考核形式:以PPT形式,獨立答辯,每人匯報5分鐘;上交PDF格式報告,包括代碼、注釋、執行時間分析等。
匯報反饋:劉老師提到,同學們在此次匯報的完成上相當不錯。
4. 深度學習框架和模型(吳雙元,第11-16學時)
首先講授最后大實驗所需的TF框架的基本使用方式,之后講授和分析LeNet、 AlexNet等典型的深度學習模型,以及其中的卷積、池化等主要計算模式,并分析計算和訪存量,從而為之后做系統與高效計算奠定基礎。最后引入圖像風格遷移,并聯系到之前講授的一系列知識,考慮到有一定難度,老師們盡量做到能夠淺顯易懂地把知識講給同學們。
5. 系統基礎知識(劉偉峰,第17-18學時)
劉老師提到,“如果說計算機系統和體系結構以及智能計算系統這門課程之間取一個交集點的話,這個交集一定是矩陣計算,這也是這幾門課程最重要的知識點?!?由于采取線上授課的形式,繪圖較為容易,因此在上課時,劉老師會給同學們線上畫點積算法,講授矩陣相乘的點積算法和行-行算法,之后講授矩陣相乘的分塊算法和使用AVX2的實現,然后現場編程和編譯運行,分析三種算法的性能。最后結合課程B站視頻,引導同學們建立對計算和訪存的認識。
6. BangC基礎知識(劉偉峰,第19-20學時)
這部分內容首先介紹協處理器硬件架構和程序設計模式,之后現場從0開始編寫一個BangC程序的host代碼,接著為同學們講解BangC開發手冊,分析DLP存儲層次結構,并編寫使用gdram和sram的BangC程序。
7. 關鍵論文導讀(劉偉峰,第21-22學時)
論文導讀部分的課程引入,是《智能計算系統》課程在各大高校開課以來的首次實踐。引入此部分內容的考慮在于,劉老師認為,業內的一些知名企業/產業,在最初很多都是基于一個想法,到一份Paper,在經歷無數次的嘗試與實踐后最終落地實現規?;瘧?。劉老師希望能夠帶領同學們逐步了解如何從一份paper到一個產業的衍化邏輯,希望同學們不僅能夠掌握技術,還能掌握行業發展態勢。
劉老師帶領同學們用一節課導讀與課程相關的在ASPLOS、 ISCA、 MICRO等頂級會議和期刊上發表的關鍵學術論文,同時也留了作業,要求同學們在2014到2019年的論文中任選兩篇進行精讀并完成一份報告。在報告中需要給出:
論文的研究內容對應的是《智能計算系統》 教材中哪一章哪一節的知識點;
論文的每一節(指諸如Introduction、 Background and Motivation Experimental Methodology等這種)的主要內容是什么,并寫出一個你認為的亮點;
論文的Introduction一節里每一個自然段里的主要內容是什么,并描述這些自然段之間的邏輯關系;
在整篇論文中任選一個比較長的自然段,描述該自然段里每一句話之間的邏輯關系。
8. 實驗一與實驗二(張麗英,第21-24學時)
實驗內容同《智能計算系統》實驗一與二,無調整變化。
9. 期末project演示(第25-26學時)
最后期末Project的演示,包含論文閱讀的作業、算子集成的作業以及圖像風格遷移的作業,通過整體匯報展示,同學們理論與實踐的綜合水平與系統能力得到顯著提升。
(圖為學生匯報成果摘選)
教學探討
1. 如何實現降維的適應性教學
在將更適用于高年級本科生以及低年級研究生的課程“降維”成面向大一本科生的《智能計算系統(導論)》時,劉老師及教學團隊發現,這實際上是給授課教學進行了“升維”——同學們為了能夠消化吸收這些課程內容,需要短時間內惡補許多基礎知識,如Python、線性代數、機器學習、英文文獻閱讀、Linux等,壓力很大,但可見的實際效果是,能堅持到最后的學生的綜合素質與自學能力都有明顯提升。
2. 課程教學中理論與實驗優化結合的探討
劉老師與教學團隊都認為實驗非常不錯,基于目前的實驗,有沒有可能把圖像風格遷移案例的技術內容進一步細化和拆分,在每一章節都明確學生需掌握的知識點與案例的對應關系。
小編畫外音:在之前的文章中也提到,去年的學校均采用實驗1.0版本,在理論課程全部結束后完成幾個實驗。隨后課程團隊對實驗內容進行優化迭代,推出實驗2.0版本,并配套自動評測平臺,在去年下半年預先在北大實行初試點,反饋相當不錯,由此在2021年將在各大高校全面推行實驗2.0版本。較之1.0版本,2.0版本的實驗能夠很好地解決劉老師團隊此處的探討:實驗以風格遷移作為應用驅動,結合各章節的重難點,設計了多個分章節實驗與拓展思考,理論章節與分章節實驗一一對應。同學們通過完成每一章學習之后的實驗內容,能夠明晰切實地掌握理論知識。在層層遞進的分階段實驗中,將軟硬件知識點貫穿起來,讓學生真正掌握智能計算系統的部署與優化。
3. 如何能夠高效準確地驗證學生對課程內容的掌握程度(如何判斷“玩家把怪打死了”)
小編畫外音:如何高效把握學習進度,如何直觀感受知識的“獲得”,也是課程團隊在去年一年實踐中思考的問題。在不久的未來,《智能計算系統》教學團隊將推出配套的實踐教程,并利用各章節實驗抽象得出的多個知識點構建“智能計算系統知識樹”:學生每完成一個實驗,便能夠“點亮”知識樹的一部分。通過遍歷知識樹,學生可以更好地直觀掌握各個知識點之間的有機聯系,獲得對整個技術棧的體系性理解。同時,為了調動學生的學習積極性,我們也在考慮更有意思、互動性更強的課程模式,使之不再單單是一門課程或一本書,而成為對教學的一種新嘗試,這種創新的教學機制具體怎樣幫助提升學生的學習熱情,讓我們拭目以待!
詳情見鏈接:https://mp.weixin.qq.com/s/omhaGWX5LsM_X8ZZiykdow
(編輯 劉曉玉)
99亚洲综合精品