【解決手段】ゲノム分析装置10は、情報処理部11及びメモリ12を備え、ゲノムの塩基配列データのデータ集合を取得し、各塩基配列データを、塩基配列数の4倍以上の次元を持つ数値ベクトルデータに変換し、数値ベクトルデータのベクトル演算により、異なる塩基配列データ間の関係性を検出する。
前記塩基配列データのデータ集合に含まれる各塩基配列データを、前記数値ベクトルデータ相互の類似性に基づいて平面にプロットすることにより、ベクトルデータマップを作成し、
前記系統図に基づいて、前記ベクトルデータマップ上の1対のプロット間を、該当ベクトルデータマップ上において線で結ぶ、
請求項3に記載のゲノム分析装置。
塩基配列が直系の関係にある2つの数値ベクトルデータOとAに対して、新たな数値ベクトルデータXが次式を満足する場合に、O、A及びXの順で直系の関係にあると判定する、
請求項7に記載のゲノム分析装置。
(数C1)
(X−A,A−O)=0
ここで(P,Q)はベクトルデータP、Qの内積を表す。
【背景技術】
【0002】
ウイルスのRNA(ribonucleic acid)の変異が分析されている(例えば、非特許文献1参照。)。非特許文献1では、RNAの変化を、ツリーを用いて表示する。
【0003】
ウイルスは感染しながら変異を繰り返す。どの地域にどのようなウイルスが感染しているか、あるいは地域間でどのようにウイルスが感染により拡がっていくかを分析することは、ウイルスの性質や感染ルートを知り防疫対策に反映する上で大きな課題である。この課題を解決する上で、ウイルスの分類や系統図の作成が重要である。
【0004】
これまで、ウイルスの分類や系統図の作成には、塩基配列の統計的性質の違いを利用する方法と、個々の塩基配列のわずかな違いをミクロに分析する方法が一般的である。前者は、ウイルス間の変異が大きい場合は有効であるが、コロナウイルスのように感染しながら微小な変異を繰り返す場合には、ウイルスの統計的性質の差は極めて小さく、より細かな統計的性質の違いを分析する手法(k−mer法など)が提案されている。しかしまだ決定的な手法は提案されていない。塩基配列の微小な変異を分析する場合は、後者の方法、すなわちウイルスの塩基配列の微小な違いを調べて、系統を判定する方法が一般的であるが。しかしこの方法は、データ量が多くなると多くの時間と労力が必要になる上に、研究者の判断が必要となる場合もあり、研究者によって結果が微妙に異なる場合があるといった問題がある。
【0005】
また、いずれの方法においても、データを文字列として扱い、かつ論理が複雑になるため、塩基配列のような膨大なデータを扱う場合、どうしても処理時間が長くなると言った問題もある。
【発明を実施するための形態】
【0012】
以下、本開示の実施形態について、図面を参照しながら詳細に説明する。なお、本開示は、以下に示す実施形態に限定されるものではない。これらの実施の例は例示に過ぎず、本開示は当業者の知識に基づいて種々の変更、改良を施した形態で実施することができる。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【0013】
図1に、本実施形態に係るシステム構成の一例を示す。本実施形態に係るゲノム分析装置10は、情報処理部11及びメモリ12を備える。本実施形態に係るゲノム分析装置10は、コンピュータとプログラムによっても実現でき、プログラムを記録媒体で提供することも、ネットワークを通して提供することも可能である。
【0014】
メモリ12は、ゲノムの塩基配列データ、数値ベクトルデータに変換後の塩基配列ベクトルデータ、塩基配列データの属性データを格納する。属性データは、塩基配列データの検出された地域及び時期の情報を含む。
【0015】
(第1の実施形態)
図2に、本実施形態の情報処理部11の動作の一例を示す。情報処理部11は、ベクトルデータ変換ステップS101、系統判定ステップS102、系統図作成ステップS103、マップ作成ステップS104、系統リンクステップS105、属性表示ステップS106を実行する。情報処理部11は、ベクトルデータ変換ステップS101を実行するベクトルデータ変換部、系統判定ステップS102を実行する系統判定部、系統図作成ステップS103を実行する系統図作成部、マップ作成ステップS104を実行するマップ作成部、系統リンクステップS105を実行する系統リンク部、属性表示ステップS106を実行する属性表示部として機能する。
【0016】
ベクトルデータ変換ステップS101では、情報処理部11は、メモリ12から塩基配列データを読み出し、読み出した塩基配列データを数値ベクトルデータ化した塩基配列ベクトルデータに変換する。例えば、
図3に示すように、塩基配列データ81−1、81−2、・・・81−Nは、それぞれ、塩基配列ベクトルデータ82−1、82−2、・・・82−Nに変換される。
【0017】
塩基配列ベクトルデータは、読み出した塩基配列データに含まれる塩基配列数の約4倍の次元を持つ。具体的には、アデニン(A)を1000、グアニン(G)を0100、チミン(T)を0010、シトシン(C)を0001に割り当て、塩基配列「GATC」を0100100000100001と表す。このように、1つの塩基配列データを4つの次元を用いて0、1の整数の2値データに変換する。したがって、塩基配列部分は4倍の次元になり、これに属性データ部分が加わるので、全体としては塩基配列数のおおよそ4倍強の次元になる。
【0018】
系統判定ステップS102では、情報処理部11は、データ集合に含まれる全ての塩基配列ベクトルデータに対してベクトル演算を行い、最初のウイルスを除く全ウイルスの直近の先祖を探す。ここで、ベクトル演算は、ベクトル同士の内積の他、ベクトル間距離の導出など、塩基配列ベクトルデータ間の違いを検出することの可能な任意の演算を用いることができる。これにより、直近の先祖データを探し出すことができる。各塩基配列ベクトルデータと先祖データの関係情報は、メモリ12に格納される。
【0019】
系統図作成ステップS103では、前記先祖データを順次辿ることで、全データの系統図を作成する。
図4及び
図5に系統図の例を示す。
図4では、最初のウイルスを中心とするスター状の系統図を示す。
図5では、最初のウイルスから分岐するツリー状の系統図を示す。本開示の系統図はこれらの形状に限らず、扇状などの任意の表示方法を用いることができる。得られた系統図の情報は、メモリ12に格納される。
【0020】
本開示の系統図は、塩基配列データの属性をさらに表示してもよい。例えば、
図4及び
図5に示すように、塩基配列データの検出された時期の情報を表示してもよい。
【0021】
本実施形態は、ステップS101、S102及びS103を実行することで、大量のゲノム塩基配列データにおいて、ゲノム相互間の系統図を、簡単かつ高速に作成することができる。
【0022】
マップ作成ステップS104では、情報処理部11は、データ集合に含まれる塩基配列ベクトルデータ相互の「類似性」に基づいて、該当データ集合に含まれる塩基配列ベクトルデータを平面にプロットすることによりベクトルデータマップを作成する。ここで、「類似性」の指標としては、例えば塩基配列ベクトルデータの次元数に対応した多次元空間での塩基配列ベクトルデータ相互間の「距離」が一般的である。
図6に、ベクトルデータマップの第1例を示す。実線の丸は、面上にプロットされた塩基配列ベクトルデータである。各塩基配列ベクトルデータは各塩基配列データに対応している。ベクトルデータマップのデータは、メモリ12に格納される。
【0023】
系統リンクステップS105では、情報処理部11は、メモリ12に格納されている系統図データに基づき、該当ベクトルデータマップ上において直系の関係にある塩基配列ベクトルデータ間を線で結ぶ。これにより、
図7が得られる。ここで、直系の関係にある塩基配列ベクトルデータは、系統図作成ステップS103で作成された系統図に基づいて判定される。例えば、
図4に示すスター状の系統図において、中心から伸びる同一直線上に配置されている塩基配列ベクトルデータである。
【0024】
本実施形態は、ステップS104及びS105を実行することで、塩基配列データ間の類似度に応じて、2次元のデータマップを作成し、その上で系統に沿ってデータ間を線で結んで示すことで、マップ上で塩基配列データのクラスタと系統図を同時に可視化することができる。
【0025】
系統判定ステップS102において直系関係にある塩基配列データを判定するアルゴリズムの1例を以下説明する。3個の塩基配列ベクトルデータO、A、Bにおいて、以下の関係を満たす時、O、A、Bは直系(同じ系統)と判定する。
(数1)
(B−A,A−O)=0 (1)
ここで(P,Q)はベクトルデータP、Qの内積を表す。
【0026】
式(1)の意味は、「塩基配列がO→A→Bの順に変異した場合、O→Bの変異の間に変化しない塩基配置(一般に複数)は、O→Aの変異の間に変化しない塩基配置(一般に複数)に含まれる。」と言い換えられる。これは、厳密には正しくないが、塩基配列のようにデータ数が数万個以上あって、一回の変異で変化する塩基が少数の場合は、近似的に正しいと言える。また、式(1)を満足しないデータ間では直系を判定することは、難しい。
【0027】
系統リンクステップS105においてデータ集合全体にリンクを貼る方法の一例を以下に説明する。最初に存在した塩基配列データとみなされるデータをP
0とする。ウイルスの塩基配列データ母集団の中で、もっとも変異の少ないデータがP
0と考えられる。これは厳密には正しくないが、一般の感染の始まりの場合は正しいと言える。特殊な始まりをした場合は、必ずしも正しくないが、そのような場合は、出来上がったデータマップから判別できる。
【0028】
塩基配列ベクトルデータ集合内のデータについて、P
0からの距離を計算する。P
0から近い順にP
1、P
2、P
3、・・・とする。
・ステップS1:
まず、P
0とP
1をリンクする。
・ステップS2:
P
i(I=2,3,4,…)において、式(1)の判定アルゴリズムに基づいて、既に直系判定を終えているデータグループの中から、直近の先祖を順に見つける。
【0029】
属性表示ステップS106では、情報処理部11は、塩基配列データの属性を、ベクトルデータマップ上の塩基配列データに対応する塩基配列ベクトルデータのプロット位置、あるいは適当な場所に表示する。属性の表示方法は任意である。
図8〜
図10に、表示部13への属性の表示例を示す。
【0030】
図8及び
図9は、ベクトルデータマップ上のプロットに色又は模様を付すことで、塩基配列データの属性を表示する例を示す。プロット位置の近傍に、塩基配列データの属性を表示してもよい。
【0031】
図9に示す実線の丸、+は、それぞれ、塩基配列データが検出された地域の違いを示す。丸の中に、検出された地域を示す。この図からは、地域ごとのウイルスの分布がわかる。このように、本開示の塩基配列データは、データIDの他に検出された地域や時期等の情報を属性情報として持っていることが好ましい。なお、
図9では直系関係を示す線は省略した。
【0032】
図10に示す破線の丸はラクダから採取されたウイルスの塩基配列データを示す。
図10では、ベクトルデータマップ上の領域C0〜C5を用いて属性を表示する。
図10では、
図9と同様に、直系関係を示す線は省略した。西アフリカのラクダから採取した塩基配列データの分布領域C1は、人から採取した塩基配列データの分布領域とは離れている。一方で、中東のラクダから採取した塩基配列データの分布領域C0,C2,C3,C4,C5は、人から採取した塩基配列データに近いことが分かる。
【0033】
本開示は、塩基配列データ間の塩基配列の違いを簡単なベクトル演算により見つけることができ、この結果塩基配列間の直系関係を簡単にかつ高速で判定することができるようになる。さらに、データ間の類似性に基づくデータマッピングを組み合わせることで、塩基配列データ集合に対して、データの2次元平面マップ上でデータ間を線で結ぶことで塩基配列データ間の系統を表示でき、さらにデータのクラスタを可視化することが可能となる。
【0034】
(第2の実施形態)
本実施形態では、系統リンクステップS105で作成したマップを参照マップとして用いる。系統リンクステップS105で用いた塩基配列データとは異なる新たな塩基配列データがゲノム分析装置10に入力され、メモリ12に記憶される。
【0035】
図11に、本実施形態の情報処理部11の動作の一例を示す。
図1に示す情報処理部11は、ベクトルデータ変換ステップS201、参照マップ表示ステップS202、直系判定ステップS203、属性表示ステップS204を実行する。情報処理部11は、ベクトルデータ変換ステップS201を実行するベクトルデータ変換部、参照マップ表示ステップS202を実行する参照マップ表示部、直系判定ステップS203を実行する直系判定部、属性表示ステップS204を実行する属性表示部として機能する。
【0036】
ベクトルデータ変換ステップS201では、情報処理部11は、新たな塩基配列データをメモリ12から読み出し、塩基配列データを4つの次元を持つ塩基配列ベクトルデータに変換する。
【0037】
参照マップ表示ステップS202では、情報処理部11は、新たな塩基配列データから変換された新たな塩基配列ベクトルデータN01,N02を、参照マップ上の塩基配列ベクトルデータとの相互の距離に基づいて、参照マップ上に配置する。これにより、表示部13に、
図12に示すようなベクトルデータマップを表示することができる。
【0038】
直系判定ステップS203では、情報処理部11は、新たな塩基配列ベクトルデータN01,N02を、参照マップを構成する塩基配列ベクトルデータのうちの塩基配列が最も近い直系の関係にある塩基配列ベクトルデータと接続する。これにより、表示部13に、
図13に示すようなベクトルデータマップを表示することができる。塩基配列が直系の関係にあるかの判定には、式(1)と同じアルゴリズムを用いる。
【0039】
具体例には、塩基配列が直系の関係にある2つの塩基配列ベクトルデータOとAに対して、新たな塩基配列ベクトルデータXが次式を満足する場合に、O、A及びXの順で直系の関係にあると判定する。
(数2)
(X−A,A−O)=0 (2)
ここで(P,Q)はベクトルデータP、Qの内積を表す。
【0040】
属性表示ステップS204では、情報処理部11は、塩基配列データの属性を、該当ベクトルデータマップ上で、該当塩基配列データに対応したベクトルデータマップ上の塩基配列ベクトルデータのプロット位置に表示する。例えば、
図13に示すようなベクトルデータマップが表示部13に表示される。
【0041】
N01〜N02が新たな塩基配列ベクトルデータである。パターンの違いは検出された地域の違いを示す。N01は東京で検出された塩基配列から変異した塩基配列データである。N02は北京で検出された塩基配列から変異した塩基配列データである。
【0042】
(第3の実施形態)
細菌類は、ウイルスと違ってDNAを持ちエラーチェック機能を持つ分、ウイルスに比較し変異が起こりにくい。ただ、一方で塩基配列の数がウイルスに比較しおおよそ2桁以上多い。そのため、原理的には本方式により系統図を作成することは可能であるものの、そのままベクトルデータに変換すると、数百万〜数千万次元のベクトルデータになるため、計算量が膨大になる。
【0043】
この問題を避ける方法としては、母集団の塩基配列データの次元の値が共通して同じ値を持つ次元については無視し、次元値がばらつく次元のみを考慮することで、次元数を数千〜数万程度に削減できると考えられる。このような対策を講じることで、細菌に対しても本開示が適用できると考えられる。
【0044】
ヒトゲノムのようなさらに大きな塩基配列データに対しては、全塩基配列データではなく、細菌類と同様の大きさの一部の塩基配列データを使って、系統図を作成できる可能性がある。
【0045】
なお、塩基配列データは、DNAやRNAに限らずミトコンドリアなどの塩基配列データであっても、本開示の方法は有効と考えられる。
【0046】
(第4の実施形態)
本開示は、ゲノムに限らず、アンケートのように一つの質問に対して複数の回答の選択肢がある場合のデータについても適用できる。具体的には、塩基=質問、塩基(ATGC)=4つの選択肢と対応させると、本開示をアンケートの分析に適用できる。アンケートでは、目的は系統図ではなく、選択肢の分布の分析、あるいは回答者ごとのアンケート結果の時間的変化の分析などになる。