AIエージェントによるRNA-Seq解析が容易になるほど、結果の検証が重要になる|MedgeClawとSubio Platformを相補的に利用するために

  • Gene Expression
  • High-Throughput Sequencing

AIに質問しながらRやPythonのコードを作成するだけでなく、 AI自身にコードやコマンドを実行させる「AIエージェント」が登場しています。 MedgeClawは、 RNA-Seqをはじめとするバイオインフォマティクス解析を支援する、 オープンソースのAIエージェント環境です。 チャットから解析を依頼すると、 AIがRやPythonを使って処理を実行し、 生成されたコード、図、表などを RStudio、JupyterLab、Research Dashboardで確認できるように設計されています。

生成されたスクリプト、CSV、図、途中経過を確認できるため、 結果だけを返す完全なブラックボックス型サービスよりは透明性があります。 ダッシュボードでは各ステップのコードや出力を表示する設計です。 Docker内にR、Python、RStudio、JupyterLabをまとめるため、 パッケージ環境をある程度統一できます。 これらは、解析の再現性やコードの検証性を意識した設計といえます。

ただし、 AIエージェントによってRNA-Seq自動解析が容易になっても、 解析そのものが妥当であることも、 各解析結果が互いに整合していることも、 自動的に保証されるわけではありません。

そこで、この記事では、 MedgeClawでRNA-Seq解析を実行した後、 Gene Countsとサンプル情報を出力し、 Subio Platformで データと解析結果を確認する流れを紹介します。 また、自分だけでは判断が難しい場合に、 解析のセカンドオピニオンを利用する方法についても説明します。

MedgeClawとは

MedgeClawは、 OpenClaw、Claude Code、科学研究向けSkills、 R・Pythonの解析環境などを組み合わせた、 生物医学研究向けのAIエージェント環境です。 公式リポジトリでは、 WhatsApp、Slack、Discordなどから研究内容を指示し、 AIが解析を実行した後、 結果をResearch Dashboard、RStudio、JupyterLabなどで確認する構成になっています。

R環境には、 DESeq2、edgeR、Seurat、clusterProfilerなど、 生物学的データ解析で広く利用されているパッケージを含めることができます。 Python環境も利用できるため、 RNA-Seq、single-cell RNA-Seq、臨床統計、創薬関連解析など、 さまざまな処理への対応が想定されています。 MedgeClawは新しいRNA-Seq解析アルゴリズムというより、 既存の解析ツールやパッケージをAIから操作するための統合環境です。

AIにコードを書かせるだけでなく、解析まで実行できる

通常の生成AIを利用したRNA-Seq解析では、 AIに解析方法を質問し、 生成されたRまたはPythonコードをコピーして自分の環境で実行し、 エラーが発生した場合にはAIへ戻して修正する、 という作業を繰り返します。

MedgeClawでは、 AIがコードを提案するだけでなく、 解析環境内でコードやコマンドを実行し、 結果ファイルを生成することを目指しています。 例えば、Gene Countsとサンプル情報を渡し、 次のように指示できます。

counts.tsvとsample_information.tsvを使用して、
Treatment群とControl群のRNA-Seq発現差解析を実行してください。

サンプル情報を確認し、
適切な比較モデルを作成してください。

解析に使用したコード、
正規化前後のデータ、
PCA、
発現差解析結果、
主要な図を保存してください。

AIエージェントが正常に機能すれば、 データの読み込み、 解析コードの作成、 コマンドの実行、 結果ファイルの保存までを連続して進められます。 従来は人間が手作業でつないでいた工程の多くを、 自然言語による指示から実行できる可能性があります。

このようなAIツールの登場と発展により、 「RNA-Seqデータ解析を学ぶ」ということの意味も変わっていくでしょう。 これまでの「各種ツールを実行できるようになる」ことから、 「問い、手順、結果の妥当性について考える」ことへ、 学ぶべき内容の中心を移していく必要がある と考えられます。

