第11章 ConceptMap-Text — モデル構築とクラスタリング

第11章 ConceptMap-Text — モデル構築とクラスタリング — ThinkNavi 操作マニュアル

第11章 ConceptMap-Text — モデル構築とクラスタリング

11.1 ステップ4:特徴設定(Feature Settings)

各次元の重み(影響力)を調整するステップです。特定の分析軸を強調したり、ノイズの多い次元を弱めたりできます。

操作

各次元に対応するスライダーが表示されます:

パラメータ範囲デフォルト説明
次元の重み0.0〜2.01.0各次元がモデル構築に与える影響力
  • スライダーを右に移動(>1.0): その次元を重視。その軸の差異が拡大されます
  • スライダーを左に移動(<1.0): その次元を軽視。その軸の差異が縮小されます
  • 0.0: その次元を完全に無視

操作手順:

  1. 必要に応じてスライダーを調整
  2. 通常はデフォルト(全て1.0)のままで十分です
  3. 「全てリセット」ボタンで全次元を1.0に戻せます
  4. 「重みを保存」ボタンで設定を確定

活用例:

  • 「理論 ↔ 実践」の次元を重視したい → その次元の重みを1.5に
  • ノイズが多く意味のなさそうな次元がある → その次元の重みを0.3に
  • 全次元を均等に扱いたい → デフォルトのまま

11.2 ステップ5:モデル構築(Model Building)

GNG(Growing Neural Gas)アルゴリズムで概念ネットワークを学習します。GNG はデータの分布に適応的にノード(概念の代表点)を配置するニューラルネットワークアルゴリズムです。

パラメータ一覧

基本パラメータ:

パラメータ範囲デフォルト説明
Max Nodes(最大ノード数)10〜500データ量×0.6GNG が配置するノードの最大数。多いほど細かいモデルになるが、ノイズも増える
Max Iterations(最大反復数)100〜50,0004,000学習の反復回数。多いほど収束するが、処理時間が増える
Lambda1〜20020新しいノードを挿入する間隔。小さい値→ノード挿入が頻繁→より多くのノード
Max Age(最大エッジ年齢)5〜20050使われないエッジが削除されるまでの閾値。小さい値→エッジが積極的に剪定→スパースなネットワーク

アルゴリズム選択:

アルゴリズム説明推奨用途
Default(GNG)標準的なGNG。ハードアサインメント(各データは最も近い1つのノードに割り当て)通常使用(推奨)
Fuzzyファジーメンバーシップ。各データが複数のノードに確率的に所属境界が曖昧なデータ
Enhanced Fuzzy反発力とマージ機能を追加した拡張版高度な分析

Fuzzy 追加パラメータ:

パラメータ範囲デフォルト説明
Temperature0.1〜2.00.5ファジー度。高いほどメンバーシップが均等に分散

Enhanced Fuzzy 追加パラメータ:

パラメータ説明
Temperature End学習終盤のTemperature値
Fuzzifierファジーメンバーシップ関数のパラメータ
Repulsion Betaノード間の反発力の強さ
Merge Epsilon近すぎるノードのマージ閾値
Inertia Alphaノード移動の慣性

操作手順

  1. パラメータを設定します(通常はデフォルトで十分です)
  2. 「モデルを構築」ボタンをクリック
  3. 構築中のプログレスバーが表示されます
  4. 完了後、構築されたネットワークの2Dプレビューが表示されます

2Dプレビューの見方:

  • 各丸がGNG ノード。大きいノードはより多くのデータが割り当てられています
  • ノード間の線がMST(最小全域木)のエッジ
  • ドロップダウンでX軸・Y軸の次元を切り替えて、異なる角度からネットワークを確認できます

パラメータ調整のガイドライン:

  • ノードが多すぎて粗い → Max Nodesを減らす
  • ノードが少なすぎて大まか → Max Nodesを増やす
  • 目安:データ行数の50%〜70%をMax Nodesに設定
  • 50行のデータ → Max Nodes 25〜35
  • 200行のデータ → Max Nodes 100〜140

クレジット消費: モデル構築に20クレジット(自前APIキー使用時は10クレジット)

11.3 ステップ6:クラスタリング

構築されたGNG ノードをテーマ別のグループ(クラスター)に分類します。

クラスタリング方式

方式説明特徴
Ward階層的凝集型。クラスター内の分散を最小化MST構造を考慮。最も安定。推奨
K-Means中心点ベースのクラスタリング高速。球状のクラスターに適する
HDBSCAN密度ベース。クラスター数を自動検出不規則な形状のクラスターに適する
Hierarchical一般的な階層的クラスタリング樹形図的な分析に適する
DBSCAN密度ベース。ノイズ検出可能外れ値の多いデータに適する

設定項目

設定説明
クラスター数ドロップダウンで指定。自動推奨値も表示される
Strict Connectivityチェックすると、MSTのエッジで接続されたノードのみが同じクラスターに所属可能(Wardのみ)
Min Cluster Sizeクラスターの最小ノード数(HDBSCAN / DBSCANの場合)
EPS密度の閾値(DBSCANの場合)

クラスター数の目安:

  • 30ノード以下 → 3〜5クラスター
  • 30〜100ノード → 5〜8クラスター
  • 100ノード以上 → 7〜12クラスター

操作手順

  1. クラスタリング方式を選択
  2. クラスター数を指定(または自動推奨値を使用)
  3. 「クラスタリング実行」ボタンをクリック
  4. 結果のクラスターが色分けされてプレビューに反映されます

クラスターのラベル付け

自動ラベル付け:

  1. 「自動ラベル付け」ボタンをクリック
  2. AIが各クラスターのノードに割り当てられたデータを分析し、テーマ名を提案します
  3. 提案されたラベルが各クラスターの入力欄に自動入力されます

