Add step 4 semantic code grouping by majority vote on claude-fable-5

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-17 22:38:40 +08:00
co-authored by Claude Fable 5
parent 683b15e073
commit c3d6c06910
14 changed files with 294 additions and 17 deletions
+31 -9
View File
@@ -6,17 +6,18 @@
## 自然編碼管線總覽
個步驟:步驟 1 自由標註(兩次執行進池)→ 步驟 2 詞彙表
個步驟:步驟 1 自由標註(兩次執行進池)→ 步驟 2 詞彙表
建構(詞向量分群,確定性)→ 步驟 3 全量編碼(三次執行+
多數決)。歌詞只出現在步驟 1 與步驟 3;步驟 2 完全不接觸
歌詞,也不呼叫 LLM。設計原則見 `research-plan.md`;本檔
多數決)→ 步驟 4 語意編碼群(三次執行+多數決)。歌詞只
出現在步驟 1 與步驟 3;步驟 2 與步驟 4 完全不接觸歌詞,
步驟 2 亦不呼叫 LLM。設計原則見 `research-plan.md`;本檔
記載可重現的演算法細節。
編號的所指為**研究程序的工序**,不是定義檔:步驟 1
步驟 3 有定義檔(`prompts/`),步驟 2 沒有——它是單一
確定性計算,由 `cluster-keywords` 一個子命令完成。有無
定義檔的區別即「該步是否為 LLM 判斷」,由 `prompts/`
否存在同號檔案直接可見。
編號的所指為**研究程序的工序**,不是定義檔:步驟 1
步驟 3 與步驟 4 有定義檔(`prompts/`),步驟 2 沒有——
它是單一確定性計算,由 `cluster-keywords` 一個子命令
完成。有無定義檔的區別即「該步是否為 LLM 判斷」,由
`prompts/`否存在同號檔案直接可見。
## 步驟 2 詞彙表建構——詞向量分群
@@ -113,6 +114,27 @@
0.7 者為 0.780.9 者為 0.97),程序重跑的一致性因而
高於單次執行,唯獨恰半處無從改善。
## 步驟 4 語意編碼群
- **對象**:將 101 個編碼依語意劃入研究者命名的四個編碼
群——女性力量(women-power group)、反女性力量/厭女
misogyny group)、陽剛男性氣質(masculine group)、
脆弱(vulnerable group)。群只有名字,沒有定義;歸屬
由 LLM 依編碼名的字面語意判斷。
- **任務**:每筆輸入為一個群名加 101 個編碼的字母序
清單,輸出為入選編碼的單層 JSON 陣列;定義檔
`prompts/04-group.md` 只定格式,不含任何群的語意定義。
- **模型**`claude-fable-5`(步驟 1、3 為
`claude-sonnet-4-6`)。該模型不受理 `temperature`
`thinking` 參數,兩者均不送出;取樣變異由多數決吸收。
模型裁定的理由與對照實驗見決策日誌。
- **三次執行**:同一份定義檔、同一份輸入檔,獨立執行
三次,歸檔並列(`runs/04-group/run1``run2``run3`)。
- **多數決**:一個(群,編碼)配對,三次執行中至少兩次
入選即屬該群;不在 101 碼詞彙表內的輸出項無效。計票由
確定性子命令 `tally-groups` 完成,定案分群寫入
`results/groups.csv`(欄位:群、編碼、票數)。
## 女性力量候選集
候選集為兩類歌曲的合集:定案編碼含 `women-power` 者,
@@ -188,7 +210,7 @@
- LLM 步驟以 `run-llm <定義檔> <輸入檔> <歸檔目錄>`
執行;一步的 N 次執行=重現命令清單上的 N 行命令,
各自歸檔(`runs/<步驟>/run1`、`run2`編碼步驟另有
各自歸檔(`runs/<步驟>/run1`、`run2`三票制步驟另有
`run3`)。
- 確定性步驟(進池、分群、計票、對映)為子命令,其
輸入輸出檔同隨 `runs/` 歸檔;因無執行變異,歸檔目錄