從數據可視化到交互式數據分析

0 評論 17590 瀏覽 25 收藏 31 分鐘

高可視性的可視化項目主要關注兩個目的:帶來靈感和幫助解釋。然而,可視化可以通過數據分析來增加對復雜問題的理解,這樣的項目雖然不多見,但不代表不重要。

注:本文是作者在參與紐約的Uber數據可視化大會上所做演講的書面精煉版本,以下是作者原文。

高可視性的可視化項目主要關注兩個目的:帶來靈感和幫助解釋。然而,可視化可以通過數據分析來增加對復雜問題的理解,這樣的項目雖然不多見,但不代表不重要。

數據可視化的三個主要用途

我知道我這樣總結可能存在嚴重簡化的風險。但是,我發現根據主要目的(有意或無意)確定數據可視化的三類主要用途是很有用的,這也有助于我在本文后面闡明一些觀點。

(1)激動人心

第一個用途是激勵人們,讓人們驚嘆!但這種驚嘆不僅僅是在膚淺的表面,而是真正讓人們獲得更深層次的思考、美感和敬畏??梢暬哂辛钊穗y以置信的力量,可以吸引人們的注意力,同時也可以將它們引入夢幻般的虛擬世界,將抽象概念轉化為更有形的存在。

我見過最具啟發靈感的一個完美的可視化例子是我朋友Giorgia Lupi的一個作品,是他用自己獨特的手繪風格(以及數字)所創作的杰作。(點擊鏈接可以看看最近在現代藝術博物館展出的照片check this recent one exposed at MOMA)

(2)解釋現象

第二個用途是使用圖形圖表來說明一些復雜的想法,現象或過程。這是一個圖形表現的領域:人類是視覺生物,所以一張圖片有時勝過千言萬語。

多年來,數據新聞為通過數據解釋復雜事物的藝術提供了很好的貢獻(參見《紐約時報》和《華盛頓郵報》多年來所做的令人驚嘆的工作)。同時這也屬于教育領域,尤其是基于數字和圖表的科學教育。

這也是最近一個被稱為“探索性解釋”(“explorable explanations”)的美麗潮流的領域,由布雷特·維克托(Bret Victor)開創,并被尼基·凱斯(Nicky Case)等許多了不起的人推廣開來。

(3)分析問題

第三個用途是從數據中提取信息,用來解釋問題同時增加對一些有趣現象的理解。當然,解釋性可視化也有助于人們理解某些事物。但這里的主要區別在于,在解釋性的可視化中,作者已經知道了可視化的內容(在執行了一些分析之后),而在分析學中,可視化的主要價值是幫助人們第一時間理解數據。

人們已經使用了一百萬個名字來定義此活動。最新和最時尚的名字是數字科學,更具體地說是數據科學的一部分,稱為“探索性數據分析”,這是幾十年前偉大的約翰·圖基(John Tukey)發明的術語。

簡單起見,我將其稱為:數據分析,或者是視覺數據分析,甚至是交互式視覺數據分析,以強調是可以與之交互的圖形表現(學術界和商界也稱之為視覺分析)。

為何更多地談論數據分析?

這篇文章,以及之前的演講,旨在更好地定義可視化在數據分析中的角色,并激發更多關于可視化領域正在發生的事情的討論,遺憾的事,這件事情并沒有像其他事情那樣引人注目。

但為什么要專注于分析?它有什么特別之處?

我的理由是,數據分析是一項基礎的人類技術活動,它有可能幫助人們解決重要的社會和科學問題。更確切地說,我認為數據分析很重要。因為這項活動可以幫助人們提高對復雜現象的理解,從而幫助人們解決重要問題。這

是一個間接但卻重要的聯系:如果我能更好地理解一個問題,那我找到更好問題解決方案的可能性就越大。

世界上不乏有趣而重要的問題,是我們希望通過數據分析能更好地理解的。以下是我個人經歷中的一些案例,我在這里描述它們并不一定是因為它們是我們能夠解決的最重要的問題,而是因為我對這兩個案例很熟悉。

(1)監測和認識醫療事故

在過去幾年里,我的實驗室一直與一家在紐約市很受歡迎的獨立新聞工作室ProPublica合作。我們幫助他們篩選了來自Yelp的大量醫學評論,以識別和理解人們與醫生及其服務之間存在的問題。

你要如何才能讓數以百萬計的評論變得有意義?如何發現可疑事件?如何識別值得關注的評論?

