天天看點

谷歌開源 Embedding Projector 高維資料可視化

近段時間以來,機器學習領域内的進展已經催生出了很多激動人心的結果,其應用已經延展到了圖像識别、語言翻譯、醫學診斷等許多領域。對研究科學家來說,随着機器學習系統的廣泛應用,了解模型解讀資料的方式正變得越來越重要。但是,探索資料的一大主要難題是資料往往具有數百個乃至數千個次元,這需要我們使用特别的工具才能研究調查清楚資料空間。

為了實作一種更為直覺的探索過程,谷歌今日布開源了一款用于互動式可視化和高維資料分析的網頁工具 embedding projector,其作為 tensorflow 的一部分,能帶來類似 a.i. experiment 的效果(參閱:業界 | 谷歌推出 a.i. experiments:讓任何人都可以輕松實驗人工智能)。同時,谷歌也在 projector.tensorflow.org 放出了一個可以單獨使用的版本,讓使用者無需安裝和運作 tensorflow 即可進行高維資料的可視化

谷歌開源 Embedding Projector 高維資料可視化

探索嵌入(embeddings)

訓練機器學習系統所需的資料一開始的形式是計算機無法直接了解的。為了将這些我們人類能夠自然而然了解的東西(如:話語、聲音或視訊)翻譯成算法能夠處理的形式,我們會使用到嵌入(embeddings)——一種擷取了資料的不同方面(即:次元 dimension)的數學向量表征。比如說,在一個語言嵌入中,相似的詞會被映射到彼此相近的點。

谷歌開源 Embedding Projector 高維資料可視化

降維的方法

embedding projector 提供了三種常用的資料降維(data dimensionality reduction)方法,這讓我們可以更輕松地實作複雜資料的可視化,這三種方法分别是 pca、t-sne 和自定義線性投影(custom linear projections):

pca 通常可以有效地探索嵌入的内在結構,揭示出資料中最具影響力的次元。

t-sne 可用于探索局部近鄰值(local neighborhoods)和尋找聚類(cluster),可以讓開發者確定一個嵌入保留了資料中的所有含義(比如在 mnist 資料集中,可以看到同樣的數字聚類在一起)。

自定義線性投影可以幫助發現資料集中有意義的「方向(direction)」,比如一個語言生成模型中一種正式的語調和随意的語調之間的差別——這讓我們可以設計出更具适應性的機器學習系統。

谷歌開源 Embedding Projector 高維資料可視化

在一個擁有 3.5 萬個電子郵件常用短語的語料庫中,「see attachment」的 100 個最近的點到「yes」-「yeah」向量上(yes 在右,yeah 在左)的自定義線性投影

谷歌的部落格寫道:

embedding projector 網站包括一些可供試玩的資料組。我們也讓使用者更容易使用它并與其他人共享他們的嵌入(僅需點選左邊的 publish 按鈕)。我們希望 embedding projector 能有效幫助研究社群探索并調節他們的機器學習應用,也讓所有人更好地了解機器學習算法如何解讀資料。如果對 embedding projector 細節有興趣,請閱讀我們的論文。祝你在嵌入的世界裡玩得開心!

以下是論文摘要:

谷歌開源 Embedding Projector 高維資料可視化

摘要:嵌入在機器學習領域,比如推薦系統、nlp 以及許多其他應用領域中很常見。研究人員和開發者常常需要探索某個具體嵌入的屬性,并找到分析嵌入的方法以将它們視覺化。我們為互動式可視化和嵌入的诠釋工作推出了 embedding projector 這款工具。

繼續閱讀