結論:我做了 7 個加分實驗。最有價值的是:①先量雜訊(讓後面每個比較都知道算不算數);②停用詞實驗(整體沒變、家人類掉 14.82,證明只看整體會被騙);③調參數(300 維只用 5% 資料就贏過 20%+100 維);⑤錯題分析(45% 的錯題,正確答案就在前 10 名)。
每個實驗都照同一個格式:想知道什麼 → 怎麼做 → 結果 → 學到什麼。
| 想知道什麼 | 同樣的設定再跑一次,結果會不會一樣?晃多大? |
|---|---|
| 怎麼做 | 5% 維基、參數全部一樣,只換亂數種子(42、1、2、3),訓練 4 次。 |
| 最低 | 最高 | 範圍(雜訊) | |
|---|---|---|---|
| 整體 | 46.05 | 47.10 | 1.05 |
| 語意 | 54.18 | 55.98 | 1.80 |
| 語法 | 38.45 | 39.72 | 1.26 |
| 各小類 | — | 1.50~4.74(家人、比較級、-ing 最大,約 4.7) | |
學到什麼:整體很穩(晃 1 分左右),小類會晃到快 5 分。所以後面每個比較,筆記本都自動印一欄「beyond noise?」,差距沒超過雜訊的,不下結論。這是讓報告可信的關鍵。
| 想知道什麼 | 老師建議可以試「移除停用詞」,我沒做。真的做了會怎樣? |
|---|---|
| 怎麼做 | 先數考卷有幾題含停用詞(NLTK 的英文停用詞表),再拿同一份 5% 維基,一份保留、一份刪掉停用詞,一樣的參數各訓練一次。 |
考卷裡有 206 題含停用詞:家人 86 題(he、she、his、her)、形容詞→副詞 62 題、貨幣 58 題(Korea won 的 won——NLTK 把它當成 won't 的一部分)。
| 保留 | 刪掉 | 差 | 超過雜訊? | |
|---|---|---|---|---|
| 整體 | 46.12 | 45.25 | −0.87 | 否 |
| 語意 | 55.35 | 55.41 | +0.06 | 否 |
| 語法 | 38.45 | 36.81 | −1.65 | 是 |
| 家人 | 68.77 | 53.95 | −14.82 | 是 |
| 動詞第三人稱 | 37.82 | 26.55 | −11.26 | 是 |
| 比較級 | 44.14 | 37.01 | −7.13 | 是 |
| 名詞複數 | 38.59 | 41.89 | +3.30 | 是 |
| 查不到字的題目 | 107 | 284 | 多 177 題 |
| 學到什麼 |
整體的變化在雜訊範圍內,底下卻有明顯的此消彼長。只看整體會以為「刪不刪都沒差」。
|
|---|
| 想知道什麼 | Skip-gram 換 CBOW、視窗變大、向量變長,各會怎樣? |
|---|---|
| 怎麼做 | 都用 5% 維基,以「Skip-gram、window 5、100 維」為基準,每次只改一個(控制變因)。 |
| 設定 | 訓練時間 | 整體 | 語意 | 語法 | 整體差 |
|---|---|---|---|---|---|
| 基準 | 9.1 分 | 46.12 | 55.35 | 38.45 | — |
| CBOW | 9.3 分 | 52.58 | 58.60 | 47.58 | +6.46 |
| window=10 | 15.2 分 | 41.75 | 51.22 | 33.87 | −4.37 |
| vector_size=300 | 17.9 分 | 57.44 | 68.54 | 48.22 | +11.32 |
三個整體差距(4~11 分)都遠大於雜訊 1.05。
| 學到什麼 |
|
|---|
| 第 1 名 | 前 3 名 | 前 5 名 | 前 10 名 | |
|---|---|---|---|---|
| GloVe | 63.11 | 73.68 | 77.73 | 82.01 |
| Wiki 20% | 48.39 | 61.53 | 66.32 | 71.74 |
學到什麼:從第 1 名到前 3 名就多了 13 分。很多題不是「完全不懂」,而是「差一點」——呼應老師說 queen「可能在前三名」。
Wiki 20% 答錯 10,087 題。其中 0 題是因為查不到字,4,563 題(45%)正確答案在第 2~10 名。錯法很有規律:
| 錯法 | 例子(題目第三個字 → 電腦答 / 考卷答案) | 說明 |
|---|---|---|
| 拼法不同 | Argentina → argentinian / argentinean Belarus → belarusian / belorussian Slovakia → slovak / slovakian | 電腦其實答對了,是考卷用另一種拼法。考卷本身也有限制。 |
| 方向相反 | large → smaller / larger long → shorter / longer | 反義詞座標太近,加減時走到對面。 |
| 同類、選錯一個 | Baghdad → syria / iraq Armenia → hryvnia(烏克蘭的錢)/ dram Cambodia → kyat(緬甸的錢)/ riel | 知道答案是「一個國家」「一種貨幣」,但對不到正確那個。 |
| 近親字 | father → stepmother / mother groom → bridesmaid / bride | 用法太像。 |
| 被別的意思帶走 | great → britain / greater child → childbearing / children | (推論)great 常出現在 Great Britain 這類專有名詞裡,座標被這個用法拉走;沒有回語料驗證。 |
學到什麼:錯題分析把「分數低」拆成好幾種原因:有的是詞向量的缺點(反義詞),有的是資料的偏差,有的根本是考卷的問題(拼法)。這種拆解就是老師說的 insight。
| 想知道什麼 | b − a + c(3CosAdd)之外,學術界還提過 3CosMul(用乘除,Levy & Goldberg 2014)。會更好嗎? |
|---|---|
| 結果 | 同一份 Wiki 20% 字典:48.39 → 44.66,14 個小類全部下降。 |
| 學到什麼 | 論文說常常比較好的方法,換到你的資料不一定成立。原因沒驗證(推論:可能跟字典裡很多冷門字有關)。 |
⟦IMG:pca_tsne⟧
| PCA(左) | t-SNE(右) | |
|---|---|---|
| 它在做什麼 | 找「資料變化最大的方向」,用前兩個方向當座標(線性) | 盡量讓「原本是鄰居的點」畫出來還是鄰居(非線性) |
| 圖上看到什麼 | 上下方向只有微弱的男女傾向:he、his、king 在最上;mom、grandma、aunt 在下。但分不乾淨(she、her、queen 在上半;dad、grandpa、husband 在下半) | 沒有男女軸,但每一對都貼得很緊(boy/girl、groom/bride、dad/mom、king/queen),分群清楚 |
| 適合看什麼 | 有沒有一條「關係方向」 | 誰跟誰是一群 |