丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
人工智能開發(fā)者 正文
發(fā)私信給楊鯉萍
發(fā)送

0

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

本文作者: 楊鯉萍 2020-01-17 15:38
導(dǎo)語:讓模型迭代過程更易于操作

雷鋒網(wǎng) AI 開發(fā)者按:在去年 1 月,Uber 推出了一種與模型無關(guān)的機(jī)器學(xué)習(xí)可視化調(diào)試工具——Manifold,它可以讓模型迭代過程更易于操作,并能夠提供更多的信息;同時(shí),該工具也被 Uber 用來識別機(jī)器學(xué)習(xí)模型中的一些問題。

官方表示,大多數(shù)開發(fā)者通常會(huì)將 20% 的精力放在構(gòu)建初始的工作模型上,而將 80% 的精力用來提高模型性能,即機(jī)器學(xué)習(xí)模型開發(fā) 20/80 分配法則,這也體現(xiàn)出調(diào)試機(jī)器學(xué)習(xí)模型的困難。因此,為了讓開發(fā)者能夠更好的利用 Manifold 帶來的高效率,日前 Uber 宣布,他們將 Manifold 作為開源項(xiàng)目發(fā)布。

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

Manifold 開發(fā)背景

傳統(tǒng)上,數(shù)據(jù)科學(xué)家在開發(fā)模型時(shí),他們使用匯總分?jǐn)?shù),例如:對數(shù)損失、曲線下面積(AUC)和平均絕對誤差(MAE)來評估每個(gè)候選模型。盡管這些指標(biāo)提供了有關(guān)模型執(zhí)行情況的直觀數(shù)據(jù),但它們并未傳達(dá)有關(guān)模型執(zhí)行不佳的原因以及如何改善模型性能的大量信息。因而,模型構(gòu)建者傾向于依賴反復(fù)試驗(yàn)和誤差來決定如何改善模型。

對數(shù)損失:

http://wiki.fast.ai/index.php/Log_Loss 

曲線下面積:

https://stats.stackexchange.com/questions/132777/what-does-auc-stand-for-and-what-is-it 

平均絕對誤差:

https://en.wikipedia.org/wiki/Mean_absolute_error 

為了讓模型迭代過程更加可操作,并能夠提供更多的信息,Manifold 應(yīng)運(yùn)而生,它是一個(gè)用于機(jī)器學(xué)習(xí)性能診斷和模型調(diào)試的可視化工具。Manifold 是一個(gè)獨(dú)立的 Web 工具和 Python 包,它有 3 個(gè)主要優(yōu)勢:

  • 模型無關(guān)性;

  • 模型性能評估的可視化分析,超越了模型性能匯總統(tǒng)計(jì),以此來提高準(zhǔn)確性;

  • 將可視化分析系統(tǒng)和標(biāo)準(zhǔn)模型訓(xùn)練計(jì)算分開的能力,幫助更快和更靈活進(jìn)行模型開發(fā);

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

來源:Uber

Manifold 利用可視化分析技術(shù)讓機(jī)器學(xué)習(xí)開發(fā)者能夠超越總體指標(biāo)檢測模型無法精準(zhǔn)預(yù)測的數(shù)據(jù)子集;它還通過揭示性能表現(xiàn)較好和較差數(shù)據(jù)子集之間的特征分布差異,來說明模型性能表現(xiàn)不佳的潛在原因。

此外,它還可以顯示對于每一個(gè)數(shù)據(jù)子集,一些候選模型將有怎樣的預(yù)測準(zhǔn)確性差異,從而為一些高級處理(如模型集成)提供數(shù)據(jù)根據(jù)。

可視化設(shè)計(jì)

隨著機(jī)器學(xué)習(xí)越來越成為相關(guān)業(yè)務(wù)不可分割的部分,提供使模型更透明且易于理解工具就顯得更加重要,這一工具可以使得開發(fā)者能自信自如地使用機(jī)器學(xué)習(xí)生成的預(yù)測。但考慮到機(jī)器學(xué)習(xí)模型本質(zhì)上是不透明的復(fù)雜性,則需要通過新興的機(jī)器學(xué)習(xí)可視化來解決這個(gè)問題。

