創薬における深層学習

2017年5月9日

- From Peter Lind,CDD Advocate - デスクより。

機械学習

機械学習とは、経験に応じて自動的に改良されるコンピュータプログラムを設計・実行することです。学習機械は、入力データに応じて正しい動作をし、その動作の良し悪しについてのフィードバックを収集することで、より良い動作をするように改善する能力を備えている必要があります。形式的な研究では、マシンはタスク(T)を持ち、それがある程度のパフォーマンス(P)で実行され、プログラムが経験(E)を積むにつれて改善されると言います。

タスクの例をご紹介します。

    • チェスゲームでは、勝つことを目標にして、正しい動きをします。
    • お客様が購入しそうな商品を推測する。
    • ある場所の明日の天気を予測する。
    • 歩行ロボットの腕と脚の動きを制御する。
    • 想定される薬物分子の代謝運命を予測する。
    • どのメールがスパムなのかを判断します。

タスクの内容は非常に多岐にわたりますが、共通しているのは、異なる入力データに対応して、タスクを異なる方法で適切に実行することです。入力データは、チェス盤の位置であったり、顧客の過去の購入履歴や過去の閲覧行動の記録であったりします。タスクの実行は、常に出力データの生成を伴います。出力データは、それ自体が関心のある結果である場合もあれば、最終結果に向けたさらなる行動の処方箋である場合もあります。学習プロセスでは、タスクの実行方法を微調整してパフォーマンスを向上させようとします。つまり、ある入力に対する結果は、機械が経験を積むにつれて変化し、改善されることが期待されるのです。

深くて浅い機械学習

コンピュータが、入力データをそのまま出力データに変換するようなワンステップ方式でタスクを実行する場合、学習機はシャロー・アーキテクチャを持つと言う。タスクの実行が、第1のプロセスの出力が第2のプロセスの入力となるような、段階的なものであれば、深いアーキテクチャを持つと言う。

浅い学習マシンの例として、スパムを示すキーワードの存在に基づいてスパム検出ルールを学習しようとする原始的なスパムフィルターアルゴリズムを考えてみましょう。おそらくこの機械は、「緊急」、「驚くべき」、「無料」などの言葉がスパムを示唆すると学習します。これらの単語の存在に基づいてスコアを合計することは、合計を構築することが単一の論理的なステップであるため、浅い単純なプロセスです。

深層学習マシンの例として、デジタル写真に写っている物体を検出して分類するタスクを持つ画像解析システムを考えてみましょう。この機械は、ピクセル形式の入力を受け、写真のどこかにある1つまたは複数のピクセルセットが、犬や車などの特定のオブジェクトを表しているかどうかを判断する必要があります。画素から分類された対象物までを一度に処理する方法はありません。同じ物体でも、カメラへの近さによって画像に占める割合が異なりますし、撮影した角度によってもピクセルパターンが異なります。物体は他の物体によって部分的に隠されていることがあり、画像上での見え方は影に左右されます。また、同じ種類のものでも、大きさや色が異なる場合があります。

この問題を解決するためには、入力データを段階的に処理する必要があります。例えば、最初のステップでは輪郭を見つけ、2番目のステップでは輪郭に囲まれた2次元の形状を処理し、3番目のステップではさらに高いレベルの処理を行い、物体のクラスに到達するまで繰り返します。機械は、物体認識タスク全体をうまくこなすために、各ステップをうまくこなす方法を学ぶ必要があります。これが深層学習です。

深さは学習機械アーキテクチャの品質であり、多かれ少なかれ持つことができますが、浅いと深いの間に明確な限界はありません。というのも、プロセスやステップはさまざまな方法で定義できるからです。

機能変換

前述のように、深層学習マシンは、ピクセルなどの入力データの生の特徴を処理し、3Dオブジェクトなどの最終問題のドメインでより良い表現力を持つ高次の特徴に変換します。これらの変換は特徴変換と呼ばれ、機械は内部的に複数のレベルの表現を扱うことになります

学習機械の設計者は、ある問題を解決するためにどのような特徴変換が必要であるかを事前に知る必要はありません。学習機械は、十分な数の学習例があれば、どのような特徴変換がその課題を実行するのに有効かを知ることができます。

特徴が人間の概念に対応していなかったり、機械がどのようにしてある結果を得るのかを推論で説明できないこともあります。

要約すると、特徴変換は深層学習が効果的である理由を説明しています。深層学習マシンの設計者は、特徴の学習と特徴の変換をどのように実現するかを理解する必要がありますが、関与する中間的な特徴の性質については、事前に考えておく必要はありません。

生物学

