ReNom TDAとは ¶
機械学習、深層学習を行うにあたり、様々なアルゴリズムで訓練データをモデリングします。その際に、複雑なデータの構造をどのように把握し、モデリングしたら良いかを考えます。なぜなら、正しいアプローチを行わないと、学習が上手く進まない場合があるからです。
IoTで日々生み出されるデータは、非常に複雑な構造をしており、論文などであらかじめ結果が保証されているデータセットとは異なります。
それは開発や分析を行うエンジニアが、手掛かりを自分自身の手で探しながら進めていかなければならないことを意味しており、難易度が全く異なります。
我々は、データ分析を行う際に、複雑な多次元データの構造を理解しないでモデリングをするのと、データ構造をある程度理解してモデリングをするのでは、得られる精度や結果が異なると考えています。
また、それらを導き出す為に要する時間が圧倒的に異なると考えており、それを解決する為の方法を考えました。
ReNom TDAは、高次元データを位相空間にマッピングし、可視化・分析するためのモジュールです。データの形状を把握することや、変数同士の関係性を直感的に把握することで、データを解析するエンジニアのモデリングを助けます。
また、ReNom TDAは、データの前処理や、データ構造の把握に限らず、高度なプロファイリングツールとして活用する事ができます。
例えば、複雑なデータ間のつながりを可視化する事で、顧客データの分析や、マシンデータの解析、金融や不正アクセス、サイバーセキュリティの解析など、アイディア次第で様々なデータをプロファイリングすることが可能になります。
我々は、様々なアルゴリズムを通じて、新しい発見や、新しいビジネスが生まれるようなアプリケーションの提供を目指しています。ぜひ様々なアイディアを試してみてください。
TDAとは?
トポロジカルデータアナリシス(TDA)は位相幾何学(Topology)を用いた新しいデータ分析の手法で、位相空間でデータの形状を可視化し、データが持つ意味を抽出することができます。
位相幾何学とは、切り貼りせず連続的に変形しても保たれる性質(輪っかや、空洞を特徴として考える)に注目し、位相空間(集合に位相の情報を付加した空間距離のない空間)で、繋がりを考える数学の分野になります。
位相空間でデータを可視化する事により、従来の方法ではデータを低次元化する際に失われていた特徴を失う事なく、データを可視化する事が可能になります。
TDAによる分析は2種類の方法があります。
1つ目はクラスタリングで、データの分類に用います。ReNom TDAでは1つのノードに特徴の似ているデータが複数含まれています。そのため、トポロジーのノードに含まれるデータに注目することで、特徴を見つけることができます。
2つ目は色の比較を行うことで、目的変数と相関の高い変数を見つけることができます。
様々な変数でトポロジーを色付けし、目的変数と同様な色の分布を示す変数を探します。こうする事で、直感的に目的変数と相関の高い変数を見つけることができます。
Topologyについて
ReNom TDAでは、メトリックとレンズを用いて高次元データをポイントクラウドと言われる低次元空間に投影します。
そして、ポイントクラウドを分割し、分割内のデータを再度クラスタリングすることで、位相空間にデータをマッピングします。次に、共通のデータを持つノード同士を連結し、トポロジーを作ります。
ReNom TDAでは、最後にトポロジーに色をつけ、可視化していきます
メトリックとは、距離を測る尺度を表しており、例えば、ユークリッド距離、コサイン距離、ハミング距離などがあります。
レンズとは、投影の軸を表しており、次元削減の手法として、PCA、T-SNEだけでなく、オートエンコーダーなどのディープラーニングのアルゴリズムをサポートしています。
位相空間にマッピングする際には、ユーザーはハイパーパラメータとして、resolutionで分割の数を、overlapで分割の重なり幅を決定する事が可能になり、そのパラメータに従ってクラスタを分割します。
またPython APIsでは、複数のレンズを組み合わせてポイントクラウドを作ることもできます。また、今後の拡張では、ユーザー自身が様々なアルゴリズムを追加できるようにしていきます。
ReNom TDA GUIとは
ReNom TDAは、webアプリケーションでトポロジーを可視化することができます。コマンド一つでアプリケーションを立ち上げることができ、プログラムを書かずにデータの形状を可視化することができます。
データをCSVから取り込んでアルゴリズムを指定して実行するだけで、複雑なデータを簡単に可視化・分析する事が可能になります。
データの扱い方や操作方法については、ReNomカタログで公開していますので、そちらをご覧ください。
また、次期バージョンでは、このReNom TDAの解析結果で得られた結果を使って、ディープラーニングやその他の機械学習のアルゴリズムに学習させるデータセットを切り出す機能や、複数の目的変数を並べて可視化できるような、
データ分析者に使いやすい機能の開発を進めていきます。