以前的機(jī)器學(xué)習(xí)可視化方法通常包括:直接可視化內(nèi)部結(jié)構(gòu)或模型參數(shù)和受底層算法約束的設(shè)計(jì),但這可能導(dǎo)致無法擴(kuò)展到可以處理更大范圍內(nèi)的通用用例。

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

來源:Uber

為了應(yīng)對這個(gè)挑戰(zhàn),Manifold 在設(shè)計(jì)之初則考慮到了機(jī)器學(xué)習(xí)模型服務(wù),并從分類和回歸模型開始入手;這也使得該工具可以通過揭示數(shù)據(jù)子集之間的特征分布差異為機(jī)器學(xué)習(xí)模型開發(fā)黑盒提供更高的透明度。

同時(shí),借助 Manifold 的設(shè)計(jì),開發(fā)者也顛覆了傳統(tǒng)機(jī)器學(xué)習(xí)模型的可視化,無需檢查模型,而是直接通過以下方式檢查各個(gè)數(shù)據(jù)點(diǎn):

  • 識別影響模型性能的數(shù)據(jù)段,以及這些數(shù)據(jù)如何影響模型的性能;

  • 評估這些數(shù)據(jù)段的聚合特征,以便識別某些模型行為背后的原因。

工作流設(shè)計(jì)

Manifold 界面包括兩個(gè)部分,分別是性能比較視圖和特征屬性視圖。其中,性能比較視圖,由帶有小提琴編碼的多路圖組成,用于比較模型和數(shù)據(jù)段之間的性能;

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

Manifold 性能比較視圖的可視編碼由 x 軸和 y 軸以及顏色組成,x 軸表示用戶選定的性能指標(biāo),而 y 軸表示數(shù)據(jù)段,顏色表示模型。曲線高度顯示了在每個(gè)數(shù)據(jù)段上每個(gè)模型的性能分布 來源:Uber

而特征屬性視圖,由兩套特征分布直方圖構(gòu)成,用于比較兩個(gè)選定數(shù)據(jù)段的特征。

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

特征屬性視圖的可視編碼包含 x 軸(特征值范圍)和 y 軸(數(shù)據(jù)點(diǎn)的個(gè)數(shù))以及顏色(數(shù)據(jù)段組)。根據(jù)兩個(gè)數(shù)據(jù)段組的分布差異對特征進(jìn)行排序 來源:Uber

Manifold 通過以下三個(gè)步驟幫助用戶發(fā)現(xiàn)模型需要改進(jìn)的區(qū)域:

  • 比較 首先,給定一個(gè)具有一個(gè)或多個(gè)機(jī)器學(xué)習(xí)模型輸出的數(shù)據(jù)集,Manifold 比較并突出顯示模型或數(shù)據(jù)子集之間的性能差異。

  • 切片 該步驟允許用戶根據(jù)模型性能選擇感興趣的數(shù)據(jù)子集以便進(jìn)行進(jìn)一步的檢查。

  • 屬性 然后,Manifold 突出顯示所選數(shù)據(jù)子集之間的特征分布差異,幫助用戶找到性能結(jié)果背后的原因。

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

該可視化原型顯示了數(shù)據(jù)空間中的模型性能,根據(jù)其性能(x 軸)和其中一個(gè)特征的值(y 軸)定位每個(gè)數(shù)據(jù)點(diǎn) 來源:Uber

開發(fā)者希望通過可視化原型顯示了數(shù)據(jù)空間中的模型性能,根據(jù)其性能(x 軸)和其中一個(gè)特征的值(y 軸)定位每個(gè)數(shù)據(jù)點(diǎn),但該方法存在 3 個(gè)主要挑戰(zhàn):

  • 因?yàn)橛刑嗟狞c(diǎn),無法清楚地識別模式;需要通過抽離或減少點(diǎn)來揭示模式;

  • 難以確定哪些特征對于 y 軸最有價(jià)值,以便識別出相關(guān)模式;

  • 隨著模型數(shù)量的增加,不同模型之間的比較變得更難;

為了提前解決這些問題,開發(fā)者實(shí)現(xiàn)了一些聚合 / 簡化操作;即:不單獨(dú)表示每個(gè)數(shù)據(jù)點(diǎn),而是把它們組成子集。在開發(fā)中,無需使用 y 軸來編碼特定特征的值,而是使用了表示不同數(shù)據(jù)子集的分類軸。該方法演變成了最終的性能圖表,并具有兩個(gè)顯著的優(yōu)點(diǎn):

  • 基本相似的數(shù)據(jù)點(diǎn)不會(huì)重復(fù)出現(xiàn)在圖表上,只突出顯示最主要的高層差異;

  • 因?yàn)闇p少了圖表中各種形狀的數(shù)量,所以可以在同一圖表中繪制不同的模型,以更好地加以比較;