興味深いことに、脳が視覚データを処理して作用させる際には、段階的なプロセスと特徴変換の形態を用いているという証拠がある。(1)

神経信号は、目から脳の一次視覚野と呼ばれる部分に伝わります。網膜の隣り合う領域から出た信号は、視覚野の第一層にある隣り合う細胞を刺激します。一次視覚野では、明るさや色の異なる領域間のエッジなど、低レベルの特徴を扱っているようです。視覚野からの信号は、その後、物体を認識する領域や、動きを分析する領域などに送られていきます。

これはデータサイエンティストにとって不思議な事実かもしれません。初期の機械学習研究の中には、神経科学の成果に触発されたものもありました。しかし、今日の開発のほとんどは、コンピュータサイエンスや統計的学習の結果や理論に基づいており、脳の働きや学習方法を真似ようとする意図はごくまれにしかありません。

機械学習の技術の一つに、人工ニューラルネットワーク、あるいはニューラルネットワーク と呼ばれるものがあります。この技術は、その仕組みを説明する図が、生物のニューロンをネットワーク化した漫画の絵のように見えることから、そう呼ばれています。ただし、生物学的なプロセスをシミュレートする意図はありません。

フィードフォワード・ニューラルネットワーク

学習機械には多くの種類があり、それぞれに多くのバージョンがあります。ここでは、フィードフォワード・ニューラル・ネットワークと呼ばれるタイプの基本的な例を簡単に説明します。2)AlphaGo(3)やGoogle翻訳の最新版(4)のようなプログラムに使用されている、多くの高度な改良が存在します。

下の図は、フィードフォワードネットワークの説明図です。円は人工ニューロンを表しています。下には入力ニューロンの層があり、上には出力ニューロンの層があります。その間にあるニューロンの層を隠れ層と呼びます。浅いネットワークでは隠れ層が少なく、深いネットワークでは多くの隠れ層がある。隠れニューロンは、学習マシンの内部にあり、外界からは見えないため、このように呼ばれています。図では13個のニューロンしかない例を示しているが、実際のプログラムでは何千個ものニューロンを持つことが多い。隠れ層のニューロンの数は様々です。

機械はタスク(T)をある程度の性能(P)で実行し、経験(E)を積むことで向上することを覚えておいてください。入力と出力の両方を符号化するために数字のセットを使うことができるので、機械にとってのタスクとは、常に入力された数字に応じて出力された数字を生成することです。

課題に挑戦するとき、機械はフィードフォワードの段階に入ります。入力データは入力ニューロンに割り当てられます。つまり、各ニューロンには数値が割り当てられます。入力データが白黒画像の場合は、画像のピクセル数と同じ数の入力ニューロンが必要になります。各入力ニューロンは、第1隠れ層のいくつかのニューロンに接続されます。接続とは、フィードフォワードの際に、下位のニューロンの値に接続に固有の重み係数(w)を掛けて、その積を接続の上位にあるニューロンに加えることを意味します。そして、活性化関数と呼ばれる数学的な関数がその合計に適用され、ニューロンの新しい値が形成されます。この作業を層ごとに繰り返し、出力層で数値が加算されるまで続けます。学習が進むにつれて、接続ごとの重みが調整されます。通常、学習を開始する前に重みはランダムな値に設定されます。つまり、最初にいくつかのタスクに挑戦したときには、ランダムな結果が得られ、役に立たないパフォーマンスになってしまうということです。

おそらく、最初の出力ニューロンは、入力画像のどこかに猫がいる確率をコード化するべきだと判断したのでしょう。出力値が大きいほど、猫の確率が高いことを意味し、逆また然りです。機械は、フィードフォワードの後、実際の結果と正しい結果の差を記録します。そして、重みの更新段階に入ります。バックプロパゲーションと呼ばれるアルゴリズムを用いて、同じタスクを再度実行した場合にエラーが少なくなるようにネットワークの重みを更新します。バックプロパゲーションは、その名のとおり、出力層から隠れた層を経由して行われます。新しいタスクによる学習は、リソースが許す限り、あるいはパフォーマンスが向上しなくなるまで続けられます。同じタスクセットを何度も使用することが多く、タスクの各サイクルをトレーニングエポックと呼んでいます。バックプロパゲーションアルゴリズムは、1986年にスタンフォード大学の数理心理学者であるDavid Rumelhartによって、微積分の結果に基づいてニューラルネットワークの学習方法として提案された。(5)

機械学習 ディープラーニングによる創薬

