黃宏博,崇美英
(北京信息科技大學計算中心,北京100192)
在信息化高度普及的背景下,計算機基礎類教育對各專業來說都是一個必不可少的環節。計算機基礎類教育的普及程度和深度,在很大程度上決定了高層次人才的信息化素養。雖然各學科專業人才培養的目標不同,但是對計算能力、信息素養和邏輯思維能力的基礎需求都是一樣的。然而對計算機基本素養的培養,大學計算機基礎類課程承擔著主要責任,也被寄予了很大的期望。
傳統的計算機結構體系以馮·諾依曼型計算機為主,這種結構體系也決定了目前計算機實踐和教學中思維和行為方式。馮·諾依曼型的結構體系極大地促進了計算機科學和工程的發展,在人類文明史上留下了濃墨重彩的篇章。近年來,得益于人工智能的最新進展,類腦計算、深度學習等新型計算模式取得了令人矚目的成就,在許多領域有了突破性的進展。這種以深度神經網絡為基礎的新型計算模式有望突破傳統馮·諾依曼型計算體系的框架,為計算科學的發展帶來新的驅動力。抓住新的歷史機遇,盡早在大學計算機課程體系中體現類腦計算的內容,有利于盡快推廣計算機科學的新發展,為適應新形勢下的計算機教育改革奠定基礎。
計算機基礎類課程的教學目標要求學生能夠通過課程學習掌握計算機的基礎知識和基本原理,初步掌握使用計算機解決實際問題的基本方式、方法,具備基本的信息能力和信息素養。國內高校中的計算機基礎類課程體系設置主要有兩類課程:一類是大學計算機基礎,主要培養學生對計算機基本原理的認知和基本技能的應用;另一類是程序設計類課程,主要培養學生的邏輯思維能力和用計算機解決實際問題的基礎能力。長期以來,國內高校的計算機基礎教學都以典型軟件的應用教學為主[1]。隨著教學改革的推進,很多高校開始在教學內容上加入更多計算機基本原理的相關知識和內容。但是,典型軟件的應用訓練仍然占據課程教學相當多的比例。以某些軟件應用為主的教學缺乏靈活性和變通性,教學中依賴具體軟件和版本,不利于計算機基本原理和內涵的掌握,不符合教育的基本規律。自從美國卡耐基·梅隆大學周以真教授在2006年提出計算思維以來[2],計算思維以其深層的內涵、高度的抽象和推廣的普遍性受到了越來越多的關注。計算思維和基本的閱讀、書寫、表達等能力一樣,是人類需要掌握的最基本技能。因此,在計算機基礎課程中體現計算思維的基本思想被越來越多的高校認可[3]。
近年來,包括計算機技術在內的信息技術發展異常迅速,新技術、新模式和新潮流不斷涌現。大數據、云計算、人工智能、深度學習、類腦計算等技術得到了迅速發展,形成了信息技術發展的新熱點。然而,國內高校的大學計算機基礎類課程在教學中還是以傳統教學內容為主,信息技術的最新發展在課程教學中少有體現。雖然計算機基礎類課程以基本理論和基本原理為主線,但是脫離最新發展的課程教學必然難以適應新形勢的要求。探討和研究如何在大學計算機基礎類課程中體現計算的新形式和新方法,對于高素質人才培養具有顯著的現實意義。
類腦計算是對比計算機信息技術與腦神經信息功能的智能差距后提出的技術理想,目標是發展仿腦的高智能計算機器[4]。類腦計算是在腦科學研究的基礎上,通過探求人腦神經網絡學習的方式,模擬高等生物的認知和思考模式進行信息變換的一種計算模式。類腦計算以人工神經網絡為基礎,對傳統神經網絡的層次進行深度擴充,以卷積神經網絡、自編碼器、深度置信網絡等形式簡化層與層之間的網絡參數量級,在目前蓬勃發展的大數據和并行高性能計算的協助下,完成模式的認知和分類[5]。這種計算模式有別于傳統的馮·諾依曼型計算機的計算架構,有望突破馮·諾依曼計算機的瓶頸,為計算的新發展探求新方向[4-6]。
近年來,國內外已經掀起了類腦計算的研究熱潮。不論是AlphaGo在傳統被認為智能化難度非常高的圍棋領域戰勝人類九段棋手,還是不斷刷新紀錄的ImageNet識別競賽,到處都有類腦計算帶來的震撼性效果。為推動類腦研究的發展,發達國家和組織也相繼推出了大型腦研究計劃。其中最受關注的有美國和歐盟在2013年分別提出的“通過推動創新型神經技術開展大腦研究計劃(BrainResearch throughAdvancing Innovative Neurotechnologies,BRAIN)”和“人腦計劃(Human Brain Project,HBP)”以及2014年日本啟動的“腦智(Brain/MIND)計劃”等。類腦研究和腦機智能技術是未來高科技領域的關鍵,類腦計算系統的突破將推動我國信息產業并帶動工業、農業、金融及國防等領域的跨越式發展[7]。
由此可見,類腦計算包括很多信息領域的新技術,像大數據、高性能計算、深度學習、機器學習、人工智能等。如果將來高校培養的人才不了解這些知識,就無法理解和應用這些新的信息技術,難以適應時代的發展。在信息社會下,各學科專業學生都要具備基本的信息素養和計算機能力,因此,在計算機基礎類課程教學中適當融入新技術是必要和有意義的。
在高校計算機基礎類課程中進行類腦計算的教學具有一定的必要性和前瞻性。但是,受限于教學條件、教學環境、師資力量、學生知識基礎等多方面因素,在實際教學的過程中,具體實施存在著較大的困難。一方面,類腦計算需要較多的基礎知識,需要了解人工神經網絡的基本理論,具體計算中又要求具有梯度下降法尋優等數學基礎;另一方面,計算機基礎類課程基本安排在高校的低年級學習,此時學生缺乏計算機理論和知識的基本了解,相應的數據基礎也沒有建立起來,教學類腦計算必然會遇到很大的困難。然而,從另一個角度來看,此時學生的思維方式還沒有定向化,較易于接受新的思想和思維模式。如果在教學中把類腦計算概要化,提取出抽象化的思維模式,不拘泥于具體的網絡訓練細節,就可以擺脫數學基礎的牽絆,把教學重點放在思想和計算方式上,達到計算思維培養的教學目的。
在課程的具體設計和安排上,可以設置在大學計算機課程中。大學計算機課程一般先講授計算的本質、計算的原理等。以圖靈機模型為例,讓學生理解所有數據都可以表示為字符串,計算就是在控制器的作用下把輸入字符串變換為輸出字符串的過程。一方面讓學生了解計算的強大能力,另一方面可以結合圖靈機的“停機問題”,解釋計算的局限性,讓學生明白宇宙中存在著許多難以計算的問題。隨后,講解數值、文本、聲音、圖形圖像、視頻等信息在計算機中的表示等相關內容,為教授計算機的其他理論和應用打下基礎。在計算的具體實現步驟中,應以算法的相應內容為主線,安排算法的概念、特點、常見算法設計的方法以及算法復雜度度量等內容。在算法復雜度講解部分,可以呼應計算理論的相關內容,通過典型計算復雜度曲線讓學生理解計算的復雜性和局限性。有了這些基礎,便于進一步進行類腦計算部分的教學。其中,信息編碼部分是計算與類腦計算部分的靜態數據表示基礎,算法部分是計算與類腦計算部分的動態變換基礎。類腦計算是計算的一種特殊形式,它們一起構成了信息編碼和算法的具體應用。各部分間既有先后順序關系,又有相輔相成的內在聯系,在教學中可以前后呼應,強化學生對各部分內容的理解。類腦計算部分與其先修內容間的相互關系可用圖1表示。圖中矩形框內為各部分章節的主題,各部分章節前的標號表示教學內容的先后順序,橢圓形框中為各章節的主要內容。

