このコンテンツを視聴するには、JoVE 購読が必要です。 サインイン又は無料トライアルを申し込む。

この記事について

  • 要約
  • 要約
  • 概要
  • プロトコル
  • 結果
  • ディスカッション
  • 開示事項
  • 謝辞
  • 資料
  • 参考文献
  • 転載および許可

要約

コーディング経験のない研究者向けに、ダウンロードと操作でマウスの睡眠段階をスコアリングできるグラフィックユーザーインターフェースを備えたソフトウェアパッケージを提供します。

要約

げっ歯類の睡眠ステージスコアリングは、非急速眼球運動睡眠(NREM)、急速眼球運動睡眠(REM)、および覚醒の3つの段階を特定するプロセスです。睡眠ステージのスコアリングは、睡眠ステージ固有の測定と効果を研究するために重要です。

げっ歯類の睡眠パターンは人間の睡眠パターンとは異なり、覚醒によって間隔を空けてノンレム睡眠とレム睡眠のエピソードが短くなり、人間の専門家による従来の手動睡眠ステージスコアリングには時間がかかります。この問題に対処するために、これまでの研究では、機械学習ベースのアプローチを使用して、睡眠段階を自動的に分類するアルゴリズムを開発してきましたが、一般化可能性の高い高性能モデルは、一般に公開されておらず、費用がかからず、訓練を受けていない睡眠研究者にとってもユーザーフレンドリーではないことがよくあります。

そこで、大規模なデータセットで学習した機械学習ベースのLightGBMアルゴリズムを開発しました。コーディングの経験がない睡眠研究者がモデルを利用できるようにするために、このモデルに基づいてIntelliSleepScorer(v1.2-最新バージョン)というソフトウェアツールが開発されました。この原稿では、ソフトウェアを使用して、睡眠研究者向けのマウスの便利で効果的な自動睡眠ステージスコアリングツールをデモンストレーションするためのステップバイステップの説明を示します。

概要

げっ歯類の睡眠ステージスコアリングは、非急速眼球運動睡眠(NREM)、急速眼球運動睡眠(REM)、および覚醒2の3つのステージを特定する手順です。げっ歯類では、ノンレム睡眠は、筋肉活動の低下、ゆっくりとした規則的な呼吸、心拍数の減少、および脳波の低周波振動を特徴としています。げっ歯類のレムは、人間と同様に、筋緊張、脳波活性化、および急速な眼球運動を示しますが、げっ歯類では鮮明な夢の発生は人間と比較してあまり明確ではありません2,3。げっ歯類の「覚醒」状態は、高周波、低振幅波、筋緊張の増加、およびグルーミングや探索などの活動的な行動による脳活動の非同期化によって特徴付けられます4。これらの3つの段階は、脳波(EEG)および筋電図(EMG)信号5を検査することで特定できます。

げっ歯類の自動睡眠ステージスコアリングモデルは、非常に必要とされています。まず、人間の専門家による手動の睡眠ステージスコアリングは、労働集約的で時間がかかります。第二に、げっ歯類の睡眠パターンは人間の睡眠パターンとは異なり、人間の60〜120分とは対照的に、約10分間の覚醒によって間隔を空けるノンレム睡眠とレム睡眠のエピソードがより断片化されています6。したがって、手動スコアリング中にこれらの短い期間を特定することは困難です。60年代以降、げっ歯類の睡眠データの自動採点システムを開発する試みが数多く行われてきた7。多くの自動化されたげっ歯類の睡眠採点方法が存在しますが、そのパフォーマンスは8,9,10,11,12,13,14,15,16,17,18にばらつきます。重要なことは、一般化可能性が高く、高性能なモデルのほとんどが公開されていないか(一部は開発者からの特別なリクエストが必要)、睡眠研究者にとって無料ではないということです。

