2018年7月10日火曜日

共分散法 covariance

NMR スペクトルにおいて、共分散 covariance 法はこれまでのフーリエ変換 Fourier-transformation 法に代わるかもしれない プロセス法の一つとして注目を集めていました。最初は 2D 1H/1H NOESY, TOCSY などのように直接測定軸と間接測定軸が同じ種類のスペクトルにおいて、後者の分解能を前者にまで高める方法として提唱されました。その後、2つの異なるスペクトル(例えば (I, K) 相関スペクトルと (L, K) 相関スペクトル)の間で covariance をとることにより、(I, L) スペクトルを生成する方法として使われました。これは更に例えば主鎖帰属の HNCA と HNCOCA スペクトルなどにおいて 13Ca の化学シフトをもとに HN(i) と HN(i-1) を相関させるといった方法にも適用されました。

Harden, B.J., Frueh, D.P. (2018) Covariance NMR processing and analysis for protein assignment. Methods Mol. Biol. 1688, 353-373. doi: 10.1007/978-1-4939-7386-6_16.

Covariance の計算方法は実はたいへん簡単でして、上の例では (I, K) 行列と (K, L) 行列の内積をとるだけです。ここで後者の行列は転置しています。この共分散はフーリエ変換前の時間軸データでも、フーリエ変換後の周波数軸データでもどちらに適応しても構いません(細かな違いはありますが)。苦労する点といえば、4次元などのギガバイト大容量のデータに適用すると小さな PC が気の毒になる点ぐらいでしょうか?したがってプログラミングの FOR 文を使いまくるのではなく、できるだけ内積の高速演算ライブラリーなどを使ってコーディングした方が良いでしょう。

ただし、共分散法には false-positive な偽ピークが出てしまうという大きな欠点がありました。例えば、K 次元に沿ってちょっとだけずれた2つのピークがあったとします。目で見るとずれていることがすぐに分かるようなレベルでです。例えば、HNCA と HNCOCA とで 13Ca のピークが半値幅ぐらいずれていたとしましょう。この場合に、この2つのアミド基の帰属を相関させるような間違いは目視ではまず起こり得ません。ところが、共分散をとると、きっちりと相関を示す偽ピークとなってしまうのです。これでは使い物にならず、失望して止めてしまったものです。

ところが、最近はこれを克服する方法も出てきました。過去の論文にちらっと書いてあったことなのですが、共分散をとる前に微分をとっておくのです(もしかすると、分散波形でも良いのかもしれません)。すると、2つのピークが K 次元に沿ってぴったりと揃っている時に共分散が正の値を示し、逆に少しずれている場合には、共分散は小さな値、時には負の値を示します。これにより、false-positive な偽ピークを見分けることができます。

さらにエラーを減らす方法が提案されています。HNCA と HNCOCA とで K 次元に現れる 13Ca のピークをもとに HN(i) と HN(i-1) を相関させていったとします。しかし、この 13Ca だけだと間違いが多いでしょう。そこで普通は 13Cb, 13Co なども隣り合うアミド基を相関させるための共通の「糊」として使います。同じように (I', K') 相関スペクトルと (L', K') 相関スペクトルの間で covariance をとって (I', L') スペクトルを生成したとします。そして (I, L) も (I', L') も正の値のみを残しておいてから、両者を要素ごとに掛け合わせます。すると、いずれか一方に偽ピークがあった場合でも、掛け算によりそれは消えてしまいます。 (I, L) と (I', L') の両方に相関ピークがある場合にのみ、掛け算のスペクトルにピークが残るという仕組みです。ちょうど 13Ca, 13Cb, 13Co 全てを通して2つのアミド基どうしが相関を示した時に連鎖帰属を確定するのと同じです。二次元どうしですと、あまりメリットが感じられないかもしれませんが、3次元どうし((I, J, K) と (L, M, K))で K 次元に沿って共分散をとり4次元 (I, J, L, M) とすると、もしかすると有用かもしれません。もちろん今まで通りに処理すると多くの偽ピークが出てしまいます。しかし、covariance の前に K 次元に沿って微分をとり、covariance 後にスペクトルどうしを掛け合わせれば、上手く行くかもしれません。

Covariance や掛け算処理をする場合、各次元のデジタル分解能を合わしておくことは重要です。そのためには、同じマシンで同じスペクトル幅で一連のスペクトルを測っておきましょう。ポイント数は違っていてもスペクトル幅が同じであれば、0-fill 後のデータ数を同じ値にすることでデジタル分解能を調整することができます。異なるマシンで測った2つのスペクトルでは、いろいろなミスマッチが起こると考えられます。まず、マシンの絶対的な温度が異なります。さらにピークの位置も少しずれます。DSS のピークで 1H, 13C, 15N 次元を全て調整することでかなり揃えることができますが、それでも限界があります。本当は、HNCA と HNCOCA のペアなども interleaved-manner で測る方がよいのでしょう。それぞれを2日間ずつ連続して測定したとしても、それなりのずれは(ロックの不安定性などから)生じ得ます。

しかし、それでも false-positive な偽ピークが出てしまうそうです。これが起こるのはかなり線幅が異なるピークどうしで共分散をとった時です。例えば、HNCO では感度が高く大きな 13CO のピークが観えている一方、HN(CA)CO では感度が低く小さな 13CO のピークしか観えていないような時です。すると、共分散の前に微分をとったり、後に他の4次元と掛け算をしたとしても偽ピークが出勝ちです。そのような場合も想定して、一応は共分散をとる前のオリジナルスペクトルも少しチェックした方が良いとのこと(それでは covariance を活用する意味がないのですが)。また、4次元 (I, J, K, L) では (I, J) から (K, L) への相関と、その逆の (K, L) から (I, J) への相関の両方が共存しているかどうかを確かめることが重要とのことです。

ここで covariance の意味をあえて言うと、これまでの方法ではピークを拾い忘れていたり拾い方が悪ければ、それで終わりでした。拾った後の「化学シフトの値だけ」をもとに連鎖帰属をしていきますので、どのようにピークを拾うかが、その後の連鎖帰属の効率を決めているようなところがありました。一方 covariance 法では、false-positive が出る程に、そのような「拾い忘れ」が無いことが利点といえます。

いったい covariance という処理によって、スペクトルから何が失なわれてしまうのでしょうか?個人的にはピークトップの情報ではないかと考えています。人の目でピークを判断する時は、等高線で描かれた楕円の画像全体を観ながら、その中心をピークトップとして認識します。必ずしも最高強度の地点とは限りません。楕円が歪んでいたりすると、実はもうひとつ別のピークとオーバーラップしているのではないかと脳は推測したりもします。すると、その重なり具合に応じてピークトップの位置を少しずらしたりもします。初心者の場合、ここが欠点となってきます。covariance をとる前に微分するという処理は、ちょうどこのピークトップをできるだけ目立たせようとしていることに相当するのではないでしょうか?微分値ではちょうどピークトップの箇所で大きく正負が入れ替わります。そのため、どれぐらいの幅で微分(差分)をとるかも重要な要素になってくるだろうと考えられます。このような点が議論されているかとも思ったのですが、下記のオリジナル論文も含め見つかりませんでした。

Bradley J. Harden, Scott R. Nichols, and Dominique P. Frueh (2014) Facilitated assignment of large protein NMR signals with covariance sequential spectra using spectral derivatives. J. Am. Chem. Soc. 136 (38), 13106–13109. DOI: 10.1021/ja5058407.

0 件のコメント: