SlideShare a Scribd company logo
機械学習	machine-learning	
•  教師なし学習	unsupervised	learning	
–  階層的クラスタリング	hierarchical	clustering	
•  最短距離法	Single-linkage	
•  最長距離法	Complete-linkage		
•  平均法	Average	method	
•  重心法	Centroid	method	
–  主成分分析	principal	component	analysis;	PCA	
•  教師あり学習	supervised	learning	
•  決定木	decision	tree	
•  ランダムフォレスト	random	forest	
•  サポートベクトルマシン	support	vector	machine	(SVM)	
•  ロジスティック回帰	logis@c	regression	
•  線形判別分析	linear	discriminant	analysis	(LDA)	
•  深層学習	deep	learning	
1
決定木	(decision	tree)とランダムフォレスト	
•  できるだけ少ない質問で、正解を予測する	
•  何度もランダムな決定木を作り、多数決で予測する手法をランダムフォレスト
(random	forest)と言います。	
2
教師あり高次元ベクトルデータ	
•  化合物データ	
白=活性あり、黒=活性なし	
•  遺伝子発現データなどと思ってくれても
OKです。	
•  簡単のため、2次元の整数で取り扱える
データにしていますが、実際は高次元の
実数で取り扱います。	
•  左のような観測データがあるとき、「?」
の場所の化合物が白か黒か予測したい。	
3	
?
真実はこうであるとします。	
4
白か黒か予測する決定木(質問は2回までの場合)	
5	
X	>	6	
Yes	
Black:	1	
White:	15	
No	
START	
白と予測
白か黒か予測する決定木(質問は2回までの場合)	
6	
X	>	6	
Yes	
Black:	1	
White:	15	
No	
Y	<	3	
Black:	28	
White:	2	
Black:	3	
White:	15	
START	
白と予測	
黒と予測	白と予測	
Yes	 No
白か黒か予測する決定木(質問は2回までの場合)	
7	
X	>	6	
Yes	
Black:	1	
White:	15	
No	
Y	<	3	
Black:	28	
White:	2	
Black:	3	
White:	15	
START	
白と予測	
黒と予測	
白と予測	 黒と予測	
本当は白	 30	 2	
本当は黒	 4	 28	
正解率(accuracy)	=		
(30	+	28)	/	(30	+	2	+	4	+	28)	=	0.906	
白と予測	
Yes	 No
でも実際にはほんの一部しか観測できないわけでして	
8	
?
観測できている範囲内でベストの予測を試みます。	
9	
?	
X	<	1	
Yes	
Black:	0	
White:	2	
No	
Y	<	2	
Black:	6	
White:	2	
Black:	1	
White:	3	
START	
白と予測	
黒と予測	白と予測	
Yes	 No	
白と予測	 黒と予測	
本当は白	 5	 2	
本当は黒	 1	 6	
見かけ上の正解率(accuracy)	=		
(5	+	6)	/	(5	+	2	+	1	+	6)	=	0.785	
「?」は黒と予測。
10	
X	<	1	
Yes	
Black:	4	
White:	4	
No	
Y	<	2	
Black:	26	
White:	16	
Black:	2	
White:	12	
START	
白と予測	
黒と予測	
白と予測	 黒と予測	
本当は白	 16	 16	
本当は黒	 6	 26	 真の正解率(accuracy)	=		
(16	+	26)	/	(16	+	16	+	6	+	26)	=	0.656	
「?」の予測はハズレ	
白と予測	
Yes	 No	
真の予測性能は、知る由も無い	
見かけ上の正解率(accuracy)	=		
(5	+	6)	/	(5	+	2	+	1	+	6)	=	0.785	
「?」は黒と予測。
過学習 overfi^ng	
テスト問題だけ解けるようヤマを張った学習をしたせいで、現実の問題に対応する能
力が落ちること	
11	
適度な学習	
過学習	
予測	
白	
予測	
黒	
本当	
白	
6	 1	
本当	
黒	
2	 5	
予測	
白	
予測	
黒	
本当	
白	
30	 2	
本当	
黒	
4	 28	
予測	
白	
予測	
黒	
本当	
白	
7	 0	
本当	
黒	
0	 7	
予測	
白	
予測	
黒	
本当	
白	
25	 6	
本当	
黒	
5	 27	
黒	
白	
白	
白	
白	
白	
黒	
黒	
見かけ上の	Accuracy	
=	(6+5)/(6+1+2+5)	
=	0.79	
真の	Accuracy	
=	(30+28)/(30+2+4+28)	
=	0.91	
見かけ上の	Accuracy	
=	(7+7)	/	(7+0+0+7)	
=	1.0	
真の	Accuracy	
=	(25+27)/(25+5+5+27)	
=	0.84
交差検定	cross	valida@on	
•  予測モデルの性能評価に用いる。	
•  本当は答えの分かっている問題を「training	data」と「test	data」に分割し、training	
dataだけを使って予測モデルを構築し、test	data	の予測をし、答え合わせをする
ことで、予測モデルの性能を見積もる。	
12	
本当は白黒分かっている問題	
4分割交差検定:ランダムに 1/4	を選択して test	
data	(グレー)とし、残りの	3/4	からグレーの本当
の色を予測する。それを4回繰り返す。
予測モデルの評価方法いろいろ	
•  Accuracy	=	(TP	+	TN)	/	(TP	+	FN	+	FP	+	TN)	
–  正解率。予測結果全体と、答えがどれぐらい一致しているかを判断する指標。	
•  Precision	=	TP	/	(TP	+	FP)	
–  適合率。予測を正と判断した中で、答えも正である割合。薬の設計などでは
一般に、Precisionが高い予測モデルが良しとされる。	
•  Recall	=	TP	/	(TP	+	FN)	
–  再現率、回収率ともいう。答えが正の中で、予測が正とされた割合。病気の
診断などでは一般に、Recallが高い予測モデルが良しとされる。	
•  F-measure	=	2	x	Precision	x	Recall	/	(Precision	+	Recall)	
–  F値。PresicionとRecallの調和平均。一般にPrecisionとRecallは逆相関の関係
にあるので、バランスの良い予測をするためにF値を考えることがある。	
•  「精度」という言葉はAccuracyの意味だったりPrecisionの意味だったり曖
昧なので、使用には注意されたい。	
13	
活性ありと予測	 活性なしと予測	
活性あり(陽性)	 True	Posi@ve	(TP)	 False	Nega@ve	(FN)	
活性なし(陰性)	 False	Posi@ve	(FP)	 True	Nega@ve	(TN)
決定木(質問は3回まで)の	
4分割交差検定	4-fold	cross	valida@on	
14	
答え	
白	
白	
白	白	
白	
白	
白	
白	
白	
白	白	黒	
黒	
黒	
黒	
黒	
予測	
白	
予測	
黒	
本当	
白	
1	 1	
本当	
黒	
2	 0	
予測	
白	
予測	
黒	
本当	
白	
2	 0	
本当	
黒	
0	 2	
予測	
白	
予測	
黒	
本当	
白	
2	 0	
本当	
黒	
2	 0	
予測	
白	
予測	
黒	
本当	
白	
2	 0	
本当	
黒	
0	 2	
Accuracy	=		
(1+0)/4	=	0.25	
Precision	=	
1/(1+2)	=	0.33	
Recall	=		
1/(1+1)	=	0.50	
F-measure	=	
0.40	
Accuracy	=	
(2+2)/4	=	1.0	
Precision	=	
2/(2+0)	=	1.0	
Recall	=		
2/(2+0)	=	1.0	
F-measure	=	
1.0	
Accuracy	=	
(2+0)/4	=	0.50	
Precision	=	
2/(2+2)	=	0.50	
Recall	=	
2/(2+0)	=	1.0	
F-measure	=	
0.67	
	