ネットワークが数層以上になることは最初から明らかでしたが、深いネットワークを学習するには、より多くのコンピュータリソースを消費し、より多くの学習データが必要になります。これが、時間の経過とともに深層学習の重要性が増してきた理由です。ここ数年、ディープネットワークの人気が急上昇しているのは、ハードウェアの性能が向上しただけでなく、十分な量のビッグデータが利用できるようになったためです。大まかな経験則では、許容できる性能を得るためには約5000の学習例が必要とされています。(2)

その他のディープマシン

機械学習の最も伝説的な応用例として、IBM社のチェスコンピュータ「Deep Blue」があります。これは、1997年に当時の世界チャンピオンであったグランドマスター、ギャリー・カスパロフを破ったことで有名です。Deep Blueという名前は、多層ネットワークとは関係なく、別の理由でつけられたものです。6)ブルーはIBMのブランド・アイデンティティのメイン・カラーであり、ディープは前身のチェス・コンピュータ「Deep Thought」の名前に由来する。ディープ・ソートの名前は、ダグラス・アダムス原作のコメディSFシリーズ『銀河ヒッチハイク・ガイド 』に登場するコンピュータに由来する。このシリーズの「ディープソート」は、「生命・宇宙・万物」についての大いなる疑問の答えを計算することを目的として作られた。750万年もの間、この問題を考え続けてきた深遠なる思索は、ついに42という答えを導き出した。

Deep FritzとDeep Juniorは、同じ名前のチェスコンピュータです。

コンピュータとボードゲームといえば、今日、最も注目されているのは戦略ゲームの囲碁です。囲碁を打つ機械が人間のグランドマスターに勝てるようになったのは、ごく最近のことです。2016年、コンピュータプログラムのAlphaGoが9段の名人Lee Sedolを破ったことで、ブレークスルーが訪れました。AlphaGoは確かにディープニューラルネットワークを使用しています。(3)

創薬における深層学習

薬物の望ましい効果は、体内の何らかの生物学的標的分子との相互作用の結果として得られる。分子間力によって薬物と標的分子が結合し、それに続く事象が病気や症状に影響を与える。そのため、創薬プロジェクトでは、標的分子と十分に強く結合できる化合物を探す。しかし、薬物は体内の非標的分子と結合することもあり、その場合、望ましくない、あるいは危険な副作用を引き起こす可能性があり、これを回避しなければならない。薬物の消化管からの吸収、代謝、排泄も分子間力に依存している。

残念ながら、コンピュータ上で薬の候補となる分子を調べて、それが体内の関連分子とどのように相互作用するかを予測することはできません。その理由の1つは、分子間力を予測するための一般的な手法が確立されていないことです。

今日では、候補となる医薬品のほとんどが、臨床現場で人間に試されると失敗します。そのため、創薬プロセス全体のコストが非常に高くなっています。もし、より良い予測方法があれば、多くの資源を節約することができます。

QSAR

創薬は繰り返し行われるプロセスであり、試行錯誤の要素があります。すでに作られた化合物の試験データをもとに、新しい化合物を設計します。構造と活性、あるいは構造とその他の特性の間にあるパターンを見つけようとするのが、QSAR(Quantitative Structure-Activity Analysis )と呼ばれる手法です。QSAR解析では、薬物と標的の相互作用が薬物の構造に依存することをモデル化しますが、分子間力の物理現象を明示的にモデル化することはせず、間接的にモデル化します。

QSARモデルには、多かれ少なかれローカルモデルとグローバルモデルがあります。グローバル モデルは、多様な化合物で学習され、広範囲の化合物に対して意味のある推定値を得ることができます。グローバル モデルのデータセットは大規模になる傾向があります。ローカルモデルは、特に関心のある化合物クラスで学習され、そのクラス内の化合物の推定値を生成することができる。ローカルモデルは、類似した化合物のセットに対して、グローバルモデルよりもはるかに優れた性能を発揮するため、特定のクラスの構造に絞って作業を行うリード最適化プロジェクトで使用されます。

ディープニューラルネットワークは、データセットが非常に大きい場合に優位性を発揮します。例えば、2012年に開催された計算化学コンテストの優勝作品は、ディープニューラルネットを含む手法のアンサンブルを使用していました(8)。このコンペティションのデータセットは約2000~50000化合物で、各化合物に対して数千の記述子が提供されていました(8)。この研究では、4つの隠れ層を持ち、各層に1000から4000のニューロンを持つネットワークが最も良い結果をもたらした。モデルの平均R二乗は0.49であり、これらのコンピュータモデルはデータの分散の約半分を説明できることになる。