ただし、解析の妥当性を保証する仕組みではない

MedgeClawは解析を自動実行できますが、 生成された解析結果が研究目的やデータに対して妥当であることを 保証する仕組みではありません。 また、個々のツールの使い方が妥当であっても、 各解析結果のつながりや、 結果どうしを関連付けて解釈することの整合性まで 保証されるわけではありません。 これはMedgeClawだけに特有の問題ではなく、 AIエージェントや自動解析パイプライン全般に共通する問題です。

例えば、解析コードがエラーなく実行され、 DESeq2やedgeRなどの一般的な方法から結果が出力されたとしても、 次のような問題は別に残ります。

  • 比較群の設定は適切か
  • paired designを考慮する必要はないか
  • 低Counts遺伝子の除外条件は適切か
  • 外れて見えるサンプルを除外してよいのか
  • 同時に生成されたPCA、ヒートマップ、DEG解析結果を関連付けて解釈してよいのか
  • バッチ効果と生物学的な差異を区別できているか
  • 検出された有意差が、測定上の偏りによって生じていないか

このような検証は、すべて解析者の責任によって行われなければなりません。

そのため、解析を自動実行できるようになっても、 解析結果を人の目で検証するためのツールは依然として必要です。 Subio Platformは、このような用途に適しています。

Subio Platform用のGene Countsとサンプル情報を出力する

MedgeClawで解析したデータをSubio Platformで確認するには、 少なくとも、 全遺伝子と全サンプルを含むGene Countsの表と、 サンプル名と実験条件の対応表を、 MedgeClawからタブ区切りテキストとして出力する必要があります。

ただし、MedgeClawが、 Subio Platformのインポート仕様や、 利用者が確認したい値を正確に理解しているとは限りません。 単に「Subio Platformで解析できるファイルを出力してください」と指示した場合、 発現差解析前にフィルタリングした遺伝子だけを出力したり、 raw Countsではなく正規化後の値を出力したり、 全遺伝子ではなくDEGsだけを選択したりする可能性があります。

そのほかにも、 Countsを丸める、 Ensembl Gene IDのバージョン番号を削除する、 同じGene Symbolを持つ遺伝子を合算する、 サンプル名をRで扱いやすい形式へ自動変換する、 Condition以外のBatch、Time、Patientなどの情報を落とす、 といった処理が行われる可能性があります。 Gene IDやサンプル名を変更してよいか、 欠損値や重複値をどのように処理するかについても、 あらかじめ指定しておく方が安全です。

どの値を出力するかだけでなく、 どのような処理を行ったかを可能な限り具体的に報告するよう 指示することも重要です。 以上を踏まえると、例えば次のようなプロンプトを使用できます。

このRNA-Seq解析で使用したデータから、
次のタブ区切りファイルを作成してください。

1. Gene Countsの全遺伝子・全サンプルを含む表

- 1行目:タイトル行。1列目は"Ensembl Gene ID"、2列目以降はSample ID
- 2行目以降:データ行。1列目は各遺伝子のEnsembl Gene ID、2列目以降は各サンプルのGene Counts
- フィルタリング前の全遺伝子を含める
- 未正規化・未処理のGene Countsを保持する
- 小数を含む場合も、丸めたり整数へ変換したりせず、元の値をそのまま保持する
- 0はそのまま0として出力する
- NA、空欄などの欠損値がある場合は、値を推測または補完せず、欠損値として出力する
- 出力ファイル名:gene_counts.txt

2. サンプル名と実験パラメーターの対応表

- 1行目:タイトル行。1列目は"Sample ID"、2列目以降はパラメーター名
- 2行目以降:データ行。1列目は各サンプルのSample ID、2列目以降は各サンプルのパラメーター値
- Gene Counts表と完全に同じサンプル名を使用する
- Condition、Treatment、Time、Batch、Patientなど、利用可能な実験情報を省略せず含める
- 出力ファイル名:sample_parameters.txt

