Facebook的交互式神經(jīng)網(wǎng)絡(luò)可視化系統(tǒng)ActiVis,打開(kāi)神經(jīng)網(wǎng)絡(luò)的“黑盒子”
之前許多媒體在熱烈討論神經(jīng)網(wǎng)絡(luò)的“黑盒子”(black box)問(wèn)題。復(fù)雜的模型處理預(yù)測(cè)性工作負(fù)載時(shí)表現(xiàn)良好,但是說(shuō)到回溯系統(tǒng)是如何得出最終結(jié)果的,根本沒(méi)有一種清晰的方法來(lái)了解什么做對(duì)了、什么做錯(cuò)了,或者了解模型如何打開(kāi)自己、得出結(jié)論。
對(duì)于老式機(jī)器學(xué)習(xí)模型而言,這問(wèn)題不大;但是如今對(duì)于非線性隱匿式數(shù)據(jù)結(jié)構(gòu)和無(wú)數(shù)參數(shù)而言,這卻是個(gè)問(wèn)題。對(duì)于為科學(xué)應(yīng)用部署神經(jīng)網(wǎng)絡(luò)的研究人員而言,黑盒子缺乏再現(xiàn)性(reproducibility)這個(gè)問(wèn)題帶來(lái)了驗(yàn)證方面的障礙,不過(guò)對(duì)于深度學(xué)習(xí)框架的生產(chǎn)級(jí)用戶來(lái)說(shuō),因缺乏可見(jiàn)性而無(wú)法深入了解網(wǎng)絡(luò)行為還存在其他問(wèn)題,尤其是在優(yōu)化模型,以獲得更好的性能、效率和準(zhǔn)確性方面。
要解決這個(gè)問(wèn)題,一個(gè)辦法就是對(duì)神經(jīng)網(wǎng)絡(luò)模型實(shí)行可視化――這正是社交媒體巨頭Facebook與佐治亞理工學(xué)院(Georgia Tech)的研究人員共同致力于攻克的課題。Facebook的深度學(xué)習(xí)使用場(chǎng)合不僅僅局限于圖像分析,這意味著不同類(lèi)型的數(shù)據(jù)被饋送到模型。遺憾的是,用于神經(jīng)網(wǎng)絡(luò)可視化的工具大多數(shù)專注于圖像數(shù)據(jù)集,這激發(fā)了Facebook研究用于Facebook生產(chǎn)環(huán)境中的一種名為ActiVis的工具,這是一種交互式可視化系統(tǒng),可用于解釋大規(guī)模神經(jīng)網(wǎng)絡(luò)模型和結(jié)果。
佐治亞理工學(xué)院的研究團(tuán)隊(duì)就在一年多前開(kāi)始與Facebook的工程師合作,了解他們的分析平臺(tái)、什么可視化工具適用。除了開(kāi)發(fā)這種一樣工具面臨的重大技術(shù)挑戰(zhàn)外,這種工具除了能夠融入到Facebook的現(xiàn)有機(jī)器學(xué)習(xí)平臺(tái),還要“具有靈活性,可推廣到Facebook等公司用于其許多產(chǎn)品和服務(wù)的眾多模型和數(shù)據(jù)集”。
該平臺(tái)由幾個(gè)不同的機(jī)器學(xué)習(xí)元素組成。核心元素是Facebook的統(tǒng)一機(jī)器學(xué)習(xí)平臺(tái),名為FBLearner Flow,它負(fù)責(zé)協(xié)調(diào)不同的機(jī)器學(xué)習(xí)工作流程。Flow的目標(biāo)是,讓開(kāi)發(fā)人員不用編寫(xiě)代碼就可以訓(xùn)練模型,并查看結(jié)果。
ActiVis支持兩種解釋策略來(lái)用于可視化和比較多個(gè)實(shí)例和子集。它統(tǒng)一了基于實(shí)例的檢查和基于子集的檢查;它緊密地整合了復(fù)雜模型的概述和局部檢查,可靈活擴(kuò)展,支持一系列廣泛的行業(yè)規(guī)模的數(shù)據(jù)集和模型――對(duì)于想針對(duì)其數(shù)據(jù)使用現(xiàn)有模型,但是又不想深入實(shí)施細(xì)節(jié)的那些人來(lái)說(shuō),F(xiàn)acebook里面的這個(gè)工具非常寶貴。ActiVis特別專注于FBLearner Flow用于可視化,一方面是由于其用戶群。
“ActiVis直觀地顯示用戶指定的實(shí)例或?qū)嵗蛹绾渭せ钌窠?jīng)元,從而幫助用戶了解模型是如何導(dǎo)出預(yù)測(cè)的。用戶可以使用原始數(shù)據(jù)屬性、變換的特征和輸出結(jié)果,隨意定義子集,可以從多個(gè)角度來(lái)檢查模型。”
佐治亞理工學(xué)院的團(tuán)隊(duì)表示,對(duì)于大規(guī)模設(shè)計(jì)這類(lèi)可視化系統(tǒng)的任何人來(lái)說(shuō),為神經(jīng)網(wǎng)絡(luò)構(gòu)建一個(gè)穩(wěn)固的平臺(tái)涉及幾個(gè)元素。他們提到了輸入源和數(shù)據(jù)格式的多樣性、龐大數(shù)據(jù)量、復(fù)雜的模型架構(gòu),不一而足。
“雖然許多現(xiàn)有的深度學(xué)習(xí)可視化工具支持基于實(shí)例的探索,ActiVis卻是***款同時(shí)支持對(duì)深度神經(jīng)網(wǎng)絡(luò)模型進(jìn)行基于實(shí)例的探索和基于子集的探索的工具。此外,為了幫助用戶了解模型的大致情況,它使用圖形顯示了模型架構(gòu),用戶可以在此基礎(chǔ)上深入分析,在每個(gè)模型層或節(jié)點(diǎn)這一層面,對(duì)神經(jīng)元激活執(zhí)行局部檢查。”
該團(tuán)隊(duì)表示,想要使用這種可視化工具的Facebook開(kāi)發(fā)人員添加了幾行代碼,這些代碼告訴模型在FBLearner Flow界面中的訓(xùn)練過(guò)程:它需要生成可視化所需的數(shù)據(jù)。訓(xùn)練結(jié)束后,界面提供了這個(gè)基于Web的工具的鏈接,以便可視化和探索模型。
該團(tuán)隊(duì)稱:“ActiVis旨在處理Facebook的許多不同的模型和數(shù)據(jù)集。由于經(jīng)常使用復(fù)雜模型和大型數(shù)據(jù)集,ActiV具有可擴(kuò)展性和靈活性很重要,那樣工程師可以為其模型輕松采用ActiVis,用戶可以可視化和探索模型,用于處理分析任務(wù)。”
***,對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行可視化以解決黑盒子問(wèn)題不是什么新鮮事,但是由于模型變得更復(fù)雜――這歸因于硬件和更多的數(shù)據(jù),今后會(huì)更加需要諸如此類(lèi)的工具。我們預(yù)計(jì),在今后幾年,接入到關(guān)鍵平臺(tái)(包括TensorFlow、Caffe及其他)的類(lèi)似的可視化工具會(huì)開(kāi)源,甚至可能實(shí)現(xiàn)商業(yè)化,對(duì)生產(chǎn)環(huán)境和科學(xué)計(jì)算這兩種使用場(chǎng)景來(lái)說(shuō)都是如此。