张鲍明,李照青,曾令霞,马 乐,庄贵华,米白冰,陈方尧
(西安交通大学医学部公共卫生学院,陕西 西安 710061)
医学统计学是一门运用概率论与数理统计的原理和方法,解决数据收集、管理和分析过程中系列问题的医学科研方法学[1]。医学统计学在医学教育中具有重要作用,其教学质量对医学生的培养,特别是卓越医学人才的培养质量至关重要。在目前的医学统计学课堂上,通常都是采用“理论课”+“上机课”的模式,这种模式有其优点,但从以往的教学实践中,这种模式也存在一些不足之处,即这两个环节通常是分开的[2]。医学生的数理基础相对薄弱,理论课教学中仅靠教师的讲解,难以使学生从根本上理解讲授的内容。在上机实践中,部分理论知识掌握不扎实的学生,只能跟随教师机械地重复操作统计软件,难以顺利地进行结果解读及根据数据特点自主的选择统计分析方法。在这种教学模式中,理论与应用两个环节没有达到有机整合,教师与学生之间反馈交流不及时,容易导致资源浪费,教学效率降低。
随着计算机信息技术的发展,现有教学模式越来越难以适应当前的实际需要,急需探索新的教学模式。近年来随着互联网技术和各种多媒体技术的迅速发展,慕课、微课、翻转课堂及交互式分析平台等新型教-学模式迅速兴起,为医学统计学的教学实践带来许多新的理念和实践探索。其中,近年来兴起的基于Web浏览器的交互式在线应用Jupyter发展较快,该应用是一个交互式笔记本,允许用户创建和共享包含代码、方程式、可视化和文本的文档。因其可容纳多种计算机语言,其操作界面整洁,功能强大,实时分享数据等优点,逐渐受到人们的重视[3]。目前已有学者尝试将其应用于编程教育教学实践中,显示了良好的效果,受到学界的广泛关注[4]。
综上所述,本研究尝试探索基于Jupyter平台的交互式教学模式在医学统计学课程教学中的应用,实现理论知识的讲授和实践操作结合在一起,全面提高教学质量,探索医学统计学教学的新模式。
医学统计学(卫生统计学/生物统计学)学科具有原理抽象、公式复杂、逻辑性强、强调理解等特点。对已经习惯记忆性学习的医学生来说,学习医学统计学课程倍感困难,主要体现在:难以根据数据的特点和研究目的,选择合适的统计方法,限制了基于统计分析软件实现数据分析、结果解读、解决实际问题的能力[5]。
在我国当前的本科专业培养模式中,医学统计学(卫生统计学/生物统计学)课程为医药学类专业的大面积公共必修基础课程,师生互动的时间有限,不利于学生充分消化知识和加深理解,教师授课时多采用黑板或用PPT的静态教学模式,依据教学书籍顺序向学生讲解医学统计学知识,讲授性较强。由于教学工具和教学数据的制约,教和学都存在理论和实际脱离的状况,不利于课程的学习和实践能力的培养。同时,由于当前的理论授课较偏重单个统计学方法的理论介绍和教材上典型例题的讲解,忽视了多种统计学方法之间的比较及其相互联系的案例分析,这样会造成学生在遇到教材上未提到的不典型实例时,误用或滥用统计学方法[6]。
学生在学习过程中,往往掌握的医学统计学理论知识不扎实,在实践课教学中需要理论知识的转化,并运用复杂的软件操作界面进行学习,这使大多数学生降低课程学习兴趣,尤其是对将学习的重心放在其专业课程上的非预防医学专业的学生而言,甚至会产生“放弃”医学统计学学习的想法。因此,教师应改进现有教学模式,采用更为便捷、高效的平台进行交互式教学,改变学生对医学统计学的恐惧态度,提高教师的授课效率,促进医学生能真正将学到的理论知识熟练的应用在处理医学数据问题的实际工作中。
Jupyter平台能将说明文字、代码、图表、公式、结论都整合在一个文档中,不仅能在文档中执行代码,还能以网页形式分享的Web应用程序。这一特点非常适合需要频繁进行软件操作演示的医学统计学教学实践过程中。运用这一平台,教师可以结合医学统计学课程教案进行交互式教学,将理论知识讲授与上机操作结合,并现场指导学生操作,开展良好互动。该平台具有以下教学优势:①在任何地点都可以通过网络链接远程服务器来实现教学,以新冠肺炎为例,全国高等教育授课方式调整为线上授课,基于Jupyter平台可同时开展理论知识的讲授和实践课教学,学生只需要登录Web浏览器即可运行统计软件,不需要在电脑上安装统计软件。减轻了安装统计软件的负担,也避免了安装过程中因版本、系统设置不一致可能导致的问题,提高了教学效率。②支持多种统计分析语言,上机课时不必再为各个库之间的依赖和升级而花费时间,平台采用交互式编程,可以随时修改,重新运行程序,方便学生“试错”。③终端中运行程序、下方可以立即输出的可视化结果、包含函数类的脚本及图片、视频、数学公式等元素都可以收归一处,这有利于教师清晰地给学生展示相应的理论知识点,便于帮助学生捋清思路,温习知识点(图1)。④教师可通过账号远程进入每个学生的Jupyter环境中,快速查看学生端状态,及时纠正并做出指导。⑤每位学生拥有独立的存储磁盘,可以保证自身的文档、数据可持续化存储,并且支持以网页的形式分享,也支持导出成HTML、PDF等多种格式的文档,教师可轻松与学生共享数据集和文件,无须再通过U盘与学生交换数据。
图1 Jupyter运行界面
综上所述,基于Jupyter平台可以很好地开展医学统计学课程互动式教学,教师利用平台在一个操作界面内,实现理论知识与统计软件操作的结合,利于学生将医学统计学转化到实际应用中。在课堂中教师讲解一个理论知识点后,随即基于平台内嵌的数据模拟模块,产生与知识点相关但又具有不同统计特点的仿真模拟数据,可帮助学生将理论课的知识点和实际可能碰到的数据情况相结合,在熟悉统计方法实现的同时,积累数据分析的相关经验,培养学生对于数据的敏感性和对统计方法的正确选择与使用能力。学生在操作中,对于不懂的知识点以及理论学习和实际操作间的差异及时反馈,教师进行答疑,有利于教师及时指导,提高课堂效率。
Jupyter是一个开源代码的Web 应用程序,需要部署运行在服务器上。本研究中,考虑到网络链接的稳定性和后续可维护性,我们基于腾讯云服务部署以Linux 4.17为内核的Ubuntu 18.04 64位操作系统作为服务器,为Jupyter提供基础运行环境平台。平台配置为1个核心,1G内存,100Mbps网络及50G硬盘,其他设置(如防火墙等)按云服务商默认参数进行配置。
Jupyter可支持运行40多种编程语言,实际运行过程中需要指定编程内核来实现对应语言的功能。因此,选择合适的统计分析程序语言非常重要。本研究中,考虑到医学统计学教学实践现状及软件普及程度,我们最终选择R统计软件包内核作为Jupyter的内核编程语言。如有其他需求,也可以选择Python作为内核程序。
最新的R统计分析软件包内核为R 3.6.2,我们从清华大学开源软件镜像(https://mirrors.tuna.tsinghua.edu.cn/CRAN/)中安装R及其相关软件包。安装完成R内核后,为了保证R统计分析内核与Jupyer的正常通讯,还需在R中安装IRkernel包。具体安装程序见图2。
为支持教学过程中多用户同时登录使用Jupyter的需求,我们基于Jupyter Hub搭建教学环境,具体安装程序见图3。搭建完成以后,教师以管理员身份登录课程网页(https://jupyter.wcrcnet.cn),设定上课学生权限后即可开展教学(图4)。
(1)理论课教学辅助
医学统计学课程的教学过程中,牵扯到许多较为抽象的理论和方法,医学生由于数理基础较弱,往往难以理解和掌握。
图2安装R核心过程
图3 安装Jupyter Hub过程
图4 课程教师的权限设置页面
在理论课授课过程中,教师可依靠平台的可视化和数据模拟功能,将静态的公式,转换为形象、动态的图像,加深学生对理论知识的理解和感性认识。同时,可依靠可视化技术,帮助学生加深对统计分析方法的理解,增强对生物医学数据的形象认识,培养学生对医学统计学的学习兴趣,在互动中提高教学效果。
(2)统计方法的软件实现
统计分析实践是医学统计学理论课的重要补充,统计分析方法的软件实现是该平台最基本的功能。
基于该平台内嵌的R语言环境,可以实现理论授课中统计分析方法的软件实现。统计分析方法的实现,可依赖于统计软件包中特定的函数,对较为简单的方法而言,可要求学生根据公式,编写相应的函数,计算统计量,加深对统计方法的理解。同时,教师可利用R软件包自带的实例数据,讲授统计分析方法的分析结果。
学生可通过平台,在线提交编程分析作业。教师也可通过平台批阅学生编写的程序,进行必要的调整或添加必要的注释。之后,学生可在线浏览教师对其统计分析程序的修改,在教师对其程序的纠错和优化中学习,提高自己的编程水平。
(3)数据分析与管理训练
教材提供的实例数据和部分R软件包自带的实例数据,都经过编者的精选,数据特征较为典型。通常情况下,这样的规范化数据有利于学生对方法的掌握。但由于实际工作中数据的条件和特点往往千差万别,其规范性远不及教学用数据,导致学生更难以理解,而规范化的教学实例数据也限制了学生对实际工作中真实数据情况的认知。基于平台内嵌的基于R语言的数据模拟模块,理论上,可以在各种数据条件下产生模拟数据,模拟实际数据分析工作中可能遇到的各种情况,培养学生对真实数据的理性和感性认识。
教师按照理论课教学内容所涉及的数据类型,预先在教学平台上产生符合要求的模拟数据。在进行相应的基于R语言的统计分析方法实践训练时,调用预先产生好的数据,或随堂产生新的数据,供学生进行实例分析。同时,可以产生非规范化的模拟“原始数据”,训练学生对数据进行管理、清理和转换。
(4)统计抽样训练
抽样是生物统计学和流行病学中最重要的概念之一,但在常规教学中,往往无法实现抽样训练。基于数据模拟模块,教师可预先产生符合要求的有限总体,并要求学生利用R语言自带的抽样函数或自行依据随机数函数建立抽样规则,对预先设定的总体进行随机抽样。通过模拟训练,可以让学生在实践中了解抽样的过程,了解样本统计量与总体参数之间的关系。
平台采用网页形式分享的web应用程序,自上线以来,已稳定运行近半个学期,目前有力支撑新冠肺炎疫情下36名卫生统计方向研究生的R语言统计分析和医学统计学课程在线实践练习,累积使用约20学时,受到师生的一致好评。
Jupyter平台作为一种新型的交互式网络平台,支持40余种编程语言的运行,可以满足不同研究领域的教学需求,因此在国内外高校的互动式教学中,有广泛的应用[9]。近年来,Jupyter平台不仅在计算机科学领域,而且在数据新闻学、商业和定量经济学、基于数据的决策科学和政策、定量健康科学和数字人文学科的教学中继续受到欢迎[10]。我国基于Jupyter平台的互动式教学与国外比较,起步时间略晚,内容上目前仅局限于编程语言的互动式教学。近年来,线上教学资源的丰富和网络授课/远程授课的发展,都为基于互联网的互动教学平台的发展提供了良好的资源基础,基于Jupyter平台的互动式教学模式在教育实践中,具有良好的应用前景。
医学统计学的理论知识体系有别于其他门类的医学课程,在学习过程中存在一定的难度,教与学的矛盾格外突出[7-8]。在基于Jupyter平台交互式教学模式下,教师可灵活布置操作性强的作业,将理论知识与实践操作在同一界面相结合,及时指导学习过程中的疑难点,使学生能够熟练地将医学统计学知识应用在实际工作中,提高学生应对公共卫生事件的能力,激发学生的学习兴趣,提高教学效率,体现出了交互式学习的优势。同时,应加强宣传和推广基于Jupyter平台的交互式教学模式,促进医学统计学的教学创新改革,解决教学过程中的教与学的问题。