• 検索結果がありません。

遺伝子発現データの クラスタリングの理論的背景

N/A
N/A
Protected

Academic year: 2021

シェア "遺伝子発現データの クラスタリングの理論的背景"

Copied!
25
0
0

読み込み中.... (全文を見る)

全文

(1)

自己組織化マップ

(2)

自己組織化マップとは?

• K平均アルゴリズムは、あらかじ

めクラスター数Kを設定し、互い

に近い値を持った各要素が同一

クラスターに所属するように所属

クラスターを決めてゆく

• 自己組織化マップは互いに近い

値を持った各要素が近くなるよう

に低い次元上にマップする

• 自己組織化マップは1988年に

Kohonenが提案した

(Kohonen 1934-)

(3)

自己組織化とは?

(Wikipediaより)

• 大脳皮質の視覚野をモデル化したニューラル

ネットの一種

• 教師なし学習によるクラスタリングの手法の

一つ

• 次元削減による可視化の手法の一つ

(4)

生物の神経細胞の構造をモデル化

神経細胞、すなわちニューロンが情報処理の単位

樹状突起がニューロンに対する入力

軸索がニューロンからの出力

計算機上では各ニューロンをノード、軸索をエッジとして表す

樹状突起 軸索 細胞体 神経末端 (基礎分子生物学3 学生作成資料より)

(5)

似た情報が入力されると

脳の似た細胞が反応する?

(6)

SOM (Self Organization Map)

自己組織化マップ

• 多次元情報を低い次元にマッピングする

• データが近いもの同士がマッピングでも近くな

るように配置する

X(1) = (9.5, 3.2, 7.5, 9.7, 6.1) X(2) = (2.1, 2.9, 2.1, 3.1, 1.1) X(3) = (2.2, 2.7, 2.3, 3.0, 1.2)

(7)

SOMのネットワーク構造

1 2

入力データ

入力層 出力層 入力ノード 1.7 出力ノード 重み 1.2 2.3

(8)

入力データの提示、距離の計算

入力データ

入力層 出力層 1.2 2.3 入力ノード 0.7 1.5 1 2 (a)

距離 = (1.2 – 0.7)

2

+ (2.3 – 1.5)

2

= 0.89

(9)

最小距離ノードj

min

の特定

入力データ

入力層 出力層 1.2 2.3 入力ノード 1.1 1.9 1 2 jmin (b)

(10)

近傍ノードN

jmin

の特定

入力データ

入力層 出力層 1.2 2.3 入力ノード 1.1 1.9 jmin

N

jmin 1 2 2.1 2.5 (c)

(11)

近傍ノードN

jmin

の重みの更新

入力データ

入力層 出力層 1.2 2.3 入力ノード 1.15 2.1 jmin

N

jmin 1 2 1.65 2.4 (d) 入力ノード1とjminの新しい重みw1,jmin = 1.1 + η(1.2 - 1.1) η=0.5なら、1.15となる 入力データと重みの差

(12)

次々と入力データを変えて提示

入力層から出力層への重みwを逐次変えてゆく

N

jmin

の範囲を狭めてゆく

ηを小さくしてゆく

最終的には各入力データが所属する出力層のノードは最小距

離ノードとなる

入力データ

入力層 出力層 3.9 2.1 入力ノード 1 2

入力データ

入力データ

2.2 2.5 0.3 1.2

w

(13)

SOMによる二次元へのマッピング

# d1 d2 d3 0 4.0 5.0 2.0 1 4.1 5.2 2.3 2 70.0 70.0 70.0 3 4.3 5.0 2.1 4 20.0 21.0 22.0 5 3.8 5.3 2.0 6 1.0 2.0 3.0 7 5.0 4.0 3.0 8 1.0 3.0 3.0 9 1.0 2.1 3.1 10 5.1 4.1 3.1 11 1.1 3.1 3.1 12 50.0 34.0 13.0 13 45.0 32.0 15.0 14 49.0 51.0 21.0 15 3.9 5.0 2.1 16 21.0 22.0 23.0 17 23.0 24.0 25.0 18 25.0 26.0 27.0 19 4.5 5.1 2.2 3 19 7 10 2 0,15 5 1 11 16 14 8 6 17 9 4 13 18 12 (a) (b)

(14)

遺伝子の発現のプロセス

遺伝子の発現のプロセス

DNA

ATG

mRNA

AUG

転写

翻訳

タンパク質

TAA

遺伝子

UAA

(15)

タンパク質合成

タンパク質合成

翻訳

翻訳

• コドン

• アミノ酸

UGCUCAUGUUGG

ACGAGUACA

システイン

セリン

スレオニン

ACC

スレオニン

mRNA

tRNA

タンパク質

(16)

UUU Phe (F) UCU Ser (S) UAU Tyr (Y) UGU Cys (C)

UUC Phe (F) UCC Ser (S) UAC Tyr (Y) UGC Cys (C)

UUA Leu (L) UCA Ser (S) UAA * UGA *

UUG Leu (L) UCG Ser (S) UAG * UGG Trp (W)

CUU Leu (L) CCU Pro (P) CAU His (H) CGU Arg (R)

CUC Leu (L) CCC Pro (P) CAC His (H) CGC Arg (R)

CUA Leu (L) CCA Pro (P) CAA Gln (Q) CGA Arg (R)

CUG Leu (L) CCG Pro (P) CAG Gln (Q) CGG Arg (R)

