feat: Add experiments framework and novelty-driven agent loop

- Add complete experiments directory with pilot study infrastructure
  - 5 experimental conditions (direct, expert-only, attribute-only, full-pipeline, random-perspective)
  - Human assessment tool with React frontend and FastAPI backend
  - AUT flexibility analysis with jump signal detection
  - Result visualization and metrics computation

- Add novelty-driven agent loop module (experiments/novelty_loop/)
  - NoveltyDrivenTaskAgent with expert perspective perturbation
  - Three termination strategies: breakthrough, exhaust, coverage
  - Interactive CLI demo with colored output
  - Embedding-based novelty scoring

- Add DDC knowledge domain classification data (en/zh)
- Add CLAUDE.md project documentation
- Update research report with experiment findings

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-20 10:16:21 +08:00
parent 26a56a2a07
commit 43c025e060
81 changed files with 18766 additions and 2 deletions

View File

@@ -0,0 +1,301 @@
# AUT 彈性評估方法說明
## 什麼是 AUT替代用途任務
AUTAlternative Uses Task替代用途任務是一個經典的**發散性思維測試**,由 Guilford 在 1967 年提出。
**測試方式:**
```
問題:「請列出磚塊的所有可能用途」
典型回答:
1. 蓋房子
2. 當門擋
3. 壓紙張
4. 當武器
5. 墊高東西
...
```
---
## Torrance 創造力四維度
| 維度 | 中文 | 定義 | 測量方式 |
|------|------|------|----------|
| **Fluency** | 流暢性 | 產生多少想法 | 計算數量 |
| **Flexibility** | 彈性/靈活性 | 想法涵蓋多少不同類別 | 計算類別數 |
| **Originality** | 原創性 | 想法的稀有程度 | 統計罕見度 |
| **Elaboration** | 精緻性 | 想法的詳細程度 | 評估細節 |
---
## 我們實作的三種彈性評估方法
### 方法一LLM 雙階段分類法Hadas & Hershkovitz 2024
**原理:** 讓大型語言模型識別想法的語義類別,然後計算類別數量
```
第一階段:讓 LLM 識別所有想法的語義類別
輸入:「椅子」的 195 個創意想法
輸出:["交通運輸", "藝術裝飾", "醫療健康", "教育", "儲存", ...]
第二階段:將每個想法分配到類別
想法 1「太陽能充電椅」→ 科技類
想法 2「椅子改裝成擔架」→ 醫療類
想法 3「椅腳當鼓棒」→ 藝術類
彈性分數 = 使用的不同類別數量
```
**優點:** 類別名稱有語義意義,可解釋性強
**缺點:** 依賴 LLM 的一致性,可能有解析錯誤
---
### 方法二嵌入向量階層式聚類法arXiv:2405.00899
**原理:** 將想法轉換成向量,用數學方法自動分群
```
步驟 1將每個想法轉換成向量embedding
「太陽能充電椅」→ [0.12, -0.34, 0.56, ...]1024 維)
步驟 2使用 Ward 連結法進行階層式聚類
計算所有想法之間的餘弦距離
由下而上合併最相似的群組
步驟 3在相似度 ≥ 0.7 的閾值切割樹狀圖
確保同一群內的想法夠相似
彈性分數 = 產生的群集數量
```
**優點:** 客觀、可重現、不依賴 LLM 判斷
**缺點:** 群集沒有語義標籤,需要人工解讀
---
### 方法三組合跳躍信號分析Combined Jump Signal, arXiv:2405.00899
**原理:** 使用更嚴格的「真正跳躍」定義,減少假陽性
```
組合跳躍 = 類別跳躍 ∧ 語義跳躍
類別跳躍jumpcat連續想法屬於不同的 embedding 群集
語義跳躍jumpSS連續想法的語義相似度 < 0.7
真正跳躍 = 兩個條件都必須成立
```
**為什麼需要組合跳躍?**
```
問題:單獨使用類別跳躍可能產生假陽性
例如:「人體工學椅」和「可調節椅」
- 可能被分到不同群集(類別跳躍 = True
- 但語義上很相似(語義跳躍 = False
- 不應該算作真正的「創意跳躍」
解決:組合跳躍要求兩者同時成立,更準確
```
| 跳躍比率 | 探索模式 | 含義 |
|----------|----------|------|
| 高(>45% | 靈活探索Flexible | 廣泛切換類別,思維跳躍 |
| 中30-45% | 混合模式Mixed | 適度切換 |
| 低(<30% | 持續探索Persistent | 深入單一領域,專注發展 |
**應用:** 區分 LLM 與人類的創意模式差異
---
## 研究發現
### 發現一新穎性Novelty與彈性Flexibility是獨立維度
| 條件 | 新穎性分數 | 彈性(群集數) | 平均相似度 | 模式 |
|------|:----------:|:--------------:|:----------:|------|
| C4 完整管線 | **0.395**(最高) | 10 | 0.583 | 高新穎、中等彈性 |
| C5 隨機視角 | 0.365 | **15**(最高) | 0.521 | 高新穎、高彈性 |
| C2 專家視角 | 0.315 | 13 | 0.517 | 中等新穎、高彈性 |
| C3 屬性分解 | 0.337 | 12 | - | 中等新穎、中等彈性 |
| C1 直接生成 | 0.273(最低) | **1**(最低) | 0.647 | 低新穎、低彈性 |
**視覺化解讀:**
```
C1 直接生成的想法:
┌─────────────────────────────────────┐
│ ○○○○○○○○○○○○○○○○○○○○○○○○○○○○○○○○ │ ← 所有想法集中在一個「普通領域」
│ (彼此相似,且都很典型) │ (低新穎性 + 低彈性)
└─────────────────────────────────────┘
C5 隨機視角的想法:
┌───┐ ┌───┐ ┌───┐ ┌───┐ ┌───┐
│ ★ │ │ ★ │ │ ★ │ │ ★ │ │ ★ │ ← 分散在多個「新穎領域」
└───┘ └───┘ └───┘ └───┘ └───┘ (高新穎性 + 高彈性)
↑ ↑ ↑ ↑ ↑
交通 醫療 藝術 教育 科技
C4 完整管線的想法:
┌─────────────────┐
┌──┤ ★★★★★★★★★★★★ ├──┐ ← 集中在一個「新穎領域」但有多個子類別
│ └─────────────────┘ │ (最高新穎性 + 中等彈性)
│ ↓ │
└── 10 個語義群集 ───────┘
```
### 發現二:組合跳躍信號分析結果
| 條件 | 類別跳躍 | 語義跳躍 | **組合跳躍** | 彈性檔案 |
|------|:--------:|:--------:|:------------:|:--------:|
| C2 專家視角 | 54 | 125 | **48** | 持續探索 |
| C3 屬性分解 | 34 | 107 | **33** | 持續探索 |
| C5 隨機視角 | 22 | 116 | **20** | 持續探索 |
| C4 完整管線 | 13 | 348 | **13** | 持續探索 |
| C1 直接生成 | 0 | 104 | **0** | 持續探索 |
**組合跳躍比率:**
| 條件 | 組合跳躍比率 | 彈性檔案 | 解讀 |
|------|:------------:|:--------:|------|
| C3 屬性分解 | **26.6%** | Persistent | 適度類別切換 |
| C2 專家視角 | **24.4%** | Persistent | 適度類別切換 |
| C5 隨機視角 | 10.1% | Persistent | 較低類別切換 |
| C4 完整管線 | **3.2%** | Persistent | 非常專注的探索 |
| C1 直接生成 | 0.0% | Persistent | 單一群集(無跳躍) |
**關鍵洞察:** 組合跳躍 ≤ 類別跳躍(符合預期)。所有條件都呈現「持續探索」模式。
---
### 發現三:🔑 原創性-彈性相關性(關鍵發現)
**論文發現arXiv:2405.00899**
- **人類:** 原創性與彈性**無相關**r ≈ 0
- **典型 LLM** **正相關** — 靈活的 LLM 原創性更高
**我們的結果:**
| 指標 | 數值 | 解讀 |
|------|:----:|------|
| **Pearson r** | **0.071** | 接近零的相關性 |
| 模式 | **類似人類** | 打破典型 LLM 模式 |
**各條件數據:**
| 條件 | 新穎性分數 | 彈性(組合跳躍數) |
|------|:----------:|:------------------:|
| C4 完整管線 | **0.395**(最高) | **13**(最低) |
| C5 隨機視角 | 0.365 | 20 |
| C3 屬性分解 | 0.337 | 33 |
| C2 專家視角 | 0.315 | 48最高 |
| C1 直接生成 | 0.273(最低) | 0 |
**重大發現:** 屬性+專家管線C4實現**最高新穎性但最低彈性**
證明結構化的無上下文生成能產生**聚焦的新穎性**而非分散的探索。
**這意味著什麼?**
```
典型 LLM 模式:
彈性高 → 新穎性高(正相關)
想法越分散,越可能遇到新穎概念
我們的管線C4
彈性低 + 新穎性高(打破模式)
專注探索一個新穎領域,而非到處跳躍
這是「類似人類」的創意模式!
人類專家通常深入探索一個領域,而非廣泛但淺薄地涉獵
```
---
## 這對創意研究的意義
1. **創造力是多維度的**
- 新穎性Novelty和彈性Flexibility是**獨立維度**
- 高新穎不代表高彈性,反之亦然
- 需要同時考慮流暢性、彈性、原創性、精緻性
2. **管線設計的取捨**
| 策略 | 新穎性 | 彈性 | 特點 |
|------|:------:|:----:|------|
| 直接生成C1 | 低 | 低 | 快速但普通 |
| 專家視角C2 | 中 | 高 | 多元觀點 |
| 隨機視角C5 | 高 | **最高** | 強迫跳躍 |
| 完整管線C4 | **最高** | 中 | 結構化新穎 |
3. **為什麼專家/隨機視角產生更多類別?**
```
C1 直接生成:
LLM 沒有外部刺激 → 停留在「家具改良」單一領域
平均相似度 0.647(最高)→ 想法彼此很像
C2 專家視角:
4 個不同領域專家 → 引入不同思維框架
平均相似度 0.517(較低)→ 想法更分散
C5 隨機視角:
隨機詞彙強迫跳躍 → 意外的連結
平均相似度 0.521 → 最多語義類別15 個)
```
4. **實務建議**
- 若需要**高新穎性**使用完整管線C4
- 若需要**高彈性/多元性**使用隨機視角C5或專家視角C2
- 若需要**兩者兼顧**:可能需要混合策略
---
## 方法論修正說明
### 原始演算法的問題
最初的聚類演算法有邏輯錯誤:
```
原本的邏輯(錯誤):
目標:找到群內相似度 >= 0.7 的群集
問題:當想法很分散時(低相似度),
無法形成符合閾值的緊密群集
→ 演算法放棄,回傳 1 個群集
結果C2/C5 的分散想法被錯誤標記為「1 個群集」
```
### 修正後的演算法
```
修正後的邏輯(正確):
方法:使用 average linkage 階層式聚類
閾值:在距離 0.5 處切割樹狀圖
(即相似度 < 0.5 時分開)
結果:分散的想法正確地被分成多個群集
```
### 結果對比
| 條件 | 修正前群集數 | 修正後群集數 | 平均相似度 |
|------|:------------:|:------------:|:----------:|
| C1 直接生成 | 29 | **1** | 0.647(高) |
| C2 專家視角 | 1 | **13** | 0.517(低) |
| C5 隨機視角 | 1 | **15** | 0.521(低) |
**關鍵洞察:** 低相似度 = 高多元性 = 高彈性分數
---
## 參考文獻
1. Hadas & Hershkovitz (2024). "Using Large Language Models to Evaluate Alternative Uses Task Flexibility Score." *Thinking Skills and Creativity*, Vol. 52.
2. arXiv:2405.00899 - "Characterising Creative Process in Humans and LLMs" - Jump signal methodology
3. Guilford, J.P. (1967). *The Nature of Human Intelligence*. McGraw-Hill.
4. Torrance, E.P. (1974). *Torrance Tests of Creative Thinking*. Scholastic Testing Service.