事實證明:即使簡單如一個全局的“分面搜索”界面,對這項任務也是非常有用的。我們開發了一個名為RevEx的簡單工具,它使得我們的合作伙伴能夠監測醫療事故上取得一些進展,并就他們的發現發表一些令人關注的文章。

「交譯所」從數據可視化到交互式數據分析

RevEx。我們開發的一個交互式數據探索工具,幫助ProPublica的查爾斯·奧恩斯坦(Charles Ornstein)從Yelp的數百萬條評論中篩選信息。

(2)了解詐騙和詐騙者

這是我們最近與Agari公司建立的合作。他們的主要目標是追捕騙子并擾亂他們的活動。他們收集有關騙子活動極其有趣的數據,希望利用這些數據更好地保護個人和企業免受惡意攻擊。

這非常重要!與他們交談,我更好地了解到詐騙對一些人造成了多么糟糕的影響。有些人的生活因為騙子的不法行為而被徹底毀掉了,這不僅僅是收件箱中收到垃圾郵件而已。

關于“理解”

你注意到了嗎?當我們談論數據分析問題時,我們經常將目標描述為“理解”某些東西。然后我們可以假設數據分析的主要目的是通過數據更好地理解某些東西。

「交譯所」從數據可視化到交互式數據分析

現實,數據/統計模型。人類心理模型之間的關系。

這個關系是這樣的:數據/模型是我們想要研究的一些現實的描述。人類對現實有一個心理模型,并使用數據/模型來研究它,以便可以更好地理解它。(這個概念值得整篇博文,我希望在不久的將來可以寫一篇。)

交互式數據分析如何工作?

「交譯所」從數據可視化到交互式數據分析

交互式數據分析主要以循環方式運行。你從某個松散指定的目標開始,將目標轉換為一個或多個問題,組織和分析數據來回答這些問題,生產新的問題并重新開始。

為了更清晰描述這個過程,我為這個過程梳理了以下步驟:

(1)界定難題

每個項目都以難題陳述開頭。你想解決什么難題?你的最終目標是什么?從數據分析中獲得的更多理解將如何使你更接近你的目標?

(2)生成問題

難題說明通常太高級且寬泛,無法直接轉換為數據分析操作(這個問題經常被忽視且未被充分理解)。通常,需要將難題(隱式地,或者更好地,顯式地)轉換為許多數據分析問題。

(3)收集,轉換和熟悉數據

有些項目有可用的數據,而有些則需要一定程度的數據搜索或生成。在任何情況下,所有的項目都要求分析人員熟悉內容及其含義并執行多項轉換,既要熟悉數據(例如:經常對數據進行切片,切割和聚合)又要為計劃進行的分析做好準備。

(4)從數據中創建模型

并非所有項目都需要這一步,但有些項目需要。當通過建立模型可以更容易地解答問題時,使用統計建模和機器學習的方法會很有用。雖然建模人員談論的大部分內容只是預測,但模型對于探索和生成假設來說依然是非常強大的工具??梢杂糜诖瞬襟E的方法包括聚類、降維、簡單回歸和將文本轉換為有意義的數字的各種NLP(自然語言處理)方法。

(5)可視化數據和模型

這是眼睛能夠觀察數據的一步?,F在,大多數人在考慮到這個階段時會聯想到花哨的圖表,但是像表格和列表這種簡單的表達方式對于很多問題來講反而是非常合理的可視化表達。在這里,從數據轉換和查詢(或從某些模型)獲得的結果被轉換成我們的眼睛可以消化并能夠理解的內容。這是我們所有人,數據可視化者熱愛的一步。

(6)詮釋結果

一旦結果生成并以某種視覺形式呈現,就需要有人對其進行解釋。這是至關重要的一步,也是經常被忽視的一步。展示屏幕背后有這樣一個人,他需要理解所有這些彩色點和數字的含義。

這是一項復雜的操作,包括以下步驟:理解如何閱讀圖表,理解圖表針對感興趣的現象傳達了什么信息,將問題的結果與問題已有的知識聯系起來。注意,這里的詮釋很大程度上受已有知識的影響。至少包括領域問題,數據轉換過程,建模和可視化表達的知識。這是可視化和分析另一個經常被忽視的方面。

(7)生成推論并引出更多問題

所有這些步驟最終會產生一些新的知識,并且在大多數情況下,還會產生額外的問題或假設。這是數據分析的一個有趣特性:它的結果不僅是答案還有可能是問題;當我們希望能引出更好更準確的問題。這一步驟有一個重要點是,可能會產生不正確的推論。因此并非所有的過程都必然帶來積極的結果,也不是所有的分析都同樣有效。

數據分析幾個重要的方面

