VITALIFY.ASIA logo

夜空の星を解きほぐす:GNNと記号的AIでノイズ点群から星座を復元!ハイブリッドモデル開発

Author profile
Toshihiko Nagaoka2026/07/01
夜空の星を解きほぐす:GNNと記号的AIでノイズ点群から星座を復元!ハイブリッドモデル開発

突然ですがクイズです。
あなたはこの画像からオリオン座を見つけることができますか?

せっかくですので、正解画像を出すのは後回しにして、このブログの本題に入りましょう。
澄み切った夜空を見上げて、オリオン座の三つ星や北斗七星のひしゃくの形をなぞろうとしたことはありませんか?
私たち人間は、「パレイドリア(類像現象)」と呼ばれる並外れた認知能力を持っています。私たちの脳は、ランダムで構造化されていない点群から、意味のある幾何学的パターンを抽出するように生まれつき方向付けられているのです。

パレイドリア - Wikipedia

しかし、コンピューターにとって、座標の雑音(ノイズ)の海からこれらの形状を認識することは、きわめて困難なタスクとして知られています。

この記事では、ノイズが多く構造化されていない座標点群から、互いに重なり合う複数の星座(オリオン座、カシオペヤ座、北斗七星)を検出し、分離し、復元できるハイブリッドグラフニューラルネットワーク(GNN)と記号的推論エンジンをどのように構築したかを紹介します。

極端なノイズ、任意の回転、座標のスケーリングが適用された環境下でも、このエンジンはテストマクロF1スコアで 96.91% を達成しました。その実現手法を以下に解説します。

星空クイズ第2問

さて、ではここで正解画像を表示しましょう。
今回この記事執筆のために開発した星座識別AIはGNNを使用し、正しくオリオン座を見つけることができました。
結果は下記のとおりです。

正解できましたか?

次の問題です。今度は、オリオン座、カシオペア座、北斗七星が画像の中に隠れています。すべて発見できるでしょうか?

今回もまた回答は後回しにして、記事の本題を続けましょう。

なぜ従来のコンピュータビジョンでは対応できないのか

現代のAIエンジニアに形状の分類を依頼すれば、真っ先にResNetやYOLOのような畳み込みニューラルネットワーク(CNN)を使おうとするでしょう。しかし、CNNは構造化されたピクセルグリッド(格子)を対象に動作します。星はピクセルグリッド上には存在しません。宇宙空間における構造化されていない座標なのです。

CNNに入力するために座標データを画像に変換(ラスタライズ)すると、深刻な問題が発生します。

  • 精度の低下: ラスタライズによって高精度な座標が離散的なピクセルグリッドに強制的に押し込められ、量子化ノイズが発生します。
  • 疎なノイズ: 星座マップのピクセルの大部分は空っぽの暗黒空間(値が$0$)であり、CNNでは計算資源の無駄が非常に多くなります。
  • 空間不変性の欠如: CNNは、膨大でコストのかかるデータ拡張(データオーグメンテーション)を行わない限り、任意の回転、平行移動、グローバルなスケール(縮尺)の変化に汎化することが困難です。

これを解決するため、私たちは空をグラフとしてモデル化しました。ここでは、個々の星をノード(頂点)、近接する星どうしの間にエッジ(辺)を張ります。

特徴量エンジニアリング:局所幾何学的シグネチャー(LGS)

システムに回転、平行移動、スケールに対する不変性を持たせるため、私たちは局所幾何学的シグネチャー(Local Geometric Signatures: LGS)を開発しました。

生の座標をそのままGNNに渡すのではなく、それぞれの星ノードがその近傍領域に基づいて、スケール不変な記述子(デシクリプタ)を計算します。

  1. 各ノードについて、K近傍法(K-NN)クエリを用いて、最も近いK=6個の隣接ノードを特定します。
  2. これら6個の隣接ノードへのユークリッド距離を計算します。
  3. 各距離を、そのノードの隣接ノードへの平均距離で除算します。

これにより、それぞれの星に対して6次元のスケール不変な局所フィンガープリント(特徴量)が得られます。これらの比率は、星全体が拡大・縮小、平行移動、または回転しても一定に保たれるため、GNNに対して頑健(ロバスト)で不変な記述子を提供します。

カスタム・エッジ更新GNN

私たちは、4つのメッセージパッシング層を持つカスタムのPyTorch Geometric GNNを構築しました。ノードの特徴量のみを更新する標準的なGNNとは異なり、この層はノードの埋め込み(Embedding)とエッジの属性を同時に更新します。

  • ノードの埋め込み: 隣接する星からの特徴量を集約します。
  • エッジの埋め込み: 4つのクラス(ノイズ(背景)オリオン座の結合カシオペヤ座の結合北斗七星の結合)にわたるエッジレベルの分類ロジットを予測します。

