黃性芳
摘 要 “統計計算”是數學和統計學專業本科生核心課程,是利用統計軟件來實現統計算法的一門實用學科。作為一門應用性較強的課程,該課程的建設一直存在著教學內容體系、方法、手段和考核等方面的問題。通過研討課教學實踐,致力于課堂教學改革,推進創新教學模式,給出了“統計計算”課程教學改革的幾點看法與建議。
關鍵詞 統計計算 實踐教學 R語言
中圖分類號:G424 文獻標識碼:A DOI:10.16400/j.cnki.kjdkx.2017.11.038
Abstract "Statistical Computing" is the core course of mathematics and statistics undergraduate students, is the use of statistical software to achieve a statistical algorithm of a practical subject. As a strong application of the course, the construction of the course has been the existence of teaching content system, methods, means and assessment and other aspects of the problem. Through the teaching practice of the seminar, it is devoted to the reform of classroom teaching and the promotion of innovative teaching mode, and gives some opinions and suggestions on the teaching reform of the "statistical computing" course.
Keywords statistical computing; practice teaching; R Language
統計計算是提供給高年本科生的、結合統計軟件來實現統計算法的一門實用學科。該課程在數據分析、質量管理、生物醫學、保險精算、金融投資等領域具有廣泛的應用。隨著大數據時代互聯網和計算機的飛速發展,利用統計學方法進行數據分析受到越來越多的重視,而統計計算是實現統計方法的一個重要途徑,因此,近年來對統計計算課程教學方式方法提出了更高的要求。[1]
統計計算課程教學理念以人為本,以案例教學為主,以實際問題為背景,注重學生創新精神和實踐能力的培養。然而在課程的具體教學過程中,學生普遍感到概念抽象,思維難以展開,方法難以掌握。這是與傳統數學類課程不一樣的地方,傳統的數學類課程往往以講解公式、定理為主,而統計計算課程是一門實踐性非常強的課程,如何提高學生的實際問題分析能力,提高教學質量,已成為該課程迫切需要解決的問題。[2]
本文以統計計算研討課為例談談該課程教學改革中的一點體會。
1 教學手段和方法
由于思維方式與傳統數學課程不同,統計計算課程主要是通過講解算法的基本思想、基本計算及基本操作的練習和理解,培養高年級本科生解決統計問題和分析統計問題的能力,課程教學中重視理論與實際并重,并提供許多案例進行實際操作分析,為學生后繼的畢業設計和社會實際工作、研究生學習打下必要的理論基礎。
(1)采用研討式課堂教學。研討式課堂教學體系中課堂教學僅占三分之一左右,大部分學時是在教師的引導下,由問題驅動,調動學生積極性,啟發學生主動思考,并形成廣泛的討論與交流局面。研討式教學在國外許多著名大學中被作為僅次于課堂講授的第二教學手段。研討式教學方法有利于在同學之間、師生之間進行相互交流和互動式思考和學習,使課堂氣氛活躍,學生參與度提高,幫助學生消化大信息量的教學內容。
(2)堅持以啟發誘導為核心,經常和學生一起討論,加強和學生交流,引導學生積極主動開展思維活動。美國著名數學家哈爾莫斯說過:“最好的教學方法不僅僅是講清事實,而應該激勵學生自己去思索,自己去動手”。我們研討課上,老師把主要知識點給同學們回顧后,就會提出一些問題讓同學們思考,或給出一些練習、實際問題讓同學們自己解決,最后老師和同學們一起分析總結。從我們的教學效果來看,采用“啟發式”和“討論式”教學方法,更能培養學生的學習興趣和求知欲,對知識的掌握更加深刻。
(3)結合相關統計軟件輔助教學,突出以學、解決實際問題為主。根據教學中大量的統計計算和模型分析需要,我們在介紹理論方法后,都會給學生介紹利用常用的統計軟件(如R,SAS,SPSS,MATLAB等)如何來解決這個問題。[3]如極大似然估計可以直接調用MATLAB的mle程序包來解決,也可以用R語言中的函數optim( )或者nlm( )來求似然函數的極大值,函數nlm( )僅使用牛頓-拉夫遜算法求函數的最小值點,函數optim( )提供method選項給出的5種方法中的一種進行優化,我們就讓學生自己動手來做。一方面可以使我們的理論方法更形象直觀,學生更易掌握,另一方面培養了學生應用概率統計知識和利用統計軟件分析和解決實際問題的意識和能力。
2 研討課實施方案
(1)小組共同完成課題,培養團隊協作精神。首先將全班學生分組,每個團隊5人左右,可以自由組合,團隊成員分別承擔不同角色,包括Leader, Collector, Thinker, Programmer, Speaker各1名。其中Leader代表團隊組長,負責組織和協調團隊的合作;Collector代表數據搜集者,負責項目中所需的數據整理與收集;Thinker代表思想者,負責整理項目思路,為Programmer提供可行方案;Programmer代表程序員,負責完成項目所需的編程工作;Speaker代表匯報員,負責將團隊結果進行展示和匯報;每一個角色看似獨立,實則息息相關,只有當團隊成員緊密合作時,項目才能獲得最好的表現。endprint
(2)根據具體主題進行針對性授課,小組匯報、討論、教師點評相結合。每2周一個主題,提前告知學生,讓學生帶著問題聽老師講授,并以小組為單位進行簡單的練習,最后由組長通過組員在練習中的表現,分配組員在這一次主題中承擔的角色,在規定時間內完成主題并在全班進行匯報,組與組之間相互提問討論,教師點評。
(3)多種考核方式全面評價學生的綜合能力。傳統的教學考核方式綜合評定學生知識掌握程度主要是通過“期末考試成績與平時成績”的加權平均的方法,而這種考核方式過于死板,考核點和面具有一定局限性,無法針對學生的實際操作能力與創新能力做出綜合評價,此外,在整個評價過程中,學生出于被動的地位,沒有機會發表自己的意見,學生跟老師之間缺乏充分的討論,因此傳統的考核方式忽略了學生主觀能動性,綜合評價指標不夠全面。為了更加全面地考查學生的綜合能力,我們建議采用“課堂討論、小組匯報、小組互評和老師點評”四者相結合的方式進行綜合評定。考核成績由三部分構成,一是老師根據每個小組的課堂討論、小組匯報等總體表現給予評分,二是各個小組根據其他組的總體表現進行小組之間評分,三是各個組長可以通過每個組員的表現組織小組內部進行評分,最終計入期末成績。新的考核方式能夠讓學生主動參與到評價過程中,改變了以前只要在老師面前表現好的單一評價模式。學生如果想取得較高的成績,必須提高課題的參與程度,采用團隊合作方式完成課題,能夠使小組成員之間取長補短,相互學習,做到知識的共享和協同創新。
3 教學內容安排
統計計算研討課建議學時48課時,根據研討課的進度,理論教學內容可以安排如下:[3,4,5]
第一章介紹隨機數的產生,建議學時8課時。本章教學目的和要求:回顧常見隨機變量及其分布、數字特征、分位數等概念;要求掌握均勻隨機數的產生,均勻隨機數的檢驗;掌握常見分布函數及分位數的計算,非均勻隨機數的產生。本章重點是利用R軟件實現常見分布隨機數的產生和檢驗,以及繪制散點圖、密度估計圖、與真實分布比較。
第二章介紹Monte Carlo積分和方差減少技術,建議學時6課時。本章教學目的和要求:掌握Monte Carlo 模擬的基本思想;掌握Monte Carlo數值積分計算方法;掌握方差減少技術;掌握控制變量法。本章重點是利用R軟件模擬蒲豐投針實驗、實現Monte Carlo 數值積分。期間以蒲豐投針實驗、Monte Carlo 數值積分為主安排小組匯報。
第三章介紹Monte Carlo 方法在統計推斷中的應用,建議學時4課時。主要內容包括Monte Carlo估計方法,Monte Carlo區間估計;Monte Carlo假設檢驗步驟和實現辦法; Monte Carlo勢函數等。本章重點是實現Monte Carlo估計和檢驗。
第四介紹Bootstrap方法和Jackknife方法,建議學時6課時。本章教學目的和要求是掌握Bootstrap方法的主要思想,利用bootstrap方法進行參數估計;掌握Jackknife方法主要思想,與Bootstrap方法的區別與聯系;了解Bootstrap方法的漸近性質。本質重點 利用R軟件實現Bootstrap區間估計和修正的區間估計,比較Bootstrap區間估計法與傳統估計方法的優劣。期間以Bootstrap方法為主安排小組匯報。
第五章介紹Markov Chain Monte Carlo方法,建議學時6課時。本章教學目的和要求掌握Markov Chain基本概念、MCMC方法主要思想;Hasting-Metropolis 抽樣算法、吉布斯(Gibbs)抽樣法等,本章以實現Metropolis-Hastings 算法、吉布斯(Gibbs)抽樣法為重點。
第六章EM 算法,建議學時6課時。本章要求熟悉EM算法的推導;了解指數族的EM算法;利用EM算法計算MLE的方差。本章重點是利用R軟件實現EM算法。期間以EM算法為主安排小組匯報。
第七章 Bayes統計分析,建議學時6課時。本章主要圍繞Bayes估計,后驗分布; Bayes因子以及Bayes推斷;重點介紹基于Markov Chain Monte Carlo方法的貝葉斯計算。本章重點是利用R軟件實現Bayes估計。
第八章Cross-Validation方法介紹,建議學時6課時。本章教學目的和要求為掌握Leave-one-out方法;掌握Cross-Validation交叉驗證法,帶寬選取;以K折交叉驗證法為例介紹模型選擇。本章重點利用R軟件實現K折交叉驗證法模型選擇,并以K折交叉驗證法模型選擇為主進行小組匯報。
4 研討課成效
從實施的效果看,起初匯報初稿仍然采用按部就班的結構,有的理論知識過多,有的分析結果太簡單武斷,通過老師反復講解,點評,幾輪研討課以后,同學們都領會并認同分析思路,在組織課件時基本形成了提出問題→方法選擇→數據分析→總結與思考的模式。
通過研討課的實施,使得在有限的研討時間里讓學生都有參與的機會,另一方面團隊協作意識得到進一步提升,互通有無,使大家共同進步。事實也表明,各小組在準備時采用分工合作的方式,是最有效的團隊協作方式。小組成員能夠一起協商解決問題的思路,然后分頭完成數據收集、方法推導、計算機編程、多媒體課件制作等具體工作。因此,研討發言在對知識點的理解、對分析結果的解答和驗證、課件的生動美觀等各方面都完成得很出色。
與傳統教學中學生間的互動較少相比,專題研討課能夠增加學生之間互動的環節。而以小組為單位開展學習,研討前團隊成員充分交流合作,研討課上,組與組之間互相提問討論,不但可以營造學生之間互相啟發、知識共享、相互合作的和諧氛圍,還能使學生在研討過程中體驗學術研究和與人合作交流的樂趣,實現共同進步。
5 存在的問題
首先,研討課的特殊形式增加了學生主講的學時,無形中縮短了教師講授的課時。在更短的課時內要教授同樣多的內容對教師來說也是一個挑戰。其次,研討課需要結合每個知識點選擇適當的案例或者實際數據,做到問題有趣,難度適中,這對教師的知識面提出了更高要求。此外,如何進一步調動學時積極性,加強課堂互動,也是值得我們進一步探索的問題。
本文獲得國家自然科學基金青年項目11401094及教育部人文社科基金青年基金13YJC910006資助
參考文獻
[1] 武東. “統計計算方法”課程教學改革的探討[J].中國電力教育,2008(12):82-83.
[2] 尹居良,王斌會.《數據分析與統計計算》課程設計與教學探討[J].科教文匯旬刊,2008(28):72-73.
[3] 高惠璇.統計計算.北京大學出版社,1995.
[4 ]Rizzo, Maria L.Statistical computing with R.CRC Press,2007.
[5] James E. Gentle.Elements of Computational Statistics.Statistics and Computing.Springer,2002.endprint