我们提供了一款带有图形用户界面的软件包,供无编程经验的研究人员通过简单的下载和操作即可对小鼠的睡眠阶段进行评分。
我们提供了一款带有图形用户界面的软件包,供无编程经验的研究人员通过简单的下载和操作即可对小鼠的睡眠阶段进行评分。
啮齿类动物睡眠阶段评分是识别三种睡眠状态的过程:非快速眼动睡眠(NREM)、快速眼动睡眠(REM)和清醒状态。睡眠阶段评分对于研究特定睡眠阶段的指标及其影响至关重要。
啮齿类动物的睡眠模式与人类不同,其特点是NREM和REM睡眠的持续时间较短,且与觉醒状态交替出现。传统上由人类专家进行的手动睡眠分期评分十分耗时。为解决这一问题,以往研究曾采用基于机器学习的方法开发自动分类睡眠阶段的算法,但性能优异、泛化能力强的模型往往未公开提供或需付费,且对未经专业训练的睡眠研究人员而言不够友好。
因此,我们开发了一种基于机器学习的LightGBM算法,并使用大规模数据集对其进行训练。为了使无编程经验的睡眠研究人员也能使用该模型,我们基于此模型开发了一款名为IntelliSleepScorer(v1.2-最新版本)的软件工具,该工具具有易于操作的图形用户界面。在本文中,我们逐步介绍了该软件的使用方法,旨在为睡眠研究人员展示一种在小鼠中便捷且高效的自动睡眠分期评分工具。
在啮齿类动物中,睡眠阶段评分是用于识别三种睡眠状态的过程:非快速眼动睡眠(NREM)、快速眼动睡眠(REM)和清醒状态2。在啮齿类动物中,NREM 的特征是肌肉活动减少、呼吸缓慢而规律、心率下降以及脑电波出现低频振荡。啮齿类动物的 REM 与人类相似,表现为肌肉失张力、脑电图(EEG)激活以及快速眼动,尽管与人类相比,啮齿类动物是否经历生动梦境尚不明确2,3。啮齿类动物的"清醒"状态以去同步化的脑电活动为标志,表现为高频、低幅的脑波,肌张力升高,并出现理毛和探索等主动行为4。通过分析脑电图(EEG)和肌电图(EMG)信号,可以识别这三种睡眠阶段5。
啮齿类动物的自动睡眠分期评分模型需求迫切。首先,由人类专家进行的手动睡眠分期评分工作量大且耗时。其次,啮齿类动物的睡眠模式与人类不同,其非快速眼动睡眠(NREM)和快速眼动睡眠(REM)的片段更为短暂,且常被约10分钟的觉醒期所间隔,而人类的相应周期通常为60至120分钟6。因此,在手动评分过程中识别这些短暂阶段具有挑战性。自20世纪60年代以来,已有诸多尝试致力于开发啮齿类动物睡眠数据的自动评分系统7。尽管目前已存在多种自动化的啮齿类动物睡眠评分方法,但其性能表现各异8,9,10,11,12,13,14,15,16,17,18。尤为重要的是,大多数性能优异且具有高泛化能力的模型并未公开提供(部分需向开发者特别申请),或对睡眠研究人员而言并非免费。
因此,为了填补当前的技术空白,我们利用来自124只小鼠的519次记录、共计5776小时的脑电图(EEG)和肌电图(EMG)信号的大规模数据集,采用LightGBM算法开发了一种基于机器学习的模型。1lightGBM 采用梯度提升方法来构建决策树19在Wang等(2023)的研究中,LightGBM模型(包含超过8000棵决策树)的整体准确率达到95.2%,Cohen's kappa系数为0.91,优于两种广泛使用的基线模型:逻辑回归模型(准确率=93.3%)和随机森林模型(准确率=94.3%,kappa=0.89)。该模型的整体表现与人类专家水平相近。最重要的是,该模型已被证实具有良好的泛化能力,并未对原始训练数据过拟合。1:1)其表现良好(准确率 > 89%),在另外两个公开的独立数据集上(来自 Miladinovic 及其同事)11,采用不同的采样频率和 epoch 长度;2)模型性能不受小鼠明暗周期的影响;3)改进的 LightGBM 模型在仅包含一个 EEG 和一个 EMG 电极的数据上表现良好,kappa 值 ≥ 0.89;4)测试中使用了野生型和突变型小鼠,模型在两者上的表现均准确,表明该模型可对不同遗传背景的小鼠进行睡眠阶段评分。
为了使这一模型能够被可能不具备编程专业知识的睡眠研究人员所使用,我们开发了IntelliSleepScorer,这是一款具有直观可视化界面的用户友好型软件工具。该软件可完全自动化小鼠的睡眠分期过程。它能够基于欧洲数据格式(EDF)/EDF+文件输入,生成信号、睡眠图(hypnogram)以及SHAP值(Shapley Additive exPlanations)的交互式可视化结果。SHAP值方法基于合作博弈论,可增强机器学习模型的可解释性20。该模型提供全局和每个时间片段(epoch)层面的SHAP值,揭示不同特征值如何整体上以及针对每个片段影响模型的分期决策。这一先进程序显著减少了小鼠睡眠阶段分期所需的时间和工作量,同时确保下游分析可以依赖高度准确的结果。在本文中,我们逐步介绍了IntelliSleepScorer(v1.2)的使用方法,相较于1.0版本进行了多项更新,包括可选择将SHAP分析与睡眠模式预测分开运行、用户可自定义睡眠分期的时间片段长度,以及在图形用户界面(GUI)中集成了睡眠阶段手动校正功能。
本研究使用了从以下来源收集的数据 体内 在小鼠中进行的实验。本研究未涉及人类实验。所有动物实验均经布罗德研究所机构动物护理和使用委员会批准。所有实验均按照相关指南和法规进行。由于本研究的重点是开发机器学习模型,而非比较不同处理组,因此ARRIVE指南不适用于本研究。
1. 数据准备
注意:数据兼容性:记录的数据采样率需高于 40 Hz。由于软件在第一步会对脑电图(EEG)和肌电图(EMG)信号进行带通滤波,因此无需对信号预先进行带通滤波处理。LightGBM 模型是使用小鼠数据开发和验证的,目前尚无证据表明该模型在其他实验动物中的性能表现。记录电极需放置于额叶皮层和顶叶皮层;若仅记录一个 EEG 通道,则可选择其中任一位置。
2. Windows、Mac 和 Linux 用户下载 IntelliSleepScorer
3. 工作流程及程序的启动与操作
4. 查看评分结果
5. 睡眠分期评分结果的睡眠图解读
注意:睡眠图(图2)共有4行。最上面一行是预测结果,下面3行分别为2个脑电图(EEG)通道和1个肌电图(EMG)通道的原始数据。在最上面一行中,橙色表示每个时间段的清醒阶段,蓝色表示非快速眼动睡眠(NREM)阶段,红色表示快速眼动睡眠(REM)阶段。
6. 在图形用户界面中手动校正预测的睡眠阶段(可选)
注意:如果未观察到异常,或对REM阶段预测的精度要求不高,则无需进行人工验证。
睡眠分期评分完成后,GUI 中会生成三个图(若未运行 SHAP 值,则仅显示最上方的图):最上方的图显示 EEG 和 EMG 通道以及睡眠分期预测的睡眠图;中间的图显示各 epoch 的 SHAP 值;最下方的图显示全局 SHAP 值(图 1)。
睡眠阶段预测的睡眠时相图(图2)中展示了4种类型的数据。最上方一行为预测结果,下方三行分别为两个脑电图(EEG)通道和一个肌电图(EMG)通道的原始数据。在最上方一行中,橙色表示“清醒”阶段,蓝色表示“非快速眼动睡眠(NREM)”阶段,红色表示“快速眼动睡眠(REM)”阶段,每个时间段对应一种颜色。当前示例的时间段为第1305段,处于“清醒”阶段,因为粉红色的位置标记条与橙色线条重叠。
在图3中,用户修正后的睡眠分期以虚线形式叠加在原始结果上方。红色虚线表示睡眠分期已从“清醒”更改为“快速眼动(REM)”。
在图4中,展示了示例文件1中第1305个epoch的结果示例。Epoch SHAP图的Y轴显示了所选epoch中绝对SHAP值最高的前10个特征,X轴显示SHAP值,表示每个特征相对于平均预测值对预测结果的贡献程度。正的SHAP值表示对预测结果有正向贡献,反之亦然。特征“emg_abs_max”在“清醒”(Wake)状态中具有显著的正向epoch级SHAP值,表明来自该选定epoch的“emg_abs_max”增加了该epoch被判定为“清醒”状态的可能性(图4)。这在生理学上是合理的,因为较大的肌电(EMG)振幅代表活跃的运动,从而提示处于“清醒”阶段。
在全局SHAP图示例(图5)中,p-swarm图中的每个点代表一个数据样本。图的y轴显示根据随机抽取的500个epoch计算出的绝对全局SHAP值最高的前10个特征。x轴显示SHAP值,表示每个特征相对于平均预测值对预测结果的贡献程度。与单个epoch的SHAP图不同,全局SHAP图具有两个维度:每个点的x值和点颜色的强度。正的x轴SHAP值表示对预测结果有正向贡献,反之亦然。颜色越深的红色点表示特征值越高。通过直观地观察每个特征对应的500个点的位置与颜色之间的相关性,可以解释LightGBM如何基于各特征的值做出决策。在“清醒”(Wake)状态的全局SHAP图中,随着“emg_abs_max”的SHAP值从更负向更正方向增加,点的颜色逐渐变深,表明被预测为“清醒”状态的可能性与“emg_abs_max”值的增加呈正相关。此外值得注意的是,SHAP值分布范围更广(绝对值更高)的特征对模型预测的贡献更大。例如,在全局NREM SHAP图(图5)中,“eeg2_gamma_delta_ratio”特征的点分布范围较宽,该特征的高度负SHAP值降低了模型将其判别为“NREM”阶段的可能性。

