以下小工具採用 TensorFlow 的嵌入呈現工具做為基礎,將 10,000 word2vec 靜態向量壓縮成一個 3D 空間。壓縮後的維度可能會造成誤導,因為在原始高維度空間中彼此相距最近的點,在 3D 投影中可能會相隔較遠的距離。距離最相近的「n」點會以紫色醒目顯示,使用者所選的「n」會標示為 Isolate __ points。右側欄會顯示距離最近的鄰點。
在這些實驗中,您將使用上述小工具的 word2vec 嵌入。
任務 1
請試著找出 20 個與下列項目距離最近的鄰點,並查看其群組屬於雲端中的哪個部分。
iii、third和threetao和wayorange、yellow和juice
您從結果中發現了什麼?
按這裡可查看答案
雖然 iii、third 和 three 在語意上相似,但它們會分別出現在不同的文字語境中,且在這個嵌入空間中不會靠近彼此。在 word2vec 中,iii 距離 iv 較近,距離 third 較遠。
同樣地,雖然 way 是由 tao 直接轉譯而來,在使用的資料集中,這些字詞常常會與完全不同的字詞群組一起出現,因此這兩個向量會相距甚遠。
與 orange 最相近的前幾個鄰點為顏色,但與 orange 的水果涵義相關的 juice 和 peel,則分別是排名第 14 和第 18 相近的鄰點。同時,取奧倫治親王涵義的 prince 則排名第 17 相近。在投影中,與 orange 最相近的字詞為 yellow 和其他顏色,而與 juice 最相近的字詞並不包含 orange。
任務 2
請試著找出訓練資料的部分特性。比方說,找出距離下列項目最近的 100 個鄰點,並查看其群組屬於雲端中的哪部分:
boston、paris、tokyo、delhi、moscow和seoul(留意題目中的陷阱)jane、sarah、john、peter、rosa和juan
按這裡可查看答案
boston 有許多鄰點是美國的其他城市,而 paris 有許多鄰點是歐洲的其他城市。tokyo 和 delhi 看來沒有相似結果:一個的結果與全球旅遊中樞城市相關聯,另一個的結果則與 india 和其他相關字詞相關聯。seoul 則完全未出現在壓縮截取後的字詞向量組合中。
綜上所述,這個資料集有很多文件與美國境內地理位置相關,與歐洲境內地理位置有關的文件也有一些,但與其他國家/地區的詳細資訊則有限。
同樣地,這個資料集看起來包含很多男性英文名字、女性英文名字也有一些,而其他語言的名字則少很多。請注意,資料中包含迪士尼漫畫角色史高治麥克達克的創作者暨繪師唐羅薩,「史高治」和「麥克達克」很有可能因此成為「羅薩」最相近的鄰點。
由 word2vec 提供的預先訓練字詞向量,實際上是使用 2013 年以前的 Google 新聞報導進行訓練。
任務 3
嵌入並不僅限用於字詞,圖片、音訊和其他資料也可以嵌入。在此任務中,請按照下列步驟操作:
- 開啟 TensorFlow 的嵌入呈現工具。
- 在標題為「Data」(資料) 的左側欄中,選擇「Mnist with images」(使用圖片執行 MNIST),系統會隨即顯示手寫數字的 MNIST 資料庫嵌入投影。
- 點選停止輪播,並選擇單張圖片,然後視需要加以縮放。
- 查看右側欄顯示的最相近鄰點,有什麼意外的發現嗎?
- 為何部分與
7距離最近的鄰點是1?而部分與8距離最近的鄰點則是9? - 位於投影空間邊緣及中央的圖片是否有任何不同之處?
請注意,建立嵌入的模型會接收圖片資料 (即像素),並為每張圖片選擇數值向量表示法。模型不會自動推測手寫數字圖片與數字本身的關聯。
按這裡可查看答案
由於形狀相似,部分較細長的 7 向量表示法會比較靠近手寫 1 的向量。相同的情況也會發生在某些 8 和 9,甚至是部分的 5 及 3。
投影空間以外的手寫數字,較能清楚辨識為九個阿拉伯數字之一,且不易與其他數字混淆。