Slide 1

Slide 1 text

Snowflakeで実現する All-in-One Bioinformatics Platform 2024年7月10日 17:00 Bio"Pack"athon 2024 #7 Tatsuya Koreeda インシリコ創薬、疾患バリアント解析、シングルセル RNA-seqまで

Slide 2

Slide 2 text

2 Agenda イントロダクション 今回やる解析 ● Snowpark Container ServiceでシングルセルRNA-seq ● VCFデータの格納とアノテーション情報をつけてバリアント解析 ● Snowflake NotebooksとStreamlitを用いたIn silico創薬 Snowflakeのその他トピック 将来の展望

Slide 3

Slide 3 text

イントロダクション

Slide 4

Slide 4 text

4 増え続けるバイオデータ SRAデータの容量 2007年5月:47.04 GB 2024年2月:27.93 PB 62万倍 https://www.ncbi.nlm.nih.gov/sra/docs/sragrowth/ シーケンシング技術の進歩によりゲノム データの 生成速度が急速に増加 。データの 生成コストも劇的に低下 している

Slide 5

Slide 5 text

5 多岐に渡るバイオデータの種類 reference image: https://www.semanticscholar.org/paper/The-European-Bioinformatics-Institute%E2%80%99s-data-2014-Brooksbank-Bergman/1 c11992577c22af41ef1e861656d146fdd5d0f53 DNA, RNA, エピゲノム , タンパク質、タ ンパク質や化合物の構造情報、相互作 用情報などバイオデータの種類は多く 容量が大きくなる バイオデータを管理するための、 ス トレージコストと管理コストの増大が 課題

Slide 6

Slide 6 text

6 学術利用に使われる主なコンピュートリソース種類 ラボPC(オンプレミス) メリット データが内部に保持されるため、 機密性の高いデータを扱うのに最 適ハードウェアとソフトウェアを 自由にカスタマイズできる デメリット ハードウェア、ソフトウェア、施設の構築など 高額な初期投資が必要。 アップグレードや修理など維持管理が困難で、専任のITスタッフが必 要。 スパコン メリット 高い計算能力を提供し、 大規模で複雑なシミュレーションやデータ解 析に最適。特定の計算タスクに特化したシステム設計が可能で、 性 能の最適化が容易。 デメリット 利用には予約が必要であり、使用時間に制約がある場合があり。 The image of server and computer is from TogoTV (© 2016 DBCLS TogoTV, CC-BY-4.0https://creativecommons.org/licenses/by/4.0/deed.ja

Slide 7

Slide 7 text

7 クラウド インターネット経由でアクセスするサーバーと そうしたサーバー上で実行されるソフトウェア やデータベース 仮想化によって、シミュレートされたデジタル のみの「仮想」コンピューターが作成され、あ たかもハードウェアを持つ実際の物理的なコ ンピューターであるかのように動作します。 (cloudflare HPより引用) https://www.cloudflare.com/ja-jp/learning/cloud/what-is-the-cloud/

Slide 8

Slide 8 text

8 クラウドで解析するメリット スケーラビリティと柔軟性 クラウドサービスは、必要に応じて計算リソー スを動的に拡張または縮小することができま す。 コスト効率 使用したリソースに対してのみ料金が発生す る従量課金制。また、ハードウェアの保守や更 新のコストもクラウドプロバイダーに含まれて いる。 自動化と効率化 さまざまな自動化ツールやサービスを提供し ており、データ処理パイプラインの自動化や ワークフローの効率化が可能。 データの共有とコラボレーション データや解析結果を簡単に共有することがで き、複数の研究者やチームが同時にアクセス して共同作業を行うことが可能。 セキュリティとコンプライアンス データの暗号化、アクセス制御、監査ログな ど、機密性の高いバイオデータを安全に管理 できる。 高性能コンピューティング 高性能コンピューティング( HPC)クラスターを 迅速に構築して、大規模なシミュレーションや データ解析が可能。

Slide 9

Slide 9 text

9 データウェアハウス製品 社内データを一元管理できるビッグデータ用のデータレイク 。最近は、AI・LLM機能も充実しており データ解析も可能となっている。データを外に出すことなくクラウド上で セキュアにデータ共有 も可能

Slide 10

Slide 10 text

10 Snowflake reference image: https://www.snowflake.com/blog/beyond-modern-data-architecture/ クラウドベースのAI・コンピュートリソースといったビックデータに関わるオール・インプラットフォーム

Slide 11

Slide 11 text

11 Snowflakeの主な特徴① 伸縮性のある高性能エンジン ● 複雑なデータパイプライン、大規模アナリ ティクス、特徴量エンジニアリング、アプリ ケーションを自動でスケール ● 即時かつコスト効率の良いスケーリング で、性能に影響を与えることがない ● SQLを始め、Python、Java、Scala用 Snowpark開発者フレームワークが用意さ れている reference image: https://www.snowflake.com/ja/data-cloud/platform/?utm_cta=websi te-homepage-platform-card-elastic-compute

Slide 12

Slide 12 text

12 Snowflakeの主な特徴② 最適化されたストレージ ● PDFなどの非構造化データも一元的に管 理可能 ● 最適化された圧縮、自動マイクロパーティ ション、ACIDコンプライアンス、Time Travelなどを活用 ● オープンテーブル形式(Iceberg Tableな ど)が利用可能 reference image: https://www.snowflake.com/ja/data-cloud/platform/?utm_cta=website-ho mepage-platform-card-elastic-compute

Slide 13

Slide 13 text

13 Snowflakeの料金コスト https://www.snowflake.com/legal-files/CreditConsumptionTable.pdf 課金方式 従量課金 (On Demandの場合) 計算方法 主にwarehouseの稼働時間 + ストレージ容量で決まる コスト 0.047ドル/minutes (AWS Tokyo Standard)

Slide 14

Slide 14 text

14 今回Snowflake上で行う解析 1. Snowpark Container Serviceでシングルセル RNA-seq 2. 公共データベースから VCFファイルのアノテーション付けと バリアントフィルタリング 3. Snowflake Notebooks + StreamlitでIn silico創薬

Slide 15

Slide 15 text

Snowpark Container Serviceでシングルセル RNA-seq

Slide 16

Slide 16 text

16 Snowpark Container Service(SPCS) ● Snowflake エコシステム内でコンテナ化さ れたフルマネージドのコンテナ製品 ● Docker など)を使用して、アプリケーショ ン イメージを Snowflake に簡単にアップ ロードできる ● 外部にデータを移すことなく、 Snowflake 上で直接アプリを動かせる https://docs.snowflake.com/en/developer-guide/snowpark-container-services/overview Snowpark Container Serviceの特徴