このモデルを、1,500個の合成星野(シミュレーションされた星空)データセットで訓練しました。ランダムなノイズ同士の結合に比べて、本物の星座の結合(エッジ)は極めて稀であるため、クラス不均衡に対処するために重み付きクロスエントロピー損失(Weighted Cross-Entropy Loss)を採用しました。

記号的ガードレール:トポロジー的同型写像フィルター

ディープラーニングモデルは統計的なアプローチをとるため、間違い(エラー)を犯します。ノイズの多い星野において、GNNは星座のエッジの90%を正しく予測できても、1つの結合を見落としたり、入り組んだ2つの星座の間に誤った(偽陽性の)架け橋を予測してしまったりすることがあります。その結果、視覚的に崩れたり、トポロジー(幾何学的接続関係)的に不可能な形状が出力されてしまいます。

完璧な復元を保証するために、私たちはGNNの後段に記号的(シンボリック)な後処理のガードレールを配置しました。

  1. GNNを実行し、各クラスのエッジ確率を取得します。
  2. 確率が>0.05の候補エッジと、それらを形成する候補の星(ノード)を収集します。
  3. バックトラッキングを用いたグラフ同型性探索を実行し、これらの候補ノードを、厳密に定義されたテンプレート(オリオン座、カシオペヤ座、北斗七星の正確な隣接行列)へとマッピングします。

探索によって、星座のトポロジー的な接続関係をすべて満たす有効なマッチングが見つかった場合のみ、その形状を描画します。このハイブリッドなアプローチにより、ディープラーニングによる高速なノイズ除去と、記号論理による構造的な正確性の保証が融合されます。

パフォーマンス評価

極端な座標の揺らぎ(ジッター)、グローバルなスケーリング、および回転を施したテストセットを用いてモデルを評価しました。

  • テストマクロF1スコア: 96.91%
  • 不変性テストF1スコア: 96.68% (完全なスケール・回転不変性を実証)
  • トポロジー的復元精度: マッチングされたすべての出力において 100%の形状正確性 を達成。

星空クイズ第2問 回答編

ではいよいよ、先ほどのクイズの回答です。
すべての星座が左側に密集していました。あなたは正解できましたか?
今回もAIはすべての星座を正しく認識することができました。

おわりに

グラフニューラルネットワーク(GNN)と記号的なトポロジー制約を組み合わせることで、統計的なパターン認識と論理的な幾何学的真実の間のギャップを埋めるシステムを構築しました。

このハイブリッドアーキテクチャの応用可能性は、星空観察にとどまりません。3D点群の分類、分子マッピング、天体座標の処理など、幅広い分野に応用できます。

1,000社以上の事業成長を支えた圧倒的な『スピードと柔軟性』で、御社のアイデアを最短で形にします。まずは無料で壁打ちしませんか?

無料相談はこちら
#Generative AI & ML

「Generative AI & ML」の関連記事

Function Callingとは?AIエージェントの仕組みとLangGraph実装

Function Callingとは?AIエージェントの仕組みとLangGraph実装

Toshihiko Nagaoka2026/07/01

LLMに外部ツールを操作させる「Function Calling」とは?自律型AIエージェントの進化の歴史から、LangGraph(TypeScript)を用いた自社専用エージェントの具体的な実装コードまで徹底解説。

ノイズだらけの物件図面を推論し3Dモデルを自動生成!CubiCasa5K解析とリバースエンジニアリングの挑戦

ノイズだらけの物件図面を推論し3Dモデルを自動生成!CubiCasa5K解析とリバースエンジニアリングの挑戦

Toshihiko Nagaoka2026/07/01

ノイズだらけの物件間取り図(CubiCasa5K)から、機械学習で3Dモデルを自動生成!論文も既存コードも一切見ない「リバースエンジニアリング縛り」で挑む、最高に泥臭くて学びのあるAI開発の全記録。

1枚の写真からリアルな3Dアバターを作る。FLAME / DECA / DiffLocksを使った頭部&髪の毛生成の挑戦

1枚の写真からリアルな3Dアバターを作る。FLAME / DECA / DiffLocksを使った頭部&髪の毛生成の挑戦

Toshihiko Nagaoka2026/06/23

写真1枚からメタバースで使えるリアルな3Dアバターを生成!最新AI「FLAME」「DECA」「DiffLocks」を組み合わせた頭部&髪の毛生成のワークフローと、独自のテクスチャ合成技術を解説します。

ぼくはデューパー、なんでもきいてね!