第10章 ConceptMap-Text — データ入力と前処理

第10章 ConceptMap-Text — データ入力と前処理 — ThinkNavi 操作マニュアル

第10章 ConceptMap-Text — データ入力と前処理

ConceptMap-Text は、テキストデータから概念構造モデル(GNG-MST)を構築するための7ステップウィザードです。サイドバーの「モデル&探索」をクリックしてアクセスします。

10.1 画面構成

ConceptMap-Text の画面は以下の構成です:

左サイドバー(ステップナビゲーション):

  • 7つのステップボタンが縦に並んでいます
  • 現在のステップがハイライト表示されます
  • 未完了のステップはグレーアウトしてクリックできません
  • 完了したステップには緑のチェックマークが表示されます
  • 最下部に「保存/読込」ボタンがあります

メインエリア:

  • 選択中のステップに対応するコントロールパネル

ステップの順序:

  1. データ入力 → 2. 埋め込み → 3. 次元削減 → 4. 特徴設定 → 5. モデル構築 → 6. クラスタリング → 7. 探索

各ステップは前のステップが完了しないと進めません。ただし、完了済みのステップに戻って再実行することは可能です(その場合、以降のステップがリセットされます)。

10.2 ステップ1:データ入力

データソースとテキスト列を指定します。

プロジェクトとファイルの選択

  1. 「プロジェクト」ドロップダウンから、自動リサーチで作成したプロジェクトを選択
  2. 「ファイル」ドロップダウンから、使用するCSVファイルを選択
  3. CSVの先頭数行のプレビューと、カラム一覧が表示されます

カラムの役割設定

CSVの各列に対して、以下の役割をボタンクリックで指定します:

役割ボタン色説明用途
Textテキストデータとして分析に使用埋め込み生成→モデル構築の対象
Numeric数値データプロファイル分析のメタデータ
Categoricalカテゴリデータクラスター分析のフィルタリング
Reference参照情報として表示のみ探索時に各ノードの詳細で表示
Unusedグレー分析に使用しない不要な列を除外

重要: 最低1つの列を「Text」に設定してください。Text列が選択されていない場合、次のステップに進めません。

推奨設定の例(概念抽出CSVの場合):

  • concept_name_enText(メインのモデリング対象)
  • summary_enText(要約もモデリングに含める場合)
  • trigger_context_en → Text または Reference
  • abstract_structure_en → Text または Reference
  • chapter_sectionCategorical
  • chunk_indexNumeric または Unused
  • book, authorReference
  • key_terms → Reference または Unused

CCM(Connected Concept Model)の構築:

複数のText列を設定すると、各列ごとに独立したモデルが構築され、行インデックスで相互参照可能なCCMが作成されます。例えば、concept_name_ensummary_en の両方をTextに設定すると、概念名のモデルと要約のモデルが連結された状態で構築されます。

データの読み込み

  1. 全てのカラムの役割設定が完了したら「データを読み込み」ボタンをクリック
  2. CSVデータがエンジンに送信されます
  3. 成功すると、最初の20行のデータプレビューテーブルが表示されます
  4. このステップが「完了」マークになり、次のステップ(埋め込み)がアンロックされます

注意: 「データを読み込み」を再実行すると、エンジンセッションがリセットされ、埋め込み・次元削減・モデルなど全ての後続ステップがリセットされます。

10.3 ステップ2:埋め込み(Embedding)

テキストデータを高次元ベクトル空間に変換します。意味的に近いテキストが近いベクトルになるように変換され、後の分析の基礎となります。

設定項目

モデル選択:

モデル次元数特徴推奨用途
text-embedding-3-small1536高速・低コスト。十分な精度通常使用(推奨)
text-embedding-3-large3072高精度。処理時間・コスト大高精度が必要な場合

次元数選択:

選択肢説明
Autoモデルのデフォルト次元数を使用(推奨)
256低次元。高速だが精度が下がる可能性
512バランス型
1024中〜高精度
1536text-embedding-3-small のデフォルト
3072text-embedding-3-large のデフォルト

