今後投資すべきか、検討する必要のありそうな技術
当たり前ではあるけど、相変わらず計算機分野の技術の流行り廃りは激しい。とてもじゃないが一人の人間、もしくは小さなチームが全部の流行を追う事は不可能。そこで自分の関わる分野に役立ちそうなものをピックアップしてみた。
まず、今ユーザー(生物学者と医師)から出ている課題:
- 生物学は、各コンポーネント(遺伝子など)を見る時代から、それらの関係性を見る時代に確実にシフトしている。しかし、関係性を見ると言ったところで、フラットなPPI等を眺めるだけで得られる知見には自ずと限界がある。可視化から更なる理解を深めるためには、機能モジュールやネットワークモチーフ等に基づいた階層構造の表現が必要。そして、それはインタラクティブ、且つ簡単なオペレーションでなくてはならない。(計算機リテラシーの高い人ばかりが研究者ではない。)
- モジュール/サブネットワークを表現するファイルフォーマットの検証。XMLを使えば容易、というか、もう既にGraphMLやXGMMLなどでサポートされている。しかし、生物学者が自分のデータを可視化してみたいと思ったとき、それを手作業で作るのは容易ではない。Excelなどのシンプルなテーブルで、人間が手でエディットできるような表現は出来ないだろうか?
- 計算機のコア数が増えてきているが、まだ一部の重い処理(レイアウトやモジュール発見アルゴリズム実行時など)を実行する時でも遊んでいる事が多い。
- 実験等から得られた興味のある遺伝子リストから、既知のネットワークを取って来る事は比較的簡単に行えるようになった。しかし、その後、様々なデータベースからアノテーション情報を取ってきたり、ネットワークをマージしたりする事は、割と皆行っているが、初めての人は戸惑う。ワークフロー/ヒストリ機能の実装等で、ほぼ皆が行うような部分は楽に行えるようにしてほしい。
- 公共のデータベースを今一度確認し、有用なものがあればそれへの容易なアクセス手段が必要。
- 異種間のモジュール比較と可視化。この機能への容易なアクセス手法が必要。現状では手間がかかりすぎて、多くの生物学者に気軽に使える機能ではない。一番のネックは、オーソロガスな遺伝子間のスコアファイルをどうダイナミックに生成するか、と言う点。
まあ他にも色々あるが、共通項としては、「ハードコアなユーザーばっか相手にしてると感覚麻痺するぜ。とにかく簡単かつストレスフリーにする方向でやってかないと、便利な機能でも使う人は増えない」と言う感じか。これに関して、インタラクションデザインとか、ドキュメントで解決できる問題についてはひとまず置いておくとして、乱立する新技術の中で、特にパフォーマンスやデータアクセスの部分で使えそうなモノは・・・
GPGPU/CUDA/OpenCL
グラフレイアウトでは、既に大幅な実行速度向上が確認され、実装もされている:
また、よくあるグラフアルゴリズムをGPU上で実装して比較してる人もいる
この技術は当然万能ではなく、速く出来る問題とそうではない問題が割とはっきりしてる。今後暫くは、GPUは昔のCPUのような速度で進化して行くので、使える部分には使いたい。とりあえず、解析関係で、Cytoscape特有のモノに利用出来ないか検討する必要があるかも。
参考になる情報:
Gohara博士によるOpenCL技術の簡単な説明とチュートリアルビデオ。非常にわかりやすい英語なのでぜひ。CPUとGPUで同じアルゴリズムを実装し、その差を比べる部分は、ある特定の問題分野では非常にこの技術が有効であると実感できるはず。
Scala
![Scalaスケーラブルプログラミング[コンセプト&コーディング] (Programming in Scala) Scalaスケーラブルプログラミング[コンセプト&コーディング] (Programming in Scala)](https://images-fe.ssl-images-amazon.com/images/I/41nFY0KbnfL._SL160_.jpg)
Scalaスケーラブルプログラミング[コンセプト&コーディング] (Programming in Scala)
- 作者: Martin Odersky,Lex Spoon、Bill Venners,羽生田栄一,長尾高弘
- 出版社/メーカー: インプレス
- 発売日: 2009/08/21
- メディア: 単行本
- 購入: 18人 クリック: 687回
- この商品を含むブログ (121件) を見る
オントロジやSemantic Web、Webサービス関連技術
![Programming the Semantic Web: Build Flexible Applications with Graph Data Programming the Semantic Web: Build Flexible Applications with Graph Data](https://images-fe.ssl-images-amazon.com/images/I/51VOqT59ykL._SL160_.jpg)
Programming the Semantic Web: Build Flexible Applications with Graph Data
- 作者: Toby Segaran,Colin Evans,Jamie Taylor
- 出版社/メーカー: O'Reilly Media
- 発売日: 2009/07/24
- メディア: ペーパーバック
- 購入: 1人 クリック: 9回
- この商品を含むブログ (1件) を見る
データへのアクセス手段としてのAPI標準化などは、DBCLSの方々やEBI何かの努力もあって少しずつ便利になってきている。これもその成果の一つ
間もなくこれを使うクライアントも公開出来そう。
Hadoop
![Hadoop Hadoop](https://images-fe.ssl-images-amazon.com/images/I/51cAfEjH4QL._SL160_.jpg)
- 作者: Tom White,Doug Cutting
- 出版社/メーカー: Oreilly & Associates Inc
- 発売日: 2009/06/16
- メディア: ペーパーバック
- 購入: 1人 クリック: 61回
- この商品を含むブログ (8件) を見る
MapReduceのオープンソース実装。巨大レコードの分散処理なんかでよく話題に上るけれど、この分野の人にも関係ありそうな、こんなプロジェクトもある:
ただ、スーパーコンピューターセンターの人たちも、各ノードごとに大量のメモリを積んだ新しいマシンの計画を立てているようなので、そっちが気軽に使えるようならば、餅は餅屋に任せておいた方がいいかな。