acm-header
登录

ACM通信

教育

数据中心:计算教育的挑战与机遇


布朗大学校园里的一条小路

信贷:布朗大学

在越来越多的校园里,数据科学课程提供包括大量编程的入门课程。这类课程的内容与传统的计算机科学入门课程重叠,但两者都不包含对方。这种情况给学生带来了挑战。导论课程应该帮助学生决定进一步学习哪些学科,但不一致的数据科学和计算机科学介绍让学生无法在不同领域之间切换,必须重新开始。这反过来又给院系带来了压力,决定如何在学生探索课程选项时容纳他们。在大学里,学生入学后财务状况会随之变化,这样的重叠也会导致地盘争夺战和其他对学生产生不利影响的紧张局势。

我们认为“数据科学”是通过对数据应用(通常是统计)计算方法来回答关于世界的问题的过程。数据科学家受益于一些计算背景。近年来,我们也看到了“数据工程师”这一相关职业的兴起,他们需要大量的计算背景。此外,数据在计算中的核心作用要求CS专业的学生具备基本的数据科学技能。因此,为了广大学生的利益,是时候重新考虑入门计算的内容了。我们认为本专栏中描述的方法-以数据为中心的计算-能够支持和吸引不同兴趣的学生。

回到顶部

导论数据科学作为导论计算的批判

传统的CS1课程,1它强调控制结构和命令式编程,不太符合有抱负的数据工程师或数据科学家的学习目标。数据科学使用丰富的函数来转换和计算复杂的数据,这两者都不是CS1的重点。对聚合数据的显式操作(如清理、分割或重构)最好通过更类似于查询和高阶函数的操作来完成,4这两种情况都出现在传统课程的后期。数据科学与真正的数据集涉及现实问题,而不是基于数字、字符串和数组的人为起始问题。在所有这些方面,传统的CS1课程对于面对数据的学生来说显得不真实或不相关。此外,传统的早期CS课程的最终目标通常是让学生为更多的CS课程做好准备,而不是让他们根据自己的兴趣需求继续学习额外的数据相关编程内容。

然而,避开这些趋势的CS1课程不仅未能吸引到崭露头角的数据科学家:它们也对计算机科学专业的学生造成了伤害。有无数的数据集,涵盖了非常广泛的人类兴趣范围,从政治、经济到体育和音乐比赛的投票。通过它们的使用,即使是初学者也能看到计算机现在的样子:一个涉及人类和世界的领域。这改变了一些让许多学生群体望而却步的标准观念。数据的引入也让人们更容易具体地说明数据驱动决策的社会后果和风险,甚至对新手来说也是如此。因此,我们应该将数据科学课程的兴起视为对计算机课程的批评,并努力解决我们的缺点。

回到顶部

为什么不建立一个独立的数据科学轨道?

考虑到CS1的这些弱点(通常延伸到CS2),也许并行数据科学轨道(我们称之为DST)的兴起提供了解决方案?遗憾的是,我们回顾的DST课程对计算和编程采取了一种特别的观点。很少强调程序设计、软件测试或数据结构对复杂性的影响。这些不仅是重要的问题,而且是至关重要的问题。即使是小项目也可能最终影响政策决定或研究结果。我们必须能够信任代码和结果。

许多数据科学家,特别是数据工程师,将希望学习更多(传统的)CS课程,如云计算、安全与隐私、软件工程、可视化和数据库。DST提供的有限的计算准备会导致以下三种结果中的一种,它们都不愉快:

  • 每一门课程都需要在一个独立的“数据科学系”或类似的部门进行重建,这导致了劳动力和成本的巨大重复(这在许多机构是不可行的)。
  • 学生将在没有相关计算机先决条件的情况下进入这些高级计算机课程。这些学生的教育结果将大大降低,并给教师造成沉重负担。
  • 那些高级课程将不得不减少他们的先决条件,导致传统计算机学生的课程较弱。

一般来说,许多同时提供DST和CS1选项的学生对这两门学科都缺乏足够的了解,无法预测哪一门学科最符合他们的兴趣。在美国这样的教育系统中,学生可以很容易地在大学的各个学科之间转换,在DST和CS1-CS2之间做出选择还为时过早。

回到顶部

改革介绍计算!

我们建议有一个强有力的替代方案:将数据科学组件集成到介绍性计算中。这需要对入门计算的样子进行重大的重新思考,这是对传统CS1-CS2结构的重大背离。这种反思可能需要什么?

我们应该从一些基本的数据工程开始开设“数据科学”课程。也就是说,学生们从反映现实世界问题的一些复杂数据集开始。也许令人惊讶的是,我们相信甚至连表示的选择也很重要,并建议特别关注表格格式表示的数据。这提供了许多优点:

  • 无数真实世界的数据以表的形式发布。学生可以选择他们感兴趣的数据集(在某些限制条件下),使他们能够个性化自己的教育,并感觉更投入。锻炼变得不那么做作了。
  • 即使是很小的学生也能本能地理解表格,2从中学的数学课到电子表格,我都经历过。
  • 尽管如此,表仍然是一种相当复杂的数据结构:有界异构结构的无界同质序列。在传统的计算机课程中,达到这一点需要相当长的时间。
  • 表(特别是整洁51)本质上是解析的,从而消除了一个复杂而不精确的步骤,从而极大地复杂化了文本等其他有趣的数据格式。

简而言之,在入门计算中,表格是一个“甜蜜点”。


传统的早期CS课程的最终目标通常是让学生为更多的CS课程做好准备,而不是让他们根据自己的兴趣需求继续学习额外的数据相关编程内容。