Slide 17

Slide 17 text

17 Snowpark Container Serviceの使い方 1. COMPUTE POOLを作成し INSTANCE_FAMILY で CPUやGPUスペック を定義する 2. Specを定義し、リソースの詳細な仕様を記述 する 3. Service作成する コードの流れ

Slide 18

Slide 18 text

18 SPCS上にRstudioをホストしてシングルセル RNA-seq解析 1. ローカルで Rstudio ServerのDocker imageを作成し、 snowflakeのイメージレ ポジトリにプッシュ 2. プッシュされたイメージを下に snowpark container service上でサービスを作成。 エンドポイントが払い出される。 3. 指定エンドポイントの Rstudio Server環 境を使って Seuratによる解析を実施 解析手順

Slide 19

Slide 19 text

19 使用するDocker Image 
 Rocker Projectにより作成された Rstudio Serverのベースイメージ シングルセル RNA-seq向けに拡張させたイメージ (docker pull kinngut/single-cell:latest で使え ます)

Slide 20

Slide 20 text

20 Snowpark Container Serviceでシングルセル RNA-seq
 single-cell RNA sequencing 個々の細胞内の遺伝子発現パターンを研究するために使用される方法です。これにより、細胞集団内の個々の細胞での遺伝子発現を分 析することができます。今回はINF-βで刺激されたサンプルを用いてSeuratでUMAPプロットを書いてみようと思います。 
 10 X genomics format Seurat DataからSeuratObjectを ロードして解析をする Stephanie Hicks「Welcome to the World of Single-Cell RNA-Sequencing」

Slide 21

Slide 21 text

