未经许可请勿转载。
Please do not reprint this article without permission.
论文全文链接 Full-Text Link
Citation: Lei, B., Wu, F., Zhou, J. et al. NEURO-LEARN: a Solution for Collaborative Pattern Analysis of Neuroimaging Data. Neuroinform (2020). https://doi.org/10.1007/s12021-020-09468-6
引言
近年来,多变量模式分析(MVPA)在神经影像(Neuroimaging)数据分析领域取得了极大进展。研究者们通过发掘和分析来自神经影像的大脑结构和功能特征,研究神经精神疾病的潜在生物学标记物。然而,神经影像数据模式分析研究仍然受制于一系列亟待解决的痛点,包括:高维小样本问题、研究复现问题以及算力制约问题。
- 高维小样本问题——由于神经影像设备具有极高的精度,以及数据采集需要较高的时间和金钱成本,神经影像数据样本积累难度大且维度高,其中更包含着较多的噪声和无用信息,因此对原始数据进行模式分析往往难以得到理想的效果。
- 研究复现问题——一项研究或分析的可复现性主要受几个方面制约:系统环境和软件版本的一致性;说明文档的明确性;研究的有效性;算法编码难度。这几个方面的共同作用使得一个站点的课题研究结果往往难以在另一站点得到完美的重复。因此需要跟踪、记录和保存一项研究的进行细节,才能实现研究的延续性,便于数据积累和结果扩展。
- 算力制约问题——正由于神经影像数据具有高精度特点,分析该类数据需要配备足够算力的设备,并且需要对分析程序进行多线程编程以保证资源利用率,同时还面临着系统过载的风险。因此需要对整个分析流程进行适当解耦,在保证研究可复现的同时,将集中式计算分解为多站点协同进行。
NEURO-LEARN是一个专门针对这些痛点进行设计开发的解决方案。其中包含了一个B/S架构的Web应用程序,保证其跨平台特性;同时其兼备了协同性、可靠性、扩展性和开源性,为神经影像数据的模式分析带来了新的选择。
UI协同方案
NEURO-LEARN针对数据和工作流管理的协同方案包括四个部分:项目、数据、分析和报告。由于神经影像数据的模式分析经常会遇到样本量小、数据维度高、分析模型的泛化能力和复现性较差等问题,不仅需要解决数据横向和纵向积累问题,还需要进行高效而可重复的数据处理和特征提取。因此项目是数据和工作流管理的基本单位,其中规范化定义了数据格式和本地工作流。本地工作流旨在完成原始数据预处理、特征计算等工作,这一部分采用规范化工作流程并分散计算的方式,既能使多个数据源都能完成特征计算,提高算力利用率,也可以保证各个站点计算流程的规范性,从而确保所计算得到特征的正确性和可靠性。网页应用程序用于管理不同项目中计算得到的特征数据,多个站点汇集的数据能够解决刚才提到的样本量小的问题,而这些特征数据的维度也远远小于原始图像。如此得到的大量数据就能作为模式分析的输入,训练和评估模型。模式分析模型可分为分类模型和回归模型,其流程皆为使用训练集数据对模型进行训练、超参数寻优,得到最优超参数下的模型,然后使用测试集数据对模型性能进行评估。最终得到模型的结果报告,供研究人员使用。
协同方案NEURO-LEARN的Web分析平台包括两个部分,分别是数据管理和工作流管理,两者都以项目为单位。数据管理包括了用户注册与登录、数据上传与管理;而工作流管理则包括工作流定义(即研究流程的预设置)、线上分析任务和报告管理。用户可以加入多个项目来获得多种不同的工作流,并用于自身的分析和研究,同时也可以将已经成型的研究创建成新项目,供其他站点的研究者加入与合作。
为了实现上述方案的可用性、兼容性和扩展性,NEURO-LEARN采用前后端分离的开发方式,对后端算法和服务进行了模块化封装,并整合多线程任务队列保证高可用。因此各个模块的耦合性较低,便于算法和功能扩充。同时,针对不同的应用场景,NEURO-LEARN的部署有三种选择:对于本地无服务器的站点,NEURO-LEARN提供了部署在云端服务器上的平台,并连接到云数据库,对线上数据进行统一管理和分析;对于本地配备有高性能服务器且希望连接到云数据库的站点,NEURO-LEARN提供了快速部署Docker容器;而对于希望进行小范围协同研究的研究组,则可将NEURO-LEARN部署在私有服务器,并连接私有数据库。
总结
NEURO-LEARN具有先进性、可用性、灵活性和扩展性。NEURO-LEARN为神经影像数据协同分析提供了自动化工作流和平台,将原有的数据分析进行标准化、流程化和模块化,同时保证了分析的灵活性和所有研究的可复现性;其次,NEURO-LEARN易于使用,并拥有充分的文档支持和开发支持,用户只需拥有最基本的机器学习和模式分析相关知识就可以使用,无需耗费时间进行编码,进而可以专注于其各自的研究工作;同时,NEURO-LEARN提供了基于B/S架构的网页应用程序,并支持容器化部署,以满足灵活的跨平台、跨场景兼容性;最后,NEURO-LEARN各个模块间的耦合性低,易于进行算法和功能扩展,除应用于神经影像数据分析之外,只需创建和定义具有针对性的项目,即可完成其他领域数据的分析任务。
多场景应用笔者注:
- 论文全文链接;
- NEURO-LEARN网页应用程序相关技术栈可参考Django+Vue前后端分离开发。
网友评论