パスワードを忘れた? アカウント作成
15106612 journal
日記

phasonの日記: ウィルスの変異は言語モデルで取り扱えるか? 4

日記 by phason

"Learning the language of viral evolution and escape"

B. Hie, E. D. Zhong, B. Berger and B. Bryson, Science, 371, 284-288 (2021).

ウィルスは非常に変異を起こしやすい存在である.その理由は(RNAウィルスの場合)RNAポリメラーゼのエラー訂正機構が貧弱であることや,(1本鎖ウィルスの場合)単鎖ゆえのエラー訂正の効かなさであったりといろいろあるのだが,とにかくウィルスは変異が速く,それゆえ免疫系が一度覚えてもその網をすり抜ける変異種が現れがちなことはよく知られた事実であろう.
今回紹介するのは,そんな「ウィルスの変異による免疫系からの逃れやすさ」が,機械学習による自然言語モデルを用いて推測できる,という報告である.

さて,21世紀に入ってから進歩の著しいものの一つとして機械学習が挙げられることに異論はないだろう.膨大なデータが収集・利用できるようになるとともに,層数を非常に増やした深層学習の導入などが組み合わさり,(すべての分野ではないにせよ)機械学習は格段の進歩を遂げている.特に応用や研究が数多く行われているのが,自然言語処理の分野だ.膨大な文例をもとに,教師なし学習(正解の判定ルールも含めすべてをデータの山から自律的に構築する学習)により言語をモデル化し,以前とは比べ物にならないほど自然な文章を作成したり,高精度な翻訳が可能となってきている(もちろん,まだ完璧とは言えないが).
そんな背景のもと,今回の著者たちは以下のような突飛なアイディアを思いついた.そもそもウィルスの「本体」は,4つの塩基(RNAなのかDNAなのかで1文字違うが)の組み合わせで書かれたアミノ酸配列の長大な羅列である.そしてその「変異」とは,あるアミノ酸が別のアミノ酸に置換されることに等しい(時には削除などもあるが).これは別の観点からみれば,「ウィルス=未知の言語で書かれた長大な文章」で,「変異(アミノ酸の置換)=ある単語の,別な単語への置換」とみなすこともできるのではないだろうか?もしそうだとすれば,自然言語を機械学習するモデルは,数多くのウィルスのゲノム=文例をもとに,変異の影響=単語の置換による文章の変化,を定量的に分析するツールとして利用できるのではないだろうか?
これだけ聞くと非常に突飛でどうかしてるんじゃないかとも思えるが,著者らの考察は続く.ウィルスの変異は,どんな時でもウィルスにとって望ましい,わけではない.多くの場合,ランダムな変異はその「ウィルスらしさ」を壊してしまう.別の言い方をすると,ウィルスがその機能を保って生存していくためには,何らかのルールの範囲内で変異している必要がある.これは言語でいえば「文法」に相当するだろう.生化学的に言えば,ウィルスの各遺伝子が生み出すタンパク質がその機能を失わないような変異,ということになる.既に存在している(特定の病原となる)ウィルスの多数の変異株を学習データとして使用すれば,それらすべて「ウィルスをそのウィルスたらしめている」構造は満たしている.つまり,「文法としてはそんなに間違っていない」データとなるだろう.一方で,アミノ酸には,免疫系がウィルスを認識するために重要となっている部分もある.ウィルスの構造(=文法)を保ちつつ,こういった部分が異なってくると,免疫系から逃れる可能性が高くなる.もちろんただ異なるだけではなく,ウィルスの外郭構造がガラッと変わるような変異ほど免疫系をすり抜ける可能性は高くなる.

著者らのこの観点をまとめると,以下のようになるだろう.
・ウィルスをそのウィルスたらしめているものは,「文法」として見えてくるはずである.
・ウィルスの変異は,単語の置換に相当するだろう.
・単語の置換により「文法」的におかしな文になるほど,ウィルスとしては存在しにくいはずである.
・単語の置換により「意味」が大きく外れるほど,免疫系から別物とみなされるはずである.