そこで、現在の技術ギャップを埋めるために、124マウスの519回の記録から得られた5776時間の脳波および筋電図信号の大規模なデータセットをLightGBMアルゴリズム1を用いて、機械学習ベースのモデルを開発しました。lightGBMは、勾配ブースティングアプローチを使用して決定木19を構築します。Wang et al., 2023 では、LightGBM モデル (8000 以上の決定木で構成) は 95.2% の全体的な精度と 0.91 の Cohen's κ を達成し、ロジスティック回帰モデル (精度 = 93.3%) とランダムフォレストモデル (精度 = 94.3%、κ = 0.89) などの広く使用されている 2 つのベースライン モデルを上回りました。モデルの全体的なパフォーマンスも、人間の専門家と同様のパフォーマンスを示しました。最も重要なことは、モデルが一般化可能性を持ち、元のトレーニングデータに過剰適合していないことが証明されていることです1:1) Miladinovic と同僚11 から公開されている他の 2 つの独立したデータセットで、サンプリング周波数とエポックの長さが異なる (精度 > 89%) ことが証明されました。2)モデルのパフォーマンスは、マウスの明暗サイクルの影響を受けません。3) 修正された LightGBM モデルは、κ ≥ 0.89 の 1 つの EEG と 1 つの EMG 電極のみを含むデータで良好に機能しました。4)テストには野生型マウスと突然変異マウスの両方を使用し、モデルの性能はどちらも正確でした。このことは、このモデルが、異なる遺伝的背景を持つマウスの睡眠段階をスコアリングできることを示唆している。

コーディングの専門知識を持たない睡眠研究者がこのモデルにアクセスできるようにするために、視覚的に直感的なインターフェースを備えたユーザーフレンドリーなソフトウェアツールであるIntelliSleepScorerを開発しました。このソフトウェアは、マウスの睡眠スコアリング手順を完全に自動化できます。これは、シグナル、ヒプノグラム、およびShapley Additive exPlanations(SHAP)の値を、European Data Format(EDF)/EDF+ファイル入力からインタラクティブに視覚化します。協調ゲーム理論に基づくSHAP値アプローチは、機械学習モデルの解釈可能性を向上させる20。このモデルには、グローバル SHAP 値とエポック レベルの両方の SHAP 値があり、モデル全体および各エポックのスコアリング決定にさまざまな特徴値がどのように寄与しているかが明らかになります。この高度なプログラムは、マウスの睡眠ステージスコアリングに必要な時間と労力を大幅に削減すると同時に、ダウンストリーム分析で高精度な結果に依存できるようにします。この原稿では、IntelliSleepScorer (v1.2) のステップバイステップの使用方法と、バージョン 1.0 からのいくつかの更新 (睡眠パターン予測とは別に SHAP 分析を実行するオプション、スリープ ステージ スコアリングのユーザー調整可能なエポック長、GUI に統合されたスリープ ステージの手動補正機能など) を紹介します。

プロトコル

本研究では、マウスを用いた in vivo 実験から得られたデータを用いた。この研究には人体実験は関与していません。動物を用いたすべての実験は、ブロード研究所の動物施設管理・使用委員会によって承認された。すべての実験は、関連するガイドラインと規制に従って行われました。この研究の焦点は、異なる治療グループを比較するのではなく、機械学習モデルを開発することであるため、ARRIVEガイドラインはこの研究には適用されません。

1. データの準備