Accuracy	=	
(2+2)/4	=	1.0	
Precision	=	
2/(2+0)	=	1.0	
Recall	=		
2/(2+0)	=	1.0	
F-measure	=	
1.0	
Accuracy	=	
0.6875	
Precision	=	
0.71	
Recall	=	
0.88	
F-measure	=	
0.77	
予測モデルの	
平均性能
教師あり高次元ベクトルデータの機械学習の解析例	
15	
セトナ(setosa)、バーシクル(versicolor)、 バージニカ
(virginica)という3種類のあやめの 4個の計測値:がく片
長(Sepal	Length),がく片幅(Sepal	Width),花びら長(Petal	
Length),花びら幅(Petal	Width)と種(Species)	
主成分分析(PCA)の結果例。それ
ぞれの色の丸がそれぞれの種類
のあやめを表す。
教師あり高次元ベクトルデータの機械学習の解析例	
16	
様々な種類の
サポートベク
ターマシン
(support	vector	
machine,	SVM)
を使って、あや
めの分類を学
習した結果例。	
	
SVMは、教師あ
り学習を用いる
パターン認識モ
デルの一つであ
る。
教師あり高次元ベクトルデータの機械学習の解析例	
17	
青丸と赤丸に分かれる高次元
データを	
•  Nearest	Neighbor法	
•  線形SVM	
•  RBFカーネルSVM	
•  決定木	
•  ランダムフォレスト	
•  Adaboost	
•  Naive	Bayes	
•  線形判別分析	
•  二次判別分析	
	
