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