基于R语言Shiny 包的概率统计交互可视化教学研究与实践

2021-03-29 13:58荣民希黄士国曲双红
数学学习与研究 2021年6期

荣民希 黄士国 曲双红

【摘要】随着大数据时代的到来,作为大数据分析重要理论工具的概率统计课程受到了广泛重视.2017年以来,教育部对本科课程建设高度重视,随着学校概率统计课程“质量改革”的持续深入,为了提升学生有效参与,激活学生学习动机,将其建设成为“双万计划”中的“金课”,本文利用R语言Shiny包将概率统计教学中一些重要定理及知识点建立动态可视化网页,形成了一套完整的可视化教学系统及平台,帮助学生更直观形象地理解课程中比较难以理解的抽象概念及定理,有效提高学生的学习兴趣、创新思维及课堂学习效率.

【关键词】抽样分布;Shiny;动态网页

【基金项目】本文系国家自然科学基金青年基金资助项目“非高斯噪声驱动系统的动力学性态”(11601491)、河南省高等教育教学改革研究与实践项目“新工科背景下,大学数学线上线下混合式一流课程建设的研究与实践”(2019SJGLX329)、河南省高等教育教学改革研究与实践项目“地方本科院校在线开放课程自主建设与引进使用的研究與实践”(2017SJGLX351)阶段性研究成果

一、研究的目的和意义

近年来,教育部发布了一系列关于高等本科教育的指导性文件,掀起了我国高等教育新一轮“质量改革”,特别是2019年10月31日,《教育部关于一流本科课程建设的指导意见》(教高[2019]8号)提出了经过三年左右时间,建成万门左右国家级和万门左右省级一流本科课程(简称一流本科课程“双万计划”)[1].文件中特别指出,要注重应用型、创新型、复合型人才培养课程建设的创新性、示范引领性和推广性,让本科课程优起来,推进信息技术与高等教育教学深度融合,有效提升“金课”建设质量.

概率统计作为高等院校的一门重要的数学基础课,在多个领域具有广泛的应用,特别是大数据时代的到来,为概率统计提供了更广阔的应用前景[2],把概率统计课程建设成为“金课”势在必行.怎样提升学生的有效参与,激活学生的学习动机,是辨别“金课”建设是否成功的重要标准.经过多年的实践及调查研究发现,可视化教学是多认知思考水平的学习活动,能充分调动学生的学习兴趣和学习热情,引起他们在交流和碰撞中产生新思想,在行为上发生潜移默化的变化.因此,在课程建设中我们着眼于知识的碎片化、可视化,结合R语言Shiny包生成动态网页,实现重要定理及知识点可视化,形成了一套完整的可视化教学系统及平台,建立了一套完善的概率统计多维度实践教学模式,使学生能够受到良好的数学素养熏陶,提高数据分析及实践能力,增强学生创新及实践能力,为更好地服务地方经济发展提供智力支撑.

二、R语言Shiny包简介

作为RStudio公司开发的新包,使用者不必太了解网页开发相关技术,只需要了解简单的html知识就可以快速完成网页开发,且Shiny包集成了响应式框架、JavaScript框架等特性,极大解放了作为统计语言的R的生产力[3].Shiny 应用程序会自动刷新计算结果,当用户修改输入时,输出值自动更新,而不需要在浏览器中手动刷新.Shiny包含丰富的滑动条小工具,强大的动画效果,完善的输出小工具,可以非常方便展示图形、表格以及打印输出R 对象.Shiny采用反应式编程模型,不需要处理复杂代码,只需要关注输出代码的编写与布局设置,不需要深厚的程序员背景就可以完成数据可视化工作,快速验证抽象理论及科学猜想的可靠性.

三、基于R语言Shiny包可视化教学案例

基于R语言Shiny包可通过R语言编程快速实现web框架,采用反应式编程模式实现丰富的可视化效果,并且基于蒙特卡洛思想实现抽象理论直观化,创设各种独立教学情景,以教学案例形式单独或综合性展现概率统计的相关内容,形象的动态可视化网页可以有效提高学生学习专注度,让学生有更大兴趣去探索教学相关内容的内涵,深刻理解抽象知识及知识点之间的相互联系.

经过两年多知识点的筛选、动态网页页面布局设计及代码编写,我们已经就概率统计全书重要知识点建立了相应的代码,并向学生进行了App发布.下面结合抽样分布可视化教学来介绍基于R语言Shiny 包的概率统计交互可视化教学模式.

