概要
UMAPとは、Uniform Manifold Approximation and Projectionの略称で、次元圧縮手法の1つです。例えば10種類の配合データなどの高次元データを、人が感覚的に判断できる低次元データ(主に2次元)に圧縮し、データ間の関係性を分かりやすく可視化することが可能です。低次元データに変換したグラフにおいて距離が近いデータ同士は、実際の高次元データでも類似しており、逆に距離が遠いデータ同士はあまり類似していないと判断することができます。
UMAPによるデータ変換イメージ
次元圧縮の有用性と注意点
高次元な空間における任意のデータは、2次元で表現した方が直感的に理解しやすくなります。ただし、次元圧縮する過程で情報損失が発生するので、実データと比較すると必ず不整合が発生します。不整合の例としては、地球儀と世界地図の例が挙げられます。地球儀は地球の姿を表現できていますが、メルカトル図法による2次元の地図で表現した時に南極やグリーンランドが実際の面積よりもかなり大きく表示されてしまいます。一方で面積を一致させると距離や方位の整合性がとれなくなります。このように、高次元データから低次元データへの変換は、必ず何かしらの情報が消えてしまいます。ですので、低次元変換後のデータについては、正確に解釈することよりも、ざっくりと傾向をとらえる姿勢が重要です。
UMAPも同様で、変換後の距離や座標自体には意味がなく、マップ全体を俯瞰して、相対位置を把握することが重要です。
次元圧縮のイメージ
他の次元圧縮手法
主成分分析、t-SNE、オートエンコーダーなど、次元圧縮には様々な手法があります。各手法で特性が異なっており、状況にあわせて使い分けることが重要です。
特性の例を下記に示します。
- 圧縮方法が線形 or 非線形
- 計算速度
- 構造保持が大域的 or 局所的
- ハイパーパラメーターの有無
- 可視化用途 など
使用例
UMAPは、MI-6が提供するSaaS型実験計画プラットフォームであるmiHub®︎にも搭載しており、主にベイズ最適化を用いて出力される候補点と既存データとの類似度を確認する、あるいはベイズ最適化の進捗分析や収束判断などに活用しています。
なお、ベイズ最適化とは、目標達成するための条件を効率よく逐次的に最適化する手法です。
ベイズ最適化実施後における、具体的なUMAPの使用例について3つ紹介します。
例1: データが有する特徴・属性を理解する
UMAPでは、クラスターの有無が非常に重要です。下図のようなグラフが得られた場合は、クラスターの数、クラスターに所属しているか否かなどによって、様々な解釈をすることができます。
UMAPの解釈
クラスターができているかどうかは、定性的な判断になります。
下図に、クラスターが明瞭な場合とそうでない場合について例を示します。クラスターの発生が明瞭に確認できない場合、データに潜在的なグループやパターンが存在しないか、またはデータ密度が低く構造が見えづらいことを示唆します。特に少数データではクラスターが現れにくくなります。この場合、データの特徴・属性を把握することが困難になります。
クラスターの具体例
例2: 類似する学習データを確認する
UMAP上で同じクラスターに位置している場合はデータが類似している可能性が高いですが、類似しているデータ同士で目的変数が大きく異なる場合は、より注意深く考察する必要があります。
類似データの確認
説明変数が類似しているが目的変数が大きく異なるデータは以下のような理由が考えられるため、実データの確認を推奨します。
類似データにおいて目的変数が異なる具体例
例3: 候補点の探索度合いを推測する
変換後のプロットから、ベイズ最適化から出力される候補点が既存データを活用した点なのか、あるいはチャレンジングな未知エリアを探索した点なのかを確認することができます。
例えば、下図のような結果が得られた場合、ベイズ最適化候補点1の付近にある既存のデータNo.41を確認し、比較的類似した条件であることが分かったため、「活用」寄りと推測できます。また、候補点が活用寄りなのか探索寄りなのかを把握することで、ベイズ最適化の進捗具合を推測したり、データ獲得戦略を理解することが可能です。探索・活用というのはベイズ最適化で用いられる用語で、「未知の領域の探索度合いの大小」を表します。
ベイズ最適化で出力した候補点の解釈
ベイズ最適化を使用する上でのUMAPに関するよくある質問
最後に、ベイズ最適化を活用していくうえでのUMAPに関するよくある質問をまとめます。皆さんの活用のご参考になれば幸いです。
Q.UMAPで既存データから離れた候補点を選択した方がいい?
できるだけ未知のチャレンジングな候補点を選択したい場合は1つの手段としてありますが、UMAPの位置関係だけではなく、出力されたベイズ最適化候補点の予測平均や分散も考慮したうえで総合的に判断して選択することが望ましいです。
Q.UMAPはどうなっていくのが望ましい?
まずはクラスターが現れはじめると、データ同士が類似しているかの判別がつきやすくなります。そして、ベイズ最適化による候補点が既存のデータと同じクラスターにマッピングされるようになれば、収束判断の1つの目安になります。
Q.軸のスケールやレンジに意味はある?
意味はございません。データの分布について定性的に評価する必要があります。
Q.初期サイクル時点で候補点が密集している場合はどう解釈すべきか?
初期のデータ数にも依存しますが、まずは候補点同士が実際に似たようなデータになっているかを目視で確認する必要があります。その上で、人が見ても明らかに同じようなデータになっている場合は、探索範囲が狭すぎないか?制約条件で解の候補数が想定以上に少なくなっていないか?を確認する必要があります。
Q.クラスタリングの理由はわかる?
特定の線形なルールに基づいてクラスターが形成されるわけではないので解釈することは極めて困難です。
Q.UMAP上で空いている部分を候補点として出力させることは可能か?
狙って出力することはできません。また、UMAP変換後のマップ全体が全てのデータと対応しているわけではないため、そもそも存在しない領域である可能性もあります。