而在工具的「性能比較」視圖中顯示模式的關(guān)鍵,在于把測試數(shù)據(jù)集分成子集。在 Manifold 中,子集是基于一個(gè)或多個(gè)性能列的聚類算法自動(dòng)生成的,于每個(gè)模型,具有相似性能的數(shù)據(jù)被分到同一個(gè)組中(因?yàn)樵撍惴ù_保模型 X 的性能對于子集 Y 中不同的數(shù)據(jù)點(diǎn)是一致的)。下圖則說明了這個(gè)過程:

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

所有的數(shù)據(jù)點(diǎn)收集自每個(gè)模型,根據(jù)實(shí)際情況評估后給出性能度量 來源:Uber

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

左側(cè):性能指標(biāo)作為在 Manifold 中運(yùn)行的聚類算法的輸入。右側(cè):用戶可以調(diào)整集群參數(shù)來探索數(shù)據(jù)集中的模式 來源:Uber

Manifold 的架構(gòu)

由于生成 Manifold 可視化涉及一些密集的數(shù)值計(jì)算(聚類、KL 發(fā)散),計(jì)算性能不足會(huì)拖慢用戶界面的渲染,影響到整個(gè)用戶體驗(yàn)。因此,Manifold 使用了 Python 并利用其 DataFrame 處理和機(jī)器學(xué)習(xí)庫(如 Pandas 和 Scikit-Learn)實(shí)現(xiàn)所有重量級的計(jì)算。

Pandas:

https://pandas.pydata.org/ 

Scikit-Learn:

https://scikit-learn.org/stable/ 

但由于依賴 Python 后端會(huì)降低了 Manifold 的靈活性,難以實(shí)現(xiàn)組件化,這也成了在將 Manifold 和企業(yè)機(jī)器學(xué)習(xí)生態(tài)系統(tǒng)集成時(shí)的一個(gè)缺點(diǎn)。因此,除了 Python 計(jì)算外,Manifold 用 GPU 加速器添加了第 2 個(gè)用戶工作流,該 GPU 加速器是用更加靈活的 JavaScript 編寫而得。下圖展示了兩個(gè)工作流如何與 Manifold 集成的過程:

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

 Manifold 由 3 個(gè)不同的部分組成:數(shù)據(jù)源、后端和前端 來源:Uber

用戶可通過 2 種方式使用 Manifold,即:通過 Python 包或 npm 包(通過網(wǎng)頁)。由于代碼可重用性和模塊化對兩個(gè)工作流的共存至關(guān)重要,因此,Python 和 JavaScript 代碼庫也被組織成了 3 個(gè)不同的功能模塊:

  • 數(shù)據(jù)轉(zhuǎn)換器,一種將來自其他內(nèi)部服務(wù)(如 Michelangelo)的數(shù)據(jù)格式轉(zhuǎn)換為 Manifold 內(nèi)部數(shù)據(jù)表示格式的功能;

  • 計(jì)算引擎,一種負(fù)責(zé)運(yùn)行聚類和其他數(shù)據(jù)密集計(jì)算的功能;

  • 前端組件,Manifold 可視化分析系統(tǒng)(其 Python 包使用了 JavaScript 前端組件的內(nèi)置版本)的用戶界面。

與 Python 相比,處理數(shù)據(jù)密集計(jì)算對 JavaScript 計(jì)算引擎來說是個(gè)挑戰(zhàn)。為了讓開發(fā)者看到有意義的模式,需要大約計(jì)算 1 萬個(gè)數(shù)據(jù)記錄(「行」)。除了其他操作,KL 發(fā)散的聚類和計(jì)算需要在前端進(jìn)行,這可能會(huì)造成速度瓶頸。根據(jù)測試結(jié)果,開發(fā)者在更新性能比較視圖中的簇?cái)?shù)量時(shí),使用純 JavaScript 實(shí)現(xiàn)的計(jì)算可能需要 10 多秒時(shí)間。