最後の「単語の置換により,意味が大きく変わる場合」の例を,著者らは英文で示している.

例1:Austratian Dead in Bali(オーストラリア人,バリで死去)
(1)意味の近い置換:Aussie Dead in Bali(オーストラリア人,バリで死去)
(2)意味が全く変わる置換:Australian Ballet in Bali(オーストラリアのバレエ団 in バリ)
原文や1では最初の語が名詞なのだが,2では原文と同じ「Australian」が今度は形容詞として作用している.

例2:Blast off of Apollo 8(アポロ8号の打ち上げ)
(1):Blast off of Apollo 13(アポロ13号の打ち上げ)
(2):Blast victims of Apollo 8(アポロ8号の爆発の犠牲者たち)
熟語であるBlast offのうちの一語を変えてしまうと,意味は激変する.

タンパク質の構造はアミノ酸の並びに依存するが,多少変えても形の変わらないものもあれば,キーとなる部分を少し置き換えるだけで形が激変したりもする.著者らは,それを言語モデルにおける単語の影響力の差として表現できるのではないか,と考えたわけだ.

といってもここまでであれば単なる妄想と変わりはない.実際にそんなことができるのかどうか,著者らは実在のウィルスのゲノム配列をもとに評価を行っている.
対象としては,インフルエンザウィルス(の,感染に関与する主要部位であるヘマグルチニン),エイズウィルスのエンベロープ,コロナウィルスのスパイクの3つを選択した.これらはメジャーな感染病でありデータも多い.これらそれぞれの多様な配列を言語モデル化のプログラムに放り込んで分析させ(※当然,3つの病気それぞれ別のデータセットとして扱う),それぞれ勝手に学習させ言語構造を推測させる.その結果,プログラムは与えられたデータセットから「インフルエンザウィルス(のヘマグルチニン)の文法」とか「コロナウィルス(のスパイク構造)の文法」とか,「インフルエンザウィルスのどの単語(=アミノ酸)を何に置換すると,意味(=構造?)がどのぐらい変わるのか」を評価するモデルが得られる.

では,得られたモデルはどの程度正当性があるのだろうか?
まずは,得られた評価基準に基づきウィルスのそれぞれの株を位置付けたときに,(遺伝的に)類似するウィルスがある程度クラスター化しているのかどうかを評価している.これは,得られたモデルが正しいことの必要条件である(※十分条件ではない).言語とみなして処理した結果得られたモデルが,実際の正しくウィルスの構造の類似性を再現できなければ,著者らの発想は単なる思い付きに過ぎなかった,となるわけだ.
論文では,各種のウィルスの変異株を言語モデルで位置づけ,その結果をUMAPにより2次元化して表示している.機械学習により作成された評価関数は非常に様々な点を組み合わせて評価しているため,各データは「非常に次元の大きい空間中での位置」で表示される.しかしそのままでは人間が見にくいので,適当な射影を選び出すことにより2次元上の分布に直して図示するのだが,UMAPは最近よく用いられる方法である(詳しくは知らないが).
ということで得られた結果を見てみると,インフルエンザでは人インフルエンザ,鳥インフルエンザ,豚インフルエンザが互いにそこそこすみ分けたような図が得られている.さらにはっきり差が出たのがHIVで,いくつかの株ごとに比較的わかれたクラスターを作っていることが一目で見て取れる.劇的に分かれているのはコロナウィルスだ.コロナウィルスはさまざまな動物種にそれぞれのコロナウィルスが存在するのだが,かなりきれいに分離した図が得られている.また,いわゆる新型コロナ(を文章として見たとき)の位置は蝙蝠やセンザンコウのコロナウィルス株(の一部)と非常に接近しており,その起源(といわれている)これら両種と近いことが再現できている.またMERSはラクダのコロナウィルスと非常に接近した位置にあることも再現されている.その一方で,SARS-CoV1と新型コロナウィルスは意外に離れているなど(現時点では両者はかなり近縁と言われている),ちょっと変わったところもある.

