前言:作为医疗卫生领域的后备军,医学院校学生担负着国家医疗卫生事业的重任。医学院校培养新一代的医学人才,并非要求其掌握计算机专业技术,但是需要培养其计算思维能力及信息素养,这有利于促进学生的整体发展与终身发展。
理论科学、实验科学和计算科学被称为科学发现的三大支柱,与三者分别对应的即为理论思维、实验思维和计算思维。医学院校在培养人才时往往更注重理论科学及实验科学能力。随着人工智能、大数据、机器学习、虚拟现实等计算机技术的发展,已逐步改变了诊疗模式及医院管理模式,打破了传统医学教学模式,计算科学与医学的跨学科融合更是加速了医学研究的进程。在如今大数据时代背景下,医学生能否提高计算思维将成为他们能否成为医疗信息化人才的关键。
1、以计算思维为导向的医学院校教学概况
计算思维的概念于2006年美国卡内基·梅隆大学的周以真(Jeannette M. Wing)教授提出。他提出计算思维是运用计算机科学的基本理念进行问题求解、系统设计、以及理解人类行为。国外对计算思维研究已经进入到成熟的早期阶段,但是应用研究主要集中于K-12阶段,在医学院校实施学科交叉融合的计算思维能力培养并不多。而国内对计算思维研究仍处于初级探索阶段,2010年《九校联盟(C9)计算机基础教学发展战略联合声明》,医学院校对计算思维的培养主要还是在大学计算机基础的教学改革、教学模式改革等方面。有些高校虽开设了计算机编程课程,但是所使用教材一般为大众化教学,与医学学科少有相关性,导致学生学习目的不明确,缺少学习动力。另外编程工具复杂、编程语言难度高都对医学生在计算机编程语言学习中造成很多困难,降低了学习的积极性。
程序语言是计算思维的结晶,对医学生以一门简单的程序设计语言为工具,程序设计课程进入医学生课堂,构建良好的计算思维课堂环境是培养学生计算思维的有效途径。
2、基于计算思维的Python教学设计
2.1 python是医学院校编程语言最佳选择之一
研究调查国内外使用编程语言对学生进行计算思维培养,常见的语言有scratch、C语言、C++、VB等。Scratch图形化界面编程简单易学,多被用于少儿编程启蒙,也被高校用于计算机入门课程之一,但是该语言应用范围较小,与医学相关性低。医学院校学生计算机水平参差不齐,相较于C、C++、Java等程序设计语言,Python语言简单且功能强大,编写简洁可读性好、更适合程序设计零基础的医学院校学生学习。Python语法简单功能强大、编程产出较高维护代价较低,在分析医学影像、医学大数据挖掘、机器学习辅助医学等都有所应用,有利于激发学生的学习热情。表1为当前几个教学中主流编程设计语言的对比图。
表1 主流教学设计语言对比
2.2 学科融合是医学院校编程语言设计课程的关键要素
生活中的很多问题都可以用计算思维来思考并解决。可以说,整个医疗过程与计算思维解决问题过程是相同的,见表2。
计算思维不等同于编程思维,培养学生计算思维是希望他们像计算机科学家一样思考,而不是成为程序员。计算思维培养不等同于获取数学知识或学习程序设计,面向医学院校学生,重要的不是学习如何使用计算机解决具体问题,而是如何有着把问题抽象化、概念化,转化为用计算机解决的形式。计算机编程的过程往往是计算思维过程的实现,课程实例中大量加入医学实例有利于和学生产生共鸣,了解计算思维在具体工作学习及科研中的应用,再由医学实践反观计算思维方法。
表2 诊疗过程与计算思维问题解决过程对比图
计算思维的根本特征是:抽象性、计算性、自动性。计算思维的根本问题是什么能被有效的自动运行。现代化的医院从预约挂号,就诊, 检查化验,治疗投药等一切过程都离不开计算科学,例如医院常用的HIS 和LIS两大庞大的系统都是由很多不同功能的小型模块构成的,这就体现了计算思维化繁为简的思想,而每个模块必定又少不了自动性与计算性的特点,而这些过程都可以作为计算思维教学案例。
理论科学、实验科学和计算科学被称为科学发现的三大支柱,与三者分别对应的即为理论思维、实验思维和计算思维。医学院校在培养人才时往往更注重理论科学及实验科学能力。随着人工智能、大数据、机器学习、虚拟现实等计算机技术的发展,已逐步改变了诊疗模式及医院管理模式,打破了传统医学教学模式,计算科学与医学的跨学科融合更是加速了医学研究的进程。在如今大数据时代背景下,医学生能否提高计算思维将成为他们能否成为医疗信息化人才的关键。
1、以计算思维为导向的医学院校教学概况
计算思维的概念于2006年美国卡内基·梅隆大学的周以真(Jeannette M. Wing)教授提出。他提出计算思维是运用计算机科学的基本理念进行问题求解、系统设计、以及理解人类行为。国外对计算思维研究已经进入到成熟的早期阶段,但是应用研究主要集中于K-12阶段,在医学院校实施学科交叉融合的计算思维能力培养并不多。而国内对计算思维研究仍处于初级探索阶段,2010年《九校联盟(C9)计算机基础教学发展战略联合声明》,医学院校对计算思维的培养主要还是在大学计算机基础的教学改革、教学模式改革等方面。有些高校虽开设了计算机编程课程,但是所使用教材一般为大众化教学,与医学学科少有相关性,导致学生学习目的不明确,缺少学习动力。另外编程工具复杂、编程语言难度高都对医学生在计算机编程语言学习中造成很多困难,降低了学习的积极性。
程序语言是计算思维的结晶,对医学生以一门简单的程序设计语言为工具,程序设计课程进入医学生课堂,构建良好的计算思维课堂环境是培养学生计算思维的有效途径。
2、基于计算思维的Python教学设计
2.1 python是医学院校编程语言最佳选择之一
研究调查国内外使用编程语言对学生进行计算思维培养,常见的语言有scratch、C语言、C++、VB等。Scratch图形化界面编程简单易学,多被用于少儿编程启蒙,也被高校用于计算机入门课程之一,但是该语言应用范围较小,与医学相关性低。医学院校学生计算机水平参差不齐,相较于C、C++、Java等程序设计语言,Python语言简单且功能强大,编写简洁可读性好、更适合程序设计零基础的医学院校学生学习。Python语法简单功能强大、编程产出较高维护代价较低,在分析医学影像、医学大数据挖掘、机器学习辅助医学等都有所应用,有利于激发学生的学习热情。表1为当前几个教学中主流编程设计语言的对比图。
表1 主流教学设计语言对比
2.2 学科融合是医学院校编程语言设计课程的关键要素
生活中的很多问题都可以用计算思维来思考并解决。可以说,整个医疗过程与计算思维解决问题过程是相同的,见表2。
计算思维不等同于编程思维,培养学生计算思维是希望他们像计算机科学家一样思考,而不是成为程序员。计算思维培养不等同于获取数学知识或学习程序设计,面向医学院校学生,重要的不是学习如何使用计算机解决具体问题,而是如何有着把问题抽象化、概念化,转化为用计算机解决的形式。计算机编程的过程往往是计算思维过程的实现,课程实例中大量加入医学实例有利于和学生产生共鸣,了解计算思维在具体工作学习及科研中的应用,再由医学实践反观计算思维方法。
表2 诊疗过程与计算思维问题解决过程对比图
计算思维的根本特征是:抽象性、计算性、自动性。计算思维的根本问题是什么能被有效的自动运行。现代化的医院从预约挂号,就诊, 检查化验,治疗投药等一切过程都离不开计算科学,例如医院常用的HIS 和LIS两大庞大的系统都是由很多不同功能的小型模块构成的,这就体现了计算思维化繁为简的思想,而每个模块必定又少不了自动性与计算性的特点,而这些过程都可以作为计算思维教学案例。
2.3 教学目标、原则及内容设计
(1)Python程序设计语言教学目标
建立抽象概括能力,理解编程背后的思维逻辑;能够利用python工具掌握基本的医学信息综合处理能力、医学统计与数据分析能力,掌握医信项目开发简单框架;了解时下最新与医学有关计算机技术,开阔学生视野,激发学生终身学习的思想;运用计算思维强化学生计算机基础技能、数据分析素养及自主学习的能力。
(2)教学原则
注重语法基础学习;理论与实操结合,锻炼学生程序设计能力;加入医学应用实例,使得学生学有所用;重思考轻程序设计,明确计算思维才是课程的主题,python程序设计只作为工具,在课程中学习了解归纳、递归、模拟、约简等思想,将问题化繁为简,学习如何求解问题的思维方法。
(3)教学形式及特点
课程采用“雨课堂”平台,学生能够课前预习,课中交互问答统计,以及课后测验。课堂中,使用“blackboard”软件系统进行授课,边学边做,学生学习热情高,学生问题能够及时解决。
采用线上编程平台“python123”与Anaconda编程环境结合使用。入门编程采用线上编程平台,较为复杂的实例则需要学生安装IDE,作为课后过程考核。这样在课上无需安装软件及第三方库,可以节省课堂上的时间,同时由学生课下自主完成实验编程设计,又可以锻炼学生独立自主解决问题的能力。
建立抽象概括能力,理解编程背后的思维逻辑;能够利用python工具掌握基本的医学信息综合处理能力、医学统计与数据分析能力,掌握医信项目开发简单框架;了解时下最新与医学有关计算机技术,开阔学生视野,激发学生终身学习的思想;运用计算思维强化学生计算机基础技能、数据分析素养及自主学习的能力。
(2)教学原则
注重语法基础学习;理论与实操结合,锻炼学生程序设计能力;加入医学应用实例,使得学生学有所用;重思考轻程序设计,明确计算思维才是课程的主题,python程序设计只作为工具,在课程中学习了解归纳、递归、模拟、约简等思想,将问题化繁为简,学习如何求解问题的思维方法。
(3)教学形式及特点
课程采用“雨课堂”平台,学生能够课前预习,课中交互问答统计,以及课后测验。课堂中,使用“blackboard”软件系统进行授课,边学边做,学生学习热情高,学生问题能够及时解决。
采用线上编程平台“python123”与Anaconda编程环境结合使用。入门编程采用线上编程平台,较为复杂的实例则需要学生安装IDE,作为课后过程考核。这样在课上无需安装软件及第三方库,可以节省课堂上的时间,同时由学生课下自主完成实验编程设计,又可以锻炼学生独立自主解决问题的能力。
(4)教学内容结构
图1 教学内容架构
基础编程部分包括基本语法与基本流程控制、函数与代码复用、程序设计方法、数据组合类型。在案例及应用教学中,根据医学学科特点,重点为数据分析与处理,数据格式化方法及数据可视化方法。学习科学计算的基础库numpy的使用、提供绘图功能的第三方库matplotlib的使用,熟练使用requests库及beautifulsoup4库进行数据爬取及解析。课程总体与医学相关实例占比达到68%。
(5)教学效果
笔者对参加该课程的学生104人进行调研。在课后调研中约有76%的学生觉得对该课程感兴趣,认为在今后的工作生活中可能会用到。有39% 的学生希望在以后深入学习相关知识。
3、总结与展望
计算思维已渗入到医学的方方面面,在医学院校已受到高度重视,并且关乎医学信息化的发展。面向医学院校学生开设以计算思维为基础的python程序设计实训课程,突出医学应用学科特色、提高医学生学习兴趣,有利于学生计算思维的培养,也是在为以后医疗的信息化与智能化改革助力。在未来课程设计中,教师未能厘清各学科学生专业学科知识体系结构,未能了解学生亟需实用知识技能,今后教师需要加强生物医学素养,在培养学生计算思维的同时,加强实用技能。另外,对学生计算思维能力的量化评价客观方法还有待进一步研究。
(5)教学效果
笔者对参加该课程的学生104人进行调研。在课后调研中约有76%的学生觉得对该课程感兴趣,认为在今后的工作生活中可能会用到。有39% 的学生希望在以后深入学习相关知识。
3、总结与展望
计算思维已渗入到医学的方方面面,在医学院校已受到高度重视,并且关乎医学信息化的发展。面向医学院校学生开设以计算思维为基础的python程序设计实训课程,突出医学应用学科特色、提高医学生学习兴趣,有利于学生计算思维的培养,也是在为以后医疗的信息化与智能化改革助力。在未来课程设计中,教师未能厘清各学科学生专业学科知识体系结构,未能了解学生亟需实用知识技能,今后教师需要加强生物医学素养,在培养学生计算思维的同时,加强实用技能。另外,对学生计算思维能力的量化评价客观方法还有待进一步研究。
相关热词搜索: