ウシジの深層・強化学習の学習

深層学習、強化学習に関して、学んだことや論文、ニュース等を紹介していきます。よろしくお願いします。

Coursera Machine Learning: Week8-1 Unsupervised Learning

移転しました。

f:id:ushiji:20191203125437p:plain

CourseraのMachine Learningについてまとめています。 前回は、Week7 Support Vector Machines(サポートベクターマシン)についてまとめました。 

今回は、Week8の前半、Unsupervised Learning(教師なし学習)について学びます。

  

 

Week8

Unsupervised Learning(教師なし学習

教師なし学習とは何でしょうか。これまでの講義で扱ってきたのは、教師あり学習で、下記図のようにラベル付き(y=0 or 1とか)のデータが与えられ、それを基に境界線を引いたり、予測を行ったりしてきました。

f:id:ushiji:20191206143008p:plain

Supervised learning

教師なし学習では、このようなラベルは無く、ラベル付けされていないトレーニングセットから、データの特徴を探し出すことを行います。例えば、下記図のように、各データがどのようにグループ化できそうか、クラスタを探すクラスタリングアルゴリズム教師なし学習です。

f:id:ushiji:20191206143311p:plain

Unsupervised learning

このようなクラスタリングには、下記のような使い道があります。

  • マーケティング分析(マーケットのセグメンテーション)
  • ソーシャル・ネットワーク分析(同質なグループを見つけ出す)
  • コンピュータのクラスタの分析(どのPCがデータセンターにある他のクラスタと一緒に仕事をする傾向にあるか等の分析を行い、リソース配分等に活用する)
  • 銀河の形成を理解するための研究

 

K-means algorithm

クラスタリングアルゴリズムとして人気のアルゴリズムの1つがK-means algorithmです。K-means algorithmでは、下記図のようにクラスタリングを行います。

f:id:ushiji:20191206153545p:plain

K-means algorithm

K-meansアルゴリズムでは、下記の2つの入力を必要とし、下記図のように計算を進めます。

f:id:ushiji:20191206155617p:plain

K-means algorithm

また、K-meansアルゴリズムは、下記のようなTシャツのサイズ分け等にも利用可能とのことです。S, M, Lサイズをどのくらいのサイズにするのか検討するのに用います。

f:id:ushiji:20191206160501p:plain

T-shirt sizing

 

Random initialization 

Cluster centroidsをランダムに初期化する際に、よく用いられる方法としては、トレーニングデータの中から、ランダムにK個取り出し、それをCluster centroidsに用いるという方法があるそうです。

しかしながら、ランダムに初期化した場合に、うまく全体最適できれば良いのですが、下記図のように局所最適解に陥ってしまう場合もあります。

f:id:ushiji:20191206162636p:plain

Local optima

これを解決するためには、K-meansを複数回初期化し、複数回実行するのが良いとのことです。例えば、100回初期化してそれぞれK-meansを実行すると、100個の異なるクラスタリングの結果が得られます。最後に、この結果から、一番コスト(下記の式。各データから属しているCentroidまでの距離の二乗の平均)の低いものを選べば、良いクラスタリングが得られます。

f:id:ushiji:20191206163401p:plain

K-means Cost

 

 

 

次回は、Week8の後半、Dimensionality Reductionについてまとめます。

ushiji.hatenablog.com

 

コース全体の目次とそのまとめ記事へのリンクは、下記の記事にまとめていますので、参照ください。

ushiji.hatenablog.com