21 解析に用いるコード 1. データの準備 SeuratDataライブラリをロードし、データ を読み込む 2. 次元削減とクラスタリング データをフィルタリングし、正規化、変数 特徴の抽出、スケーリング、 PCA、 UMAP、クラスタリングを実行 3. クラスタリング結果をプロット UMAPの結果をDimplotで可視化する 処理の流れ

Slide 22

Slide 22 text

22 結果 Seurat DataからSeuratObjectをロードして解析をして UMAPプロットの描画に成功


Slide 23

Slide 23 text

23 RNAseqchef(shiny-app)のホスト - https://github.com/Kan-E/RNAseqChef/tree/v1.0.0 RNA-seq解析により得られたカウント データを自動的に解析・可視化する ツール 単一のデータセットの解析のみなら ず、複数のデータセットの統合解析が 直感的な操作のみで可能 RNAseqchef shiny-applicationがSPCSに問題なくホスト可能 = 多くの生命科学系ツールの snowflakeでの利用が可能


Slide 24

Slide 24 text

24 Snowpark Container Serviceのコスト https://docs.snowflake.com/en/developer-guide/snowpark-container-services/overview 課金方式 主に使用時間による従量課金。 XSサイズの最低スペックで 0.31ドル/hour

Slide 25

Slide 25 text

25 Snowpark Container Serviceで用意できるスペック Mapping 
 vCPU
 Memory (GiB) 
 Storage (GiB) 
 GPU
 GPU Memory (GiB) 
 CPU / XS~L 
 2~32
 8~128 
 250
 該当なし
 該当なし
 ハイメモリCPU / S,M,L 
 8~128 
 64~1024 
 250
 該当なし
 該当なし
 GPU / S 
 8
 32
 250
 1 NVIDIA A10G 
 24
 GPU / M 
 48
 192
 250
 4 NVIDIA A10G 
 96
 GPU / L 
 192
 2048
 250
 8 NVIDIA H100 
 640
 スペック CPUメモリは1024GiBまで拡張可能。 NVIDIA GPU使用可能。

Slide 26

Slide 26 text

公共データベースの外部ステージ登録と VCF データのアノテーション付け

Slide 27

Slide 27 text

27 Tableと外部ステージ ● Tableはデータを構造化する基本単位。 snowflakeのtableはマイクロパーティ ション、クラスタリングを自動で行ってくれ る ● AWS S3などを外部のストレージとして統 合することが可能 ● SQLでのデータスクリーニングやアノテー ションが可能 https://docs.snowflake.com/ja/user-guide/data-load-s3 Tableと外部ステージの特徴

Slide 28

Slide 28 text

28 Registry of Open Data on AWS https://registry.opendata.aws/ ● AWS(Amazon Web Services)が提供 する研究者、データサイエンティスト向け の公開データセットのカタログ ● S3バケットにデータが格納されている ● オープンデータの利用促進とコミュニティ の形成を目的としている Registry of Open Dataの特徴

Slide 29

Slide 29 text

29 公共データの外部ステージ登録と VCFデータのアノテーション付け 1. Open Data RegistryのDRAGEN 1000-Genomesプロジェクトの8人 分ゲノムデータが入った S3を外部 ステージ登録する 2. snowflakeのテーブルに取り込む 3. Panelの情報が入ったS3を外部ス テージ登録し、アノテーションを実行 する 解析の流れ

Slide 30

Slide 30 text