注:データの互換性:記録されたデータは、40Hzを超える任意のサンプリングレートを持つことができます。ソフトウェアバンドパスは最初のステップでEEG信号とEMG信号をフィルタリングするため、信号をバンドパスフィルタリングする必要はありません。LightGBMモデルは、マウスからのデータを使用して開発およびテストされました。他のタイプの実験動物におけるLightGBMモデルの性能に関する証拠は入手できません。記録電極は、前頭葉と頭頂皮質に配置するか、EEGチャネルが1つしか記録されていない場合はどちらかに配置する必要があります。

  1. EDF/EDF+フォーマットの配置と要件
    注:この調査で使用したソフトウェアは、MNE-Pythonパッケージを使用してEDF/EDF+ファイルのみを読み取ります。EDF/EDF+ ファイルを生成するには、標準の EDF/EDF+ 仕様を適用する必要があります。標準仕様に加えて、EDF/EDF+ 注釈が UTF-8 でエンコードされていることを確認してください。そうしないと、ソフトウェアアプリケーションがクラッシュします。
    1. オンラインの無料ツールを使用して、別のファイル(非EDF / EDF +ファイル)形式をEDF / EDF +形式に変換します。
      注:EEGおよびEMG信号を取得する場合、装置フィルターは必要ありません。ユーザーが40Hz以上の周波数でEEGおよびEMGデータをサンプリングする限り、ソフトウェアは正しく機能します。これは、最初の前処理ステップで、信号が 1 Hz から 40 Hz のバンドパス フィルタリングを受けるためです。このバンドパスフィルタリングは、ソフトウェアの前処理パイプラインに統合されているため、ユーザーは追加の信号処理を実行する必要がありません。
  2. スコアリング用のソフトウェア内には2つのモデルがあります。1つはLightGBM-2EEG、もう1つはLightGBM-1EEGです。LightGBM-2EEGモデルは、2つのEEGチャネルと1つのEMGチャネルを持つデータを記録するために指定されています。モデルに応じて、次の手順を実行します。
    1. LightGBM-2EEGのデータファイルを特に次の順序で整理します:1)頭頂部に記録されたEEGチャネル。2) 前頭部に記録された脳波チャネル。3) EMGチャネル。LightGBM-1EEGは、1つのEEGチャネル(頭頂部または前頭部のいずれかに電極を配置する)と1つのEMGチャネルのみを含むデータ用に指定されています。
    2. LightGBM-1EEGのEDF / EDF +ファイルのチャネルを次の順序で整理します:1)EEGチャネル。2) EMGチャネル。

2. Windows、Mac、およびLinuxユーザー向けのIntelliSleepScorerのダウンロード

  1. Windowsユーザーの場合、ソフトウェアのWindows実行可能ファイルはPyInstallerを使用して利用できます。Pan groupの研究ページ https://sites.broadinstitute.org/pan-lab/resources でダウンロードリンクを見つけてください。MacOSまたはLinuxユーザーの場合は、GitHubリポジトリ https://github.com/broadinstitute/IntelliSleepScorer のソースコードを使用してソフトウェアを起動します。
  2. 記録された2つのサンプルデータにアクセスし、GitHubリポジトリからEDFファイルとしてダウンロードして、EDFファイルとして保存されたプログラムをテストします。
  3. ソース・コード・リポジトリには、サイズ制限のため、 models フォルダーは含まれていません。代わりに、 models.zipをダウンロードして解凍し、リポジトリ内の models フォルダーをコピーして、プログラムを実行します。そうしないと、モデルファイルが見つからないためにソフトウェアがクラッシュします。

