macでインフォマティクス

macでインフォマティクス

HTS (NGS) 関連のインフォマティクス情報についてまとめています。

非線形な低次元プロットを用いてデータパターンを可視化して調査するStreamlitアプリ GECO

 

 シーケンシング技術の継続的な進歩により、「オミクス」というレンズを通して生物学的システムを理解する上での限界は、もはやデータの生成ではなく、それを解析する能力にある。重要なことは、この豊富な「-omics」データの多くは一般に公開されており、さらなる調査が待たれているということである。多くのコードベースのパイプラインは存在するが、データの迅速な解析や可視化を可能にする、ユーザーフレンドリーでアクセス可能なアプリケーションが不足している。
 GECO (Gene Expression Clustering Optimization; http://www.theGECOapp.com) は、非線形削減技術を利用して、多くのタイプの生物学的データマトリックス(バルク RNA-seq やプロテオミクスなど)の発現傾向を迅速に可視化するミニマムな GUI アプリである。必要な入力は、サンプルとユニークなIDを持つ遺伝子/タンパク質/その他の任意のタイプの発現レベルを持つデータマトリックスである。出力は、複数のサンプルの発現パターンに基づいて遺伝子(またはタンパク質/その他のユニークなID)をクラスタリングし、発現傾向の可視化を可能にするインタラクティブなt-SNEまたはUMAP解析である。次元削減、データの正規化、色付けやフィルターなどの可視化パラメータのカスタマイズ設定により、ユーザーがアップロードした様々なデータに適応できるようになっている。
 このローカルでクラウド型のWebブラウザアプリは、コードに依存しない方法で、あらゆる-omicデータマトリックスを迅速に調査することができる。利用可能な-omicデータが増え続ける中、関心のある特定の遺伝子を含むデータセットを迅速に評価する能力は、これまで以上に重要になってきている。GECOは、従来の統計解析手法を補完することを目的としており、多くのサンプル(例:複数の細胞タイプ、タイムコース、dose response)で類似した軌跡を持つ遺伝子のクラスタを可視化する場合に特に有用である。ユーザーは、関心のある遺伝子、共制御された遺伝子プログラムのコホート、これまで検出されなかった発現パターンを明らかにする可能性のある可視化と解析の新しいレンズを使って、-omicデータを調査することができるようになる。

 PCA(主成分分析)、t-SNE(t-distributed Stochastic Neighbor Embedding)、UMAP(Uniform Manifold Approximation and Projection)など、いくつかの教師なしアプローチが機械学習から借用されている。PCAは、線形次元削減法を用いてデータの関連性を調査する数学的アプローチである。本質的には、PCAはデータを、データポイントが互いにどのように関連しているかを示す固有ベクトルに削減する。支配的な2つの主成分は、通常、最大の分散に基づいてデータを分離することができる。PCAは複雑なデータを迅速に削減することができるが、PCAを使用して高次元のデータを可視化するには限界がある[ref.14, 15]。t-SNE や UMAPのような確率的アプローチを用いた非線形次元削減は、低次元空間での複雑多次元データの可視化をよりよく可能にする。これらの技術は、機械学習アプリケーションのためにコンピュータ科学者によって開発されたものだがが、拡大するシングルセルomicデータの分析において、顕著な存在感を示している。これらの非線形次元削減技術は、データの複雑さをより良く維持し、重要なことに、データ点の近さは、これらの点間の関連性についての結論を引き出すために使用することができる。以前のpublicationでは、線形次元削減よりも非線形次元削減の価値と有用性、およびパラメータをカスタマイズして最適化する能力が示されている。

 ここでは、生物学的データマトリックス(バルクRNA-seq、シングルセルRNA-seq、またはプロテオミクスなど)の発現傾向を可視化するために非線形削減技術を利用した最小限のGUIアプリであるGECO(Gene Expression Clustering Optimization)を紹介する。必要な入力は、サンプルと任意のタイプの遺伝子/タンパク質/その他のユニークなIDの発現レベルを持つデータマトリックスである。出力はインタラクティブな t-SNE または UMAP グラフィカル表示で、サンプル間の発現パターンに基づいて遺伝子(またはタンパク質/ユニーク ID)をクラスタリングし、トレンドの可視化を可能にする。プロット上の各データポイントは1つの遺伝子/タンパク質/その他のユニークIDで、他のデータポイントとの相対的な位置と位置を決定するために、すべてのサンプルの発現パターンを使用する。

 

GECO Demo in 3 minutes:

 

インストール

Github

git clone https://github.com/starstorms9/geco.git
cd geco/
conda env create -f environment.yml
conda activate geco

 

動画のマニュアルも用意されているので、簡単に流れだけ確認します。

webサービス

https://share.streamlit.io/starstorms9/geco/master/geco_app.py/+/ にアクセスする。

f:id:kazumaxneo:20210126223421p:plain

 

CSV形式の入力ファイルを用意する必要がある。

example.csvexcelで開いた(カンマ区切りのファイル)。

f:id:kazumaxneo:20210127211701p:plain

1列目には、このデータセットのユニークな ID (遺伝子、アイソフォーム、タンパク質、またはその他の識別子)が含まれている必要がある。サンプル名は1行目に記載し、生物学的複製は各サンプル名の後に'_番号'で表示する。上の例だと"Stem_1,Stem_2,Stem_3"。NA' エントリは不明と解釈され、それらの行全体が削除される。
数値以外の値を持つ行を含める必要がある場合、NA値を手動で入力して置き換える必要がある。例えば、数値以外の値をゼロに置き換えたり、NAをサンプルの平均値に置き換えたりする。

さらにオプションでキュレーションされたマーカーのリストを.csvファイルとして提供する(help参照)。

Generate reduced dataでCSV ファイルを指定する。

f:id:kazumaxneo:20210127213229p:plain


読み込まれた。2つ重複IDが見つかり除外された。

f:id:kazumaxneo:20210127213226p:plain

 

Reduction algorithm、距離法、他のパラメータを指定していく。

f:id:kazumaxneo:20210127213506p:plain

 

すべてのゼロを含むエントリを削除すると、すべてのゼロを含むエントリが単純に無視される。Normalize per gene (row) - この関数は、指定された行の各エントリを行全体の合計で分割するため、全体の発現レベルに依存しないサンプル間の傾向を調査することができる。

f:id:kazumaxneo:20210127213853p:plain

最後に一番下のRun UMAP reductionをクリック。計算が終わるまでしばらく待つ。

 

視覚化された。

f:id:kazumaxneo:20210127213805p:plain

color data Typeを変更

f:id:kazumaxneo:20210127220207p:plain

 

引用

GECO: gene expression clustering optimization app for non-linear data visualization of patterns

A. N. Habowski, T. J. Habowski & M. L. Waterman
BMC Bioinformatics volume 22, Article number: 29 (2021)