手動ラベル付け:

  • 各クラスターの入力欄にカスタム名を直接入力

ラベルの例:

  • 「技術革新と実装課題」
  • 「ユーザー中心設計」
  • 「組織文化と変革マネジメント」
  • 「市場動向とビジネスモデル」

11.4 トラブルシューティング

問題原因と対処法
ノードが多すぎて見づらいステップ5のMax Nodesを減らして再構築してください
クラスターの分け方が直感に合わないクラスター数を変更して再実行してください。Ward以外の方式(K-Means, HDBSCAN)も試してみてください
自動ラベルが的外れAIの提案は参考程度です。データの内容を踏まえて手動で修正してください
「モデル構築」に時間がかかるMax Iterationsが大きすぎる可能性があります。4000程度で十分な場合がほとんどです
ステップを戻って再実行すると後続ステップが消える仕様です。次元削減からやり直すと、特徴設定以降のデータがリセットされます。重要な結果は事前に「保存」してください

11.5 モデル構築のヒント — パイプラインの理解と最適化

ConceptMap-Textのモデル構築は、以下のパイプラインで処理されます。各ステップの役割と影響を理解することで、より良いモデルを構築できます。

パイプライン全体像

テキストデータ
  ↓ OpenAI Embedding(1536〜3072次元)
  ↓ UMAP次元削減(3〜8次元)
  ↓ GNG学習(次元削減後の空間上でノードを配置)
  ↓ MST接続(ノード間を最小全域木で接続)
  ↓ クラスタリング(ノードをグループに分類)

重要なのは、GNG-MSTが学習するのはUMAPで次元削減された多次元空間(3〜8次元)であるという点です。探索画面の3Dグラフは表示のために3次元を選択して描画していますが、モデル自体はより多くの次元で構築されています。

UMAPの役割と影響

UMAPは単なる前処理ではなく、GNGが学習する空間の構造そのものを決定する重要なステップです。UMAPのパラメータを変更すると:

  • 概念間の距離関係が変わる → GNGのノード配置が変わる
  • クラスターの分離度が変わる → クラスタリング結果が変わる

つまり、同じデータでもUMAPの設定によって異なるモデルが構築されます。

UMAPパラメータの実践的な調整指針:

目的n_neighborsmin_dist効果
デフォルト150.1多くのケースで良好
クラスターを明確に分離5〜100.01〜0.05局所構造を重視。小さな概念グループが分かれやすい
均等な分布にする20〜300.3〜0.5GNGノードが空間全体に均等に広がる
大域構造を重視30〜500.3〜0.5全体的な傾向を把握。概念の大きな流れが見える

均等な分布にする理由: デフォルト設定では、意味的に異質な概念が極端に引き離されることがあります。その結果、GNGのノードが密集部分に偏り、離れた領域がカバーされにくくなります。min_distやn_neighborsを大きくすると、空間がより均等になり、GNGがデータ全体をバランスよくカバーできます。

ノード数の考え方

GNGのMax Nodes(最大ノード数)の設定は、モデルの「粒度」を決定します。

少ないノード(データ数の1/3程度)の場合:

  • 知識の「大きな構造」が把握しやすい
  • 類似した概念が1つのノードにまとまり、「要約的な」モデルになる
  • クラスター間の関係性を俯瞰しやすい
  • Mindwareとして公開する場合に適している(チャットで対話する際、概念の粒度が粗い方が自然な会話になる)

多いノード(データ数に近い、またはそれ以上)の場合:

  • 細かい概念の違いを区別できる
  • 研究用途でニュアンスの差を見逃したくない場合に有効
  • ただし、ノード同士の差が小さくなり、解釈が難しくなる

SOM(自己組織化マップ)との違い: SOMではデータポイントより多いノードを設定しても、マップ上でノードが均等に広がり、空ノードの値もきれいなグラデーションを形成します。しかしGNG-MSTでは、データが存在する場所にノードが集まります。これはGNGの正しい挙動であり、「データが語っている構造」をそのまま反映しています。MSTで可視化するとノードが局所的に集まって見えますが、各ノードの値はそれぞれ異なっています。

良いモデルの判断基準

理論的に「最適なノード数」を導く公式はありません。代わりに、以下の実用的な判断基準を使ってください:

> 探索画面でクラスターを見たときに、各クラスターの意味が直感的に理解でき、クラスター同士の違いが明確に説明できるなら、そのモデルは適切です。

具体的なチェックポイント:

  1. クラスターの解釈性: 各クラスターに自然なテーマ名を付けられるか
  2. クラスター間の区別: 隣接するクラスター同士が異なるテーマを持っているか
  3. ノードの代表性: 各ノードに割り当てられたデータが、そのノードの位置(次元値)と整合しているか
  4. 全体の網羅性: 元のデータに含まれる重要なテーマがモデルに反映されているか

反復的な改善プロセス

最適なモデルは1回で得られるとは限りません。以下のような反復プロセスを推奨します:

  1. まずデフォルト設定で構築 — 全体像を把握
  2. クラスタリングして探索 — モデルの粒度と構造を確認
  3. 必要に応じて調整:
  4. クラスターが大きすぎる → ノード数を増やすか、UMAPのn_neighborsを小さくする
  5. ノードが多すぎて解釈が難しい → ノード数を減らす
  6. 特定の概念群が分離しない → UMAPのmin_distを小さくする
  7. 「保存」で結果を保持 — 異なる設定の結果を保存して比較

重要な結果は必ず「保存」してからパラメータを変更してください。ステップを戻って再実行すると、以降のステップがリセットされます。