做有用的工作也需要一些基本的统计。然而,大多数学生进入大学时对一些操作有基本的知识,如中心倾向性。根据我们的经验,即使是数学上紧张的非专业人士,也能在合理的支持下成功地运用它们。教授基本的可视化可以生成代码之外的有意义的工件。此外,向学生展示核心编程概念,如条件(用于选择数据或识别数据输入错误)和函数(用于在具有类似列结构的数据集上运行实验),不仅使他们能够通过实验数据分析来完成项目,还将典型的编程内容建立在丰富而有意义的环境中。

回到顶部

从数据到计算的其余部分

当然,表不是一种普遍适用的数据结构。一旦学生开始接触世界,他们很快就会遇到许多其他类型的自然结构来表示,无论是体育竞赛括号或谱系信息或旅行网络(分别,通常是树、dag和图表)。虽然可以将这些代码编码在表格中,但这需要不同程度的不优雅,这一点学生们很容易看到。

当然,这正是计算机真正闪耀的地方。几十年来,我们为复杂的数据结构建立了理论和语言:表示它们,为它们编程,并对它们进行推理。因此,通过数据结构和系统程序,这些数据结构(表示表的限制)是向传统计算机科学过渡的一个完美点。在这些情况下,非表格数据类型不仅更加自然,而且它们还提供不同的支持,甚至可以带来显著的性能优势。我们可以比传统的CS1-CS2更早地到达这些点;用更大的动力;学生们已经准备好了通过接触表格来做有用的工作。从计算的角度来看,这应该被视为一种双赢。

虽然数据科学家可能不需要所有这些数据结构,但我们相信,通过具体的面向数据的示例让学生了解表的局限性本身是有价值的。这也代表了课程的一个分支。他们肯定会的想要学习更多计算的人可以转向统计学和其他学科(有了扎实的编程和计算入门知识),而其他人可以继续走更传统的计算道路。

回到顶部

Data-Centricity

简而言之,我们建议重新思考传统的CS1-CS2,在此基础数据科学之前,并流畅地引导更传统的数据结构。我们称之为这种方法以数据为中心的计算,用公式

数据中心计算=数据科学+数据结构

(按照这个顺序:这个+不是交换律)。我们在布朗大学研究这种方法已经有几年的时间了,取得了很大的成功,并从中学到了很多。


简而言之,我们建议重新思考传统的CS1-CS2,在此基础数据科学之前,并流畅地引导更传统的数据结构。


这种转变无疑带来了挑战。它需要一种完全不同的入门教学法,而这种教学法在计算机教育界还没有得到很好的发展。从编程方法到问题分解到主题排序,以及统计与编程的交织,一切都是开放的,需要研究。数学教育技巧,比如“注意与好奇”,3.数据推理是由纽约时报一个就有关。学生需要被教导如何与精确和准确相抗衡;我们必须确定引入数据清理的正确方式;等等。因此,我们呼吁计算机教育界重新思考它的方法、处方和开放问题。

回到顶部

承诺

将介绍性计算转移到以数据为中心可以打开许多大门。其他学科,如果有一个方便、有用的计算机入门课程,可能会重新考虑他们的方法。新一代的学生将能够使用计算语言进行跨学科交流。计算在各种各样的学科中的应用将站在前面和中心,而不会损害我们学科的核心。因此,我们的目标应该是创造在规模这种新型的伙伴关系目前只发生在非常专业的环境中。

以数据为中心的计算机入门也为学生在课程中赢得了时间,让他们有更多的选择。他们不需要过早地投身于“数据科学”或“计算”,他们很可能是根据从父母、朋友和报纸文章中听到的东西来从事这些工作的。相反,他们可以自己体验两门课程,然后再做出选择(而且,即使他们选择了第三门,他们也会对计算有有用的、实用的理解)。

即使在入学人数激增的时代,我们也应该为我们的学生提出这些问题,并根据答案采取行动。人们很容易认为我们在一个热门的市场中取得了成功,但数据科学的整合可以创造出具有持久价值的课程,即使在一个较弱的市场。在一些(也许是资源更丰富的)机构,这将采取全面改革的道路;在其他地方(资源更匮乏),教育工作者将不得不找到一条增量路径。所有这些都为教育工作者和研究人员提供了机会和必要的条件,(反映了该领域的广度)贡献可以来自许多不同类型的专业知识(教育学、统计学、可视化、编程语言等)。

回到顶部

参考文献

1.2013年计算机科学本科学位课程大纲。The Joint Task Force on Computing courses Association for Computing Machinery (ACM) IEEE Computer Society(2013年12月20日);https://bit.ly/3drQiA9

2.Konold, C., Finzer, W.和Kreetong, K.建模作为结构化数据的核心组件。统计教育研究杂志, 2(2017年11月),191-212。

3.Ray-Riek, M。强大的问题解决:与数学实践的意义构建活动。海涅曼2013年

4.韦翰,H。先进的R。第二版。查普曼和霍尔/CRC R系列,2019年。

5.威克姆(H. Tidy Data)统计软件学报10 (2014);DOI: 10.18637 / jss.v059.i10

回到顶部

作者

Shriram Krishnamurthisk@cs.brown.edu)是美国罗德岛州普罗维登斯布朗大学计算机科学专业的教员。他们还共同指导了Bootstrap拓展项目,该项目将这些想法翻译到中学和高中的环境中。

凯瑟琳Fislerkfisler@cs.brown.edu)是美国罗德岛州普罗维登斯布朗大学计算机科学专业的教员。他们还共同指导了Bootstrap拓展项目,该项目将这些想法翻译到中学和高中的环境中。

回到顶部

脚注

一个。https://nyti.ms/3dwwaNe


版权归作者所有。
向所有者/作者请求(重新)发布许可

数字图书馆是由计算机协会出版的。版权所有©2020 ACM股份有限公司


没有发现记录

Baidu
map