出力前に、次の点を確認してください。

- 二つのファイルのサンプル名が完全に一致する
- 重複したサンプル名がない
- Gene IDが重複していない
- 遺伝子数、サンプル数、パラメーター数を報告する
- 実施したデータ加工の内容をすべて報告する

Gene Countsの出力例は、次のようになります。

Ensembl Gene ID	Control_1	Control_2	Treatment_1	Treatment_2
ENSG00000141510	1254	1388	975	1042
ENSG00000146648	438	502	1620	1715
ENSG00000157764	82	75	390	421

サンプル情報の出力例は、次のようになります。

Sample ID	Condition	Treatment	Time	Batch
Control_1	Control	Vehicle	24h	Batch1
Control_2	Control	Vehicle	24h	Batch1
Treatment_1	Treatment	DrugA	24h	Batch1
Treatment_2	Treatment	DrugA	24h	Batch1

自動解析の内容も報告させる

Gene Countsとサンプル情報をSubio Platformで確認する際には、 MedgeClawが自動解析で行った処理についても、 できるだけ詳しく報告させるとよいでしょう。 何の値を含むデータから出発し、 どのような前処理やフィルタリングを行って 各解析結果を作成したのかが分からなければ、 Subio Platformで確認または再解析した結果との違いが生じても、 その理由を正しく判断できません。

さらに、この自動解析について、
各解析・出力ごとに次の情報を報告してください。

- 解析または出力の名称
- 使用した入力ファイル
- 入力値に対して実施した前処理および正規化方法
- 除外した遺伝子と、その除外条件
- 除外したサンプルと、その理由
- 使用した解析ツールと解析オプション
- 解析または可視化に使用した値
- 可視化に使用したデータ変換と表示条件
- AIが判断して選択した条件と、その理由
- 確認できなかった点や、判断に不確実性がある点

以上をanalysis_report.txtとして保存してください。

この情報を参照しながら、 Subio PlatformでGene Countsの分布、 サンプル間の関係、 フィルタリング前後の変化、 PCA、クラスタリング、個別遺伝子の発現パターンなどを確認します。

Subio Platformで確認する目的は、 MedgeClawが実行した解析を、 単に同じ手順でもう一度実行することではありません。 たとえば、次のようなことを確認します。

  • サンプルごとのCountsの分布が大きく異なっていないか
  • その違いがDEG解析やクラスタリングの結果に影響していないか
  • サンプル間のばらつきがグループごとに大きく異なっていないか
  • 低Counts由来の不安定さが解析へ大きな影響を与えていないか
  • PCAやクラスタリングが実験条件と対応しているか
  • 一部のサンプルだけが他のサンプルから離れていないか
  • ConditionとBatchが重なっていないか
  • フィルタリング条件によって結果が大きく変化しないか

異なる方法でも同じ傾向が確認できれば、 結論の頑健性を支持する材料になります。 一方で、現実のRNA-Seqデータ解析では、 データそのものの特徴や解析結果によって、 人間の解析者でも判断が分かれる場面があります。

そのような場合には、 判断が分かれる理由と、 それぞれの解析が前提とする考え方を明らかにしたうえで、 複数のシナリオに基づく解析を行い、 結果を比較する必要があります。 例えば、外れて見えるサンプルを技術的な異常として除外する場合と、 生物学的なばらつきとして残す場合では、 異なる解析結果が得られる可能性があります。

しかし、複数の解析結果を比較しても、 どの前提が正しいかをデータだけから決定できるとは限りません。 現実には、研究目的、実験内容、データの特徴、 そして各結果をどのように評価するかに基づいて、 解析者の判断によって解析方針を選ばざるを得ないことが多くあります。 このような判断はAIにはできないため、 人間の解析者が引き受けなければなりません。 解析結果についても、 選択した前提から独立した客観的な事実として扱うのではなく、 どのような前提と判断のもとで得られた結果なのかを踏まえて 解釈する必要があります。