3. ワークフローとプログラムの起動と運用

  1. IntelliSleepScorer を起動します
    1. Windowsでソフトウェアを起動するには、ルートフォルダにある IntelliSleepScorer.exe をダブルクリックします。MacOSまたはLinuxでソフトウェアを起動するには、ターミナルエミュレータを開き、ディレクトリをソフトウェアのルートフォルダに変更してから、 python3 IntelliSleepScorer.py コマンドを使用してソフトウェアを起動します。
  2. ソフトウェアが開いたら、[ Select EDF/EDF+ File(s)] をクリックして、スコアリングする目的のファイルを選択します。ファイルを誤って選択した場合は、[ クリア ]ボタンをクリックして、選択したファイルリストをクリアします。
    注:デフォルトでは、ソフトウェアはスリープステージを出力スコアファイルでWake:1、NREM:2、およびREM:3としてエンコードします。デフォルトのエポック長は 10 秒に設定されています。GUIの現在のバージョン(v1.2)では、ドロップダウンメニューを使用してステージエンコーディングまたはエポックの長さを4秒、10秒、または20秒に変更できます。
  3. 目的のエポックの長さを選択します。用意されているドロップダウンメニューを使用して、スリープステージスコアリングの4秒、10秒、20秒のオプションから目的のエポック長を選択します。
  4. 睡眠スコアリングに使用するモデルを選択します。LightGBM-2EEGは、2つのEEGチャネルと1つのEMGチャネルを持つデータファイルを対象としていますが、LightGBM-1EEGは、1つのEEGチャネルと1つのEMGチャネルを持つデータ用に設計されています。
  5. 睡眠ステージの予測を実行する前に、睡眠ステージの予測結果を説明するのに役立つ追加の SHAP 計算を含めます。SHAP計算を処理するには、[ SHAPの実行/プロット] チェックボックスをオンにします。SHAPの計算には、処理に約5〜10分かかります。
  6. [ すべてのファイルのスコアリング] をクリックします。このモデルでは、すべての EDF/EDF+ ファイルが自動的にスコアリングされ、グローバル SHAP 値とエポック SHAP 値が計算され、リスト内のスコアリング決定が解釈されます (そのように選択されている場合)。
    注:スコアリングプロセス中に、モデルは次のファイルを生成し、EDF/EDF+ファイルが配置されているのと同じフォルダーに保存します。モデルは、これらのファイルを使用して、グローバル SHAP 値とエポック SHAP 値をプロットします。

    "EDF/EDF+ ファイル名}_{model_name}_features.csv";このファイルには、抽出されたすべてのフィーチャ値が格納されます。
    "EDF/EDF+ ファイル名}_{model_name}_scores.csv";このファイルには、予測されたスリープ ステージが格納されます。
    "EDF/EDF+ ファイル名}_{model_name}_rs_100hz.npy";このファイルには、リサンプリング/ダウンサンプリングされた信号(100Hz)のコピーが格納されます。可視化速度を向上させるために、モデルは信号をプロットするときに元の信号の代わりにダウンサンプリングされた信号を使用します。
    "EDF/EDF+ ファイル名}_{model_name}explainer.ピクルス」;"{EDF/EDF+ ファイル名}{model_name}shap_500samples.pickle";"{EDF/EDF+ ファイル名}{model_name}_indicies_500samples.npy";
  7. 睡眠スコアリングプロセスが終了したら、 選択したファイルを視覚化 する EEG / EMG信号と信号に時間に合わせた催眠図を視覚化するオプション。
    1. エポックの長さが変更された場合は、視覚化する前に、選択したファイルを再度スコアリングします。

4. スコアリングされた結果のナビゲート

  1. 提供されている ナビゲーション ボタンをクリックして前後に移動し、さまざまなエポックデータを表示します。
  2. SHAP 計算を実行するように選択した場合は、グローバル SHAP 値とエポック レベルの両方の SHAP 値を表示します。エポックを右クリックして、エポックレベルのSHAP値をプロットします。
    注: エポックレベルのSHAPプロットの更新には数秒かかります。 図1 は、Example-1 EDF/EDF+ファイルの予測を1_LightBGM-2EEGモデルで実行した後のGUIページの概要を示しています。

5.スコアリングされた睡眠段階の解釈催眠術

注:催眠術には4つの行があります(図2)。一番上の行は予測結果です。下の3行は、それぞれ2つのEEGチャネルと1つのEMGチャネルの生データです。上段のオレンジ色は ウェイク 期、青色は ノンレム 期、赤は各エポックの レム 期を示しています。

  1. 表示するエポックの数を変更するには、[ 表示するエポック数を選択 ]の右側にあるメニューボックスをクリックし、目的の値を選択します。 図2では、100エポックを選択しました。そのため、睡眠段階の予測プロットには100エポックしか表示されません。ドロップダウンメニューで小さい数値を選択して、プロットを拡大します。
  2. 図 2 の左側にあるピンクの透明なバーは、エポックの現在の位置を示しています。催眠術の任意の場所を左クリックして別のエポックに切り替えるか、単に「エポックに移動」をクリックして観察する特定のエポック数を入力します。選択したエポックを右クリックして、そのエポックSHAPプロットを生成します(ユーザーがSHAP機能を有効にしている場合)。

