岳增龍 王雪
(北京電子科技職業(yè)學院)
隨著數(shù)據(jù)分析和開放科學的發(fā)展,Jupyter平臺的出現(xiàn)充分體現(xiàn)了一種交互式編程的范式,主要通過基于網(wǎng)頁的用于交互計算的應(yīng)用程序,貫穿開發(fā)全過程:開發(fā)、文檔編寫、運行代碼和展示結(jié)果。其實質(zhì)可以理解為一個在線可交互式筆記本,允許用戶創(chuàng)建和共享包含代碼、方程式、可視化、融合音頻、文本等富媒體信息。結(jié)合線上、線下教學模式的不斷創(chuàng)新與發(fā)展,充分發(fā)揮該平臺易于交互展示的優(yōu)點,利用該平臺通過合理的教學設(shè)計,充分結(jié)合學情,可以提供完整“教、練、答、評、賽”五步閉環(huán)的交互式教學過程,確保線上線下教學同質(zhì)等效。
Jupyternotebook可以包含來自各種語言的實時代碼,以及可視化、解釋性文本HTML 或Markdown、格式化的文本、圖像、以及用 LaTeX編寫的公式,主要特點包括:
(1)編程時具有語法高亮、縮進、tab補全的功能。
(2)可直接通過瀏覽器運行代碼,同時在代碼塊下方展示運行結(jié)果。
(3)以富媒體格式展示計算結(jié)果。富媒體格式包括:HTML,LaTeX,PNG,SVG 等。
(4)對代碼編寫說明文檔或語句時,支持Markdown語法。
(5)支持使用LaTeX編寫數(shù)學性說明。
其架構(gòu)示意圖1所示,JupyterNotebook用戶用瀏覽器以網(wǎng)頁的形式打開相應(yīng)資源,并在本地修改和編輯文件、運行代碼,代碼的運行結(jié)果也能夠直接輸出顯示。
圖1 JupterNotebook架構(gòu)示意圖
用Jupyter Notebook進行教學的主要優(yōu)勢如下:
(1)各功能集于一體,適合仿真、實驗數(shù)據(jù)分析,富媒體形式直展示。
(2)可以實現(xiàn)交互式展現(xiàn)。頁面結(jié)構(gòu)是以Cell(單元)形式組織的,其中每個獨立單元,都可實現(xiàn)各種元素單獨或者混排格式。在集成第三方插件的支持下,能夠呈現(xiàn)一些互動可視化內(nèi)容,如信號處理變化的動態(tài)過程等。
教學交互層次塔理論如圖2所示將遠程學習交互模型按照“操作交互—信息交互—概念交互”從下到上表示教學交互由低級到高級、由具體到抽象的一個過程,交互式教學方法框架。
圖2 教學交互層次塔
操作交互是學習者與媒體界面的交互,體現(xiàn)的是學習者使用學習媒體的熟練程度。在課程中,充分利用JupyterNotebook來實現(xiàn)網(wǎng)頁操作為主的交互式學習。
信息交互是學生與教學要素的交互,體現(xiàn)的是教學設(shè)計和教學實施水平,其包括學生與學習資源之間的交互、師生之間交互,以及學生與學生之間關(guān)于信息的交互。
概念交互是學習者的概念與新概念的交互。概念交互是所有其它教學交互的根本目的,信息交互是實現(xiàn)概念交互的策略與過程。
總體來說,通過結(jié)合Jupyter Notebook完成整個交互式教學過程如圖3所示。
圖3 Jupyter平臺交互教學過程
首先由授課老師創(chuàng)建教學過程中所有交互過程、編寫說明文檔、數(shù)學公式圖片以及其他形式的輸入和輸出,也可以是html或PDF的格式的教學材料、課程項目案例文檔、部分代碼等課程資源,當用到項目代碼時,學生在線完成代碼編輯和編譯后,即可形成相應(yīng)知識點的學習筆記,供后面復(fù)習與檢索知識點的時候使用。
第二步從本地計算機推送并存儲到服務(wù)端或者云端。充分利用Jupter云端分布式版本控制系統(tǒng),讓學生可以實時在云端獲取所需的學習資料,而其完成的作業(yè)代碼也可以提交到系統(tǒng)中,在需要的時候教師和其他學生均可查看。具體操作為創(chuàng)建一個主分支與若干個學生分支。主分支的內(nèi)容包括教師使用的材料如課件與筆記、課堂練習所需的文檔、代碼、發(fā)布給學生的練習題。教師可根據(jù)需要控制主分支的版本,比如在所有學生均提交作業(yè)后才發(fā)布對應(yīng)的答案。其次,學生可以從服務(wù)端或云端隨時克隆和拉取最新版本的學習資料,在課外自主學習。學生完成的代碼可以推送到其在服務(wù)端或云端對應(yīng)的分支,而通過分布式版本控制系統(tǒng),這些學生分支不會與主分支產(chǎn)生沖突。
最后,教師在課堂講授過程中共享自己的屏幕,在講解理論知識的同時,實時編寫并運行代碼,加深與鞏固學生的理解,提高學習效率。同時學生應(yīng)同步進行代碼編寫,理解和實踐遇到問題的時候,教師可隨時切換到學生屏幕檢查其完成情況,達到知行合一的效果。
對比網(wǎng)絡(luò)和現(xiàn)實課堂的差異,結(jié)合實際具體情況,四種最常用場景如圖4,基于JupterNotebook平臺實現(xiàn)學生與服務(wù)端或者云端數(shù)據(jù)中心數(shù)據(jù)交互、信息交互、自愿交互、價值交互和身份交互。
圖4 網(wǎng)絡(luò)課堂vs現(xiàn)實課堂
第一是在線教室,老師和學生可以在家里或者任何Web網(wǎng)絡(luò)環(huán)境下上課。第二是電子教室,可以在電子教室里面使用數(shù)字黑板,所有的文檔、信息和在線教室是通用的。第三是課后的各種項目和活動,包括作業(yè)、評測、打卡。第四是自主學習,包括閱讀、寫作、筆記。
利用jupter平臺搭建及其他工具使用,輔助完成課堂場景、討論場景、練習場景、考核場景、自學場景、自我管理6種主要交互式教學場景教學任務(wù)。
對于線上教學過程,采用超星學習通為主要線上日常教學管理系統(tǒng),結(jié)合Jupyter Notebook的交互功能實現(xiàn)對該課程的教學交互設(shè)計,通過直播軟件實現(xiàn)教師與學生之間的屏幕共享和課堂互動。對于信號與系統(tǒng)課程的建設(shè),總體能夠覆蓋課前引入,理論探討,實操演練,總結(jié)評價的4個主要方面,具體與學生互動過程包括在線領(lǐng)取任務(wù)書,課程資源線上發(fā)布,理論學習過程,線上考核,互動討論,實驗操作及評價,基本職業(yè)素養(yǎng)、能力過程評價,以及課后拓展任務(wù)完成。
以下以課程中信號與系統(tǒng)中LTI系統(tǒng)的沖激響應(yīng)和階躍響應(yīng)這一知識點的教學過程為例,闡述該教學方法的實施情況。以LTI系統(tǒng)的階躍響應(yīng)為例,
學生自主完成主要代碼輸入和編輯,運行后通過繪圖工具可以實時驗證結(jié)果。
首先,將關(guān)于LTI系統(tǒng)的階躍響應(yīng)所涉及到的理論知識對應(yīng)的學習材料,以及將使用超星學習通將基本課程內(nèi)容上傳到平臺端,學生可以在課前預(yù)習并熟悉這部分內(nèi)容。然后在課程中,教師實時使用Jupyter Notebook在不同的Cell中輸入格式化的文本、圖像、公式和視頻、Python代碼(如圖5),學生在各自計算機上同步操作,完成Cell配置和修改后即可運行相應(yīng)代碼,顯示結(jié)果如圖6所示。這能讓學生快速獲得一種將所學知識運用到實際中的成就感,激發(fā)學習興趣,并通過軟件調(diào)試等過程,培養(yǎng)學生培養(yǎng)批判性思維和獨立解決問題的能力。
圖5 LTI系統(tǒng)階躍響應(yīng)參考代碼
圖6 階躍響應(yīng)
針對教學過程中的重點和難點,結(jié)合學生情況充分了解學生情況,在課中充分發(fā)揮平臺“交互式”的特點,以學生為中心,引導學生邊學習理論知識,邊動手實踐,學會觀察實驗結(jié)果,發(fā)現(xiàn)和解決問題能力提升為主要目標,實施過程中針對對學生練習過程存在的問題,通過不斷修改和優(yōu)化Cell中的內(nèi)容引導學生完成操作實驗,并在此基礎(chǔ)上進行一定的知識拓展。課程最后學生可以通過提交代碼、運行結(jié)果進行在線考核,有效的提高課堂上全程和步步評測的效率。
利用Jupter平臺通過新型交互式教學模式可以有效幫助信號與系統(tǒng)課程教學活動,實現(xiàn)了在線學習的更高效率和更好效果,極大的滿足學生個性化學習、泛在學習的學習要求;同時提升了學生自主學習能力,計算機應(yīng)用及軟件編程能力;培養(yǎng)學生在實際工程背景項目中發(fā)現(xiàn)問題、提出問題以及解決問題的能力,有效促進學生的全面發(fā)展,也是對跨學科利用該平臺實現(xiàn)交互式教學的十分有意義的嘗試。