图 1:使用 1_LightBGM-2EEG 模型对示例 1 的 EDF/EDF+ 文件运行预测后的 GUI 页面概览。睡眠阶段预测和 SHAP 值计算均已评分。顶部图表显示脑电图(EEG)和肌电图(EMG)通道以及睡眠阶段预测的睡眠图(hypnogram)。中间图表显示各时间段(epoch)的 SHAP 值。底部图表显示全局 SHAP 值。 请点击此处查看该图的放大版本。

图2:来自示例1的EDF/EDF+文件的睡眠阶段预测睡眠图。图中展示了4组数据。最上方一行为预测结果,下方三行分别为2个脑电图(EEG)通道和1个肌电图(EMG)通道的原始数据。在最上方一行中,橙色表示“清醒”阶段,蓝色表示“非快速眼动睡眠(NREM)”阶段,红色表示“快速眼动睡眠(REM)”阶段,每个时间段对应一个睡眠阶段。请点击此处查看该图的高清版本。

图3:来自示例1 EDF/EDF+文件的睡眠阶段预测催眠图,含用户修改的手动校正。 第1305个时段已从“清醒”阶段更改为“快速眼动(REM)”阶段,以演示在图形用户界面(GUI)内进行的睡眠阶段手动校正。红色虚线表示用户修改后的睡眠阶段“REM”。 请点击此处查看此图的放大版本。

