Pythonで始める機械学習
scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎
3章教師なし学習
早稲田大学 4年 内田 裕貴
2018/5/13 アプリケーション開発サークル
A+plus勉強会
1
教師あり学習と教師なし学習
アルゴリズム 活用先
教師あり学習 分類 ロジスティック回帰/決
定木/SVM/ニューラル
ネットワーク
スパムメール判定
回帰 線形回帰分析 価格予測
教師なし学習 次元圧縮 主成分分析/特異値分析
など
商品の類似性可視化
クラスタリング K-means法など 顧客のセグメント分け
2
教師なし学習
 アルゴリズムの学習に教師情報を用いない機械学習
 一般的に、知識を抽出する事が目的
正解データがないため、教師なし学習の結果は手動で確かめるしかない
 データをよりよく理解するため
 データを教師あり学習に使用するための前処理
3
教師なし学習の種類
データセットの変換
次元削減
•PCA
•NMF
•t-SNE
クラスタリング
階層型クラスタリング
•凝集型クラスタリング
非階層型クラスタリング
•k-means
•DBSCAN
4
次元削減
 高次元な入力データから、少量の本質的な特徴を発見し、入力データを要約する事
 その結果 可視化・データの圧縮・表現の発見 などが可能
 使用するアルゴリズム
 主成分分析(PCA)
 非負値行列因子分解(NMF)
 t-SNE
5
主成分分析(PCA)
 高次元空間に存在するデータ群を回転させ、人間にもわかりやすくする事
やっていることは特徴量抽出だが、次元削減でも使える
(そもそもこの二つはやってることは同じ事が多い)
https://sites.google.com/site/csci5740g/home/topics-lectures/svdandpca
b→cで、回転させている(真上から見下ろしているイメージ)
6
非負値行列因子分解(NMF)
 特徴量を抽出することを目的とした手法
 全てが非負値でなければ使えないが、PCAよりも理解しやすい成分に分解してくれる。
(例えば、複数の楽器から成り立っている音楽を楽器ごとの音に分解するなど)
 NMFで分解される成分は、足し算によって表現できる成分である。
そのため、掛け算や割り算によって説明する成分よりも直感的に理解しやすいもので
ある事が多い
 PCAとアルゴリズムが似ているので次元削減にも使える
7
t-sneを用いた多様体学習
 多様体学習アルゴリズムの一種で、データを説明できる特徴を生成する
 データを変換して散布図で可視化したい場合に用いる
可視化であれば、PCAでも良いが、回転させ、成分を削ぎ落とすという関係上、
有用性が限られる
 2点間の近さを、確率分布で表す手法
8
https://blog.albert2005.co.jp/2015/12/02/tsne
多様体学習アルゴリズム
 多様体学習アルゴリズムは多次元のデータから、2次元の特徴量を生成し、可視化
に用いる
 このアルゴリズムは、3次元以上のデータであっても2次元(曲面)で表現可能であ
るという考え方
9
https://cdn.clipkit.co/tenants/86/item_images/images/000/002/468/medium/6f16e8c5-32d6-49b5-ba31-923af8a605e6.png?1475405667
http://s0sem0y.hatenablog.com/entry/2017/07/06/133450
クラスタリング10
クラスタリング
階層型クラスタリング
•凝集型クラスタリング
非階層型クラスタリング
•k-means
•DBSCAN
似たデータをクラスタ分けする教師なし学習の手法の一つ
教師あり学習の分類問題とは別のもの
凝集型クラスタリング
 凝集型クラスタリングを行うと、階層型クラスタリングが行われる
11
個々のデータをそれぞれ個別のクラスタとして開始し、最も類
似した二つのクラスタ(データ)を併合していくアルゴリズム
一定のクラスタを下回るまで併合が続く。
※動作の関係上、予測には使えない
https://qiita.com/AwaJ/items/ab43ce47817b3b864b9e
階層型クラスタリングの可視化
 2次元のデータセットでは、円で表現
 3次元以上のデータセットでは、デンドログラム
12
https://qiita.com/AwaJ/items/ab43ce47817b3b864b9e
K-means法によるクラスタリング
 ある領域を代表するようなクラスタ重心を見つけるアルゴリズム