30 DRAGENのS3を外部ステージ登録 外部ステージの作成 S3のURI (s3://1000genomes-dragen-3.7.6/data /individuals/hg38-graph-based)を Snowflakeのステージに登録する SQLでS3に入っているデータセットを確 認できる(DIRECTORY関数)

Slide 31

Slide 31 text

31 DRAGENをsnowflakeのテーブルに取り込みクエリをする テーブルの定義・作成 DRAGENを取り込むためのテーブルを定義する。テーブルは Snowflakeでパフォーマンス最適化されているの でSQLでデータ確認が高速で可能。

Slide 32

Slide 32 text

32 Panelのアノテーション情報をつける準備 Panel 表現型データで各サンプルの地理的起 源と性別、およびサンプル間の家族連鎖 を記述したもの Panelの入ったS3のURI (s3://1000genomes/1000G_2504_hig h_coverage/additional_698_related/) をSnowflakeのステージに登録する

Slide 33

Slide 33 text

33 バリアントフィルタリング DRAGENとPanelデータを統合 左の例は、特定の人口統計条件(今回 は、イギリスの女性)の人々について、指 定されたクロマソーム(クロマソーム 10) の特定の位置範囲(100,000から 500,000の間)の遺伝子型情報を取得し た例。SQLのjoinで簡単にアノテーション 付与が可能

Slide 34

Slide 34 text

34 SnowflakeでVCFファイルのバリアント解析をするメリット フィルタリング ワークフローの管理 バリアント解析はcsvやvcfなど大量な中間ファイルができがち。 Snowflakeなら全てテーブルで 保存できる。 SQLによる簡便なデータフィルタリング Snpsiftなどのツールと比較するとフィルタリング条件が SQLで保存しやすい。 Snowflake上でのストレージ圧縮メリットを受けれる SnowflakeはVCFを含む非構造化データをサポートしている。 Snowflakeに取り込むだけでスト レージ容量を圧縮してくれる。

Slide 35

Slide 35 text

StreamlitとSnowflake Notebooksを用いたIn silico創薬

Slide 36

Slide 36 text

36 Streamlit in Snowflake ● Pythonのオープンソースライブラリで、 データをインタラクティブな Webアプリケー ションとして素早く簡単に可視化可能 ● HTML、CSS、JavascriptなどのWebアプ リケーション開発に必要な知識がなくても 構築可能 ● Snowflakeのデータクラウド上で Streamlitアプリを構築、展開、共有できる Streamlit in Snowflakeの特徴

Slide 37

Slide 37 text

37 Snowflake Notebooks ● Python および SQL 用のインタラクティブ なセルベースのプログラミング環境を提供 する Snowsight の開発インターフェイス ● Streamlit などの他のライブラリを使用し て、データをインタラクティブに視覚化可能 ● Snowflake にすでに存在するデータを探 索したり、ローカル ファイル、外部クラウド ストレージ などから Snowflake にアップ ロード可能 Snowflake Notebooksの特徴

Slide 38

Slide 38 text

38 StreamlitとSnowflake Notebooksを用いたバーチャルスクリーニング 
 特許や論文で薬の候補となる化合物が発表された場合、より有望な類似化合物を探したいことがあります。ここでは、インフルエンザ 治療薬であるノイラミニダーゼ阻害薬「ラニナミビル」に類似した化合物を、 ZINC DBを利用して調査します。 laninamivir ZINC DB バーチャルスクリーニング Screening Compounds

Slide 39

Slide 39 text

39 In silico創薬「化合物類似度の評価」 1. ライブラリ(RDkit)のインポート 2. 化合物の分子構造をSMILES表記から 生成 Cc1ccccc1:トルエン Clc1ccccc1:トリクロロベンゼン 3. 生成した分子構造の画像を描画し、 Streamlitを使って表示 4. タニモト係数で類似度の評価 ここでの類似度結果は 「0.5384615384615384」 処理の流れ

Slide 40

Slide 40 text

40 1. SMILESファイルから化合物データを読み込み 2. ノイラミニダーゼ阻害薬(ラニナミビル)の分子構造を定義し、類 似度を計算するための関数を作成 3. 類似度が高い化合物をリストに追加し、その中から上位 10個を 選ぶ 4. 選ばれた化合物を画像として Streamlitで可視化 処理の流れ In silico創薬「バーチャルスクリーニング」 


Slide 41

Slide 41 text

41 In silico創薬「バーチャルスクリーニング」 
 Snowflake Notebooks上でノイラミニダーゼ阻害薬「ラニナミビル」に類似した化合物 Top10をスクリーニングし、Streamlitで分子構 造を可視化した

Slide 42

Slide 42 text

42 SnowflakeでIn silico創薬をするメリット Snowflakeが用意する機械学習フレームワークを利用可能 Snowpark MLなどデータの移動や複雑なインフラの設定、ローカルでの環境構築が不要で迅速かつ 効率的な機械学習の実行が可能 大量の化合物データセットを効率よく格納 創薬プロセスにおいて必要となる大量の化合物データや生物学的データを一元管理が可能。めぼし い化合物を類縁体スクリーニングに素早くかける事ができる ハイコンピューティングリソースが要求される解析まで一貫して解析が可能 SPCSを利用すれば、 MDやドッキングシミュレーションといったハイコンピューティングリソースが要求 される解析までエンドツーエンドで解析することが可能

Slide 43

Slide 43 text

Snowflakeのその他トピック

Slide 44

Slide 44 text

44 マルチオミクスを行う環境が簡単にセットアップ可能 ● 解析で用いる多種のデータが一元 管理可能 ● Snowflake NotebooksでSQLや Pythonを用いていつでも呼び出 し、組み合わせてマルチオミクス解 析ができる ● 公共データベースのデータを Snowflake内部に入れずとも外部 ステージとして管理できる 化合物などの ケモインフォマティクス データ VCFファイルなどの ゲノミクスデータ 公共データベース アノテーション用のステージ トランスクリプトーム解析 SPCSのイメージ管理 マルチオミクスにおけるメリット

Slide 45

Slide 45 text

45 簡単にトライアル環境を作成できます ● 30日間の無料トライアル ● 400ドルの無料枠で snowflakeを存分にトライ可 ● 画像のフォームに入力するだ けで簡単に開始可能 https://signup.snowflake.com/?_l=ja&utm_source=google&utm_medium=paidsearch&utm_campaign=ap-jp-jp-brand-trial-exact&utm_content=go-rsa-evg-ss-free-trial&utm_term=c-g-snowflake%E3%83%88%E3%83%A9%E3 %82%A4%E3%82%A2%E3%83%AB-e&_bt=610748255507&_bk=snowflake%E3%83%88%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%AB&_bm=e&_bn=g&_bg=142614214047&gclsrc=aw.ds&gad_source=1&gclid= CjwKCAjw4f6zBhBVEiwATEHFVkAg8jsfD0OH2W26UNyKTUFlMrCI8WhFO2Kcq4qgYhDGgEhwIRl5rhoC7N8QAvD_BwE

Slide 46

Slide 46 text

Snowflakeの今後

Slide 47

Slide 47 text

47 Data Clean Room reference image: https://www.snowflake.com/blog/data-privacy-life-sciences-clean-rooms/?lang=ja&wtime&utm_cta=data-science-workload-using- snowflake-for-ml-interference?wtime ● オンデマンドでデータを匿名化 ● 規制対象の患者データを製薬会社と共 有できる(患者サンプル数の拡大 ) ● データをエンリッチメントして分析し、臨 床試験全体で患者アウトカムのパターン を特定 Data Clean Roomの特徴 複数の組織がデータを共有し、協力して分析やインサイトの抽出を行うためのプライバシー保護環境

Slide 48

Slide 48 text

48 Cortex LLMによるライフサイエンスデータの取り扱い reference image: https://medium.com/snowflake/clinical-trial-assistant-a-rag-based-approach-on-snowflake-leveraging-cortex-capabilities-part-7d0 e548a1156 Snowflakeが管理する大規模言語モデルサービスで様々なモデルが利用可能 ● 医療データPDFなど非構造化 データを扱えることや生物医学用 語を理解するLLMモデルの構築 が可能 ● バイオ系は公開データがたくさん あり、それを使って LLMを構築す ることができる ● ユースケースとして 関連する患者 データセットを照会するモデル な ど

Slide 49

Slide 49 text

最後に

Slide 50

Slide 50 text

50 各種SNSフォローしていただけると嬉しいです X(Twitter):@cs_dev_engineer Medium:@t.koreeda LinkedIn:@tkoreeda Zenn:@t_koreeda Zennでの発信例

Slide 51

Slide 51 text

THANK YOU

Slide 52

Slide 52 text

52 マルチオミクスを行う環境が簡単にセットアップ可能 ● 解析で用いる多種のデータが一元 管理可能 ● Snowflake NotebooksでSQLや Pythonを用いていつでも呼び出 し、組み合わせてマルチオミクス解 析ができる ● 公共データベースのデータを Snowflake内部に入れずとも外部 ステージとして管理できる Chemical informatics data such as compounds Genomics data such as VCF files Public database annotation stages Transcriptome analysis and SPCS image management マルチオミクスにおけるメリット