1. 保持時間予測の導入

新年明けましておめでとうございます.今年もよろしくお願い致します.

今回からのコラムでは,「化合物の保持時間予測」をテーマにお話を書いていこうと思います.

そういえば最近,このコラムに図を付けて説明してほしいというお達しがありました.別に図を貼るのが面倒ということではなく,このサイトはそもそも松田大先生,馬場大先生,及川大先生が主導のもので「ESI友の会」の学会記録やプロトコール集を掲載することが目的なので,この解析部屋に容量を割くわけにはいかないのです…上限100MBなので…著作権のこととかいちいち考えるのも面倒ですし…

てなわけで,文字だけでがんばります.すみません.

さて,本題の保持時間予測についてですが,今回は導入です.

保持時間とは,ガスクロマトグラフィーや液体クロマトグラフィーに化合物をアプライしてから溶出するまでの時間のことを言うと思います.そして,保持時間は化合物を同定するための指標として必須のものとして位置づけられます.

基本的に化合物の同定は,(LC/MS/MSを例に取るなら)保持時間,プリカーサーイオンのm/z,アイソトピックイオン比,MS/MSのフラグメントイオンスペクトルの4つを標準品のそれと比較して合致率を持って行われます.

また,NMRを専門にやられている方に誤解の無いように言わなければいけないですが,MSではStereoisomersの区別を行っていなくても「同定」という言葉を使います.

汎用的なGCMSやLCMSでは,立体異性と鏡像異性の区別はほぼ不可能です.標準品を打ったとしても,クロマトグラフィーの保持時間やマススペクトルは全く同じと判断せざるをえない状況がほとんどです.

ですので,このコラムや,この解析部屋では特に断りが無い限り(いまさらですが),Structural isomers+幾何異性体(E, Z)の識別可否を持って「同定」という言葉を使わせていただきます.

また,保持時間予測のお話ですが,あくまで「予測」ですので,「同定」が目的ではなく「化合物候補を絞る」という目的のために行うということを,ここで意識しておいてください.

候補を絞るだけか…と言う気持ちもわからなくはないですが,「100個の候補が5つに絞れる」というだけで価値があると,少なくとも管理人は思います.

また,最近ではMS/MSが確実に取れるような時代(data independent MS/MS acquisitionに加え,さらにdeconvolutionのような機能が加わったような統合プラットホーム)にもなってきましたので,保持時間で絞り,かつ組成式やMS/MSで絞っていくことで,限りなく正解に近づくことができるような時代になってきていると思います.管理人の専門の1つはこの分野なので,少し偏った視点かもしれませんが,ご容赦ください.

ちなみに,ここで紹介する方法は,数十の標準品データの保持時間をすでに取得していることを前提に書きます.

カラムの品番・移動相・溶媒組成・グラジエント条件のみを入力したらすべての化合物の保持時間が自動出力!

というウルトラチャレンジングな研究をしたい方がいらっしゃいましたら,学会会場で適当に管理人を捕まえてください.ぜひ討論しましょう.

さて,保持時間を予測するために必要な手順:

1.標準品の保持時間情報(Y変数)(多いほうが当然良い!)

2.上記標準品のSDFファイルを取得

3.SDFからMolecular Descriptor(MD)を出力してくれるソフトウェアを選択(ここではPaDelを使います)

4.上記ソフトウェアによりMDsを計算させ,化合物プロパティを取得(X変数)

5.X変数の中から,冗長変数を削除(データの整理)

6.トレーニングセット(データの50-70%)とテストセット(30%-50%)に学習データを分割

7.トレーニングセットに対してPLSもしくはRandom Forest(RF)を用いて回帰

8.上記回帰をCross Validation (CV)により評価.アウトライヤー診断を行う.

9.CVにより変数・アウトライヤー精査されたトレーニングセットに対して回帰

10.テストセットにより,回帰式を検証

11.6―10の操作を,別トレーニングと別テストセットにより評価(これを1000回くらいやる.ダブルクロスバリデーションとも呼ばれるそうです.)

12.トレーニングセットとテストセット両方に含まれない標準品(まったく別の化合物プロパティを持っているものがベスト)を新たに購入し,モデルを再検証

上記のような流れで,一般に機械学習・検証を行っていくと思います.また,上記のようなダブルクロスバリデーションの操作は,管理人が知る限りの商用ソフトウェアではできないと思います.しかしながら,上記のような操作はRを少し勉強すればできることですので,特にアカデミックの方はがんばりましょう.

注意したいのは,モデルの過予測(オーバーフィット),予測できる範囲を見極めることです.

トレーニングセットやテストセット内だけで過予測が想定されるデータはもはや論外ですが,「予測できる範囲が存在する」というのも一種のオーバーフィットであり,モデルの適用範囲を見極めて使わなければならないということが重要です.

たとえば,モデルを構築する際にフラボノイド化合物群のみを用いて回帰式を作った場合,そのモデルはフラボノイドの保持時間予測にしか効果を発揮しないと考えられます.全く同じ分析系だとしてもそのモデルを脂質に応用することは,十分な予測値を出力する保証が無いと言わざるをえません.要するに,MDsベースのモデル構築は,学習に用いられるデータの質に大きく依存するということです.だからこそ,理想的には様々な化合物群を入れられることがベストです.自分の対象とする化合物群だけできれば良いという方は,上記を分かった上で使うという限りにおいて問題ないと思います.

このコラムでは,

・SDFの手に入れ方

・MDsの出力方法

・PLSで回帰式作成

の3つの項目を書いていこうと思います.

それでは,今日は導入編ということで,この辺りで.