劉娟 萬媛媛
1.廣東財(cái)經(jīng)大學(xué)統(tǒng)計(jì)與數(shù)學(xué)學(xué)院 廣東 廣州 510320;
2.中山大學(xué)新華學(xué)院 廣東 廣州 510520
概率論與數(shù)理統(tǒng)計(jì)是研究現(xiàn)實(shí)世界中的隨機(jī)現(xiàn)象的統(tǒng)計(jì)規(guī)律性的學(xué)科。進(jìn)入21世紀(jì)以來概率論的思想以及常見統(tǒng)計(jì)分析方法已經(jīng)被廣泛應(yīng)用于生物醫(yī)學(xué)、經(jīng)濟(jì)管理及社會(huì)學(xué)等眾多領(lǐng)域。近年來隨著人工智能技術(shù)的飛速發(fā)展,推進(jìn)了信息技術(shù)在日常教學(xué)中的廣泛應(yīng)用[1]。當(dāng)前在數(shù)據(jù)科學(xué)領(lǐng)域,Python作為一種高級程序設(shè)計(jì)語言,其腳本語言簡單且易用,具有豐富的擴(kuò)展庫,是數(shù)據(jù)科學(xué)家們最常用的語言。在概率論與梳理統(tǒng)計(jì)的課堂中引入Python語言輔助教學(xué),結(jié)合教學(xué)過程中的理論要點(diǎn)、典型問題,利用Python程序的相關(guān)模塊,去完成數(shù)理模型計(jì)算,統(tǒng)計(jì)試驗(yàn)的模擬,數(shù)據(jù)建模及統(tǒng)計(jì)推斷等,將抽象的數(shù)學(xué)知識具體化,讓學(xué)生根據(jù)討論問題展開探索性學(xué)習(xí)模式,提高學(xué)生的學(xué)習(xí)積極性,可以提升課堂教學(xué)效率。
根據(jù)研究的內(nèi)容及方法來看,概率論與數(shù)理統(tǒng)計(jì)這門課程由兩個(gè)部分組成,概率論是研究關(guān)于不確定性現(xiàn)象的數(shù)學(xué)描述,概率思想是統(tǒng)計(jì)學(xué)的理論基礎(chǔ),而數(shù)理統(tǒng)計(jì)則是研究有效整理收集和分析受到隨機(jī)影響數(shù)據(jù)的學(xué)科。由于學(xué)生在學(xué)過微積分、線性代數(shù)等課程后會(huì)形成一些慣性思維,不太適應(yīng)和熟悉概率統(tǒng)計(jì)研究隨機(jī)現(xiàn)象產(chǎn)生的新觀點(diǎn),比如頻率概率與主觀概率,假設(shè)檢驗(yàn)、最大似然和回歸分析方法等理論性較強(qiáng)的知識點(diǎn)[2]。教師在課堂教學(xué)中不能只強(qiáng)調(diào)概率統(tǒng)計(jì)課程中的公式和定理,片面追求抽象思維能力的訓(xùn)練,在教學(xué)實(shí)踐中可結(jié)合問題案例教學(xué)方法來傳授思想和指導(dǎo)實(shí)踐,強(qiáng)調(diào)問題解決的過程,讓學(xué)生有在課堂上有獲得感,體會(huì)到所學(xué)知識可以解決實(shí)際問題,達(dá)到專業(yè)素養(yǎng)的提升。
通常認(rèn)為概率論起于骰子的應(yīng)用,源于點(diǎn)數(shù)問題,也稱為分賭本問題。這是早期概率論從萌芽到成立過程中最重要的一個(gè)問題:有一個(gè)贏者可以獲得全部獎(jiǎng)金的雙人對戰(zhàn)游戲,每局只有勝負(fù)之分,每局的得分是10分,先得到60分的人獲勝,A和B兩人正在進(jìn)行游戲時(shí)因某些原因中止,而此時(shí)A的得分是50分,B的得分是30分,請問獎(jiǎng)金該如何分配給雙方才算公平。
為解決上述問題,費(fèi)馬和帕斯卡開始了關(guān)于這類分配問題的系列著名通信。他們將賭博問題轉(zhuǎn)化成數(shù)學(xué)問題,靈活地運(yùn)用了組合理論,使用加法定理、乘法定理和全概率公式,引進(jìn)了后來被稱之為數(shù)學(xué)期望的概念,利用二項(xiàng)分布和負(fù)二項(xiàng)分布的思想,費(fèi)馬和帕斯卡完美解決了分賭本的問題。
貝努利在《猜度術(shù)》書中提出了著名的大數(shù)定理,大數(shù)定理討論的是在什么條件下,隨機(jī)變量序列的算術(shù)平均依概率收斂到其均值的算術(shù)平均[3]。隨著概率論學(xué)科的發(fā)展,到目前出現(xiàn)了各種推廣形式的大數(shù)定律,但其核心觀點(diǎn)都是當(dāng)樣本量越大,樣本均值的穩(wěn)定性就越好。概率論中第二個(gè)重要定理就是中心極限定理,這一定理是揭示自然規(guī)律的重要工具,曾經(jīng)在兩個(gè)多世紀(jì)里作為概率論研究中心課題。與大數(shù)定理所得到的樣本均值穩(wěn)定性的結(jié)論對比,中心極限定理給出了更精確、更深刻的結(jié)論,它討論了在什么條件下獨(dú)立隨機(jī)變量和的分布函數(shù)是正態(tài)分布。
數(shù)理統(tǒng)計(jì)學(xué)是基于數(shù)據(jù)的學(xué)科,數(shù)據(jù)是數(shù)字,但不只是數(shù)字,在如今大數(shù)據(jù)時(shí)代,除了傳統(tǒng)意義上的數(shù)據(jù),現(xiàn)在也包括如視頻、音頻、文本等大量的非結(jié)構(gòu)化數(shù)據(jù)。 數(shù)理統(tǒng)計(jì)研究怎樣利用、收集和整理數(shù)據(jù)帶有隨機(jī)性的數(shù)據(jù),對總體發(fā)分布或者參數(shù)做出估計(jì)和推斷。
假設(shè)檢驗(yàn)是統(tǒng)計(jì)推斷中非常重要的一種方法和思想,它來自英國著名統(tǒng)計(jì)學(xué)家Ronald Fisher羅納德·費(fèi)希爾1935年的著作《試驗(yàn)設(shè)計(jì)》,書中給出了統(tǒng)計(jì)學(xué)歷史上著名的女士品茶問題[4]。假設(shè)檢驗(yàn)不僅是一種方法,更是一種重要的統(tǒng)計(jì)思想。針對需要研究的問題,把期待的結(jié)果置于備擇假設(shè)的位置,然后根據(jù)原假設(shè)在已有理論框架下進(jìn)行嚴(yán)格數(shù)學(xué)推導(dǎo),計(jì)算模型的P值,這種思想的核心在于“拒絕”,而不是“證明”,這與常規(guī)的數(shù)學(xué)思維方式不盡相同,卻是統(tǒng)計(jì)學(xué)學(xué)習(xí)中的重點(diǎn)。
回歸分析是統(tǒng)計(jì)學(xué)中數(shù)據(jù)分析的一個(gè)非常重要的模型方法,統(tǒng)計(jì)學(xué)上“回歸”一詞,最早出現(xiàn)在1855年生物學(xué)家高爾頓發(fā)表的《遺傳的身高向平均數(shù)方向的回歸》文章中?;貧w分析也是機(jī)器學(xué)習(xí)中最基礎(chǔ)的理論之一,線性回歸模型相對簡單,并且提供了一個(gè)易于解釋的數(shù)學(xué)公式,它可以應(yīng)用應(yīng)用于自然科學(xué)、社會(huì)科學(xué)等各個(gè)領(lǐng)域,是統(tǒng)計(jì)數(shù)據(jù)分析的最基礎(chǔ)方法。
Python編程語言語法簡潔且具有強(qiáng)大第三方庫的支持,而且Python程序?qū)Τ鯇W(xué)者非常友好,它是人工智能時(shí)代重要的編程語言之一,下面結(jié)合課程教學(xué)的經(jīng)典應(yīng)用案例,來展示Python軟件在概率統(tǒng)計(jì)課程教學(xué)中的應(yīng)用,培養(yǎng)學(xué)生學(xué)會(huì)利用概率統(tǒng)計(jì)知識,初步具備對實(shí)際問題的建模的能力,利用計(jì)算機(jī)程序來輔助學(xué)習(xí)、探索解決實(shí)際問題,達(dá)到“學(xué),思,做”的有機(jī)結(jié)合。
歷史上有許多著名概率統(tǒng)計(jì)學(xué)者都曾經(jīng)做過“擲骰子”的試驗(yàn),將一枚均勻的骰子重復(fù)的拋擲,觀察出現(xiàn)點(diǎn)數(shù)的規(guī)律,剛開始出現(xiàn)的點(diǎn)數(shù)會(huì)隨機(jī)地出現(xiàn)點(diǎn)1到點(diǎn)6,并不呈現(xiàn)出穩(wěn)定規(guī)律,隨著試驗(yàn)次數(shù)的增加,發(fā)現(xiàn)出現(xiàn)的點(diǎn)數(shù)的平均值會(huì)穩(wěn)定在3.5附近,這一看似直觀的結(jié)論,背后的數(shù)學(xué)原理正是大數(shù)定律。為了讓學(xué)生在能夠更直觀感受到這一結(jié)論,從被動(dòng)接受到自己動(dòng)手實(shí)踐,引入Python中的numpy程序包來輔助教學(xué),下面是擲骰子試驗(yàn)在Python中實(shí)現(xiàn)代碼:
import random
import matplotlib.pyplot as plt
import numpy as np
random.seed(1991)
def Roll(n):
result=[]
for i in range(1,n+1):
result.append(random.choice([1,2,3,4,5,6]))
return result
result=Roll(1500)
averages=[]
_cumsum=np.cumsum(result)
for index in range(len(_cumsum)):
averages.append(_cumsum[index]/(index+1))
plt.plot(averages)
plt.rcParams[‘font.family’]= [‘sans-serif’]
plt.rcParams[‘font.sans-serif’]= [‘SimHei’]
plt.xlabel(‘試驗(yàn)次數(shù)')
plt.ylabel(‘骰子點(diǎn)數(shù)的平均值')
plt.title(‘?dāng)S骰子的大數(shù)定律')
plt.show()
及模擬1500次的運(yùn)行結(jié)果如下圖1所示。
圖1 模擬1500次的試驗(yàn)結(jié)果
首先給出教材中一類單正態(tài)總體在方差未知情況下的雙側(cè)檢驗(yàn)問題,某廠生產(chǎn)的某種零件的長度服從正態(tài)分布,其均值設(shè)定為0.8cm,現(xiàn)從該廠抽取9件產(chǎn)品,測定長度分別為0.8511、0.8891、0.8982、0.7625、0.845、0.838、0.8232、0.8883及0.8256。給定顯著性水平0.05,判斷該廠這批零件長度是否符合要求。
假設(shè)檢驗(yàn)是統(tǒng)計(jì)學(xué)部分的重要內(nèi)容,利用Python程序SciPy庫中的stats模塊的ttest_lsamp函數(shù)可以進(jìn)行單個(gè)正態(tài)總體均值的檢驗(yàn),利用程序中的對應(yīng)模塊來完成統(tǒng)計(jì)計(jì)算,讓學(xué)生學(xué)會(huì)和適應(yīng)用軟件掌握相關(guān)知識點(diǎn)。本題在Python中實(shí)現(xiàn)的完整代碼如下,由代碼結(jié)果可知,根據(jù)p值這批零件不符合要求,拒絕原假設(shè)。
In[1]: from scipy import stats as sts
dafa= [0.8511,0.8891,0.8982,0.7652,0.8450,0.8380,0.8232,
0.8883,0.8256]
Print(‘零件長度為: ’,sts.ttest_lsamp(a=data,popmean=0.80))
Out[1]: 零件長度為:
Ttest_lsampResult(statistic=3.3116514531113,
Pvalue=0.010671924137571)
隨著大數(shù)據(jù)人工智能技術(shù)的飛速發(fā)展 , 利用數(shù)據(jù)處理軟件賦能助力教學(xué)已成為現(xiàn)實(shí),在概率論與梳理統(tǒng)計(jì)的課堂中引入Python語言輔助教學(xué),利用程序的相關(guān)模塊,去完成概率定理的模擬,統(tǒng)計(jì)試驗(yàn)的計(jì)算及推斷等,將抽象的數(shù)學(xué)理論具體化,重現(xiàn)知識形成過程,幫助學(xué)生更好地理解和掌握教學(xué)內(nèi)容,達(dá)到培養(yǎng)學(xué)生創(chuàng)新精神和實(shí)踐能力的目標(biāo)。