雷鋒網(wǎng)消息,最近谷歌開源了網(wǎng)頁版數(shù)據(jù)可視化工具Embedding Projector,該項(xiàng)目作為Tensorflow的一部分,能對(duì)高維數(shù)據(jù)進(jìn)行可視化展示與分析。以下是雷鋒網(wǎng)整理編譯的谷歌研究院介紹內(nèi)容,未經(jīng)許可不得轉(zhuǎn)載。
最近機(jī)器學(xué)習(xí)界可謂是碩果累累,從圖像識(shí)別、語言翻譯再到醫(yī)療診斷,可謂讓人大開眼界。隨著機(jī)器學(xué)習(xí)的廣泛應(yīng)用,探索模型是如何理解數(shù)據(jù)這一問題正在變得越來越重要,但是數(shù)據(jù)通常是用成百上千維的向量表示,因此我們需要一個(gè)專門的工具來探索、研究這個(gè)數(shù)據(jù)高維空間。
為了使大家能夠更加直觀的研究數(shù)據(jù),我們開源了我們自己研發(fā)的網(wǎng)頁版數(shù)據(jù)可視化工具Embedding Projector,這個(gè)可視化工具是TensorFlow的一部分,可以用來對(duì)高維數(shù)據(jù)進(jìn)行可視化展示與分析,此外還有一個(gè)單一版,這個(gè)版本不需要安裝TensorFlow,便可直接運(yùn)行,大家可以去 projector.tensorflow.org 下載。
嵌入探索
通常我們需要訓(xùn)練的數(shù)據(jù)是不能直接作為機(jī)器學(xué)習(xí)算法的輸入的,我們應(yīng)當(dāng)將這些數(shù)據(jù)(例如:詞語、聲音、視頻等數(shù)據(jù))表示成一種機(jī)器可以理解(處理)的數(shù)據(jù)形式。我們使用的是嵌入方法,即將數(shù)據(jù)表示成一個(gè)向量,這個(gè)向量包含了數(shù)據(jù)各個(gè)方面的信息。例如,在自然語言中,兩個(gè)意思相近的詞會(huì)映射到同一向量空間中兩個(gè)不同的點(diǎn),但這兩個(gè)點(diǎn)的位置應(yīng)該是相近的。
Embedding Projector這個(gè)工具使用起來很簡單,它可以實(shí)現(xiàn)數(shù)據(jù)的2D或3D效果展示。輕點(diǎn)鼠標(biāo),便可實(shí)現(xiàn)數(shù)據(jù)的旋轉(zhuǎn)、縮放。我們按照word2vec教程在TensorFlow上訓(xùn)練了一些詞向量,將這些詞向量通過我們的工具進(jìn)行可視化展示,點(diǎn)擊圖中任意一點(diǎn)(表示詞向量的點(diǎn)),那么通過這種算法算出的,與這個(gè)詞語義相關(guān)的詞以及其向量空間距離就會(huì)羅列出來。它給我們提供了一種非常重要的探究算法性能的方法。下圖展示了“important”這個(gè)詞在向量空間中的語義相近點(diǎn)
降維方法
Embedding Projector提供了三種常用的數(shù)據(jù)降維方法,這些方法可以使復(fù)雜數(shù)據(jù)可視化變的簡單一些。具體為以下三種:PCA,、t-SNE、custom linear projections。PCA用在探究數(shù)據(jù)內(nèi)部結(jié)構(gòu)、發(fā)現(xiàn)數(shù)據(jù)重要維度信息上;t-SNE用于探究數(shù)據(jù)的周圍信息、確定其與哪些周圍數(shù)據(jù)屬于同類(聚類效果),確保向量保留了數(shù)據(jù)的含義信息。custom linear projections用于確定數(shù)據(jù)含義的‘方向’(在生成模型中,統(tǒng)一數(shù)據(jù),正式語氣與非正式語氣其含義是不同的,加入這些因素可以提高機(jī)器學(xué)習(xí)模型的適應(yīng)性)。
下圖是在一個(gè)35K的電子郵件常用短語數(shù)據(jù)集上,使用custom linear projection方法得出的與‘See attachments’相鄰的100個(gè)點(diǎn)
此外在Embedding Projector網(wǎng)站上還有一些數(shù)據(jù)集,你可以去網(wǎng)站下載,然后試一下我們的可視化軟件,如果你想公開你的訓(xùn)練結(jié)果,這很簡單,你只需要單擊軟件的“Publish”按鈕,便可以實(shí)現(xiàn)訓(xùn)練結(jié)果的共享了。我們希望Embedding Projector在機(jī)器學(xué)習(xí)應(yīng)用方面,對(duì)研發(fā)人員有所幫助,也希望幫助大家更好理解,機(jī)器學(xué)習(xí)算法是如何對(duì)數(shù)據(jù)進(jìn)行解釋的。如果想了解更多的細(xì)節(jié),請參看這里。