そんなわけで,ウィルスの塩基配列を言語として無理やり読ませて生み出された言語モデルは,まずは必要条件である「近いウィルスを,ちゃんと近いと判断できる」という点はクリアできている.とはいうものの「近いウィルスは,近い配列を持っている」わけだから,それが再現できるのはある意味当たり前である.
そこで著者らはさらに研究を進めた.ウィルスの感染にかかわるパーツ,つまりインフルエンザだとヘマグルチニン,HIVであればエンベロープ,コロナウィルスであればスパイク,のパーツの塩基配列の様々な場所にさまざまな1塩基変異を導入した遺伝子を膨大な数作成し,それらの変異パーツを酵母(だかなんだか)に生産させ,宿主細胞の受容体にどの程度親和性があるのか,などを調べたのだ.
※こういった「網羅的に1塩基変異などを作り,全部調べる」というような手法はDeep Mutational Scanというらしい.

これにより,言語モデルが「文法である」と判断した基礎構造に変異が入った場合と,「単語の違いである」と判断した部分とが,宿主細胞への適合性にどの程度影響があるのかが調べられた.その結果,予想通りではあるものの
・「文法的正しさが高い」ほど,感染性は高い
・「意味がかなり変わってくる」という置換ほど,感染性は落ちる
ということが判明した.
面白いのはここからだ.インフルエンザやHIV,コロナウィルスに対し抗体として働く分子を加え,これら無数の変異体(と言ってもウィルスそのものではなく,その表面に生じるパーツ=抗原)が抗体に捕まるかどうかを調べたところ,いくつかの変異株は抗体をすり抜けることが判明した.そしてそれら「抗体をすり抜ける(≒免疫系の既存の学習が効かない)」変異株は,ほぼすべてが「文法的にはかなり正しくて,しかしその一方で意味的には大きく異なる」という領域に位置していた.
単純化して言うと,ウィルスには,そいつをそのウィルスたらしめている重要な構造があり,そこが維持されていないと感染性が低い.言語モデルとしての機械学習は,その「ウィルスらしさ」というものを「文法的な正しさ」として認識することができる.その一方で,ある程度の表面構造の変異が無ければ,一度感染すれば既存の免疫系が学習し,抗原により対応されてしまう.そのため,(抗体に認識されないほど)ガラッと表面が変わらないと次回の感染がおこらない.そのような変化は,言語モデル化の上では「文章としての意味がガラッと変わっている」として認識される.

これが何を意味しているのかというと,ウィルスの塩基配列を文章として機械学習させ作成された言語モデルは,あるウィルスが「既存の抗体をすり抜けるかどうか」に対しかなりよい評価をしうる,ということになる.これまでは,実際にウィルスと抗体を用いなければ予測できなかったことが,ある程度とはいえゲノム配列だけから予測できるというのはかなり画期的(*)である.

*ウィルス表面のタンパク質の立体構造と,細胞側の受容体の構造がわかっていればある程度推測はできるのだが,立体構造を決めること自体が非常に困難である.
そちらはそちらで,「深層学習を使ってアミノ酸配列からタンパク質の立体構造を効率的に決めることができるプログラムの開発」なんてのもあったりする.

もちろん,「文法的に正しく,意味が大きく異なる配列」すべてがウィルスとして有効なわけではない.前述したように「意味が大きく異なる」ものはたいていの場合感染性が落ちるためだ.そのため今回の研究は,「今獲得している免疫を確実にすり抜けられる変異種を見分けけられる」というわけではなく,「潜在的に,今の免疫をすり抜ける可能性のある変異種をピックアップする」というスクリーニング的なものとなる.

ただまあ,深層学習全般に感じることではあるが,何がどうなっているのかがブラックボックス化しているような感じもあってやや気持ち悪い.その一方で,「ウィルスを言語とみなして解析しました」というのは非常に面白く,これがブレイクスルーになったりなんかすると結構面白いこともありそうだ.

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

ハッカーとクラッカーの違い。大してないと思います -- あるアレゲ

読み込み中...