推奨: 通常は text-embedding-3-small + Auto で十分です。

操作手順

  1. モデルと次元数を選択
  2. 「埋め込みを生成」ボタンをクリック
  3. 進行状況バーが表示されます(データ量に応じて数秒〜数分)
  4. 完了すると次のステップに進めます

追加機能

埋め込みCSVのアップロード:

  • 事前に計算した埋め込みベクトルをCSV形式でアップロードできます
  • 各行が1つのデータに対応し、列が各次元の値です
  • 独自の埋め込みモデルを使用したい場合に便利です

埋め込みCSVのダウンロード:

  • 生成した埋め込みベクトルをCSV形式でエクスポートできます
  • 外部ツールでの分析や、後で再利用する場合に便利です

クレジット消費: 埋め込み生成に10クレジット(自前APIキー使用時は5クレジット)

10.4 ステップ3:次元削減(Dimension Reduction)

高次元の埋め込みベクトル(1536次元など)を、分析可能な低次元空間(通常3〜8次元)に圧縮します。各次元は概念の「分析軸」として解釈できます。

設定項目

方式:

方式説明推奨用途
UMAP局所的な構造を保持する非線形次元削減。推奨ほとんどの場合
PCA分散最大化の線形変換。高速データ構造の大まかな把握
PCA+UMAPPCAで中間次元に削減後、UMAPで最終次元に高次元データの安定化

次元数:

  • 出力する次元数を指定します
  • デフォルト: データ量に応じて3〜8(少量データは少なく、大量データは多く)
  • 推奨: 概念数30以下→3次元、30〜100→5次元、100以上→6〜8次元

UMAPパラメータ:

パラメータデフォルト範囲説明
n_neighbors152〜100近傍数。小さい値→局所構造を重視(細かいクラスター)。大きい値→大域構造を重視(大きな傾向)
min_dist0.10.0〜1.0最小距離。小さい値→密なクラスター。大きい値→均等な分布
metriccosinecosine / euclidean / manhattan距離計算方式。テキスト埋め込みにはcosineを推奨

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

  • データのクラスターをはっきり分けたい場合:n_neighbors を小さく(5〜10)、min_dist を小さく(0.01〜0.05)
  • 全体的な傾向を見たい場合:n_neighbors を大きく(30〜50)、min_dist を大きく(0.3〜0.5)
  • デフォルト値は多くのケースで良好に動作します

操作手順

  1. 方式、次元数、パラメータを設定
  2. 「実行」ボタンをクリック
  3. 処理が完了すると、各次元の統計情報が表示されます

次元の解釈(ラベル付け)

次元削減の結果に意味を与える重要なステップです。

  1. 「次元を解釈」ボタンをクリック
  2. AIが各次元のデータを分析し、意味ラベルの候補を提案します
  3. 各次元について:
  4. AI提案のラベルがボタンとして表示されます。クリックで選択
  5. または、テキスト入力欄にカスタムラベルを手動入力

ラベルの例:

  • 「Dim 1」→「具体的 ↔ 抽象的」
  • 「Dim 2」→「理論 ↔ 実践」
  • 「Dim 3」→「個人 ↔ 組織」
  • 「Dim 4」→「短期 ↔ 長期」

次元ラベルは、後のモデル探索で各ノードやクラスターの「位置」の意味を理解するために使用されます。

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

問題原因と対処法
「テキスト列が選択されていません」エラーステップ1でCSVの列に「Text」ロールを1つ以上指定してください
埋め込み生成が失敗するOpenAI APIキーが有効か確認してください。クレジット残高も確認してください
次元削減の結果がランダムに見えるUMAPは確率的アルゴリズムのため、実行ごとに結果が異なります。これは正常な動作です。結果に不満な場合、パラメータを変更して再実行してください
「エンジンセッションが期限切れ」長時間操作しなかった場合、エンジンセッションがタイムアウトします。「データを読み込み」から再開してください
次元のラベル提案が的外れAIの提案は参考程度です。データの内容を踏まえて手動でラベルを入力することを推奨します