Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Cytoscapeの現状とCyberinfrastructure

2,668 views

Published on

2015年1月9日に産総研で行われたセミナーの資料です。現時点におけるCytoscapeプロジェクトの現状と、今後のライフサイエンス向けソフトウェアの開発についてのビジョンです。

http://www.cytoscape.org/index.html

Published in: Science
  • Hello! Get Your Professional Job-Winning Resume Here - Check our website! https://vk.cc/818RFv
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • interactwalker@gmail.com
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Cytoscapeの現状とCyberinfrastructure

  1. 1. Cytoscapeの現状とCyberinfrastructure 再現可能な大規模オミクスデータ解析ワークフローに対応したツール群を目指して 大野 圭一朗 UC, San Diego Trey Ideker Lab Cytoscape Core Team 産総研セミナー 1/9/2015
  2. 2. 自己紹介
  3. 3. - 大野 圭一朗 (Keiichiro Ono) - カリフォルニア大学
 サンディエゴ校医学部 - Trey Ideker Lab - Software Engineer / Research Associate - National Resource for Network Biology (NRNB) - nrnb.org
  4. 4. Keiichiro Ono Background Bioinformatics Computer Science Work Research Bioinformatics workflow Visualization pipeline Data Visualization Networks Other Biological Data Integration Molecular Interactions Pathways Annotations Software Development Cytoscape NeXO Cyberinfrastructure All kinds of small tools Like Art Kandinsky Mondrian Music Electronica Techno Minimal Detroit Jazz Sci-fi Movie Novel Life US San Diego San Francisco Bay Area Los Angeles Orange County Japan Gifu Tokyo
  5. 5. Keiichiro Ono Background Bioinformatics Computer Science Work Art Kandinsky Mondrian Electronica
  6. 6. Keiic Work Research Bioinformatics workflow Visualization pipeline Data Visualization Networks Other Biological Data Integration Molecular Interactions Pathways Annotations Software Development Cytoscape NeXO Cyberinfrastructure All kinds of small tools
  7. 7. Keiichiro Ono Background Bioinformatics Computer Science Work Research Bioinformatics workflow Visualization pipeline Data Visualization Networks Other Biological Data Integration Molecular Interactions Pathways Annotations Software Development Cytoscape NeXO Cyberinfrastructure All kinds of small tools Like Art Kandinsky Mondrian Music Electronica Techno Minimal Detroit Jazz Sci-fi Movie Novel Life US San Diego San Francisco Bay Area Los Angeles Orange County Japan Gifu Tokyo
  8. 8. 計算機科学 生物学
  9. 9. Agenda
  10. 10. 現在 未来
  11. 11. 現在
  12. 12. - Cytoscapeプロジェクトの現状 - 最新リリース: v3.2.0 - web関連テクノロジーへの取り組み: Cytoscape.js - 自動化されたワークフローで Cytoscapeを利用する: cyREST
  13. 13. 現在 未来
  14. 14. 未来
  15. 15. 未来 Service-oriented workflow Cytoscape-as-a-service Docker Reproducible Science Web Technologies NIH The Commons
  16. 16. Quick Introduction to Cytoscape まだCytoscapeを利用されたことがない方のためへの紹介
  17. 17. Cytoscape: Open Source Platform for Network Analysis and Visualization
  18. 18. Cytoscapeとは? - 生物学的ネットワーク解析と可視化のた めのオープンソースプラットフォーム - 北米とヨーロッパの研究機関による共同 プロジェクト - 生物学分野ではデファクトスタンダード の一つ - Appと呼ばれるソフトウェアにより拡張 可能 - 200以上のAppがApp Storeで公開中
  19. 19. Open Platform for Large-Scale Network Analysis and Visualization Human Interactome data from BioGRID visualized by Cytoscape
  20. 20. プロジェクトの現状
  21. 21. > 700 downloads/month
  22. 22. App Store Daily Download Plot
  23. 23. Project Status Cytoscape Core: Apps: Publications: ✔ ✔ 更新が必要
  24. 24. Cytoscape Ecosystem コア・プロジェクトの紹介
  25. 25. Cytoscape Ecosystem - Cytoscape 3.2.0 - デスクトップ版 - Cytoscape.js - JavaScript版ライブラリ - Cytoscape 2.8.3 - レガシー版
  26. 26. http://www.cytoscape.org/what_is_cytoscape.html
  27. 27. Cytoscape 3.2
  28. 28. Cytoscape 3.2 - 新機能 - Chart Editor - Export as Web Application
  29. 29. Chart Editor
  30. 30. Chart Editor
  31. 31. Chart Editor - Visualize multiple data points to a single view - Time series data - Multiple GO terms - Chart types: Bar, Box, Pie, Heat Map, Ring - Part of standard Visual Style Editor - Everything will be saved into session files
  32. 32. Gradient Editor
  33. 33. Export as Web Application Cytoscapeで作成した可視化を Webアプリケーションとして書き出す
  34. 34. Export as Web Application Cytoscapeで作成した可視化 をシンプルなWebアプリケー ションとして書き出す機能
  35. 35. ここまでのまとめ - Cytoscape 3.2.0 - 最新のデスクトップ版リリース - Cytoscape.js - ネットワーク可視化のWebアプリ ケーションを構築するための部品 - 両者は完全に独立したプロジェクトだ が、データレベルでの連携をさせる機 能を追加中
  36. 36. 他のツールと組み合わせて Cytoscapeを利用する cyREST
  37. 37. ユーザーのタイプ
  38. 38. User Type I - いわゆる「ベンチバイオロ ジスト」 - Excelを多用 - ドメインの専門家でデータ を生み出す人々 - しかし解析と可視化はま だ…と言う場合も多い
  39. 39. User Type II - バイオインフォマティシャン - Python + SciPy/NumPy, R + Bioconductor, MATLABといっ たもの日常的に利用する - 必要に応じてライブラリも書く - 大規模な計算機リソースも多用 する - 「手作業は悪!」
  40. 40. どちらのユーザーも重要! - Type I: “Bench Biologists” - Domain experts - Data producers - Type II: Computational Biologists - Experts of large-scale data analysis - Especially important for genome-scale data analysis Cytoscapeにはこちらに フォーカスした機能が少ない…
  41. 41. User Type II - バイオインフォマティシャン - Python + SciPy /NumPy, R + Bioconductor, MATLABといっ たもの日常的に利用する - 必要に応じてコードも書く - 大規模な計算機リソースも多 用する - 「手作業は悪!」
  42. 42. Requests from Type II Users - I have 200 networks in my session and I need to create one PDF per view. How can I do it with Cytoscape? - I need to use igraph for network analysis, but its visualization feature is limited. I want to use Cytoscape as an external visualization engine for R. - Usually I use IPython Notebook to record my work. How can I integrate Cytoscape into my workflow? - I want to generate Style for each time point and create small multiples of networks.
  43. 43. REST
  44. 44. What is cyREST? - ほぼ全ての言語から利用できるRESTfulなAPI モジュール - つまり、CytoscapeのレイアウトやVisual Mappingと言った基本機能やデータ構造に好 みのプログラミング言語からアクセス可能 REST
  45. 45. REST Cytoscape 3.1+ Clients POST PUT DELETE GET
  46. 46. Mapping Cytoscape API to HTTP Methods Create Read Update Delete Cytoscape Operations POST GET PUT DELETE HTTP Methods
  47. 47. Get full network with unique ID 52 as JSON GET http://localhost:1234/v1/networks/52
  48. 48. シンプルな利用法 IPython Notebookとの組み合わせ
  49. 49. 利用したことがない方への簡単な紹介
  50. 50. http://www.nature.com/news/interactive-notebooks-sharing-the-code-1.16261
  51. 51. Demo: Cytoscape Controlled from IPython Notebook REST http://bit.ly/1wcKXVV
  52. 52. 今すぐ利用可能です! REST http://apps.cytoscape.org/apps/cyrest
  53. 53. 未来 大規模なデータ解析に対応 したツール群を目指す
  54. 54. ここからは… - Cytoscapeに限らず、これから開発する全てのバイ オインフォマティクス系ツールの目指すべきゴール について共通の認識を持ちたい - そのためにこの分野に関わる人々が協力できること
  55. 55. History
  56. 56. 10年前…
  57. 57. 2005 - Cytoscape 2.2: Javaで書かれたデスク トップアプリケーション - GoogleがGoogle Mapベータ版をリリース - 「JavaScriptの再発見」
  58. 58. 2015
  59. 59. 2015 - Cytoscape 3.2.0: モジュール化されたJavaアプ リケーション - 多くのクライアントソフトウェアがウェブアプ リケーション化 - JavaScript everywhere - 緩やかなデスクトップアプリケーションの死 - サービスの集合としてのアプリケーション
  60. 60. ソフトウェアの作り方 の大幅な変化
  61. 61. ソフトウェア開発スタイルの変化 - An application is a collection of smaller services - JavaScript is a first-class citizen in the world of programming languages - Design application with cloud services in mind
  62. 62. 12factor.net
  63. 63. In the modern era, software is commonly delivered as a service: called web apps, or software-as-a-service. The twelve-factor app is a methodology for building software-as-a-service apps that: • Use declarative formats for setup automation, to minimize time and cost for new developers joining the project • Have a clean contract with the underlying operating system, offering maximum portability between execution environments • Are suitable for deployment on modern cloud platforms, obviating the need for servers and systems administration • Minimize divergence between development and production, enabling continuous deployment for maximum agility • And can scale up without significant changes to tooling, architecture, or development practices.
  64. 64. バイオインフォの世界では?
  65. 65. This MANIFESTO counters current trends in bioinformatics where institutes and companies are creating monolithic software solutions aimed mostly at end-users.
  66. 66. –THE SMALL TOOLS MANIFESTO FOR BIOINFORMATICS “Every single tool should do the smallest possible task really well”
  67. 67. 逆に言えば… - 一つのことしか出来ないので、他のツールと の連携が前提 - UNIX的な考え方
  68. 68. 普段参加している学会
  69. 69. Bioinformatics Open Source Conference (BOSC)
  70. 70. 昨年参加してみた会議
  71. 71. @New York Times@Facebook HQ in Boston
  72. 72. そこで感じた最近の傾向
  73. 73. データ解析ツールの傾向 - Python is becoming the standard language for “Data Scientists” - Python itself is a very slow language, but is a perfect glue - Lots of tools are made by scientists (e.g. Anaconda by Continuum) - They do understand current problems in modern scientific computing, and trying to solve them
  74. 74. (by Peter Wang @PyData Sermon Valley 2014)
  75. 75. Data Visualization Biology
  76. 76. Data Visualization
  77. 77. - Visualization needs varies, especially for complex data sets like the one from life science domain - For that purpose, Java is not the best language to implement applications - Even large-scale data visualization applications are moving to the web browsers - Canvas (Cytoscape.js), WebGL (Three.js), SVG (D3.js) - Most of the talented hackers are working on the web browsers, i.e., JavaScript
  78. 78. WikiGalaxy: http://wiki.polyfra.me/#
  79. 79. しかし、これらを使うことが目的ではない! あくまでも手段
  80. 80. 科学系計算機環境における課題 - No more free lunch - Even if you buy expensive machines, you cannot get free performance gain anymore. You have to design your code for massively distributed environment. (From Scale-up to Scale-out) - Complex Data Analysis Pipeline - Needs for complex, customized data visualization - Reproducibility - パイプラインの構築そのものが複雑で再現性の確保が困難
  81. 81. Cytoscapeにとってこの変化の意味は? - 他のツールとの連携性がますます 重要になる - 「解析ワークフローを構築する部 品としてのアプリケーション」を 意識する
  82. 82. Universe of Tools for Bioinformatics !
  83. 83. この変化の生物学者にとっての意味 - “Omics-Scale" Data Analysis - デスクトップマシンを超えた計算機リソースの必要性 - 複数のソフトウェアを接続することによる解析 ➡ 「ポータブル」で再現可能なワークフローを構築する作 業が複雑になっているため、ソフトウェア技術者との協 業も重要度を増している
  84. 84. 科学者は科学に 技術者は技術に フォーカスするべき
  85. 85. しかしそれは丸投げを意味 しない。ループの中で常に 両者が協業できるように
  86. 86. 具体的にはどのように 変化すべきか?
  87. 87. 私の職場の場合 - PI - 研究者 - 学生 - ソフトウェア開発者 
  88. 88. 現在のサイクル 生物学上の課題 機能リクエスト デザイン 実装実際の利用OSSとしての公開
  89. 89. 現在のサイクル 生物学上の課題 機能リクエスト デザイン 実装実際の利用OSSとしての公開
  90. 90. 実装 - 院生の作ったプロトタイプ - Cytoscape用のApp - コマンドライン版  → 同じことの繰り返しが含まれる!
  91. 91. 実装 - サービスとしてデプロイ - サービスを利用するクライアント 
  92. 92. Cytoscape as a Collection of Services
  93. 93. Case Study 1
  94. 94. PANGIA App
  95. 95. Srivas, Rohith et al. “Assembling Global Maps of Cellular Function through Integrative Analysis of Physical and Genetic Networks.” Nature Protocols 6.9 (2011): 1308–1323. PMC. Web. 1 Dec. 2014.
  96. 96. Core algorithm 1 as Python Java Implementation of Algorithms Cytoscape 2.x Plugin Biological Problem Cytoscape 3.x App Core algorithm 2 as Python Core algorithm n as Python PanGIA Service (Implement in Python again…?) by Sourav by Greg, Rohith by Greg, Rothith and Cytoscape Team by David History of PanGIA Application
  97. 97. 大量の重複する作業!
  98. 98. Case Study 2
  99. 99. NeXO Web
  100. 100. NeXO Web - Term Enrichment Analysis - From list of genes, perform hypergeometric test over set of machine-generated ontology (NeXO) terms and display terms with p-values - It is independent from all other parts of NeXO Web application
  101. 101. Term Enrichment Service API by Flask Python Core SciPy NumPy Overview of NeXO Term Enrichment Service NeXO Web RESTful API
  102. 102. Term Enrichment Service API by Flask Python Core SciPy NumPy Overview of NeXO Term Enrichment Service NeXO Web RESTful API
  103. 103. Option 1: As a Cytoscape App - Re-implement this algorithm as a Cytoscape App (Java Application) - Pros: - Easy to install - Cons: - A lot of work… - Should be written in Java - Does not scale-out!
  104. 104. Option 2: As a Service - Wrap existing applications and deploy to platform of users’ choice: - Laptops, private servers, and commercial cloud services (AWS/Google Computing Cloud, etc.) - Pros: - Scales-out - Client-independent - Workflow-friendly - Cons: - Need to adopt to the new way of software design - Relatively more complex deployment
  105. 105. –THE SMALL TOOLS MANIFESTO FOR BIOINFORMATICS “Every single tool should do the smallest possible task really well”
  106. 106. これからのツール - Best practice: アプリケーションを小さなサービス の集合としてデザインする - 文字通り、各サービスが独立したアプリケーショ ンとしても動作するよう心がける - デスクトップでもクラスタでも動作するように
  107. 107. cat genes.txt | uniq | wc -l
  108. 108. fetch | process | visualize
  109. 109. …しかし以上のようなサービス 指向のバイオインフォマティクス 系アプリケーションを実装する ためのテクノロジーはあるのか?
  110. 110. Yes!
  111. 111. Key: Provenance
  112. 112. Workflow Environment Data
  113. 113. Data Workflow Environment
  114. 114. Data Workflow Environment
  115. 115. Data Workflow Environment
  116. 116. Software Distribution Problem - “It-worked-on-my-machine” syndrome - This is a serious problem especially when you want to share your workflow with collaborators.
  117. 117. What is Docker? - Container to run applications in an isolated environment - Application = Layer of images - Sharable Environments - Environments as code
  118. 118. https://www.docker.com/whatisdocker/
  119. 119. Docker Hub - Sharing environments as code! - Dockerfile - Definition of your container - Example: http://bit.ly/15N23P8
  120. 120. How Docker-nized World Works? Container 1: IPython + SciPy Stack Your Machine Container 2: R + Bioconductor Container 3: Neo4j
  121. 121. Your Machine Container 1: IPython + SciPy Stack Container 2: R + Bioconductor Container 3: Neo4j
  122. 122. Your Machine Container 1: IPython + SciPy Stack Container 2: R + Bioconductor Container 3: Neo4j
  123. 123. ゴール: 再現可能な「ドライ」実験
  124. 124. Cytoscape Cyberinfrastructure
  125. 125. Cytoscape ≒ Desktop Application
  126. 126. Cytoscape = Brand
  127. 127. Cytoscape Cyberinfrastructure (CI)
  128. 128. Cytoscape Cyberinfrastructure (CI) - 今後リリースする(システム)生物学向け サービスの総称 - ネットワークデータ解析 - 可視化 (レイアウトなど) - データ共有
  129. 129. Cytoscape Cyberinfrastructure (CI) - 小さな再利用可能なモジュールとしてソフ トウェアをリリース - コマンドラインツール - RESTful APIでラップしたサービス - Cytoscape App
  130. 130. Interactive Data Analysis Environments In-House Databases External Computing Resources - Graph Layout - Statistical Analysis - Data Pre-processing RStudio - NumPy - SciPy - Pandas - NetworkX IPython Notebook File / Code Hosting ServicesPublic Data Repository PSICQUIC Services EBI RDF Platform Other Bioinformatics Web Applications / Services - igraph - rCurl Command Line Tools > sed > awk > grep > curl Web Browsers Data Repository & Collaboration Service Data Bus (Internet) Your Workstation Cytoscape App Store Cytoscape Desktop Apps Core REST
  131. 131. Cytoscape Cyberinfrastructure (CI) - 実際のリリースはこれから - 優先度の高いものから実装 - テストケースとしてHotNetや自動レイ アウトのEC2上でのサービス化等
  132. 132. 最後に Funding Agencyの視点
  133. 133. http://www.slideshare.net/ pebourne/bosc2014
  134. 134. We (the NIH) Are Working On, But As Yet Do Not Have Good Answers To: 1.  Today, how much are we actually spending on data and software related activities? 2.  How much should we be spending to achieve the maximum benefit to biomedical science relative to what we spend in other areas? Biomedical Research as an Open Digital Enterprise by Philip E. Bourne Ph.D. Associate Director for Data Science (NIH)
  135. 135. Reproducibility !  Most of the 27 Institutes and Centers of the NIH are currently reviewing the ability to reproduce research they are funding !  The NIH recently convened a meeting with publishers to discuss the issue – a set of guiding principles arose Biomedical Research as an Open Digital Enterprise by Philip E. Bourne Ph.D. Associate Director for Data Science (NIH)
  136. 136. NIH The Commons (Definition by Dr. Bourne) • Is Not: • A database • Confined to one physical location • A new large infrastructure • Owned by any one group • Is: • A conceptual framework • Analogous to the Internet • A collaboratory • A few shared rules • All research objects have unique identifiers • All research objects have limited provenance
  137. 137. 追記: この分野における 日本のプレゼンスを高める
  138. 138. バイオインフォ向けOSS - 日本発のものは残念ながら少ない - なぜ? - 文化の違い - 予算配分の違い
  139. 139. 「継続は力なり」 - Cytoscapeはこの分野では成功したツールの一つ - なぜ? - 特別に新しいことはしていない! - しかし長年に渡り地道な作業を続けている - Funding Agencyからのインフラとしての認識
  140. 140. 「マイクロバリア」を取り除く - 人は些細な事で諦めます - 簡単にセットアップできるように - インストーラーの準備 - Dockerfileの公開 - R: install.packages()ですぐに使えるようにする - Python: pipで一発インストール出来るようにする
  141. 141. 文書化 - 最初は英語で書き、余力があれば日本語も書く - Bioinformatics辺りでApplication Noteとして発表
  142. 142. 協業 - 我々も常にコラボレーターは探しています - パッケージ化されたソフトウェアとして公開す れば有益なアイデアがあれば是非 - nrnb.org
  143. 143. 2015 Keiichiro Ono kono@ucsd.edu
  144. 144. • https://flic.kr/p/bFZpyg • https://flic.kr/p/bmXUz1 Photo Credits

×