因此,我們把 TensorFlow.js 作為線性代數(shù)實(shí)用庫來實(shí)現(xiàn)我們的 k 均值聚類和 KL 發(fā)散計(jì)算。因?yàn)檫@種類型的計(jì)算可以被矢量化,從而可以利用 WebGL 加速,所以更新同樣數(shù)量的簇的任務(wù)可以在不到 1 秒的時(shí)間里完成,超過原來性能的 100 倍。

通過組件化并將其包含在 npm 包中,Manifold 具有更好的靈活性,既可以用作獨(dú)立服務(wù),也可以集成到其他機(jī)器學(xué)習(xí)系統(tǒng)(如 Michelangelo)中。

因?yàn)榇蠖鄶?shù)用于機(jī)器學(xué)習(xí)的可視化工具需要額外的計(jì)算處理,超過了模型訓(xùn)練后端具備的計(jì)算處理能力,所以在把它們與其它機(jī)器學(xué)習(xí)系統(tǒng)集成在一起可能很復(fù)雜且不可擴(kuò)展。Manifold 針對這種情況提出了解決方案,通過在可視化分析系統(tǒng)中分開處理訓(xùn)練模型所需的計(jì)算,可以進(jìn)行更快的迭代,并得到了更簡潔直觀的數(shù)據(jù)接口。

Manifold 特性與更新

在 Manifold 的第一個(gè)開源版本中,Uber 添加了各種特性,使模型調(diào)試比內(nèi)部迭代更容易。版本 1 的特性包括:

  • 通用二進(jìn)制分類和回歸模型調(diào)試的模型無關(guān)性支持。開發(fā)者將能夠分析并比較各種算法類型的模型,使他們能夠辨別不同數(shù)據(jù)切片的性能差異。

  • 對表格特征輸入的可視化支持,包括數(shù)字、類別和地理空間特征類型。 利用每個(gè)數(shù)據(jù)切片的特征值分布信息,用戶可以更好地了解某些性能問題的潛在原因,例如,模型的預(yù)測損失與其數(shù)據(jù)點(diǎn)的地理位置和分布之間是否存在相關(guān)性。

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

Manifold 新的升級包括對地理空間特征的可視化支持 來源:Uber

  • 與 Jupyter Notebook 集成。Manifold 接受作為 Pandas DataFrame 對象的數(shù)據(jù)輸入,并在 Jupyter 中呈現(xiàn)該數(shù)據(jù)的可視化效果。由于 Jupyter Notebook 是數(shù)據(jù)科學(xué)家和機(jī)器學(xué)習(xí)工程師使用最廣泛的數(shù)據(jù)科學(xué)平臺之一,因此這種集成讓用戶得以能夠在不中斷正常工作流的情況下分析他們的模型。

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

Manifold 的 Jupyter Notebook 集成接受作為 Pandas DataFrame 對象的數(shù)據(jù)輸入,并在 Jupyter Notebook UI 中呈現(xiàn)可視化效果 來源:Uber

  • 基于每個(gè)實(shí)例預(yù)測損失和其他特征值的交互式數(shù)據(jù)切片和性能比較。 用戶將能夠根據(jù)預(yù)測損失、基準(zhǔn)真相(Ground Truth)或其他感興趣的特征對數(shù)據(jù)進(jìn)行切片和查詢。這個(gè)特性將使用戶能夠通過通用的數(shù)據(jù)切片邏輯快速驗(yàn)證或拒絕其假設(shè)。

目前,Manifold 的開源版本提供了 npm 軟件包版本,而對于 Jupyter Notebook 的綁定,則提供了一個(gè) Python 包版本。要開始使用 Manifold,請按照 GitHub Repo 中的文檔進(jìn)行操作并在本地安裝,或者查看 Uber 的演示網(wǎng)站。

原文地址:

https://eng.uber.com/manifold-open-source/ 

Manifold 詳細(xì)介紹:

https://eng.uber.com/manifold/ 

Manifold 論文地址:

https://arxiv.org/pdf/1808.00196.pdf 

雷鋒網(wǎng) AI 開發(fā)者   雷鋒網(wǎng)

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。

Uber 開源 AI 可視化調(diào)試工具 Manifold,2 個(gè)工作流讓計(jì)算性能提升百倍

分享:
當(dāng)月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個(gè)人簡介
為了您的賬戶安全,請驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說