別のニューラルネットワークQSAR研究では、複数のアッセイから化合物の活性を同時に予測している(9)。(9) この研究では、PubChemの19個のデータセット(約2000~14000化合物)を使用した。結果は他の手法よりも優れていたが、ニューラルネットワークの隠れ層の数を変えても大きな効果は得られなかった。

創薬プロジェクトでは、可能な限り少ない化合物を合成して検討した上で候補化合物を同定することが求められるため、小規模なデータセットに基づく優れたモデルが重要となります。QSARニューラルネットワークの層数を増やしても、データセットが小さく、主な入力が従来の分子記述子である場合には、ほとんどメリットはありません。

ドッキング

ドッキングプログラムは、仮想的な分子が目的のターゲットにどの程度結合するかを予測するためのアルゴリズムであり、その開発には多くの努力が払われている。ドッキングプログラムは、仮想的な化合物のコレクションをスクリーニングして、実際に結合力の高い化合物の割合が高いサブセットを得るために使用することができる。

ドッキングプログラムでは、ターゲット分子とリガンド分子の間で起こりうる相対的な向きをいくつか調べ、それぞれのポーズに対する結合強度を推定する必要があります。結合強度の推定には、いわゆるスコアリング関数が用いられる。ここで重要なのは、2つの分子間の相互作用がどの程度強いのか、今日では確実に予測できないということです。

分子の相互作用を扱うプログラムの多くは、内部的には棒とボールのような分子の表現を使います。また、モデルには、引力、斥力、柔軟性などを表す因子が使用されます。しかし、薬物と標的分子の相互作用をある程度の精度でモデル化できるようになるのは、まだ遠い目標です。生体内の分子は、動き回ったり、振動したり、他の分子に囲まれたりして、結合に影響を与えます。分子の相互作用の基礎となる物理的現実を直接モデル化するプログラムは、高度な理論を使用し、計算が不可能になるほど膨大な数の相対的なポーズや振動モードを考慮する必要があります。

古典的な棒と球の表現は、化学における多くの現象の予測と説明に非常に有用であり続けていますが、計算化学者は分子間力モデルで仕事をする他の機能を必要としているようです。もちろん、一次化学の入力は通常のフォーマットのままですが、学習機械が適切な機能変換を見つけられるようにしなければなりません。

ドッキングに深層学習を用いた機械学習研究の最近の例として、Pereira and co-workersが挙げられる(10)。(10) 彼らの学習マシンが使用する主な特徴は、化合物の各原子のコンテキストデータです。コンテキストデータとは、距離、原子の種類、原子の部分電荷、アミノ酸のことである。

合成方法

また、機械学習の進歩が期待できる分野として、レトロシンセティック解析があります。分子の合成は困難な場合が多く、創薬のリソースの多くは合成作業に費やされています。しかし、ターゲットとなる化合物の合成ルートを一つでも思いつくのは難しいものです。遡及合成解析とは、より単純な化合物から最終的な化合物を作る方法を探し、さらにその化合物がより単純な化合物からどのように派生するかを調べることで、遡及的に合成ルートの可能性を体系的に検討することです。

ここでも、トレーニングデータの利用可能性とデータ収集のための共同作業が進歩の鍵となります。化学者が分析・解釈できる反応結果データの量には限界があるため、合成化学の記録はほとんど完全ではないというのが、興味深く、また難しい点である。学習システムは、不完全なデータを上手に扱う必要があります。

これからどうなるのか?

データセット

化学構造や活性データなどのデータセットがどんどん公開され、質量ともに充実したデータベースが自由に利用できるようになりました(11)。このことは、新しい技術を開発するために質の高いデータを必要とするコンピュータ業界にとって非常に重要なことです。ベンチマークデータセットの一般公開は今後も増え続け、それがきっかけとなって創薬における機械学習手法の開発が加速するでしょう。公開されていない独自のデータセットでベンチマークされた計算手法を発表することは、ますます奇妙なことになるでしょう。

クラウド

製薬会社は自社の知的財産を大切に守らなければならないため、データの共有に関しては非常に厳しいポリシーを持っています。データが悪用されるのではないかという不安が、製薬業界がクラウドコンピューティングの導入に遅れをとっていた理由です。しかし、製薬会社は現在、計算機インフラの外部化をますます進めています。クラウドベースのサービスを提供する企業は、当然ながら顧客のセキュリティに対する懸念を意識しており、技術的なサービス品質だけでなく、セキュリティや信頼性でも競争しています。クラウドサービスの利用は今後も増えていくでしょう。

ソフトウェア