13
個々のデータを一
番近いクラスタに
振り分ける
クラスタごとに
重心を計算し、
クラスタの位置
を更新
K-means法によるクラスタリング14
ここのデータをクラスタに振り分け 重心を計算
クラスタの位置を更新 データを一番近いクラスタに振り分け直す
クラスタリング以外のK-means法
ベクトル量子化・成分分解
PCA・NMFでは入力次元を少ない次元に落として表現する
K-meansでは、入力次元よりも多い次元(k次元)で表現できる。
15
DBSCAN
 DBSCANは個々のデータポイントを三つに振り分ける
1:高密度領域のうちにあるコアポイント
2:コアポイントから一定距離にないにある境界ポイント
3:それ以外のノイズ
 利点1:k-meansや凝集型クラスタリングとは違い、外れ値(ノイズ)を認識できる
利点2:ユーザーがクラスタ数を人力で与える必要がないアルゴリズム
利点3:遅い代わりに比較的大きいデータにも用いることができる
16
クラスタリングの性能評価
 正解クラスタリングデータがある場合:
調整ランド指数(ARI)
正規化相互情報量(NMI)
※正解データがある場合には教師あり学習を用いるのが基本なので、そもそも正
解データがある状況は少ない
 正解クラスタリングデータがない場合:
シルエット係数
※シルエット係数は実際にはあまりうまくいかないことが知られている
17
まとめ18
 教師なり学習は、前処理のほか、知見や解釈の一助として扱
うことが多く、これだけで完結するようなことはない
 教師なし学習のクラスタリングの精度評価は難しい(完)

More Related Content

PPTX
TokyoRリプレイ - RからfastTextを使ってみた
PDF
TensorFlow 入門
PPTX
Self-Critical Sequence Training for Image Captioning (関東CV勉強会 CVPR 2017 読み会)
PPTX
Sequence Level Training with Recurrent Neural Networks (関東CV勉強会 強化学習論文読み会)
PPTX
卒業研究進捗報告
PDF
Multi reference training with pseudo-references for neural translation and te...
PDF
テストデータについて
PPTX
TokyoRリプレイ - RからfastTextを使ってみた
TensorFlow 入門
Self-Critical Sequence Training for Image Captioning (関東CV勉強会 CVPR 2017 読み会)
Sequence Level Training with Recurrent Neural Networks (関東CV勉強会 強化学習論文読み会)
卒業研究進捗報告
Multi reference training with pseudo-references for neural translation and te...
テストデータについて

Similar to Un supervised learning (20)

PDF
第四回 集合知プログラミング勉強会資料
PDF
2013.07.15 はじパタlt scikit-learnで始める機械学習
PDF
予測型戦略を知るための機械学習チュートリアル
PPTX
Python 機械学習入門
PDF
分類問題 - 機械学習ライブラリ scikit-learn の活用
PPTX
[機械学習]文章のクラス分類
PPTX
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
PDF
機械学習とその理論 (情報オリンピック2015春合宿講義資料)
PDF
機械学習チュートリアル@Jubatus Casual Talks
PDF
Jubatusにおける大規模分散オンライン機械学習
PPTX
機械学習の基礎
PDF
Machine&data
PDF
[第2版] Python機械学習プログラミング 第3章(5節~)
PDF
機械学習の理論と実践
PPTX
MLaPP輪講 Chapter 1
PDF
機械学習 入門
PDF
東京都市大学 データ解析入門 8 クラスタリングと分類分析 1
PPTX
続・わかりやすいパターン認識 9章
PDF
機械学習
PDF
Machine learning for biginner
第四回 集合知プログラミング勉強会資料
2013.07.15 はじパタlt scikit-learnで始める機械学習
予測型戦略を知るための機械学習チュートリアル
Python 機械学習入門
分類問題 - 機械学習ライブラリ scikit-learn の活用
[機械学習]文章のクラス分類
データサイエンティストに聞く!今更聞けない機械学習の基礎から応用まで V7
機械学習とその理論 (情報オリンピック2015春合宿講義資料)
機械学習チュートリアル@Jubatus Casual Talks
Jubatusにおける大規模分散オンライン機械学習
機械学習の基礎
Machine&data
[第2版] Python機械学習プログラミング 第3章(5節~)
機械学習の理論と実践
MLaPP輪講 Chapter 1
機械学習 入門
東京都市大学 データ解析入門 8 クラスタリングと分類分析 1
続・わかりやすいパターン認識 9章
機械学習
Machine learning for biginner
Ad

Un supervised learning