新基建的浪潮如火如荼,国家顶层政策的引导不仅支持着由数据驱动各垂直领域中的新兴商业市场,也为相关科研市场的发展提供了众多机遇。
但持续的发展也带来了新的问题,传统基础设施已逐渐不能响应新兴数据驱动研究所需的软硬件支持。本文将从此类问题出发,为各领域研究团队介绍 ModelWhale 云端数据科学协同平台,以其不同的产品服务价值在不同层面上提供系列解决方案,期待为由数据驱动的科学研究提供助力。
数据驱动研究部署于传统基础设施的现存问题
ModelWhale,数据驱动研究的云端协同创新平台
数据驱动研究的全生命周期管理
项目从零生产
复用既往研究
数据资产与研究成果的沉淀与展示
资产成果沉淀复现
资产成果复现展示
强大的算力调度管理能力
算力接入:私有化部署与运维
各规格算力统一管理:闲置算力不浪费,满足大型复杂计算任务
精细化、灵活的算力调度
算力资源的即开即用
客户案例分享 · 清华大学中国新型城镇化研究院
基础设施搭建需求:搭建项目内人人可用的数据分析平台,同时协助完成数据资产成果的管理
应用方案:交叉领域科研云端数据分析协同创新平台
结束语
部署于传统基础设施的数据驱动研究在大环境发展中所暴露出的问题,归根结底是此类基础设施已无法满足现有的使用需求。在对相关高校与科研机构的痛点问题进行客户调研后,本文得出以下结论。
科研期待:项目能有完整的生命周期,结项不是项目的终结,后续能够复用是项目生命的存续
实际情况:极不合理的项目成果管理方式为“成果复用”设置重重阻碍
对既往研究成果进行复用以赋予项目完整生命周期中的“复用”定义十分宽泛:可以是复用既往项目中的“中间成果”,譬如仅仅一个代码片段;也可以是“阶段性较为完整的成果”,譬如一个模型或搭建完成的一个镜像;还可以是对于某一类项目较为流程化、规范化的“研究范式”。
同时,此类“复用”是跨时间、跨人员的。然而事实上,由于项目研究成果缺少系统的归纳管理,加之项目组人员时有更替,随着时间的流逝,极容易忘却之前的研究成果,即使记起、有复用的打算,也很难将其翻找出来、辅以配套环境完整复现。即使大家都赞同,合理复用从长远能够节省大量时间,为避免当下的麻烦,项目进行过程中大部分相关人员还是会选择重头再来。
科研期待:外界对于项目价值的认可
实际情况:没有完整展示研究成果、完全复现研究过程的条件,外界接触研究成果的渠道十分有限
传统的项目在研究完成后不会想到在云端沉淀项目成果,即使选择了云端沉淀,主要沉淀的也是文字与“死的”数据,而不会留存“数据分析、编程建模的过程”,这主要是由于一般的成果沉淀渠道没有所谓可存储“中间过程”的环境。研究过程难以被他人完全复现、研究成果得不到“完整的展示”,显然不利于提升项目价值的认可度。
此外,目前国内的科研环境缺少一个除期刊、组织门户外可展示或合理开放研究成果的渠道,大众领域的科研爱好者与相关领域的外部人员无从接触项目资源、不知道项目组究竟做出了什么成果,亦或是在时效性上有很大的延迟。
科研期待:科研过程中算力高效、精准的调配
实际情况:集成难、调度难、运维难,资源闲置,空有硬件而用不上
首先我们需要明确,数据驱动的研究项目普遍属于大型、复杂计算任务,例如 GPU 集群模型训练等,对硬件要求高,一般的个人 pc 于本地无法满足相应算力需求。
其次,普遍来说,高校与科研机构内不是没有高规格服务器,但此类服务器一般较为分散,组织层面上不知道如何整合利用这部分资源。云上对资源进行集成调度理论上可行,但相关部署运维工作繁琐且专业性强,小到课题组,大到学校、院系很难寻找到一个合适的人选为此花费大量时间精力。最终造成的结果是,校内许多服务器处于闲置状态没有被充分利用,浪费了大量计算与存储资源。
作为数据科学行业中的佼佼者,和鲸科技旗下核心产品 ModelWhale 一直是各业研究人员的优选,并获得清华大学、南开大学、北京协和医学院等一线科研团队的广泛好评。作为云端协同创新平台,ModelWhale 将从以下几方面助力数据驱动的科学研究:
数据驱动研究的全生命周期管理
数据资产与研究成果的沉淀与展示
强大的算力调度管理能力
文末,还将附上清华大学新型城镇化研究院的客户案例用以对 ModelWhale 的上述产品、服务能力进行具体的展示。
本节主要为项目从生产到复用全生命周期管理过程中出现的系列问题提供解决方案,为方便行文,将拆分为“项目从零生产”与“复用既往研究”两部分。
数据驱动研究的地基便是数据本身,而部署于传统基础设施的数据驱动研究在数据管理上主要依赖的还是人力。而通过 ModelWhale,在保证数据安全的前提下,研究者们不仅能够创建不同类型的数据源,例如数据集、数据库连接、对象存储连接、NAS 空间、标注数据等,更是能够对相关数据源进行概述、标识、版本管理、评论及分发共享。ModelWhale 为研究者们提供的数据接入与管理功能就是要为数据驱动研究打好基础,令广大研究人员不必再为数据管理的底层繁复工作浪费时间。
解决了数据问题便从零生产项目,而生产项目的第一步,往往是装包搭建环境。作为云端数据科学协同平台,ModelWhale 提供 Jupyter Notebook 交互式、Canvas 拖拽式、CloudIDE 三种云端分析环境,并支持 Python、R 等数种编程语言,适配研究者们不同的编程需求与习惯;另外平台内已配备多种通用与特定学科镜像,新建项目时直接选定即可,真正做到即开即用——打开 ModelWhale,不需要配置任何环境,即可开始项目研究,省时省力。
配置好环境即可开始数据分析、编程建模。一般的编程操作不必多说,选定相应的分析界面、算力、镜像开始即可。值得一提的是,数据驱动研究一般关注的是对于不确定性问题的探索,面对一个新课题,在最开始,往往并不能够明确哪种方法与手段可达成研究目的,我们需要多种多样的尝试。因此,ModelWhale 在这里能够提供的额外功能就是非 Git 逻辑控制的版本管理,不会太重,随时进行项目的版本比对与 Cell 级版本回溯,支持广大研究者们的从零探索。
另外,针对于数据驱动研究普遍存在的大型复杂计算任务,例如深度学习等,如前文所述,ModelWhale 首先支持将 NAS 目录作为数据源挂载进分析环境,从而实现对超大数据的分析研究,其次还支持模型的离线训练功能,即在电脑关闭后训练任务仍可继续,解放研究人员的时间与精力,同时提供训练结果可视化比对,协助高效进行模型的调参与选择。一句话总结,ModelWhale 将从各种细节缓解研究者们繁复的底层工作。
最后,科学研究往往不是一个人的工作,对于复杂项目,组内进行多人分摊是很常有的事,而 ModelWhale 不仅关乎数据科学,更是云端协同创新平台,助力多人协作研究义不容辞。通俗来说,可以将 ModelWhale 想象为代码版的主流云文档软件,能够实现多人在线编辑同个项目,当然,为避免代码碰撞出现的 bug,需要生成版本才能将进展同步给他人。另外 ModelWhale 还具备任务规划的项目管理工具,负责人可以新建课题任务,并将其拆分成子任务进行分发,协同团队共同完成复杂的项目研究。最后,多人协作不仅着眼于某一项目组内部,我们也关注跨行业、跨领域的合作协同:运用 Canvas 功能,代码能力较弱的各领域理论学者可与数据科学家们同时工作,理论学者负责以功能模块搭建研究思路,数据科学家将其转化为实操代码,相辅相成、事半功倍。
前文也已提及,对于数据驱动研究而言,除了从零开始,复用既往研究成果从长远来看是极能提升效率的方式之一,也是项目全生命周期管理中极易被忽视的一环,而 ModelWhale 将从镜像、代码片段、研究模板与工作流、算法模型多角度多层次的助力研究时的复用工作。
1.自定义镜像的复用,不必人人造轮子
“项目从零生产”中有提到,ModelWhale 本身内嵌了多种通用与特定学科镜像,新建项目时直接选定即可,那么若这些镜像无法满足当下研究需求又该怎么办呢?这时,研究人员可新建自定义镜像以匹配当前需求。但这并不表示项目组内的每个研究者在开始研究前都需要进行此步操作,一旦完成契合研究需求自定义镜像的新建,该镜像可以分发给组织内的任意成员进行复用,不必人人造轮子,除了负责新建镜像的第一人,组内其他研究者依然能够即开即用地复用既往已被搭建完成的研究环境。
2.Notebook 代码库,代码片段也可轻松复用
ModelWhale Jupyter Notebook 侧边栏中具备代码片段库功能,研究人员在既往研究中可预先收藏有几率被复用到的代码片段,后续进行新一轮研究时,即可在该代码库“我的收藏”中找到相应代码片段,此外,代码库中还包含了一部分官方代码,无论是“公有库”还是“我的收藏”,其中的代码片段都能够在新项目界面进行复用,直接插入即可。最后,代码库内的代码片段支持组织内的权限管理与分发,研究人员 A 收藏的代码片段可便捷复用至 B 的项目。
3.Canvas 组件,通过可视化规范 Flow 模板创建项目
ModelWhale Canvas 简单来说是基于可视化和模型驱动的理念,通过“拖拉拽”组件,完成应用模型的搭建。这样说有些大而抽象,实际操作中,Canvas 如何被应用到项目成果的复用过程呢?试想一下,当研究人员正进行一套较为繁琐但极其流程化、不需要创新、后续也还会经常进行的项目步骤时,可选择在 Canvas 中运用组件预构这一套步骤,将其封装成为常用的工作流 Flow,后续在别的项目中再次遇见这一套步骤,就可通过 Canvas 模板直接创建项目、确认组件流程,再转化为 Notebook,此时大框架已有,通过代码微调即可实现那一套繁琐且流程化的项目步骤,十分便捷。
4.算法库功能:实现对算法模型的整理、分享、复用
利用算法库,研究人员可以管理既往研究工作中已产出的算法模型,辅以文字说明,实现对这些算法模型的整理与分享,实际复用时,可将此类成果直接创建项目或模型服务,免去大量冗余的代码编写、模型训练工作,节省时间。此外,ModelWhale 算法库内也已整理部分常用算法,供研究者在进行通用数据分析工作时随时调用。
本节主要为数据驱动研究资产成果沉淀与展示过程中出现的系列问题提供解决方案,为方便行文,将拆分为“资产成果沉淀复现”与“资产成果复现展示”两部分。
如前文所述,传统的数据驱动项目在研究完成后不会想到在云端沉淀完整的项目成果,主要是因为一般的成果沉淀渠道没有所谓可存储研究“中间过程”的环境,而现在 ModelWhale 可为广大研究者们提供这样一个环境:
上一部分中我们也提到,ModelWhale 具备版本管理功能,详细来说 ModelWhale 是为内部的所有生产资料都提供了版本管理功能,例如分析环境、数据、代码及模型服务。在项目研究完成后,科研人员可以选定最终运行时的分析环境、挂载的数据集、最后的代码版本,将生产要素全部整合在一起,并补充一定的文字说明,沉淀至组织的项目成果库中。一方面,团队内的其他成员可随时查看成果库进行复现;另一方面,这也同时解决了科研人员随着时间推移由于分析环境改变或文件丢失而无法复现自己既往成果的问题。
上一部分中项目成果库这一功能主要为组织内成员开放,因此此类“成果复现”以对内为主、对外为辅,在真正提交项目进入项目评议、对外发布的过程中,ModelWhale 主要从以下几方面助力研究资产成果的复现展示。
1.项目链接与模型服务网页应用
项目提交评议时附带成果的查看链接将提升项目产出整体的完备度,此处的成果包含了项目链接与模型服务的网页应用两种。对于项目链接,项目负责人 / 审稿人不仅能够快速查看、复现数据分析的完整流程,针对于一个 Notebook,也能够就其中具体的 Cell 进行提问与评论;对于发布为网页应用的模型服务,项目负责人 / 审稿人更能够一键调用,填写表单后即可使用真实数据获得模型运行推断结果,使其对科研产出有更直观的认识与更准确的评价。
2.开放科研:组织门户对于研究成果的展示、公开
数据驱动研究无论是在进行过程中还是项目结项后都会产生大量的数据成果,对此类资产进行合理公开贯彻了“开放科研”的学术理念,不仅能够解决当前科研成果剩余价值的流失问题、有利于发挥科学数据的最大价值,同时也为数据驱动的研究提供社会效益的支持、让更多的人共同参与科学研究工作。然而目前仍存在着许多壁垒阻碍了开放科研的实现:首先,就数据本身来说,数据源载体多、存储形式多样、数据类型广泛,都为数据资产共享与管理造成了比较大的麻烦;其次,传统的有限防护机制不一定能够保障数据权益与数据安全,数据资产共享者将面临风险责任与权利受益的矛盾。
而 ModelWhale 能够为数据驱动研究生产资料与多形态研究成果提供安全、完善的共享交互与公开机制,具体方式方法是在云端为高校与科研机构搭建科研数据沙箱。搭建完成后,组织管理员可通过该沙箱平台对各类数据进行统一接入、管理;通过权限系统控制其公开范围,即可有选择性地将可开放的数据公开至组织的门户页;同时自定义每个数据集访问用户的查看、使用或下载权限,实现数据公开却不落地,通过平台也能够自动生成“数据账本”,查看数据资产实时、完整的使用记录;最后,ModelWhale 支持为每份数据生成 DOI 标识,在认证数据权益的同时,他人也可通过 DOI 号快速分享查找相关数据集,进一步提升了数据价值利用的科学性与可持续性。
除数据资产外,ModelWhale 还支持更多类型的研究成果开放发布,将项目链接与模型服务网页应用同样部署于组织门户即可。值得一提的是,算法模型作为数据驱动研究中较为独特的要素,在公开发布后,社会面大规模应用同样是验证模型实际效能的过程。研究者可根据平台记录下的模型调用次数、历史及使用过程等信息,来制定下一步的研究计划与优化方向。
3.和鲸社区提供多维研究成果发布渠道
同属和鲸科技旗下的和鲸社区聚集了30w+的数据研究爱好者,持续对社区内的海量数据资源与多领域代码项目案例进行研究、学习、复现。ModelWhale 与其接轨,数据驱动研究的成果资产可以数据资源、项目案例的形式发布至社区,使社区成为除期刊、组织门户外的又一受众广泛的成果展示渠道,数据驱动研究不再只“位于高处”,同样可以“贴地飞行”,降低社会面对于研究的接触难度,无疑也对提高成果价值认知度、认可度有所助力。
如何进行算力调度管理一直是广大高校与科研机构较为关心的问题,如前文所述,目前正是由于缺乏合理的调度机制,造成了空有强大硬件资源而用不上的情况。本节将从算力接入、各规格算力统一管理、精细化算力调度、算力资源的即开即用四个层面提供相应解决方案。
独立部署的 ModelWhale 在算力接入上可选择本地服务器(需要高效利用已有硬件设备客户的首选)、私有云或来自各主流云厂商提供的云服务,无论是哪种方式,基于云原生技术方案的 ModelWhale 都可灵活对接,同时支持跨云调度。
部署完成后,ModelWhale 将提供全套运维服务与完整的售后机制,做到全程跟进。一般性问题,可于线上远程支持;严重或复杂问题,也可以到当地进行解决,不再浪费研究组织内的人力资源运维相关系统。
若选择高校与科研机构的本地服务器完成算力接入,这意味着已将组织内的本地服务器算力进行了集成,下一步便是各规格算力的统一管理,即如何将之前的闲置资源更方便地利用起来,并分配给不同的老师、研究人员的项目课题组。
通过 ModelWhale,高校与科研机构的管理员可利用图形化操作界面,根据核数与内存大小对算力进行拆分,再按照不同的使用需求分配给不同群体。举例来说,数据驱动研究中经常出现大型复杂计算任务,因此需要较高规格的 CPU 算力或 GPU 集群,同时,较为基础的算力资源则可分配给高校内的教学团队用于课程实践,做到各规格算力都不闲置。
此外,ModelWhale 还提供资源申用机制,当现有计算存储资源不够用时,项目组管理员可直接通过发起申请及时获得算力补给,应对不同研究需求。
如果说各规格算力统一管理的着眼点在于从高校与科研机构组织到组织内不同的项目课题组,那么精细化、灵活的算力调度则更关心项目组内人员间的算力调配。
数据驱动研究项目组内使用算力资源属于“高规格+高并发”场景,如何将有限的算力分配给组内较多的研究人员呢?同组织管理员一样,项目组管理员同样可通过简单的点选式操作完成远程资源的分配与管控,精细到组内的每个成员,包括配置可使用的特定资源类型与时长。通过算力上云,项目组内研究人员的研究环境不再局限于办公室、实验室的网络或电脑,个人 pc 也可随时随地进行相关研究。
项目组管理员、负责人对组内研究者们的算力进行实时把控也是杜绝资源浪费的一种途径。另外,在算力紧缺的情况下,ModelWhale 不仅提供资源排队机制,也支持为组内成员配置资源使用优先级,使其优先完成部分相对重要的研究工作。最后,算力申请机制同样适用于项目课题组内,申请将由管理员审核,通过后即可根据各研究者的需求自动发放相应资源。
最后,算力同分析环境与镜像一样,属于即开即用的一部分:获得项目组管理员分配的算力后,组内研究人员在开始项目前自主选取所需算力,即可一键完成资源调用,开始数据研究工作,同时在研究过程中,也可随时查看自己算力、内存、磁盘的使用情况。当遇到大型、复杂的计算任务时,新上线的 Pipeline 功能能够支持任务编排与并行计算,该功能属于模型离线训练的一环,可使训练过程中的相关算力调度变得更为高效。项目关闭、算力使用结束后,资源也会自动释放,供组内其他有需要的研究人员使用。
目前,国内众多高校与科研机构都已对 ModelWhale 有了深度应用,本文将以清华大学中国新型城镇化研究院的客户案例为例,对上文中所述的产品、服务能力进行补充与具体展示。
契合清华大学新研院科研痛点最主要的基础设施搭建需求可简单分为“数据分析协同”与“数据资产成果管理”两个层面。
数据分析协同上,由于新研院项目中涉及的数据众多,传统方式在数据集协作方面会花费大量的时间与精力,加上特定研究项目中的成员具有领域专业性与交叉性的特点,对于数据分析工具的使用能力不一而足,因此学院亟需使用的是具备协同功能、且门槛较低而分析能力较强的数据分析平台。
数据资产成果管理层面,由于研究项目涉及指标繁多、数据迭代较快,数据管理本身难度较高。在缺乏统一高效数据管理平台的情况下,一方面之前的研究成果与新增的数据资产很难实现信息化统一,另一方面新增数据资产易出现数据更新不及时的情况,造成数据无法及时复现复用,影响了不少研究团队进行成果交流的效率。
针对学院需求,ModelWhale 为其部署了工科科研云端数据分析协同创新平台,平台能力主要包含以下三个方面:
1.可进行算力资源调配的开放式低门槛云端数据分析协同平台
此方面是最基础的,也是新研院最为关心、最直击痛点的部分。实际应用中,新研院的研究者们可利用由 ModelWhale 提供的完备线上数据分析环境与专业数据科学功能组件,快速开始研究工作;此外,组织及项目管理员可通过完整的权限管理系统,对相关数据资产与研究成果进行合理的权限设置、内容分发,在保护研究成果安全的同时进行跨行业领域、跨组织机构、跨角色人员间高效便捷的协同合作;最后,新研院内部项目组及与之有合作协同的外部工作团队都能够利用 ModelWhale 强大的算力资源调配功能便捷接入各类基础设施云平台与各种计算实例,根据实际需求实现云资源的快速拓展与高效调度。
2.数据驱动研究项目全生命周期管理,轻松复用既往研究成果
研究项目全生命周期管理,尤其是对既往研究成果复用的重要性如前文所述,当然也是新研院极为关心的部分之一。在进行城镇相关项目数据分析研究的过程中普遍会使用到 Notebook 编程建模与一应的模型服务,因此代码库与算法库均为高频使用的功能模块,研究人员可据此进行代码片段与算法模型的复用。相对更值得一提的是 ModelWhale 的自定义镜像管理功能与专为清华新研院部署的 Canvas 组件模块:通过该两项功能,研究者们既能解决原先新研院内数据协同困难、开始数据分析研究前均需装包搭建合适镜像而无法复用前人成果、人人造轮子的难题;同时也能使复用既往研究流程成为可能,节省大量时间。
3.与院系原有“空间数据可视化平台”打通,实现便捷数据传输、助力研究成果复现展示
最后这部分是更为专属化的产品服务。清华新研院原先就有一个“空间数据可视化平台”,里面有存储相对较多的业内数据源,同时也能对项目研究成果进行公开展示。ModelWhale 将所搭建的数据分析平台与院系原有的空间数据可视化平台做了集成,使两者间的数据传输、研究成果快捷发布展示成为可能:当研究人员需要空间数据可视化平台中的数据资源,可向管理员提出申请,获得许可后,可通过创建“数据库连接”的方式将位于可视化平台中的数据直接被添加到数据分析平台;而在数据分析平台完成项目研究后,研究人员也可将项目分析成果发布至可视化平台进行成果展示或基于该平台功能的其他操作。新搭建的数据分析平台与院系原有的空间数据可视化平台合理集成,研究人员在两个平台的账号支持绑定、实现便捷一键登录,但平台的权限又能做到不互通,保障数据安全。
过去5年间,ModelWhale 先后与清华大学、南开大学、华东师范大学等高等学府,国家气象信息中心、中国自然资源航空物探遥感中心、紫金山实验室等先进科研组织进行了深入合作,很高兴能参与到各领域的数据驱动研究中去。
我们深知,制作一个工具、建设一个平台并不是最大的难点,如何将其使用起来、真正发挥出平台的产品能力才是关键。我们希望能用我们积累下来的经验与方法论,帮助大家一起梳理使用场景,进行数据驱动研究全生命周期的建设与跟踪,为大家带来实质性的帮助。
另外,ModelWhale 不仅可用于科研工作,还可用于数据、算力、模型一体化工作流管理,数据开放应用及教学实训管理等工作。
如果你想更深入地了解 ModelWhale 科研协同、教学实训相关的各项功能与应用案例,欢迎进入 ModelWhale 官网 注册体验。