機械学習のための多くのオープンソースのフレームワークが存在し、クラウドコンピューティングのための多くのエコシステムが、財務予測や顧客行動などを扱うデータサイエンティストの標準的なツールとなっています。研究開発インフォマティシャンが、機械学習の標準的なツールと創薬領域に特化したツールをどのように統合するかは、今後の課題です。研究開発インフォマティクスのスタッフには、すでに機械学習についての幅広い理解が求められており、ケミンインフォマティシャン、バイオインフォマティシャン、計算化学者、研究開発ITスタッフなど、これらの分野の人々は、ディープラーニングについてさらに学び、その可能性を活用していくことになるでしょう。

QSARのための化学データは、物体認識のための画像データ、言語通訳のための音声データ、チェスや囲碁の対局譜のように、データの一形態に過ぎない。QSARに特有なのは、現実のデータセットが、何桁ものサンプル数がある他の環境のデータセットに比べて小さいことです。ディープラーニングには大規模なデータセットが必要です。そこで、ディープネットワークを学習させ、一般的なデータを含む大規模なデータセットから強力な特徴変換を見つけ出してから、特別な関心を持つ小規模なデータセットでさらに学習させることができるかもしれない。

スコアリング機能

分子間力(スコアリング関数)を迅速に推定する優れた技術がないことは、特に関心の高い分野です。これは、将来の進歩についての予測が何十年もの間、過度に楽観的であった技術分野の例です。深層学習の手法を利用することで、その解決の糸口が見えてくるかもしれません。

参考文献

  1. https://en.wikipedia.org/wiki/Visual_system
  2. Goodfellow, I.; Bengo, Y. & Courville, A. (2016), 'Deep Learning', The MIT Press.
  3. Silver, D.; Huang, A.; Maddison, C. J.; Guez, A.; Sifre, L.; van den Driessche, G.; Schrittwieser, J.; Antonoglou, I.; Panneershelvam, V.; Lanctot, M.; Dieleman, S.; Grewe, D.; Nham, J.; Kalchbrenner, N.; Sutskever, I.; Lillicrap, T.; Leach, M.; Kavukcuoglu, K.; Graepel, T & H. H.; Kalchbrenner, N.; Sutskever, I.; Lillicrap, T.; Leach, M.; Kavukcuoglu, K.; Graepel, T. & Hassabis, D.: 'Mastering the game of Go with deep neural networks and tree search.'(深層ニューラルネットワークと木探索で囲碁をマスターする)。ネイチャー529(2016)、Nr.7587、484-489
  4. Wu, Y.; Schuster, M.; Chen, Z.; Le, Q. V.; Norouzi, M.; Macherey, W.; Krikun, M.; Cao, Y.; Gao, Q.; Macherey, K.; Klingner, J.; Shah, A.; Johnson, M.; Liu, X.; Łukasz Kaiser; Gouws, S.; Kato, Y.; Kudo, T.和澤秀樹; Stevens, K.; Kurian, G.; Patil, N.; Wang, W.; Young, C.; Smith, J.; Riesa, J.; Rudnick, A.; Vinyals, O.; Corrado, G.; Hughes, M. & Dean, J.: 'Google's Neural Machine Translation System:Bridging the Gap between Human and Machine Translation." arXiv(1609.08144v2).
  5. Rumelhart, D. E.; Hinton, G. E.; Williams, R. J.: 'Learning representation by back-propagating errors. Nature323 (1986), Nr. 6088, S. 533-536
  6. Hsu, F.: 'Behind Deep Blue:Build the Computer that Defeated the World Chess Champion": プリンストン大学出版局、2002年
  7. https://en.wikipedia.org/wiki/Deep_Thought_(chess_computer)
  8. Ma, J.; Sheridan, R. P.; Liaw, A.; Dahl, G. E. & Svetnik, V. (2015), 'Deep Neural Nets as a Method for Quantitative Structure-Activity Relationships',J. Chem.Inf.Model.55(2), 263–274.
  9. Dahl, G., E.; Jaitly, N. & Salakhutdinov, R. (2014), 'Multi-task neural networks for QSAR predictions',arXiv(1406.1231).
  10. Pereira, J. C.; Caffarena, E. R. & dos Santos, C. N. (2016), 'Boosting Docking-Based Virtual Screening with Deep Learning',J. Chem.Inf.Model.56(12), 2495–2506.
  11. Bento, A. P.; Gaulton, A.; Hersey, A.; Bellis, L. J.; Chambers, J.; Davies, M.; Krüger, F. A.; Light, Y.; Mak, L.; McGlinchey, S.; Nowotka, M.; Papadatos, G.; Santos, R. & Overington, J. P.: 'The ChEMBL bioactivity database: an update'.In:Nucleic Acids Research42 (2013), Nr.D1, S. D1083-D1090