圖1 類腦計算部分與其他章節內容的相互關系
類腦計算是模仿生物腦神經網絡的模式進行計算的,因此適當介紹腦科學研究中關于生物腦信息存儲和信息處理方式的內容,有助于對類腦計算的教學和理解;同時,通過圖像和視頻作為多媒體教學輔助工具展示人腦信息處理方式,有利于吸引學生的好奇心,調動其學習的積極性和主動性;由人腦的神經元構成和各部分的工作模式,引出MP神經元模型;通過對比神經元的興奮和抑制狀態,類比MP模型的激活函數的輸出,使學生明白神經元的工作機理,繼而通過把多個神經元分層聯結,形成人工神經網絡,模擬人腦內部的神經元聯結;結合Hebb規則,說明神經網絡通過權值調整來進行學習的思想,讓學生理解以神經網絡的權值作為信息存儲和表現的方式。由于人腦內部對于信息的存儲和處理是分區域分層次進行的,因此通過加深神經網絡的層數,可以更好地模擬人腦,由此帶來參數增加和訓練難度加大等問題可以通過大數據等方式克服。圖2為從神經元連接為人腦的示意圖及其與神經元模型連接為神經網絡和深度神經網絡的類比。以類比的方式進行教學,可以讓學生更容易領會類腦計算的實質。在實際課程教學進程中,依據教學學時的安排,可根據需要調整內容的詳略側重。如果時間允許,可以適當介紹通過大數據訓練神經網絡的主要思想和方法以及為什么要把神經網絡的層次變深變多來實現更好的人腦模擬效果。
類腦計算的信息表示存儲方式以及計算方式和馮·諾依曼型計算機的信息表達與處理方式存在顯著差異,在教學中容易引起學生的困惑。另外,由于新的知識體系與傳統計算機的知識體系不盡相同,對學生的學習也會造成困難,教學中需要特別注意。為了降低學生的學習難度,達到更好的教學效果,對大學計算機課程中的類腦計算教學提出以下建議。
(1)強調思想,舍棄細節。由于大學低年級學生尚未完全建立真正類腦計算涉及的知識基礎,過多陷入細節容易使學生產生畏難情緒,不利于把握整體思想。
(2)重視直觀,擺脫公式。在大學的低年級階段,學生的抽象思維能力還處在持續的培養訓練中,對于直觀感受的依賴性還很強。因此,多用實例、圖表和多媒體輔助教學工具可以起到更好的效果。對于很多類腦計算的復雜數學公式,可以舍棄掉,以免課堂出現過于抽象的情況。
(3)多做類比,理解模擬。結合腦科學和神經科學的研究成果,把類腦計算的相關內容和生物腦的結構與組織方式多做類比,幫助學生理解人工神經網絡來模擬生物腦的初衷、方法和效果。在模擬中舍棄了哪些細枝末節,又做了哪些強化和修改,以比較的方式并從方法論的高度加強學生對這種模擬的思維和方法訓練。(4)啟發思維,培養素養。類腦計算教學的初衷是培養學生對這種計算模式思維方式的熟悉度,因此應以啟發思維的角度來要求,不應過于強調識記知識的掌握。學生能夠掌握這種思維的模式和框架,在以后需要時能夠快速回憶和理解有關的體系內容就是一種教學的成功。
對于不同層次高校和不同學科,可以依據實際情況強調或弱化不同部分的內容,因材施教、因需施教,結合實際調整各部分內容的權重。應著重在思維模式的訓練和培養上下工夫,使學生對類腦計算的總體有一個把握,便于在以后需要掌握技術細節時從其他課程中獲取。同時,與類腦計算相關的一些新發展和熱點也可以適當介紹和滲透,例如大數據、人工智能、并行計算等,使學生在學習計算機的早期就奠定新式計算機技術和算法的思想基礎,啟迪思維、開闊眼界,不拘泥于傳統思想,從而在應用時與社會需求相匹配。