我想強調一下這個過程的幾個重要方面:

(1)這個過程不是連續有序的,而是高度迭代的

雖然我將這些步驟按順序呈現,但是真正的過程根本就不是這樣的。隨著更多的問題、需求和限制被理解,人們總是從一個步驟跳到另一個步驟,也是高度迭代的一個過程。你通常會先提出一個最初的問題,通過分析得到一個答案,并在你完成此過程時,產生新的問題和需求,然后重新開始。

(2)有些操作完全是人為的

你注意到了嗎?這個過程中相當多的步驟完全是人為的(參考上圖中的紅框):界定難題,生成問題,解釋結果,生成推論和新問題。這完全是人為操作,而非技術運作。這讓人不禁想問:我們對人類如何用數據思考了解多少?我們如何擴展我們的知識,從而改進這個過程?

(3)可視化只是流程的一小部分

對于我們這樣的數據可視化人員來說,這是重要的觀察結果。盡管我們非常喜歡可視化這一步,但是我們必須認識到,當可視化被用于數據分析時,它僅僅代表了多樣化展示集的一小部分。這并不是說可視化不重要或不具有挑戰性,但是了解全局更是至關重要。整個數據分析過程過程的有效性取決于上面的所有步驟,而不僅僅是視覺表現。

交互體現在哪里

你可能已經注意到,我到目前為止還沒有提到交互。

為什么?因為交互隨處可見。每次你告訴你的電腦該做什么,你的電腦會返回一些信息給你,你就有了某種形式的交互。

下面是我們在數據分析中通常會執行的操作:

  1. 收集和轉換數據;
  2. 定義模型或查詢數據;
  3. 指定如何表達結果(和模型);
  4. 瀏覽結果;
  5. 合成并傳達收集到的事實。

所有這些都需要某種形式的直接或間接交互。

直接操作與命令行交互:

當我們談論交互式數據分析時,先澄清什么是“交互式”很重要?是什么構成了“交互式”用戶界面?

對于許多人來說,交互式可視化只涉及WIMP接口,直接操作、單擊、鼠標懸停等。然而命令行界面也是交互式的:用戶告訴計算機要做什么,而計算機做出相應的反響與回應。改變的是交互“模態”,而不單只是對象是否可交互的。

在我看來,我們應該討論的是在數據分析系統中直接操作交互和命令行交互的優缺點。盡管直接操作的優點和缺點在其他地方已經詳細討論過(NN/g 研究團隊出過一個很好的總結summary),但我們還沒有很好地理解它在數據分析中的作用。大多數現有系統都依賴于命令行接口。

這是為什么呢?是因為它們更有效還是因為我們還沒有發明更好的接口?

交互式可視化數據分析的挑戰

我想通過強調幾個我認為與交互式數據分析相關性較大的挑戰來總結本文。同時這也是我認為在未來幾年數據分析方面需要取得更多進展的地方。

數據規范(思維→數據/模型)

當我們通過計算機與數據交互時,需要做的第一件事就是將我們的問題和想法轉換成計算機能夠讀取的規范(SQL就是一個很好的例子)。

這是程序語言和格式發揮主要作用的地方。有些人可能認為,為了向計算機發出指令,必須學習某種編程語言,但在實踐中,許多交互系統使用交互規范方法,將用戶操作轉換成計算機能夠理解的語句,這對于用戶操作來說更自然。

交互式規范系統做得很好的一個是Tableau中使用的VizQL語言(VizQL language),它將用戶的選擇轉換成系統能夠理解的正式語句,并用于生成查詢和適當的可視化表示。

