没有合适的资源?快使用搜索试试~ 我知道了~
计算机图形:X 2(2019)100010技术部分Cellpackexplorer:复杂细胞体数据的交互式模型构建6Magdalena Schwarzla,d,P., Ludovic Autinb, Graham Johnsonc, Thomas Torsney-Weire,托尔斯滕·穆勒a地址:Währingerstraße 29,1090 Wien,Austriab美国加利福尼亚州斯克里普斯研究所加州大学旧金山分校(UCSF),美国加州d可视化研究中心,斯图加特大学,Allmandring 19,70569斯图加特,德国电子计算机科学系,斯旺西大学,费边路,斯旺西,SA1 8EN,英国A r t i c l e i n f o a b s t r a c t文章历史记录:2018年12月20日收到2019年7月1日修订2019年8月5日接受在线提供2019年保留字:交互式可视化分析概率3D数据Envelopment可视化生物学数据在本文中,我们描述了cellPACKexplorer,一个旨在帮助cellPACK开发人员发现错误并改进算法的系统cellPACKexplorer专注于可视化cellPACK配方参数对最终包装输出的影响。我们发现,开发人员有两种不同的方法来理解输出,数字和视觉,这取决于他们的背景。我们设计了cellPACK-explorer,它具有灵活的界面以支持这两种类型的用户。我们通过案例研究和问卷调查来评估我们的工具。新手用户能够使用cellPACK创建细胞模型,并探索不同参数的行为。此外,专家用户发现了代码中的错误,并能够使用我们的新分析工具快速定位问题。最后,我们讨论了我们的发现在更广泛的可视化社区的影响。© 2019由Elsevier Ltd.发布。这是CC BY-NC-ND许可下的开放获取文章。(http://creativecommons.org/licenses/by-nc-nd/4.0/)的网站上进行了介绍。1. 动机典型的建模过程包括模型设置、优化过程和模型验证。无论是处理基于代理的建模[1],统计建模(如回归,分类或聚类)[2]还是计算建模[3],都是如此。但是,如果参数空间很大,或者如果优化函数是定性的(例如,通过视觉检查),则该模型构建过程可能相当乏味。这是第一篇专注于视觉支持的论文之一在生物学领域建立模型。的主要动机 是观察一个非常具体的模型构建过程,并表明可视化支持可以极大地加快和帮助模型构建。在这项工作中,我们专注于cellPACK[4],这是一个开源框架,旨在生成和细化几何结构,6这篇文章是由S.布鲁克纳通讯作者:维也纳大学,Währingerstraße 29,1090 Wien,Austria.电子邮件地址:magda. gmail.com(M。Schwarzl),t.d. swansea.ac.uk(T. Torsney-Weir)。研究人员的整个细胞。cellPACK的当前设置要求用户指定多个输入参数来构建虚拟单元。这些参数决定了各种分子“成分”(如蛋白质)之间复杂的相互作用,以形成特定的包装,从而产生最终的分子细胞。由于不同参数之间的这些相互作用非常复杂,因此很难预测与特定输入设置相关的输出。对于更复杂的情况,甚至是不可能的。cellPACK输出的计算时间此外,本发明还通常通过将结果与教科书图像(例如[5])或先前的经验进行比较来可视地进行模型的适当验证。上述问题是cellPACK的发展和在整个细胞规模上形成共识所需的社区参与的主要瓶颈。需要新的方法来使cellPACK更强大,更容易开发,更容易测试。我们已经开发了cellPACKExplorer,使开发cell-PACK更容易,并协助cellPACK的开发人员进行持续的开发。理解这些结果的复杂性之一cellPACK的另一个优点是打包算法是随机的。换句话说,对于特定的参数配置,cellPACK生成https://doi.org/10.1016/j.cagx.2019.1000102590-1486/© 2019由Elsevier Ltd.发布这是一个CC BY-NC-ND许可下的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)的网站上进行了介绍。可在ScienceDirect上获得目录列表图形:X期刊首页:www.elsevier.com/locate/cagx2M. 施瓦茨尔湖Autin和G.Johnson等人/计算机图形:X 2(2019)100010一套丛书cellPACKexplorer支持一个新的工作流程,以简化cellPACK 的 开 发 , 设 置 cellPACK 实 验 , 并 分 析 和 共 享cellPACK输出和实验。我 们 的 贡 献 包 括 详 细 的 用 户 、 数 据 和 任 务 分 析 , 将cellPACK开发人员的模型构建任务与模型使用任务进行了比较,这些任务已被更彻底地探索在可视化社区[6]。我们专注于帮助开发者提高其模型的核心打包能力,以更好地帮助他们选择关键特征(输入参数),对未来用户隐藏不太重要的特征,并为其他一些用户找到适当的缺陷,以便未来的cellPACK用户(例如生物学家,il-luxury)能够自己快速创建cellPACK输出。cellPACK的开发人员能够将大型实验的设置从30分钟加速到1分钟,并且能够分析数百个cellPACK输出的集合,这是他们以前无法做到的。它还向他们揭示了他们的工具的未知行为,并帮助他们验证输入参数对生成的输出的影响。cellPACK开发人员的另一个优势是cellPACKExplorer使实验的协作和共享变得更容易。2. 相关工作cellPACKExplorer的目标是 帮助开发人员 在添加和修改cellPACK打包操作的输入参数时理解可能的打包参数的影响和范围。我们使用cellPACKexplorer的方法是将参数空间分析[6]与3D输出集的集合分析相结合。我们将首先讨论我们的工作如何与现有的税收相关,以描述设计研究的重要用户、数据和任务特征。我们专注于参数空间分析[6],数据类型[7]和计算管道[8]。在von Landesberger等人的语言中。[8],cellPACKExplorer具有假设、组合数量、简化和输出要求的主观性。根据他们的调查,没有任何工具可以解决所有这些任务。在数据方面,对于给定的参数组合,cellPACK算法返回几何建模的蛋白质(成分)的一组位置。 因此,我们的数据完全属于Kehrer和Hauser[7]框架中的多轮模拟数据范畴。开发有效模型的一个关键方面是理解模特因此,cellPACKExplorer有助于对输出进行分组基于(输出的)相似性的各种参数组合的模型。对创建这些组的参数集的检查有助于推理特定参数的重要性。Sedlmair等人[6]将这些任务确定为分割和敏感性任务。我们在下面的部分中将我们自己的工作与为这些任务设计的其他方法进行2.1. 固定模型的参数空间分析随着cellPACK的不断发展,可用的参数也在不断扩展。核心问题之一是这些参数是否正确地捕获了真实细胞的范围,或者它们是否可能是冗余的,对生成的最终输出几乎没有影响。我们帮助开发人员回答这些问题的方法是让他们直观地检查新参数对可能输出范围的影响。这可以被认为是代码级调试和可视化模型构建之间的混合方法。许多工具帮助用户对固定模型进行参数化(即固定算法)。这些方法通常与一个特殊的模型。例如,在分段回归[9]和树回归[10]的背景下,Guo等人[11]专注于关 于 数 据 子 集 的 线 性 模 型 的 开 发 和 评 估 。 这 种 方 法 由Mühlbacher和Piringer[12]扩展到包括非线性趋势发现。同样,Mc- Gregor等人[13]提出了一个马尔可夫决策过程的系统。CVVisual[14]提供了可以引入图像处理源代码的代码片段,以提供调试类型的可视化。2.2.包围分析在cellPACKExplorer中,我们希望在两个不同的级别上分析集成。我们希望根据大规模的差异(参见上一节)将许多输出分组为不同的输出集,并分析这些集中较小规模的变化。虽然存在集合分析的方法和将集合视为分布的方法(参见Kehrer和Hauser, [7],据我们所知,没有工作。在类似的设置中,由于不断变化的基础算法和变化的分析要求,这需要灵活的接口。2.2.1.分配办法对于随机模拟,人们通常检查由单个参数配置产生的输出可能性的分布。为了帮助显示这些分布,通过引入等高线箱线图和曲线箱线图,箱线图的概念被扩展到曲线[15,16]。例如,这些被用于可视化风暴路径的可能性范围虽然这些工作以及显示分布的1D功能cellPACK产生二维或三维输出,需要不同的解决方案。VAICo[17]考虑一组2D图像,并计算该组图像的差异区域,对它们进行聚类,然后为用户提供浏览这些差异的控件虽然VAICO的目的是识别图像中的像素级差异,但我们正在研究理解(可能)体积集合中的结构体积差异cellPACK主要用于3D输出。三维对象通常表示为体素或参数对象。对于基于体素的数据,有一些可视化方法,如概率移动立方体[18]或MOb-立方体[19]。也可以在一个集合中的所有3D对象之间进行动画,如Ehlschlaeger等人[20]或Lundström等人[21]。虽然动画技术将适用于一般的3D输出,但动画可能会给用户带来更高的认知负荷,特别是在动画中的时间轴不对应的情况下在数据中的时间[22]。在cellPACKexplorer中,我们将1D分布的直观概念与3D的细节相结合。我们展示了衍生度量的1D分布,其中用户可选择单个投影3D输出的视图。2.2.2.聚类方法分区通常使用聚类方法来完成。例如,Design Galleries[23]使用距离度量来呈现场景的一组视觉上不同的可能渲染。同样,Fluid explorer[24]将一组Fluid模拟动画聚类到动画片段中,然后对其进行检查。虽然方便,但两种模式输出的聚类呈列方法均显示出不足之处。因此,其他研究人员采用了更手动的调整。例如,Paramorama[25]的重点是基于对结果图像的手动检查来确定哪些参数设置可以产生良好的分割。它们基于输入参数设置以分层方式对输出进行分组。Paraglide[26]允许手动划分输出空间,以便对输入参数值得出结论。在cellPACK-explorer的情况下,先验划分方案并不清楚此外,分区方案可能被定义为算法描述(因此也是底层模型)。M. 施瓦茨尔湖Autin和G.Johnson等人/计算机图形:X 2(2019)1000103Fig. 1. 使用cellPACK构建的半径30μm、长度100μm的血帽中红细胞分布(1413个细胞)的模拟。(For解释关于本图例中的颜色参考,读者可参考本文的网络版本。)变化一个不断发展的模型描述往往会带来新的参数与未知的影响。因此,我们通过让用户对输入参数和输出计算的度量进行过滤来支持数据的手动划分。3. cellPACK由于cellPACKExplorer被设计为与cellPACK一起工作,我们在这里提供了对cellPACK本身的介绍。cellPACK是一种开放源代码的生物软件框架,设计用于从小规模分子构建块组装大规模细胞和细胞亚结构。cellPACK被设计为将来自生物学的所有分支的数据通过不同的小规模研究组合成综合细胞。由于参数反映了蛋白质及其相互作用的真实生物学特性,因此cellPACK可用于假设生成和实验(模拟定位和相互作用),验证,交流,教育和查看中尺度(10 −7,.)。,10 −8 m),具有原子分辨率的细节。最终目标是,cellPACK将可供没有技术背景的读者使用,并作为Allen细胞生物学研究所更广泛项目1例如,cellPACK可以用来填充一个建筑工程形状,为地震模拟做准备,或者用适当密度的血细胞填充动脉以生成用于医学插图的组织学表示(参见图11)。①的人。cellPACK开发人员的一个主要研究重点是创建人类免疫缺陷病毒(HIV)的结构细胞。他们使用包装方法将较小的构建块(建模蛋白质和较小的细胞)放入较大的体积中,两者都是几何描述的。cellPACK输入文件(称为配方)包含一系列分子构建块组件(称为成分),这些组件具有模拟生物约束(例如吸引力和排斥力)的输入参数。每种成分都有自己的一组输入参数,这些参数决定了它将如何与单元格的其他成分组合。图2展示了HIV包装问题的一个例子。由于HIV是一个相当复杂的场景,开发人员使用更简单的模型进行开发。他们的方法之一是将具有不同半径的球体包装到一个盒子中,1http://www.scripps.edu/newsandviews/e%5F20150921/vmcc.html。在飞机上他们探索了在不同的输入配置下生成的输出如何变化(例如,两种球体类型之间吸引力的不同参数值)。cellPACK的输入参数可以分为两组,一般参数和成分参数。影响整个单元格的填充算法的一般参数影响特性。两个例子包括cellPACK的空间跟踪网格的分辨率,以及如何选择网格上的下一个点(分配给一种成分)的各种选项。 然后将该点作为输出中的位置建议给配料。在文献中,这组参数被描述为不提供生物信息的模型参数[27]另一方面,成分参数模仿真实世界生物蛋白质的行为,它们必须针对每种成分类型独立地设置,并指定成分模仿哪种蛋白质。这个参数集的一个例子是已知的绑定部分-一种成分的吸引力(即对特定的其他成分类型的吸引力)。它们决定一种配料是接受还是拒绝算法提出的位置。在文献中,它们被称为控制参数[27],因为它们在生物学领域有意义。4. 方法cellPACKexplorer使用设计研究方法开发了十个月[28]。这一时期包括两个主要的开发周期,每个周期都以cellPACK开发人员对原型工具的评估结束。在第一个周期,我们每周与cellPACK开发人员举行会议。在此期间,我们开发了最初的用户、数据和任务特征。我们还向开发人员提供了不断改进的原型。在我们与开发人员一起评估了我们的第一个原型之后,我们发现他们的分析兴趣随着代码的更新而变化。此外,我们发现他们更喜欢控制他们的分析,因此不喜欢自动聚类。此外,我们观察到他们几乎没有回到界面的输入部分。我们更新了我们的用户、数据和任务特征,并设计了一个新的原型工具。我们将在下面的章节中介绍第二个开发周期5. 问题描述我们在每周的会议上分析了cellPACK开发人员的工作流程在收集这些数据后,我们按照Mun- zner的分类法[29]对它们的数据类型和任务进行了特征化。然后,我们综合了我们认为由cellPACK开发人员进行的主要模型构建任务,以帮助他们提高对模型的理解并最终改进cellPACK。下面我们总结一下我们的分析结果。5.1. 用户特征cellPACK算法仍在开发中,我们暂时将cellPACK的核心开发人员作为用户。cellPACKExplorer帮助他们改进cellPACK算法,并为未来的用户简化参数配置。开发人员的最终目标是从小组件(称为成分)自动生成生物结构(例如HIV,血浆)的真实细胞。他们从各种关于细胞化学和生物学特性的小规模研究报告中提取信息,并将其转换为模拟这些生物学约束的输入参数。在他们目前的工作中,开发人员迭代地完善cellPACK输出模型(例如,HIV或血浆细胞),通过更改输入参数4M. 施瓦茨尔湖Autin和G.Johnson等人/计算机图形:X 2(2019)100010图二. 包装HIV配方时产生的cellPACK输出示例。左:空包装体积。中间:不同的成分(蛋白质)被包装。右:一个随机包装结果(数百个)。注意突出的绿色/蓝色成分的涌现的复杂性,其以偏向球形表面的一侧的方式包装,这是几个简单的分子构建块以各种局部方式相互作用的结果。图为使用许可[4]。(For有关本图图例中颜色的解释,请参阅本文的网络版本通过对核心算法的更新,可以调整参数设置(模型使用)或调整参数的功能并添加新参数(模型构建)。该循环继续,直到产生的输出对应于预期的结果。为了验证他们的算法是否正确,开发人员构建了许多不同的单元。我们发现不同的开发人员在验证代码时有不同的方法。cellPACK开发人员来自不同的背景。在我们的例子中,其中一个有科学插图的背景,并对输出进行视觉分析以确保正确性。另一位开发人员具有技术背景,专注于派生的统计指标,以探索和验证输出。在我们的设计过程中,我们的目标是支持所有类型的cellPACK开发人员。为了构建一个同时支持这两种功能的系统,我们设计了一个支持广泛技能和偏好的界面。此外,开发人员不仅微调cellPACK我们认为,高灵活性的接口特别适合于一般的模型构建,因为底层算法会发生变化,因此所使用的分析工具和指标也会发生变化。开发人员不断更新cellPACK算法,开发新的配方来创建不同的细胞,并包括来自文献中越来越多研究的信息。我们发现这是模型构建的一个区别方面与模型使用相反。5.2.数据表征由于我们关注的是模型构建而不是模型使用,因此在cellPACKExplorer 中 分 析 的 数 据 是 cellPACK al- 出 租 本 身 。cellPACKExplorer接受cellPACK的输入参数配置,以启动多个cellPACK输出模型的计算cellPACK输入参数具有不同的数据类型。其中一些是分类的,例如,指定应该使用哪种算法来处理成分的交叉点。其他是数值的,例如,在计算cellPACK的成分类型之间的结合概率时,改变了许多部分,并且经常添加新的参数和函数。新的参数可以超越或以其他方式影响其他参数和产生的下游结果。对于每个输入配置,cellPACKcellPACK模型的每个单个参数化通过随机改变生物细胞中自然发生的变化(即,用不同的随机种子初始化算法)来产生多个输出这些输出通过所使用的随机数而不同我们将运行定义为通过使用相同的输入参数配置但不同的随机种子输入设置重新运行模拟R次来创建R个不同的模拟输出。在接口中,所有过滤器都作为原子单元在运行级别上工作。我们将实验定义为在一定参数值范围内变化的参数子集。实验由N个不同的输入参数配置创建的N个不同运行组成。这将产生N组R结果,给出总数为N×R的卷。目前,开发人员使用的是较小的数据集,变化约3个参数,并生成大约100个输出模型。在简单的测试案例中,成分被简化为不同半径的球体,并限制为大约5种成分,每种成分类型大约10份。对于更复杂的模型,如艾滋病毒,包装的成分数量高达数百万种成分。5.3.任务我们首先描述了cellPACK开发人员目前的工作流程,介绍了我们如何抽象他们的任务(T1-Setup到T6- Improve)并设计cellPACKexplorer以更有效地工作。我们所得到的方法的概念化可以在图中找到。 3.5.3.1.目前的工作流程目前,开发人员使用简单的试错策略,每次探索一个运行。他们创建一个假设,cellPACK输出的特定参数将是什么样子,然后运行模型来验证他们的假设。这适用于具有单一成分类型和短计算时间的实验。随着配方变得越来越复杂,越来越多的配料类型被打包,参数之间的交互作用使得预测输出变得不可能。为了分析这些配方,他们逐个计算一些输出,以粗略地确定参数和样本范围。这些简单的实验仅由两到三个参数和大约十种不同的种子组成。他们还运行这些小实验,以确认系统在更改代码后仍然可以工作。他们分析的下一步是用Python编写自定义脚本,通过改变少于20个指定的随机种子和少于5个参数来对参数范围进行采样。他们在MS Excel中对输出进行可视化和统计分析。对于不同的分析方面,开发人员使用一套不同的2D或3D查看器来查看原始输出,创建多个集合成员的密度图,并说明单个输出单元的渲染最后,M. 施瓦茨尔湖Autin和G.Johnson等人/计算机图形:X 2(2019)1000105图三. cellPACK开发人员使用cellPACKEx- plorer的概念性工作流程。(a)开发人员对工作流程的心理表征。他们开始与一个版本的cellPACK代码,创建多个输出来测试它(T1-设置),并且基于它们的数据分析(T2-删除,T3-识别,T4-默认),讨论它们的结果(T5-共享)并创建cellPACK代码的改进版本(T6-改进)。在cellPACKExplorer之前,生成和分析数据是一个繁琐的手动过程。(b)cellPACKExplorer的管道引导开发人员完成分析过程。(c)通过可视化交互界面支持实验设置(见第7.1节)以及(d)实验分析(见第7.2节),并改善其工作流程。他们采用cellPACK算法并开始新一轮的所述工作流程。一个瓶颈是计算时间。对于单个输出,其范围可以从简单配方的百分之一秒到包装数百万个碱基对或蛋白质的更复杂配方的几天。另一个障碍是通信开销。一个开发人员有科学插图的背景,通常会要求另一个开发人员编写脚本来设置实验采样输入参数,因为这些必须用Python编写,而他只有有限的经验。对于输出的统计分析,他再次要求其他开发人员实现脚本和度量。这种方法需要两个开发人员之间进行大量的通信,并且需要他们共享数据。5.3.2.任务基于cellPACK开发人员T1-设置:实验设置:这需要选择输入参数的子集、采样范围以及待生成样本数量的决定(比较第5.2节中的N、R)。通常,经过技术培训的开发人员负责创建运行和输出以及统计总结,而另一名开发人员参与生物学(或其他)基础事实的验证。T2-T3:通过输出比较进行模型验证:当部分代码发生更改时,重要的是要确保cellPACK模型仍然有效,并通过与文献或教科书(例如[5])和当前领域知识中的数据进行比较来产生正确的结果。这就需要分析与实验相关的概率体积系综集。检查cellPACK输出,以确保它们满足几个统计约束,如成分浓度和体积分布。T3-识别:识别要暴露的参数:对3D输出范围有很大影响的参数应暴露给cellPACK的未来用户。然而,太多的参数可能会使新用户不堪重负,带来不必要的复杂性,并损害cellPACK的采用。此外,打包参数对于非技术用户来说可能不直观。因此,cell-PACK的开发人员必须仔细选择,并需要了解不同参数的行为及其相互作用。T4-Default:为其他(隐藏)参数确定合理的默认值:在确定要公开哪些参数之后,cellPACK的开发者需要决定什么是合理的默认值剩下的参数。这些默认值应产生准确的结果,无需额外配置。T5-共享:共享结果:当cellPACK的开发人员一起处理代码和分析时,他们需要能够共享数据。互相展示发现。这应该尽可能自动化,以加快协作。T6-Improve:改进cellPACK:开发人员不断改进cellPACK的质量和速度。此外,对特定参数影响的深入了解导致删除一些参数并添加其他参数。5.3.3.拟议变动通过我们的新工具,我们的目标是减少通信开销,将所有分析结合到一个应用程序中,使开发人员能够独立工作,并支持更系统的分析。cellPACKexplorer通过可视化界面(参见第7.1节),无需编程知识即可设置实验(T1- Setup)。之后,所有输出的集合可以在可视化界面中进行分析(见第7.2节)。这减少了通信开销,因为两个开发人员都可以独立地设置、运行和分析实验。在旧的设置中,输出被逐个分析,转移到多个工具,需要大量的通信开销。cellPACKExplorer通过条形图显示几个统计指标,允许开发人员检查它们。cellPACKexplorer的界面是可调的。用户可以在cellPACK代码更改时添加和更改度量。图3显示了工作流程。虽然以前所有的任务都必须手动完成,但我们使用cellPACKExplorer支持T1-Setup,T2-Edit,T3-Identify和T4-Default。我们使cellPACK- Explorer可通过一个通用的Web浏览器访问,使数据易于访问,以便开发人员讨论发现(T5-Share)。在新的cellPACKExplorer界面中,cellPACK开发人员首先可视化配置实验(T1-Setup),并开始计算输出集合,然后计算导出的统计指标。所有这些数据的计算不需要任何用户交互,因此开发人员是免费的。去做其他的工作。当 所 有 数 据 都 可 用 时 , cell-PACK 开 发 人 员 可 以 使 用cellPACKExplorer 的 分 析 接 口 来 探 索 生 成 的 集 合 ( T2-IDENTITY,T3-IDENTITY,T4-Default)。他们可以讨论和共享结果(T5-Share)或修改cellPACK代码(T6-Improve)。这是唯一一个没有集成在cellPACKExplorer中的任务,并且仍然手动完成,因为代码更改需要程序员的专业知识。6. 设计迭代在我们与cellPACK开发人员的合作过程中,他们不断更新和更改代码。因此,我们必须考虑到这些变化,并为它们提供一个高度灵活的界面,以适应这些变化。在本节中,我们将讨论在整个设计过程中应用于接口的更改。在第一个原型中,我们在同一个窗口中设置了实验和分析。在与cellPACK开发人员合作修改了第一个原型之后,我们决定将五个任务分成两个连续的界面(每个都使用全屏),一个用于设置实验(T1-Setup),另一个用于分析实验结果(任务2到5)。该决定基于以下观察结果:实验设置由cellPACK开发人员仔细完成,并且一旦实验设置好,他们就切换到不同的任务,直到输出集合的计算完成。在分析产出时,没有必要看到6M. 施瓦茨尔湖Autin和G.Johnson等人/计算机图形:X 2(2019)100010输入配置。大部分时间都花在了实验分析上,很少回过头来改变设置。与以前的原型相比,当前设计的另一个主要变化是我们如何对输出进行分组。我们首先使用算法聚类方法将类似的cellPACK输出分组在一起。然而,我们观察到开发人员,尤其是科学插画家,更喜欢比较输出并自己得出结论。虽然自动聚类需要较少的工作,但它也将分析限制在算法所考虑的方面。用户需要尽可能多的灵活性,以便从不同的角度分析数据。因此,我们决定实施手动过滤方法。这有助于我们工具的用户根据数据的不同方面在界面的第一个设计中,我们使用了一个单独的条形图,显示包装体积不同区域的成分数量。例如,一个条形表示在左上子区域中装入了多少个插件。用户可以过滤出在任何子区域中包含超过特定数量成分的结果。虽然用户可以清除产生非常不均匀分布的运行,但他们无法对不同方面的输出进行过滤和分析。使用新的电子表格布局,可以考虑不同的分析指标,并在未来需求发生变化时我们决定使用直方图来表示为参数和派生度量采样的值的频率。所有输入参数都是数字或分类的,可以通过直方图表示。这同样适用于以直方图示出的导出的度量。虽然有许多其他的视觉编码来显示这种数据类型,但我们发现直方图最适合。它们避免了添加更多的维度,并降低了数据与墨水的比率。此外,它们可以很好地表示输入参数频率以及一些输出矩阵,从而降低用户的学习要求此外,我们认为,直方图是这种类型的数据,常用的,众所周知的,易于解释的许多潜在的用户以及两个开发人员具有不同的背景,共同和简单的视觉编码我们在早期的纸上原型中考虑的其他图表类型。在与开发人员的讨论中,我们已经决定将其用于第一个高精度原型。7. cellPACKexplorercellPACKExplorer构建为具有Web前端的客户端-服务器设计。我们选择这种设计是因为它简化了安装,并帮助cellPACK的开发人员分享(T5-Share)他们的结果和讨论结果。 绘图使用D3[30]和交叉过滤器[31]实现,支持大型数据集的交互式过滤。我们使用Talbot等人的方法。[32]用于轴标记。我们将这六个任务分成两个连续的界面(每个都使用全屏),一个用于设置实验(T1-Setup),另一个用于分析实验结果(任务2至6)。这个决定是基于这样的观察:实验设置是仔细完成的,一旦实验设置好,开发人员就会切换到不同的职责,直到他们等待输出集合的计算完成。后来,他们把大部分时间都花在了实验的分析上,很少再回过头来改变设置。为了更好地了解我们的工具的交互性,我们在补充材料中提供了一个视频演示cellPACKExplorer。7.1. 输入屏幕输入屏幕(图4)支持任务T1-开发人员的设置。cellPACK开发人员使用此屏幕选择cellPACK配方文件并指定他们想要在实验中探索的参数和范围。为了解决实验设置的复杂性,并使两个开发人员都可以访问它(传统的工作流程是一个开发人员根据另一个开发人员的请求提供自定义Python脚本),我们将实验设置分为五个步骤,也反映在图4所示的界面中。由于cellPACK算法的不同部分中的各个参数和另一组输入参数是针对不同的成分类型指定的,因此它们需要不同的指定方式。此外,第二组,在每个成分的基础上工作,必须仔细设置,以避免计算太多的输出。(1) 设置配方:首先,开发人员选择他们想要分析的cellPACK配方。这个配方是一个.json文件,指定了包装体积,要包装的成分类型以及cellPACK输入参数的默认值。配方还说明了生物细胞结构。(2) 运行次数和输出位置:第二步确认实验并确定应计算多少细胞(N和R,见第5.2)。(3) 全局填充参数:在步骤3中,设置模拟的一般参数(参见第3节)。开发人员只需要设置他们想要改变的参数。其他参数仍为所选配方文件指定的默认值。对于每个采样参数,cellPACK开发人员还可以选择采样方法。它们可以选择(确定性)网格采样或随机均匀采样。网格采样的所有参数由多维笛卡尔网格确定。 这对于少量参数是可以的,但可能导致一个快速的组合爆炸。因此,应该谨慎使用它,并且只用于较小的测试用例。(4) 特定于成分的参数:成分参数需要更复杂的设置,因为每种配料类型都有自己的一组参数值(比较配料参数第3)。当使用cellPACK本身时,设置参数是一个非常繁琐的过程,因为每个参数值必须在配置文件中手动设置。为了克服这个问题,我们提供了一个可搜索的所有可用参数的列表当cellPACK开发人员开始键入时,列表中只显示名称匹配的参数。当我们关注cellPACK的开发人员时,他们知道他们想要采样的参数的名称,因此可以使用此功能节省大量时间。因为我们观察到cellPACK开发人员在多个成分中改变相同的参数,所以我们增加了修改成组成分的参数值的能力。界面中成分的树形表示模仿了cellPACK配方中成分的结构。他们可以在树中选择配料,然后为所选配料选择要采样的参数和范围。(5) 执行或导出实验:一旦cellPACK开发人员完成了实验的设置,他们可以直接在服务器上运行实验或下载配置。如果他们想在另一台机器上运行实验(即具有更强的计算能力),将设置发送给其他人(即一起工作的开发人员),或者稍后进行计算,下载选项很有帮助。实验设置完成后,输出的计算是在线完成的,不需要任何交互因此,cellPACK开发人员可以在等待计算结果的同时专注于其他工作。7.2.分析屏幕一旦所有的输出计算和派生的统计metrics准备就绪,开发人员使用分析屏幕(图5)来检查生成的合奏。 我们界面的布局类似于一个由行和列组成的可视化电子表格。做出这一决定有很多原因。首先,M. 施瓦茨尔湖Autin和G.Johnson等人/计算机图形:X 2(2019)1000107图四、 输入接口。每个垂直面板是实验设置中的一个步骤从上到下:(1)配方规格(2)cellPACKExplorer设置(折叠)(3)算法的基本设置中的cellPACK一般包装参数(用红色a标记)(4)cellPACK成分参数(用红色b标记)按成分类型设置5)开始/导出配置。(有关本图例中颜色的解释,请读者参阅本文的网络版本图五. 分析界面。(a)输入参数(b)衍生的统计指标(c)空间输出列报的三个主要栏。开发人员已经在分析的上下文中使用电子表格其次,我们需要一个灵活的界面,以适应出租和分析的变化。使用电子表格布局,不同的分析方面(由列表示)可以换入换出或添加。每一行的图可以分为三个逻辑组:输入参数的分布(图5a),导出度量的分布(图5b)和输出的渲染(图5c)。该行中汇总的运行总数显示在界面左侧。界面中的每一行代表所选实验的所有运行的已过滤子集这允许cellPACK开发者比较(T2-T4)输出集合的不同子集。新的一行最初显示实验的所有运行(即没有应用滤波器,整个输出集可见)。cellPACK开发人员可以通过在界面中的列表示的任何或多个输入或衍生度量上创建过滤器来交互地调整哪些滤波器与AND操作相结合,从而形成组,其中运行的每个单个输出必须填充所有滤波器约束以成为水平行的一部分。每个过滤器仅在界面中保留其自己的水平行。cellPACKExplorer中的过滤器可以直接在条形图中调整。点击8M. 施瓦茨尔湖Autin和G.Johnson等人/计算机图形:X 2(2019)100010在图表内的任何位置上,然后进行拖动操作,将相应的参数或输出度量限制在指定的范围内。欲了解更多详情,请观看视频。列布局提供了在未来添加其他功能(指标)或删除现有功能(指标)的灵活性,而无需更改界面。我们发现这对于开发人员的模型构建工作流程很重要,因为底层的al-tax m(在我们的情况下是cellPACK)定期变化,需要不同的分析指标,这些指标可以很容易地添加和删除,而不需要改变接口。我们依次解释开发人员当前使用的每个不同指标7.2.1.输入参数最左边的列(图5a)示出了每个采样输入参数的一个直方图。它支持开发人员了解输入参数对生成的输出的影响(T3-Identify),并为参数识别良好的默认值(T4- Default)。仅显示了开发人员在输入界面(图4)中选择的采样输入参数。所有其他人保持在默认值为整个合奏。每个图形的水平轴表示采样参数值(数值或分类)。纵轴表示频率,也就是说,一个特定的值被用来在该行中生成输出的频率。在过滤的情况下,所有运行的完整直方图在背景中保持透明,以提供完整集成数据集的上下文。直方图的更新后的不透明部分显示填充所有过滤器的行的当前选定子集的分布。7.2.2.推导度量中间的一组列(图5b)显示了各种导出输出的直方图。我们创建这些列是为了帮助cellPACK开发人员快速识别感兴趣的子集,而无需逐个滚动输出图像。例如,我们观察开发人员寻找某些成分无法打包的输出或需要很长计算时间的输出。所有指标都是与cellPACK开发人员合作开发的,专注于他们的分析目标。为了提供所有列的一致结构,所有直方图上的y轴显示整个或当前选定数据集中x轴上每个值的频率。这与输入参数列一致由于某些图表是基于成分计算的,因此单元格PACK开发者可以通过在树中单独选择或取消选择成分来关注成分的子集(图5b,列5),在输入屏幕上也使用用于成分选择的相同布局来支持用户理解界面。通过选择和取消选择配料,可以分析单个配料,例如检查其在包装体积内覆盖了多少可用空间。找到好的衍生指标是困难的,因此,他们不断修订。在cellPACKExplorer的开发过程中,随着我们对打包算法理解的提高,我们提出了一些新的指标。cellPACK的开发人员还要求许多不同的指标,并在设计过程中不断更新使用的指标,探索不同的参数。随着我们开发cellPACK- Explorer的进展,我们细化了输出指标列表。列布局在界面中,我们可以轻松地交换指标和添加新的指标。在当前版本的cellPACKEx- plorer中,我们显示了以下指标:空间占用率、使用率和距离平均值。这些度量示出了cellPACK输出的导出的几何特性:空间占用:开发人员对不同成分的浓度感兴趣,因为这对于确保生物有效输出至关重要。空间占用率(图5b,第1列)直方图显示了空间占用率的百分比(水平轴)分布配料类型所涵盖的总包装体积。 比如说,如果成分A占据了我们正在包装的整个立方体的50%,则空间占用值为50%。在每次运行中,每种成分的占用率在使用不同种子计算的所有单元格上平均。这一措施给出了一个集中的想法-与总体积相比,成分的体积越大,体积越密集,该测量值将越高。用法:确保cellPACK产生正确输出的一个重要方面是充分利用成分,即
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功