で学習し、その結果をPCAで二
次元空間上にプロットした図を
示す。色の付いたエリアがそ
の予測結果で、右下の数字が	
Accuracy。様々な機械学習法
が開発されているが、それぞ
れ得意な問題と苦手な問題が
ある。
教師あり高次元ベクトルデータの機械学習の解析例	
18	
青丸と赤丸に分かれる高次元
データを	
•  Nearest	Neighbor法	
•  線形SVM	
•  RBFカーネルSVM	
•  決定木	
•  ランダムフォレスト	
•  Adaboost	
•  Naive	Bayes	
•  線形判別分析	
•  二次判別分析	
	
で学習し、その結果をPCAで二
次元空間上にプロットした図を
示す。色の付いたエリアがそ
の予測結果で、右下の数字が	
Accuracy。様々な機械学習法
が開発されているが、それぞ
れ得意な問題と苦手な問題が
ある。
教師あり高次元ベクトルデータの機械学習の解析例	
19	
青丸と赤丸に分かれる高次元
データを	
•  Nearest	Neighbor法	
•  線形SVM	
•  RBFカーネルSVM	
•  決定木	
•  ランダムフォレスト	
•  Adaboost	
•  Naive	Bayes	
•  線形判別分析	
•  二次判別分析	
	
で学習し、その結果をPCAで二
次元空間上にプロットした図を
示す。色の付いたエリアがそ
の予測結果で、右下の数字が	
Accuracy。様々な機械学習法
が開発されているが、それぞ
れ得意な問題と苦手な問題が
ある。
教師あり高次元ベクトルデータの機械学習の解析例	
20	
青丸と赤丸に分かれる高次元
データを	
•  Nearest	Neighbor法	
•  線形SVM	
•  RBFカーネルSVM	
•  決定木	
•  ランダムフォレスト	
•  Adaboost	
•  Naive	Bayes	
•  線形判別分析	
•  二次判別分析	
	
で学習し、その結果をPCAで二
次元空間上にプロットした図を
示す。色の付いたエリアがそ
の予測結果で、右下の数字が	
Accuracy。様々な機械学習法
が開発されているが、それぞ
れ得意な問題と苦手な問題が
ある。
決定木で、良い質問をどう見つけるか?	
21	
同グループから任意の石を1個取り出す
試行を2度行った時に同じ色である確率
Pを考える。その確率を石の数で重み付
けした値が最大になる分け方を探す。
決定木で、良い質問をどう見つけるか?	
22	
同グループから任意の石を1個取り出す
試行を2度行った時に同じ色である確率
Pを考える。その確率を石の数で重み付
けした値が最大になる分け方を探す。	
X	>	4	で分けた場合	
左グループ:黒6・白1	
	P左	=	(6/7)2	+	(1/7)2	=	0.76	
右グループ:黒8・白13	
	P右	=	(8/21)2	+	(13/21)2	=	0.53	
ΣP=ΣP左+ΣP右=0.76x7+0.53x21=16.45
決定木で、良い質問をどう見つけるか?	
23	
同グループから任意の石を1個取り出す
試行を2度行った時に同じ色である確率
Pを考える。その確率を石の数で重み付
けした値が最大になる分け方を探す。	
X	>	4	で分けた場合	
左グループ:黒6・白1	
	P左	=	(6/7)2	+	(1/7)2	=	0.76	
右グループ:黒8・白13	
	P右	=	(8/21)2	+	(13/21)2	=	0.53	
ΣP=ΣP左+ΣP右=0.76x7+0.53x21=16.45	
X	>	5	で分けた場合	
左グループ:黒10・白4	
	P左	=	(10/14)2	+	(4/14)2	=	0.59	
右グループ:黒4・白10	
	P右 =	(4/14)2	+	(10/14)2	=	0.59	
