度ずつ角度を変えて撮影した画像データセットです。枚の画像が用意されています。区画のグレースケールを取得します。次元のデータに対し、可視化を試みます。実行した結果は下記のとおりです。散布図を見ると、各物体が混ざってしまっていて、まったく分類できていないことがわかります。コードは下記のとおりです。下記のような実行結果が得られました。種の写真が、おおむね綺麗に分類できていることが分かります。画像データは、ひとつの物体を5度ずつ角度を変えて撮影したものです。度近くの回転をして撮った写真は、当然似た写真になります。多次元空間での構造を低次元空間に表すことができていると考えられます。見ると、右上あたりに、いくつかの線状に連なっているものがありますね。種のミニカーの写真のようです。近い空間に配置されているというわけです。コードは下記のとおりです。パッケージを使用しました。実行は非常に簡単です。関数の引数にデータセットとオプションを指定するだけで実行できます。他の次元削減手法を適用した結果が掲載されています。以外はうまく可視化できていないことがわかります。ようないくつかの部分に分かれているデータには不向きのようです。データが分かれている構造をしていても有効なので、複数のクラスタがあるデータを可視化したいときには便利な手法であるといえるでしょう。他の手法と比較した結果も掲載されているので、興味のある方は是非ご覧ください。紹介および実行結果でした。高次元データの関係性をうまく捉えることができる手法であることをご理解いただけたと思います。次元が推奨されています。次元でも計算できないことはないのですが、計算コストがかなり高くなってしまうので実用的ではありません。次元以外の次元に圧縮したい場合は別のアルゴリズムを用いるべきです。主な用途は可視化であるので、特に大きな問題ではないかと思われます。得意領域はデータのつながり度合いの構造によって決まりそうですが、高次元データにおいてその構造はどのように解明できるのでしょうか?このような高次元データの構造を解明する方法の一つとして、「トポロジカルデータアナリシス(TDA)」という分野を用いる方法があります。弊社ブログにてご紹介させていただく予定ですので、お楽しみに!ALBERTでは、データサイエンティストを積極募集しています。採用ページをご覧ください。