圖2 生物腦與腦計算模型的類比
目前以深度學習、類腦計算等為代表的計算機和人工智能新技術正在蓬勃發展,這種發展趨勢勢必對未來的社會發展產生重要影響,甚至會引起許多生活模式的變革。承載著信息技術基礎教育和普及教育功能的高校計算機基礎類課程必須順應時代潮流,調整教學內容和教學模式。在信息化和智能化的社會大形勢下,計算機基礎教育任重道遠,必須不斷更新,探索具有普遍性重大影響的新技術在日常教學中的引入方法,才能培養出與時代相適應的、具有信息素養的高素質人才。
[1]戰德臣,聶蘭順,徐曉飛.“大學計算機”:所有大學生都應學習的一門計算思維基礎教育課程[J].中國大學教學,2011(4):15-20.
[2]WingJM.Computationalthinking[J].CommunicationsoftheAcm,2006,49(3):3.
[3]陳國良,董榮勝.計算思維與大學計算機基礎教育[J].中國大學教學,2011(1):7-11.
[4]華春雷.深構造網絡:類腦計算的新方向[J].科技導報,2016(7):34-38.
[5] Hinton G E, Salakhutdinov R R. Reducing the dimensionality of data with neural networks[J]. Science, 2006, 313(5786): 504-517.
[6]曾毅,劉成林,譚鐵牛.類腦智能研究的回顧與展望[J].計算機學報,2016(1):212-222.
[7]蒲慕明,徐波,譚鐵牛.腦科學與類腦研究概述[J].中國科學院院刊,2016(7):16-18.