Subio Platformについて

RNA-Seqデータ解析チュートリアル

判断が難しい場合は、解析結果を共有して第三者に相談する

AIエージェントが生成した解析結果について、 別の解析方法でも同じ傾向が得られるか、 比較条件や前処理に見落としがないかを、 第三者の視点から確認したい場合もあります。

Subio Platformでは、 取り込んだデータ、サンプル情報、正規化やフィルタリングの設定、 作成した解析結果などをSSAファイルとして保存できます。 このSSAファイルを共同研究者や解析担当者と共有すれば、 同じデータと解析状態をSubio Platform上で確認しながら、 解析方針や結果の解釈について相談できます

図や解析結果だけを共有する場合とは異なり、 SSAファイルでは元のデータへ戻り、 フィルタリング条件を変更したり、 別の解析結果を作成したりしながら検討できます。 そのため、どの前提で結果が作られたのかを確認し、 複数の可能性を比較するためにも利用できます。

共同研究者などに相談しても判断が難しい場合や、 解析結果を第三者の視点からあらためて検証したい場合には、 Subioの データ解析サービス をご利用いただけます。

このサービスでは、 Subio Platformで作成したSSAファイルをそのままお送りいただき、 ファイルに保存されているデータや解析内容を確認したうえで、 解析のセカンドオピニオンを依頼できます。 また、Gene Countsをお送りいただき、 Subioで解析した結果と、 MedgeClawなどのAIエージェントで得られた解析結果を 比較して確認する用途にも利用できます。

ウェブ会議で一緒に確認することもできます

直接相談したい場合には、 オンライントレーニング をご利用ください。 最大3時間、画面を共有していただきながら、 解析結果やデータを一緒に確認します。

AIエージェントとSubio Platformは競合するものではない

MedgeClawのようなAIエージェントと、 Subio Platformのような可視化・解析環境は、 どちらか一方が他方を置き換えるものではありません。 それぞれが得意とする役割は異なります。

  • MedgeClawは、コードの作成、解析の実行、ファイルの整理を支援する
  • Subio Platformは、データの全体像と解析結果の確認を支援する
  • 解析サービスは、判断が難しい結果を第三者の視点から検証する
  • 解析方針の選択と最終的な解釈は、研究目的と実験内容を理解する人間が行う

AIに解析の実行を任せながら、 人間が元のデータと解析結果を確認できる状態を維持することが、 両者の相補的な利用方法です。

解析の透明性だけでは、解析の質は担保されない

オミクスデータを使用した論文を発表する際に、 生データをGEOなどの公的データベースへ登録することが 求められてきた背景には、 第三者が元のデータへ戻り、 解析結果を検証できるようにするという目的もありました。

しかし、生データが公開されていても、 そこから解析をやり直すには、 多くの手間と時間に加えて、 データ処理や統計解析に関する知識が必要です。 実際には、そのような検証を行える人が限られていたため、 生データの公開が、 必ずしも解析の質を実質的に担保する仕組みとして 機能してきたとはいえません。

同じ問題は、 解析スクリプトの公開や、 Dockerなどによる解析環境の固定化にも当てはまります。 スクリプトを実行して同じ結果を再現できたとしても、 比較の設定、前処理、フィルタリング、統計手法、 各解析結果のつながりが妥当であることまで 確認できるわけではありません。 その中身を精査するには、 やはり手間と時間、 そしてデータ解析を理解する能力が必要です。

したがって、生データ、スクリプト、解析環境を公開することは重要ですが、 それだけでは解析の質を担保できません。 この問題に対する根本的な対策は、 公開されたデータや解析内容を検証し、 その妥当性を判断できる人を増やすことです。

AIによって解析の実行が容易になるほど、 どのデータを使い、 どのような前提で解析し、 その結果をどこまで解釈できるのかを考える能力の重要性は、 むしろ大きくなります。

Ai Agent Baby Controlling Spaceship