图 4:示例 1 EDF/EDF+ 文件在第 1305 个时间窗的清醒、NREM 和 REM 时间窗 SHAP 值。 时间窗 SHAP 图的 y 轴显示所选时间窗中绝对 SHAP 值最高的前 10 个特征;x 轴显示 SHAP 值,表示各特征相对于平均预测值对预测结果的贡献程度。请点击此处查看该图的高清版本。

图5:示例1 EDF/EDF+ 文件的清醒、NREM 和 REM 全球 SHAP 值。 p-swarm 图中的每个点代表一个数据样本。图的 y 轴显示了从 500 个随机采样的周期中计算出的绝对全球 SHAP 值最高的前 10 个特征。x 轴显示 SHAP 值,表示每个特征相对于平均预测对预测结果的贡献程度。全球 SHAP 值的 x 轴具有两个维度:每个点的 x 值以及点颜色的强度。正的 x 轴 SHAP 值表示对预测有正向贡献,反之亦然。颜色越深的红色样本,其特征值越高。请点击此处查看该图的放大版本。
本文介绍了如何使用 IntelliSleepScorer (v1.2) 图形用户界面自动对小鼠的睡眠阶段进行分期评分,以及如何利用 SHAP 值/图表更深入地理解模型生成的睡眠阶段评分结果。
使用该软件时,数据兼容性是一个重要的考虑因素。本研究中使用的内部数据仅限于放置在额叶和顶叶区域的电极。在Miladinovic及其同事提供的独立数据集11中,尽管这些区域的电极坐标有所不同,软件仍保持了令人满意的性能。虽然该软件可能适用于其他脑区,但我们尚未进行测试以证实这一点。因此,我们不能断言电极放置位置不存在任何限制。然而,如果用户拥有来自其他脑区的记录数据,我们鼓励其进行测试。
用于睡眠阶段分析的脑电图(EEG)/肌电图(EMG)记录会话时长取决于研究的具体目标。通常,记录会话持续12小时,覆盖光照期或黑暗期之一;或持续24小时,涵盖单日内两个阶段。12小时和24小时记录均常用于捕捉不同的睡眠-觉醒模式和昼夜节律。模型测试表明,无论是12小时还是24小时的记录会话,睡眠阶段评分均具有可靠性和准确性。目前尚无已知的记录时长上限。
软件流程中两个值得注意的步骤是数据预处理和人工验证。为了提高训练模型的泛化能力,我们在输入数据中允许存在一定噪声和伪迹,并仅实施了最少的质量控制措施。我们进行的质量控制旨在排除因信号丢失而导致的低质量记录。信号丢失通常由连接问题引起,例如电极松动或脱落。信号丢失可能导致软件生成的睡眠评分出现错误。例如,清醒小鼠的肌电图(EMG)通道因EMG电极松动而出现的平直线,可能与小鼠静止/睡眠阶段的特征相似,从而导致LightGBM模型将其误判为"NREM"或"REM"阶段。作为参考,我们采用以下标准自动排除存在大量信号丢失的记录:1)任意脑电图(EEG)信号的幅度在至少50%的记录时间内低于1 µV,或2)肌电图(EMG)信号的幅度在至少50%的记录时间内低于1 pV。用户需根据自身的实验设置和记录系统,自行制定质量控制标准。由交流电引起的工频干扰通常出现在50 Hz或60 Hz。这些工频噪声将在软件中实施的带通滤波(1–40 Hz)步骤中被去除,因此用户在将数据输入软件前无需预先处理工频噪声。在模型开发过程中,已考虑了诸如身体运动等轻微噪声或干扰因素1。本研究所采用的方法确保了模型的泛化能力能够容忍这些不会显著影响最终睡眠分期结果的轻微伪迹。EDF数据文件的格式、记录质量以及组织顺序,均为优化该预训练模型性能的关键因素。
对于手动验证,鉴于 LightGBM 模型在少数记录中的表现较差(REM 的 F1 分数 < 0.6),如果准确的 REM 阶段评分至关重要,我们建议用户对模型生成的睡眠阶段进行验证。对于专注于清醒状态或 NREM 阶段生理学的研究,LightGBM 模型仍可支持非常稳健且完全自动化的分析流程。结合手动验证,SHAP 值的解读可成为确认软件生成结果准确性的优秀工具。SHAP 是一种利用博弈论解释机器学习模型输出的方法,它通过经典的 Shapley 值及其相关扩展,将最优的贡献分配与局部解释联系起来20。例如,在全局 NREM SHAP 值图(图 4)中,如果“eeg2_gamma_delta_ratio"”特征的最右侧突然出现一个深红色的点,可能表明该时间段存在异常,因为该孤立的样本点偏离了整个数据集。SHAP 图的解读还可为用户提供清晰且易于理解的睡眠阶段评分解释。例如,单个时间段的 SHAP 图可提供有关哪些特征是睡眠阶段评分中最关键决策因素的信息。 结果预测的睡眠图(图 2)也提供了关于预测结果的重要信息。当睡眠图中评分的睡眠阶段在"清醒"和"REM"阶段之间频繁切换(这在生理上属于异常)时,建议对评分结果及相应的 SHAP 值进行全面评估,以确定结果的质量。通过 SHAP 图和睡眠图,研究人员可快速识别睡眠阶段评分过程中的任何预测错误。然而,尽管 SHAP 值能够解释模型如何做出预测,但这并不意味着预测结果或模型做出特定预测的方式一定是正确的。展示 SHAP 值的目的是帮助用户理解睡眠阶段评分的过程,并使用户能够通过检查 LightGBM 模型的逻辑快速识别任何错误。
当前版本(v1.2)的模型具有两个显著特点。首先,如前文所述,如果用户需要返回CSV文件进行修改,手动验证/校正过程可能会非常繁琐且不便,尤其对于长时间的记录更是如此。因此,我们在GUI中直接集成了手动校正功能,允许用户更改任意一个时间段(epoch)的睡眠分期评分。当用户点击某一特定时间段后,GUI工具栏上方的下拉菜单将显示该时间段当前评分为"清醒(Wake)"、"快速眼动睡眠(REM)"或"非快速眼动睡眠(NREM)"。若用户希望将某一阶段更改为另一阶段,只需从下拉菜单中选择新的阶段,系统便会生成一份由用户手动校正后的新评分文件。此外,除了标准的10秒固定时间段长度用于分析外,我们还在GUI中提供了调整时间段长度的选项,以满足不同睡眠研究人员的具体实验需求。目前可选的时间段长度为4秒、10秒和20秒,这些均为睡眠研究领域常用的设置。尽管该模型是使用实验室内部10秒时间段的数据进行训练的,但在独立测试中,其对来自不同实验室的4秒时间段数据的分析性能在所有睡眠阶段均与人类专家相当1。用户在使用20秒时间段时需格外谨慎,原因如下:1)使用20秒时间段对小鼠睡眠/觉醒进行评分可能遗漏极短时间的事件,例如短暂觉醒;2)20秒时间段更有可能在单个时间段内包含混合的睡眠阶段8。
将本模型与其他现有的自动睡眠分期评分方法进行比较,将为用户提供有益的参考。除了 IntelliSleepScorer 之外,目前已开发出若干用于自动睡眠分期评分的模型,其准确性、复杂程度和效能各不相同8,9,10,11,12,13,14,15,16,17,18。本研究采用的模型利用 LightGBM 算法,在睡眠分期评分中实现了高准确率,与现有模型相当。在我们的评估中,IntelliSleepScorer 的总体准确率达到 95.2%,与 MC-SleepNet8 和 Sleep-Deep-Learner9 等类似模型所报告的性能指标相当。然而,IntelliSleepScorer 的真正优势不仅在于其准确性,还在于其对缺乏编码经验的非专业研究人员而言具有良好的可及性和易用性。
MC-SleepNet8 利用包含 4200 只小鼠的大规模数据集,通过深度神经网络进行训练,其评分准确率达到 96.4%,kappa 统计量为 0.94,优于大多数现有方法。然而,据我们所知,目前尚无基于 MC-SleepNet 的公开免费软件可供使用。
Sleep-Deep-Learner9 可自动对小鼠进行睡眠分期评分,其快速眼动睡眠(REM sleep)的F1分数为0.86,非快速眼动睡眠(NREM sleep)为0.95,清醒状态为0.97。然而,作者在论文中指出,Sleep-Deep-Learner 不适用于对睡眠-觉醒评分不熟悉的个体,因其需要部分手动评分的片段作为输入。相比之下,IntelliSleepScorer 在睡眠阶段评分过程中无需任何进一步的手动干预,并为研究人员提供了非常友好的图形用户界面(GUI)。
Somnivore10 是一种多功能、多层级的系统,专为自动化的觉醒-睡眠阶段评分而设计,能够从包含复杂多导睡眠图输入的有限训练数据集中高效学习。该系统具有快速的计算效率,并在不同受试者中表现出强大的泛化能力,包括人类、啮齿类动物(野生型和转基因型)以及鸽子。然而,Somnivore 并非无需成本。
SlumberNet11 和 AccuSleep12 分别可便捷地在 Zenodo 和 GitHub 上获取,其评分准确率分别为 97% 和 96.8%。然而,这两个模型的训练数据量相对较小,仅包含 9 或 10 只小鼠,且未包含独立的测试验证。因此,它们在实际应用中的表现仍不明确。
SPINDLE13 是另一种基于网络的模型,该模型使用包含4至6只小鼠/大鼠的较小数据集,并借助卷积神经网络进行训练。该模型在来自三个独立睡眠实验室的数据中得到验证,与不同实验室人类专家评分的平均一致率达到93%–99%,可媲美人类的判读能力。
最后,Somnotate14 在内部数据集上进行评估时表现出 0.97 ± 0.01 的准确率和 0.97 ± 0.01 的加权 F1 分数,该数据集包含基于至少三位人工标注者共识的六段 24 小时记录。当在 Somnotate 的数据集上进行测试时,IntelliSleepScorer 的性能下降,准确率为 0.75 ± 0.04,加权 F1 分数为 0.73 ± 0.0514。性能下降可能归因于不同数据集之间实验设置或记录条件的差异。鉴于实际应用场景的多样性,我们建议用户在自己的数据集上评估 IntelliSleepScorer 的性能,尤其是当其实验设置或记录条件与我们的存在显著差异时。如果软件性能未达到预期,用户可以选择使用自己的数据对预训练模型进行微调,因为我们已将开发所用的模型和代码开源。
除了上述讨论的现有模型外,还有一些其他已开发的自动化睡眠分期系统,研究者可根据其研究的具体需求和不同要求进行选择15,16,17,18。
在未来的工作中,我们计划开发并训练一个新模型,以优化睡眠阶段自动评分所需的时间。目前,该图形用户界面在搭载 Intel Core i7-8550U CPU @ 1.80 GHz 的设备上处理以 1000 Hz 采样的 12 小时记录数据,大约需要 10 分钟。然而,当使用 4 秒时段进行睡眠阶段评分时,处理时间相比默认的 10 秒时段大约增加 2.5 倍。这一新模型将能够满足部分用户对更快的小鼠睡眠阶段自动评分的需求。我们也在持续关注用户的反馈,任何新功能均可根据请求添加。
总之,我们提供了一款免费、公开且用户友好的图形界面软件 IntelliSleepScorer,以建立便捷的小鼠睡眠阶段自动分析流程。此外,我们进一步提供了 SHAP 值可视化功能,用于解释模型做出评分决策的依据。由于模型文件及用于提取训练/微调特征的脚本均已公开在 GitHub 仓库中,有经验的用户还可使用自己的数据对我们的预训练模型进行微调。我们希望这一开放模型能够缩小技术差距,促进睡眠研究中从小鼠模型的数据采集向新发现的转化,同时减少繁重的人工工作量。
作者声明无利益冲突。
感谢 Kerena Yan 和 Jingwen Hu 手动评分睡眠阶段,以及 Eunah 和 Soonwiik 提供的记录。
| 姓名 | 公司 | 目录编号 | 评论 |
|---|---|---|---|
| Canonical Ubuntu 18.04 | Canonical | https://releases.ubuntu.com/18.04/ | IntelliSleep Scorer 软件支持的操作系统:Windows、Mac 或 Linux |
| Intel Core i7-8550U CPU @ 1.80 GHz 1.99 GHz;内存:24 GB | Intel Corp | https://www.intel.com/content/www/us/en/products/details/processors/core-ultra.html | 软件硬件要求:此处列出的两款 Intel Core 处理器均已用于数据处理。使用这两种硬件处理以 1000 Hz 采样的 12 小时记录均约需 10 分钟。任何类似或更优的硬件均可实现相当或更佳的性能表现。 |
| Intel Core i7-10610U CPU @ 1.80 GHz 2.30 GHz;内存:16 GB | Intel Corp | https://www.intel.com/content/www/us/en/products/details/processors/core-ultra.html | 软件硬件要求:此处列出的两款 Intel Core 处理器均已用于数据处理。使用这两种硬件处理以 1000 Hz 采样的 12 小时记录均约需 10 分钟。任何类似或更优的硬件均可实现相当或更佳的性能表现。 |
| LightGBM | Microsoft | https://lightgbm.readthedocs.io/en/latest/index.html | 基于机器学习的算法,用于训练该软件。 |
| MacBook Pro | Apple | https://www.apple.com/in/macbook-pro/ | IntelliSleep Scorer 软件支持的操作系统:Windows、Mac 或 Linux |
| Windows | Microsoft | https://www.microsoft.com/en-in/windows/?r=1 | IntelliSleep Scorer 软件支持的操作系统:Windows、Mac 或 Linux |