编辑推荐:
为解决现有斑马鱼行为分析软件存在的与动态背景不兼容、缺乏多孔板格式支持、硬件要求高及编程难度大等问题,研究人员开展了 Marigold 这一免费开源网络应用的研究。结果显示 Marigold 功能强大且易用,对分析斑马鱼行为意义重大。
在生命科学研究的舞台上,斑马鱼因其独特的优势,如繁殖量大、发育迅速、神经系统相对简单且拥有许多人类疾病基因的同源物,成为了研究脊椎动物行为、毒理学以及神经系统疾病模型构建的热门对象。然而,现有的斑马鱼行为分析软件却像是一道道阻碍研究进展的 “关卡”。传统基于经典图像处理技术的软件,在面对动态背景、变化的光照条件以及早期胚胎与背景对比度低的情况时,表现得十分脆弱;很多软件只能追踪代表幼虫整体位置的单个点,无法满足对多个关键点追踪的需求;还有些软件是闭源的,与专有硬件绑定,限制了研究人员的使用和定制。而基于机器学习的先进软件虽然精度高,但往往需要高端图形处理单元(GPU)才能高效运行,复杂的工作流程也让缺乏专业技术知识的人员望而却步,并且它们对斑马鱼常用的实验范式,如多孔板成像,缺乏支持。
在这样的背景下,美国马萨诸塞大学阿默斯特分校(University of Massachusetts Amherst)的研究人员决心开辟新的道路,他们开展了关于 Marigold 这一免费开源网络应用(web app)的研究。经过不懈努力,研究人员成功开发出 Marigold,它能可靠地追踪多达 10 个用户定义的身体关键点,支持单孔和多孔配置,拥有用户友好的界面。这一成果发表在《BMC Bioinformatics》上,为斑马鱼行为分析领域带来了新的曙光。
研究人员在开发 Marigold 的过程中,运用了多种关键技术方法。首先,他们收集并标记了两个原理验证数据集,分别用于触摸诱发反应和视觉运动反应研究。接着,基于 PyTorch 库对神经网络架构进行原型设计和优化,通过一系列宏观架构和微观架构的设计改进,提升网络性能。最后,利用 C++ 生成 WebAssembly,将相关功能集成到网络应用中,实现了在浏览器内的高效运行 。
在神经网络设计方面,研究人员以 MobileNetV3 倒置瓶颈残差块为基础,探索了两种宏观架构 —— 分层架构和各向同性架构。研究发现,各向同性架构在训练和推理速度、内存占用等方面表现更优。在微观架构上,将批归一化(Batch Normalization)替换为实例归一化(Instance Normalization),并适当去除部分归一化和激活层,进一步提升了训练和推理速度,减少了理论内存占用。同时,研究表明,即使训练数据有限,Marigold 的神经网络仍能有效训练。在 WebAssembly 实现上,Marigold 的基于 WebAssembly 的神经网络实现,在 CPU 性能上与高度优化的 PyTorch 库相当。
在生物学实验应用中,研究人员使用 Marigold 对 slc1a2btk57/tk57突变体和野生型斑马鱼胚胎的触摸诱发反应进行研究。结果发现,头部刺激后,突变体胚胎的游泳时间和距离显著长于野生型;在尾巴刺激实验中,不同基因型的胚胎在初始弯曲幅度、达到最大角度的时间等方面存在差异。这表明突变体胚胎的运动表型存在与基因型和触摸位置相关的特征。此外,研究人员还利用 Marigold 研究了发育阶段和喂养对斑马鱼幼体视觉运动反应行为的影响。研究表明,喂养状态对 7 日龄幼体的视觉运动反应行为影响更为显著,在黑暗适应、光照刺激等不同阶段,喂养和未喂养的幼体在游泳活动水平、最大速度、游泳回合数等方面均存在差异。
综合研究结论和讨论部分,Marigold 的出现意义非凡。在生物学实验中,它能够帮助研究人员深入挖掘斑马鱼行为的细节,发现新的行为特征和规律。在神经网络设计上,其优化的架构为开发高效的神经网络提供了新的思路。与现有软件相比,Marigold 降低了硬件要求,消除了安装程序,更易于使用。尽管它目前存在一些局限性,如只能分析每个感兴趣区域的单个动物、在处理高分辨率长时记录时速度有限等,但未来有望通过扩展功能,如支持多鱼分析和三维姿态追踪,进一步提升其应用价值,为斑马鱼行为研究乃至其他物种的行为分析提供强有力的支持。