AUU Ile (I) ACU Thr (T) AAU Asn (N) AGU Ser (S)

AUC Ile (I) ACC Thr (T) AAC Asn (N) AGC Ser (S)

AUA Ile (I) ACA Thr (T) AAA Lys (K) AGA Arg (R)

AUG Met (M) ACG Thr (T) AAG Lys (K) AGG Arg (R)

GUU Val (V) GCU Ala (A) GAU Asp (D) GGU Gly (G)

GUC Val (V) GCC Ala (A) GAC Asp (D) GGC Gly (G)

GUA Val (V) GCA Ala (A) GAA Glu (E) GGA Gly (G)

GUG Val (V) GCG Ala (A) GAG Glu (E) GGG Gly (G)

(17)

コドン使用の解析

遺伝子A: atg acg agt acg taa

遺伝子B: atg aac tac aac tag

遺伝子C: atg aat aat aat taa

atg=0.25, acg=0.5, agt=0.25 atg=0.25, aac=0.5, tac=0.25 atg=0.25, aat=0.75

. .

各遺伝子のコドン使用は61次元のベクトルとして表現される

aaa aac aag aat aca acg act .. 遺伝子A=(0.0, 0.0, 0.0, 0.0, 0.5, 0.0, 0.0, ..) 遺伝子B=(0.0, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, ..) 遺伝子C=(0.0, 0.0, 0.0, 0.75,0.0, 0.0, 0.0, ..)

(18)

SOMによるコドン使用の解析

0 5 10 15 20 25 30 35 40 45 50 0 5 10 15 20 25 30 35 40 45 50 Bbur Bsub Buch Ctra Ecoli Hinf Hpyl Mgen Mtub Paer Tpal Vcho

(19)

PerlによるSOMの実装

http://www.bioinfo.sfc.keio.ac.jp/class/bioin

fo-a

の本日の授業の箇所よりファイルをダウ

ンロードし、解凍。

• ファイルを各自の作業ディレクトリに配置

– RS_data_handler.pm … 多次元データを扱う

パッケージ

– rslib_SOM.pm … SOMに有用な関数群

– test1.pl … 上記関数の使用サンプル

– testdata1.txt … テストデータ

(20)

初期設定

#!/usr/bin/env perl use strict; use warnings; require Exporter; use RS_data_handler;

use rslib_SOM qw(find_winner neighbour); *::X_LEN = ¥ 10; # 横のノード数

(21)

データの読み込み

# ファイル中のデータを扱うためのオブジェクト

my $data_obj = new RS_data_handler "./testdata1.txt";

print “Dimension: ”, $data_obj->dim(), “¥n”; # データの次元数 print "Some input data:¥n";

for my $i (0..29){

# 次々と入力データを廻してデータラベルを$label、データを@dataに格納 my($label, @data) = $data_obj->next_data();

print join("¥t", $label, @data), "¥n"; }

print "All data:¥n";

# 全てのデータを一度に取り出す

for my $data_ref (@{$data_obj->all_data()}){ my($label, @data) = @$data_ref;

print join("¥t", $label, @data), "¥n"; }

(22)

重みをランダムに振る

my @w; # 入力層のノード$iから出力層$jへの重みは$w[$j]->[$i]として実装 # $jのX座標は、$x % $::X_LEN

# $jのY座標は、int($x / $::X_LEN)

for(my $j = 0; $j < $::X_LEN * $::Y_LEN;$j ++){ for(my $i = 0;$i < $data_obj->dim();$i ++){

$w[$j]->[$i] = rand(); }

(23)

最小距離ノードの決定

my($label, @data) = $data_obj->next_data(); my $min_j = find_winner(¥@data, ¥@w);

(24)

近傍ユニットの特定

my @neighbours = neighbour($min_j, $range, $::X_LEN, $::Y_LEN); print "Neighbours: ", join(",", @neighbours), "¥n";

(25)

各データの最終的な

所属ノード(出力層)の出力

for my $data_ref (@{$data_obj->all_data()}){ my($label, @data) = @$data_ref;

my $min_j = find_winner(¥@data, ¥@w); my $x = $min_j % $::X_LEN;

my $y = int($min_j / $::X_LEN);

print join("¥t", $label, $min_j, $x, $y, @data), "¥n"; }

参照

関連したドキュメント

その産生はアルドステロン合成酵素(酵素遺伝 子CYP11B2)により調節されている.CYP11B2

いかなる使用の文脈においても「知る」が同じ意味論的値を持つことを認め、(2)によって

第四章では、APNP による OATP2B1 発現抑制における、高分子の関与を示す事を目 的とした。APNP による OATP2B1 発現抑制は OATP2B1 遺伝子の 3’UTR

ADAR1 は、Z-DNA 結合ドメインを2つ持つ ADAR1p150 と、1つ持つ ADAR1p110 が.

以上の結果について、キーワード全体の関連 を図に示したのが図8および図9である。図8

実際, クラス C の多様体については, ここでは 詳細には述べないが, 代数 reduction をはじめ類似のいくつかの方法を 組み合わせてその構造を組織的に研究することができる

・逆解析は,GA(遺伝的アルゴリズム)を用い,パラメータは,個体数 20,世 代数 100,交叉確率 0.75,突然変異率は

ら。 自信がついたのと、新しい発見があった 空欄 あんまり… 近いから。