ΣP=ΣP左+ΣP右=0.59x14+0.59x14=16.52	
微妙に	X	>	5	のほうが良い。	
※ただしこの方法がベストとい
う保証はなく、これ以外にも
様々な方法がある。
白(活性あり)と黒(活性なし)を予測する	
決定木(質問は3回まで)
白(活性あり)と黒(活性なし)を予測する	
決定木(質問は3回まで)	
25	
Y	>	5	
Yes	 No	
X	>	4	
Black:	3	
White:	9	
START	
白と予測	黒と予測	
Yes	 No	
X→	
Y	
↓	
Black:	13	
White:	3	
X	>	5	
Black:	10	
White:	3	
黒と予測	白と予測	
Yes	 No	
Black:	2	
White:	10	
白と予測	 黒と予測	
本当は白	 19	 6	
本当は黒	 5	 23	
Accuracy	=	(19	+	23)/(19	+	6	+	5	+	23)	=	0.79	
Precision	=	19	/(19	+	5)	=	0.79	
Recall	=	19	/	(19	+	6)	=	0.76	
F-measure	=	0.77
課題7	
26	
X→	
Y	
↓	
左図は、自然数で表される物性Xと物
性Yが明らかになっている一連の化合
物をXY空間上にプロットしたものであ
る。白はある薬理活性をもつもの、黒
はもたないものを示しているものとす
る。白と黒を区別する決定木(質問は
3回まで)を2つ以上作成し、
Accuracy,	Precision,	Recall,	F-measure	
を用いた性能比較を行いなさい。	
	
必ずしもベストの性能を持つ決定木を
作る必要はありませんが、できるだけ
性能の良い木を作れるよう頑張ってく
ださい。	
また、この講義の感想なども書いてもらえると嬉しいです。
今後の講義の改善につながるかもしれません。

More Related Content

More from Mas Kot

KNApSAcKデータベースを用いた昆虫・植物間化学的相互作用解析
KNApSAcKデータベースを用いた昆虫・植物間化学的相互作用解析KNApSAcKデータベースを用いた昆虫・植物間化学的相互作用解析
KNApSAcKデータベースを用いた昆虫・植物間化学的相互作用解析
Mas Kot
 
バイオインフォ講義4
バイオインフォ講義4バイオインフォ講義4
バイオインフォ講義4
Mas Kot
 
バイオインフォ講義3
バイオインフォ講義3バイオインフォ講義3
バイオインフォ講義3
Mas Kot
 
バイオインフォ講義2
バイオインフォ講義2バイオインフォ講義2
バイオインフォ講義2
Mas Kot
 
バイオインフォ講義1
バイオインフォ講義1バイオインフォ講義1
バイオインフォ講義1
Mas Kot
 
ケモインフォマティクス
ケモインフォマティクスケモインフォマティクス
ケモインフォマティクス
Mas Kot
 
Metabolic network and cheminformatics
Metabolic network and cheminformaticsMetabolic network and cheminformatics
Metabolic network and cheminformatics
Mas Kot
 
Metabolic Network Analysis
Metabolic Network AnalysisMetabolic Network Analysis
Metabolic Network Analysis
Mas Kot
 
代謝(メタボリック)ネットワーク解析
代謝(メタボリック)ネットワーク解析代謝(メタボリック)ネットワーク解析
代謝(メタボリック)ネットワーク解析
Mas Kot
 

More from Mas Kot (9)

KNApSAcKデータベースを用いた昆虫・植物間化学的相互作用解析
KNApSAcKデータベースを用いた昆虫・植物間化学的相互作用解析KNApSAcKデータベースを用いた昆虫・植物間化学的相互作用解析
KNApSAcKデータベースを用いた昆虫・植物間化学的相互作用解析
 
バイオインフォ講義4
バイオインフォ講義4バイオインフォ講義4
バイオインフォ講義4
 
バイオインフォ講義3
バイオインフォ講義3バイオインフォ講義3
バイオインフォ講義3
 
バイオインフォ講義2
バイオインフォ講義2バイオインフォ講義2
バイオインフォ講義2
 
バイオインフォ講義1
バイオインフォ講義1バイオインフォ講義1
バイオインフォ講義1
 
ケモインフォマティクス
ケモインフォマティクスケモインフォマティクス
ケモインフォマティクス
 
Metabolic network and cheminformatics
Metabolic network and cheminformaticsMetabolic network and cheminformatics
Metabolic network and cheminformatics
 
Metabolic Network Analysis
Metabolic Network AnalysisMetabolic Network Analysis
Metabolic Network Analysis
 
代謝(メタボリック)ネットワーク解析
代謝(メタボリック)ネットワーク解析代謝(メタボリック)ネットワーク解析
代謝(メタボリック)ネットワーク解析
 

機械学習入門の入門