(譯者注:Tableau:一家美國專門做交互式數據可視化軟件的公司(公司官網:https://www.tableau.com/zh-cn))

我們應該期望人人都能成為程序員嗎?

這里的一個相關問題是:“我們是否應該期望人人都能成為程序員并學習規范語言才能進行數據分析?”

我個人認為,對這一點我們必須以更包容的態度來看,并認識到,盡管有很大一部分人可能會從數據分析工具中受益匪淺,但他們沒有時間、資源或動力去學習如何使用規范化語言。因此,盡管我是R and Jupyter和panda組合等數據科學編程工具的超級粉絲,但我仍然不確定我們是否應該期望每個人都達到這種熟練程度,以便對數據進行有用的處理。

Trifacta’s Wrangler和Open Refine是兩個很好的例子,可以讓人們更容易地訪問負責的數據處理,它使人們無需編寫任何代碼即可執行大量的數據處理。

數據呈現(數據/模型→眼睛)

一旦從查詢和模型中獲得結果,下一步是進行(可視化的)呈現,以便用戶能夠觀察和理解,這是數據可視化的范圍。盡管當大多數人聽到“數據可視化”時,他們想到的是色彩豐富的花哨圖形,但是期望簡單的數據圖表成為檢驗結果的有效方法完全是恰當的。我發現個有趣的點,我們使用“可視化”這個詞來表示復雜的圖形,但實際上簡單的表格也和其他圖表一樣屬于可視化。

多年來我發現,當我們談論數據可視化時,我們經常認為選擇使用哪種圖形圖表呈現是最重要的。然而,決定可視化的內容通常與決定如何可視化一樣重要,甚至更重要。

舉個簡單例子:有時,當信息內容表達的是百分比而不是絕對值時,圖表能更好地傳達問題。我認為,如果我們能夠更好地理解和描述數據轉換在可視化中所扮演的角色,那將是非常有用的。我的印象是,在很多情況下,我們往往過分強調圖形化的感知,然而真正的價值點在數據內容部分。

“為了對數據分析有用,可視化需要多么花哨?”

這里要討論的另外一個問題是:“為了對數據分析有用,可視化需要多么花哨?”

我對精心設計,時尚,充滿吸引力的可視化項目十分喜愛,色彩及像素的美麗讓我第一時間愛上可視化。但是,當我們的主要目標是數據分析時,我不確定這能產生多大價值。更準確地說,我確實認為美學在可視化中扮演著重要的角色,但我不確定在為數據可視化創造新的隱喻方面我們還需要多少創新。

根據我的經驗(基于原型研究超過10年)大多數可視化問題可以通過一些圖表來解決。很少情況下,需要你去想出一個全新的表達方式。像條形圖、折線圖、散點圖、透視表等“圖形化主力”真的很難被替代!

然而,這并不意味著進行有效地數據可視化是容易的! 真正困難的是,如何巧妙、有效和創新地去使用、調整和組合這些圖表,這比人們愿意承認的要困難得多。在某種程度上,要想在可視化方面取得進展,創新和教育工作應該更多地關注深度,而不是廣度。我們需要更多地了解如何能夠更好地使用現有的方法,而不是尋找更多的隱喻和技術(盡管我們也需要不斷創新,嘗試一些瘋狂的東西)。

數據認知(眼睛→思維)

這一步至關重要,但往往被忽視。一旦將結果表達出來,人們需要能夠解釋并理解它們的含義。這是一個需要將若干知識連接到一起的復雜的認知過程。

想想看:為了有效地對建模和可視化的結果進行推論,我們需要知道什么?

至少,你需要能夠理解數據表達和模型,理解它們與它們所代表的現實世界實體的聯系。最后,也是最重要的,是如何與你頭腦中已有的知識聯系起來。讓我們關注可視化和模型吧。

“人們能夠理解和信任他們的可視化和模型嗎?”

這里的重要問題是:“人們能夠理解并信任他們的模型嗎?”

為了有效地解釋可視化,您首先需要理解視覺隱喻,其次視覺隱喻本身也需要以盡可能不模糊/肯定的方式傳達信息。不幸的是,并不是所有的視覺表現都是這樣的。

一個值得注意的例子是多維投影(使用諸如t-SNE和MDS之類的算法),它使用了某種直觀的隱喻(距離遠近代表相似性),但也模棱兩可得令人難以接受。下面是一個投影的例子,顯示了從IMDB評論中提取的單詞之間的相似性。

「交譯所」從數據可視化到交互式數據分析

t-SNE投影的例子

你看到這些展示的時候你學到了什么?當你碰巧學到了一些東西時……你能確定你所學到的東西代表了某種真實的現象,而不僅僅是統計上的巧合嗎?

當我們看模型的解釋時,我們面臨一個更大的問題。機器學習方法使用非常復雜的程序將數據轉換成更抽象的結構,但在這個過程中,我們完全喪失了理解其內容、質量和可信性的能力,建立“主題模型”。這是噩夢。

該方法將文檔集合輸入,并返回作為單詞集捕獲的一組“主題”。問題是,大多數時候返回的內容根本沒有任何意義。以下是我們實驗室最近做的一個項目的例子。

以下是從Vox的一組文章中摘錄出來的一些主題:

「交譯所」從數據可視化到交互式數據分析

主題建模生成的主題示例(使用LDA方法)

你覺得怎么樣?是否有意義呢?你能從中提取出有用的東西嗎?

憑心而論,這個方法返回了很多更有意義的主題,但是我選擇了這種更戲劇化的方式說明這個問題。

你會怎么處理這個?這是一個重要的問題,不僅需要ML(Machine Learning)專家的合作,也需要和強感知能力的人合作,這樣這些方法才能更有效地產生一個能夠真正增強人類心智的人類技術系統。

建議

我有兩組建議:一組針對從業者,一組針對研究人員。

1. 給從業者的建議

(1)多關注(更加相關的)問題

世界上不乏需要解決的相關問題,而數據分析可以發揮重要作用幫助取得進展。無論好壞,數據無處不在,大部分的物理世界都留下了數據痕跡,這可以幫助我們更好地理解某些事物。為那些想要解決重要問題的人工作或與他們合作。選擇一個你喜歡的領域并嘗試獲得更好的理解與認知。

(2)多一些工具,少一點可視化

如果我們想要提升數據分析和可視化的影響力量,并將其交給那些為我們解決重要問題的人(如醫生,氣候科學家,安全專家),我們需要更多地關注分析工具而不是可視化。構建下一個令人驚嘆的圖形可能很有趣、有啟發性甚至在某種程度上會有用,但最終我認為我們需要為其他人構建工具,以幫助人們利用數據和可視化蘊含的全部力量。

(3)公之于眾

我所描述的其實已經發生了!甚至可能規模也很大,只是我們看不到。這些項目大多發生在私營企業的幕后,它們沒有動力對外展示自己內部在做什么,但這種情況正在改變。

如果你剛好在從事數據分析項目,請向我們展示是如何完成的!但不要只展示最終產品,希望過程也能可見。讓我們在哪個環節出問題了,以及是如何應對問題的。

一起看看你們在項目中遇到的死胡同,也許大家都能從中學到一些東西。同樣,如果你開發了一個工具,盡可能讓更多人都用到。你永遠不知道,某個人在某個地方可以使用這個工具做什么,也許做出了你無法想象的卓越事件。

2. 給研究人員的建議

(1)開發更好的規范方法

將人們頭腦中的想法轉換成機器能夠理解的指令仍然是相當具有挑戰性的。在編程語言方面已經取得了很大的進展,但是在不編碼的情況下創建規范仍然非常具有挑戰性。

近年來發明的兩個很好的交互式規范系統例子是:Tableau的可視化查詢語言和Trifacta的數據轉換交互方法。這解決了兩個非常重要的需求,但也不乏其他需要交互式規范的情況。例如:規格化人們對文本集合能做什么,仍然是非常具有挑戰性的。

(2)開發更多可解譯的方法

正如我上面提到的,解釋是一個很大的挑戰。正如我上面提到的,解釋是一個很大的挑戰,尤其是當我們關注于旨在與人交互的ML(MachineLearning)方法時,我們首先需要更好地理解解譯是如何工作的,以及解譯與既存知識和專業知識之間的關系。我們還需要開發更容易理解更靈活的方法,來接受來自人工代理的輸入和反饋。

(3)開發數據分析的“科學”

數據分析過程是由一系列復雜的認知過程構成的,我們對這些認知過程的理解并不十分透徹。

什么因素能促使數據分析成功?計算工具的作用是什么?我們怎樣才能避免陷阱、偏見、遺漏等等?

這真的很復雜!雖然認知科學的一些基礎研究已經存在,但還缺少一個公認的模型可以指導設計師和工程師開發和評估復雜的交互系統進行數據分析。在這些方面取得進展將使我們能夠更好地理解交互式數據分析的工作原理,并有希望能指引我們如何創建更好的工具來思考分析數據。

結語

在這篇短文中,我認為可視化從業者和研究人員應該用更廣泛的視角來看待他們在數據科學領域中的所起的作用??梢暬瘜<铱梢酝ㄟ^專注于支持人們分析他們的數據,來幫助人們解決復雜和重要的社會問題。

這可以通過:

  1. 理解可視化是一個大而復雜的過程中的一個(重要的)步驟;
  2. 尋求與需要他們幫助的人合作;
  3. 開發工具讓他們用數據做一些了不起的事情。

我希望你能從這篇文章中得到啟發,盡管這篇文章有點長。我們需要一大批像你這樣的可視化愛好者來做一些對世界有影響的重要工作!

 

原文鏈接:https://medium.com/@FILWD/from-data-visualization-to-interactive-data-analysis-e24ae3751bf3

譯者:rubyxrli,公眾號:騰訊FiTdesign(ID:FiTdesign2017)

本文來源于人人都是產品經理合作媒體@ 騰訊FITdesign,作者@rubyxrli

題圖來自Unsplash,基于CC0協議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發揮!