抽样分布相关定理奠定了数理统计的理论基础,这部分内容比较抽象,难以理解.抽样分布相关定理的理解程度决定了学生对整个数理统计相关理论的理解程度,但是大部分学校对这部分内容教学只是停留在介绍相关定义、相关定理的基础上,没能从本质上对其展开介绍,学生一知半解,为后面的参数估计及假设建设的教学带来了很大障碍.

为了让学生更好地理解抽样分布的相关原理,我们利用Shiny包写了相关代码生成了动态网页,页面可以选择每次抽样样本大小(n)、总体分布和总体分布相关参数.为了验证定理的普遍有效性,我们选择了常见的九种总体分布可供选择:指数分布、正态分布、均匀分布、泊松分布、二项分布、伽马分布、卡方分布、柯西分布和t分布.对于分布的相关参数可以通过参数1和参数2复选框进行设定,根据需要提供一个或两个参数,具体取决于选择的分布.例如,正态分布要求指定均值和标准差来描述它的中心位置,以及它是多胖或多瘦(这是两个参数),卡方分布要求指定自由度(这只是一个参数).我们自建函数内置于Shiny程序,重复抽样10000次,分别计算得到统计量的相应10000个值,自动绘制统计量的直方图,直观展示统计量的分布.

下面,我们来演示下整个教学过程.首先我们在网页左边分布类型选定总体为指数分布,样本容量滑动条滑动到28,参数1设置为6,自动生成图1右边四个图形,通过四幅图我们可以看出总体服从指数分布,样本和及样本均值服从正态分布,样本方差服从卡方分布.接着我们改变分布类型为卡方分布,生成图2右边四个图形,通过对比大家发现页面图形会相应调整,除了样本总体分布的图形由总体分布决定调整比较明显,其他三幅图形大致状态保持不变,说明样本和、样本均值及样本方差分布具有某种统计规律性,即极限分布相同[4].有了直观了解,我们进而把样本均值及样本方差的相关抽样定理提出,并做严格证明,学生一目了然,印象深刻.

接着我们把生成图1的单次抽样样本容量由28改变为188(这个参数决定了样本方差服从卡方分布的自由度),其他不变,生成图3.对比图1和图3,我们发现图1和图3第四幅图形状有所不同,图3第四幅图更像正态分布,这个时候我们引出另外一个概念,当自由度比较大的时候,卡方分布近似服从正态分布[5],实现抽象性质的直观引入.

通过上述演示,即使很多学校根据学生程度不同,有選择性地规避相关定理的证明,学生对相关定理的理解也会很直观且深刻,激发了学生的学习兴趣,为后继数理统计相关内容的学习奠定了坚实的基础.

四、总结与展望

通过R 语言Shiny包实现概率统计交互可视化教学,使得教学内容更加丰富、生动,与传统的注重理论教学不同,在教学中引入动态的统计图形,使教学更加直观生动,还可以引导学生学习概率统计的理论知识,加深学生对概率统计理论知识的理解与掌握.这种交互可视化为提高概率统计教学质量指出了新的道路,具有较强的推广价值,通过一年多的教学实践,学生的考研率及优秀率大幅提高,说明了基于R语言Shiny 包的概率统计在教学中的可行性.

R语言具有开源、免费、资源丰富等诸多良好特性,越来越受到广大统计爱好者的青睐,目前已经是数据处理领域的主流软件.通过课程中穿插R语言简单应用,可帮助学生更好地理解概率统计的理论知识,让更多的人了解R语言的作用和价值,更好地为大数据产业的发展做出贡献.相信随着科技的发展,概率统计及R语言在日常工作及生活中的运用也将更加广泛.

【参考文献】

[1] 中华人民共和国教育部.《教育部关于一流本科课程建设的指导意见》(教高[2019]8号).http://www.gov.cn/xinwen/2019-10/31/content_5447277.htm,2019-10-31.

[2] 郭念国.大数据时代R语言模拟在概率统计课程教学中的应用[J].河南教育(高教),2017(12):80-81.

[3] shiny官方网站.https://shiny.rstudio.com.

[4] 茆诗松,程依明,濮晓龙.概率论与数理统计教程[M].北京: 高等教育出版社,2013.

[5] 徐雅静,段清堂,汪远征,等.概率论与数理统计[M].北京: 科学出版社,2017.

[6] 曹丽,张莉.基于R语言的概率统计直观教学展示[J].大学数学,2017,33(04):86-89.