6. GUIで予測されるスリープステージの手動修正(オプション)

注:異常が観察されない場合、またはレムステージの予測に非常に高い精度が必要ない場合は、手動での検証は必要ありません。

  1. 睡眠ステージ予測プロット(上のプロット)のエポックを左クリックして、特定のエポックを選択します。 選択したエポックのモデル予測ステージは、テキストの右側に表示されます。そのエポックの予測ステージを手動で変更するには、ウィジェットをクリックし、ドロップダウンメニューのウェイク、NREM、およびレムオプションから新しいステージを選択します。
  2. ユーザーが修正したステージは、元のプロットの上に破線でマークされています(図3)。GUIを閉じると、同じフォルダに修正された予測結果を含む新しいファイルが自動的に生成されます。
    1. 保存したスコアリング ファイルを GUI で再度開くには、エポックの長さの設定と選択したモデルが、EDF ファイルが最初に処理されたときに使用されたものと一致していることを確認して、再度開くことができるようにします。以前に変更/スコアリングされたすべての情報は、迅速にロードされます。

結果

睡眠ステージスコアリング後にGUIで生成される3つのプロット(SHAP値が実行されなかった場合は上のプロットのみ)があります:上のプロットは、EEGチャネルとEMGチャネルに睡眠ステージ予測のヒプノグラムを示します。中央のプロットは、エポックSHAP値を示しています。下のプロットは、グローバルSHAPの値を示しています(図1)。

ディスカッション

このホワイトペーパーでは、IntelliSleepScorer(v1.2)グラフィックユーザーインターフェースを使用してマウスの睡眠ステージを自動的にスコアリングする方法と、SHAP値/プロットを活用してモデルによって生成されたスリープステージスコアをよりよく理解する方法について説明します。

ソフトウェアを使用する際の重要な考慮事項は、データの互?...

開示事項

著者は、利益相反を宣言しません。

謝辞

睡眠ステージを手動で採点してくれたKerena YanとJingwen Hu、録音を担当してくれたEunahとSoonwiikに感謝します。

資料

NameCompanyCatalog NumberComments
Canonical Unbuntu 18.04Canonicalhttps://releases.ubuntu.com/18.04/Supporting Operating System for the software IntelliSleep Scorer: Windows, Mac, or Linux
Intel Core i7-8550U CPU @ 1.80 GHz 1.99 GHz; RAM: 24 GB Intel Corphttps://www.intel.com/content/www/us/en/products/details/processors/core-ultra.htmlHardware requirment for the software: Both Inte Core listed here have been used to process the data. It takes around 10 min to process 12 h of recording sampled at 1000 Hz for both hardwares. Any similar or superior hardware would yield comparable or better performance.  
Intel Core i7-10610U CPU @1.80 GHz 2.30 GHz; RAM: 16 GBIntel Corphttps://www.intel.com/content/www/us/en/products/details/processors/core-ultra.htmlHardware requirment for the software: Both Inte Core listed here have been used to process the data. It takes around 10 min to process 12 h of recording sampled at 1000 Hz for both hardwares. Any similar or superior hardware would yield comparable or better performance.  
LightGBMMicrosofthttps://lightgbm.readthedocs.io/en/latest/index.htmlMachine learning-based algorithm that was used to train the software. 
MacBook ProApplehttps://www.apple.com/in/macbook-pro/Supporting Operating System for the software IntelliSleep Scorer: Windows, Mac, or Linux
WindowsMicrosofthttps://www.microsoft.com/en-in/windows/?r=1Supporting Operating System for the software IntelliSleep Scorer: Windows, Mac, or Linux

参考文献

  1. Wang, L. A., Kern, R., Yu, E., Choi, S., Pan, J. Q. Intellisleepscorer, a software package with a graphic user interface for automated sleep stage scoring in mice based on a light gradient boosting machine algorithm. Sci Rep. 13 (1), 4275 (2023).
  2. Astori, S., Wimmer, R. D., Luthi, A. Manipulating sleep spindles--expanding views on sleep, memory, and disease. Trends Neurosci. 36 (12), 738-748 (2013).
  3. Fraigne, J. J., Torontali, Z. A., Snow, M. B., Peever, J. H. Rem sleep at its core-circuits, neurotransmitters, and pathophysiology. Front Neurol. 6, 123 (2015).
  4. Huber, R., Deboer, T., Tobler, I. Effects of sleep deprivation on sleep and sleep eeg in three mouse strains: Empirical data and simulations. Brain Res. 857 (1-2), 8-19 (2000).
  5. Brown, R. E., Basheer, R., Mckenna, J. T., Strecker, R. E., Mccarley, R. W. Control of sleep and wakefulness. Physiol Rev. 92 (3), 1087-1187 (2012).
  6. Lacroix, M. M., et al. Improved sleep scoring in mice reveals human-like stages. BioRxiv. 489005, (2018).
  7. Rayan, A., et al. Sleep scoring in rodents: Criteria, automatic approaches and outstanding issues. Eur J Neurosci. 59 (4), 526-553 (2024).
  8. Yamabe, M., et al. Mc-sleepnet: Large-scale sleep stage scoring in mice by deep neural networks. Sci Rep. 9 (1), 15793 (2019).
  9. Katsuki, F., Spratt, T. J., Brown, R. E., Basheer, R., Uygun, D. S. Sleep-deep-learner is taught sleep-wake scoring by the end-user to complete each record in their style. Sleep Adv. 5 (1), zpae022 (2024).
  10. Allocca, G., et al. Validation of 'somnivore', a machine learning algorithm for automated scoring and analysis of polysomnography data. Front Neurosci. 13, 207 (2019).
  11. Jha, P. K., Valekunja, U. K., Reddy, A. B. Slumbernet: Deep learning classification of sleep stages using residual neural networks. Sci Rep. 14 (1), 4797 (2024).
  12. Barger, Z., Frye, C. G., Liu, D., Dan, Y., Bouchard, K. E. Robust, automated sleep scoring by a compact neural network with distributional shift correction. PLoS One. 14 (12), e0224642 (2019).
  13. Miladinovic, D., et al. Spindle: End-to-end learning from eeg/emg to extrapolate animal sleep scoring across experimental settings, labs and species. PLoS Comput Biol. 15 (4), e1006968 (2019).
  14. Brodersen, P. J. N., et al. Somnotate: A probabilistic sleep stage classifier for studying vigilance state transitions. PLoS Comput Biol. 20 (1), e1011793 (2024).
  15. Akada, K., et al. A deep learning algorithm for sleep stage scoring in mice based on a multimodal network with fine-tuning technique. Neurosci Res. 173, 99-105 (2021).
  16. Rytkonen, K. M., Zitting, J., Porkka-Heiskanen, T. Automated sleep scoring in rats and mice using the naive Bayes classifier. J Neurosci Methods. 202 (1), 60-64 (2011).
  17. Kam, K., Rapoport, D. M., Parekh, A., Ayappa, I., Varga, A. W. Wavesleepnet: An interpretable deep convolutional neural network for the continuous classification of mouse sleep and wake. J Neurosci Methods. 360, 109224 (2021).
  18. Crisler, S., Morrissey, M. J., Anch, A. M., Barnett, D. W. Sleep-stage scoring in the rat using a support vector machine. J Neurosci Methods. 168 (2), 524-534 (2008).
  19. Ke, G., et al. Lightgbm: A highly efficient gradient boosting decision tree. Neural Information Processing Systems. , (2017).
  20. Lundberg, S. M., Lee, S. I. A unified approach to interpreting model predictions. , 4768-4777 (2017).

転載および許可

このJoVE論文のテキスト又は図を再利用するための許可を申請します

許可を申請

さらに記事を探す

NREMREMLightGBM

This article has been published

Video Coming Soon

JoVE Logo

個人情報保護方針

利用規約

一般データ保護規則

研究

教育

JoVEについて

Copyright © 2023 MyJoVE Corporation. All rights reserved