亚洲男人的天堂2018av,欧美草比,久久久久久免费视频精选,国色天香在线看免费,久久久久亚洲av成人片仓井空

轉載機器之心報道 編輯:澤南、蛋醬、陳萍打字都不需要了。 我們都說大模型會改變所有應用的形態,ChatGPT 現在走完了變革的最后一步。

剛剛,ChatGPT 進行了一次重要更新,不管是 GPT-4 還是 GPT-3.5 模型,現在都可以基于圖像進行分析和對話了。

ChatGPT 中的新圖像識別功能允許用戶使用 GPT-3.5 或 GPT-4 模型上傳一張或多張圖像配合進行對話。OpenAI 在其宣傳博客文章中聲稱該功能可用于各種日常應用:從通過拍攝冰箱和食品儲藏室的照片來讓 AI 決定晚餐吃什么,到排除燒烤爐無法啟動的原因。OpenAI 還表示,你可以使用設備的觸摸屏圈出他們希望 ChatGPT 關注的圖像部分。

就像這個視頻所演示的,用戶能夠詢問如何升起自行車座椅,需要提供的是照片、使用手冊和用戶工具箱的圖片。然后,ChatGPT 會做出反應并建議用戶如何完成這一過程。

OpenAI 還表示,ChatGPT 的移動端 App 還將添加語音合成選項,與現有的語音識別功能配合使用時,我們就能與人工智能助手進行完全直接的口頭對話。

與此同時,在音頻方面,ChatGPT 新的語音合成功能據說由 OpenAI 所稱的「新文本到語音模型」驅動,盡管文本到語音問題已經解決了很長時間。該公司表示,該功能推出后,用戶可以在應用設置中選擇語音對話,然后從「Juniper」、「Sky」、「Cove」、「Ember」和「Breeze」等五種不同的合成聲音中進行選擇。OpenAI 表示,這些聲音都是與專業配音演員合作制作的。

這讓人想起了 OpenAI 2022 年開源的語音識別系統 Whisper,今后這一系統將繼續處理用戶語音輸入的轉錄工作。自 ChatGPT iOS 應用程序今年 5 月推出以來,Whisper 就一直集成在其中。 OpenAI 計劃 「在未來兩周內」向 Plus 和 Enterprise 訂閱者推出 ChatGPT 中的這些功能,它還指出,語音合成僅適用于 iOS 和安卓端應用,不過圖像識別功能在網絡界面和移動應用程序上均有提供。 鑒于 ChatGPT 的數億用戶們還沒有親自測試過這些功能,所以我們還不能判斷它的效果如何。而且對于它的工作原理,OpenAI 也和以往一樣沒有詳細說明,僅著重強調了大模型的安全性。

參考同類的 AI 研究可以推測,多模態 AI 模型通常會將文本和圖像轉換到一個共享的編碼空間,從而使它們能夠通過相同的神經網絡處理各種類型的數據。OpenAI 可以使用 CLIP 在視覺數據和文本數據之間架起一座橋梁,將圖像和文本表征整合到同一個潛在空間(一種矢量化的數據關系網)中。這種技術可以讓 ChatGPT 跨文本和圖像進行上下文推理。

今年 3 月,OpenAI 上線 GPT-4 ,展示了 AI 模型的多模態功能,在現場演示時,我們見識到了 GPT-4 對文本和圖像的處理能力,但一直以來,這種功能普通用戶都無法使用。相反,OpenAI 在與 Be My Eyes (是一款為盲人和弱視人士提供免費移動應用程序)的合作中創建了一款可以為盲人解讀場景照片的應用程序。

然而,由于隱私問題導致 OpenAI 的多模態功能至今未能發布。

最近幾周,科技巨頭一直在競相推出多模態方面的更新,將更多 AI 驅動的工具直接集成到核心產品中。谷歌上周宣布對其 ChatGPT 競爭對手 Bard 進行一系列更新,同樣在上周,亞馬遜表示將為其語音助手 Alexa 帶來基于生成式 AI 的更新。

在最近 ChatGPT 更新公告中,OpenAI 指出了對 ChatGPT 進行功能擴展的一些限制,并承認存在潛在的視覺混淆(即錯誤識別某些內容)以及視覺模型對非英語語言的不完美識別等問題。OpenAI 表示,他們已經在極端主義和科學能力等領域進行了風險評估,但仍然建議謹慎使用,尤其是在高風險或科學研究等專業環境中。

鑒于在開發上述 Be My Eyes 應用程序時遇到的隱私問題,OpenAI 指出,他們已經采取了技術措施,以限制 ChatGPT 的能力,這些系統應該尊重個人隱私。

盡管存在缺陷,但 OpenAI 仍然賦予了 ChatGPT「看、聽、說」的能力。然而,并不是所有人都對這一更新感到興奮。Hugging Face AI 研究員 Sasha Luccioni 博士表示,「我們應該停止像對待人類一樣對待 AI 模型。ChatGPT 擁有看、聽、說的能力是不被允許的。但它可以與傳感器集成,以不同的方式來提供信息。」

新能力上線之后,人們紛紛表示歡迎,有人表示這是 ChatGPT 迄今為止最大的變革之一,就差套個機器人的物理外殼了。

在 AI 研究領域,人們也開始分析起新版 ChatGPT 背后的技術。從 OpenAI 自己公開的簡短文檔看,是有一個名為 GPT-4V (ision) 的新款大模型。

文檔鏈接://cdn.openai.com/papers/GPTV_System_Card.pdf 英偉達研究員 Jim Fan 認為 GPT-4V 是一個整體模型。與之對應的是,谷歌的 Bard 是一個二階段模型,首先應用 Google Lens API 進行圖像字幕,然后使用純文本 LLM 進行更多推理。 OpenAI 表示,與 GPT-4 類似,GPT-4V 的訓練是在 2022 年完成的,在 2023 年 3 月開始提供系統的早期訪問。由于 GPT-4 是 GPT-4V 視覺功能背后的技術,因此其訓練過程也是一樣的。目前看來,GPT-4V 于 2022 年完成訓練之后,一直在經歷安全性測試。 從 OpenAI 公布的文檔中我們可以總結出:

  • GPT-4V 仍然是(視覺,文本)到文本模型,使用互聯網圖像和文本數據的混合進行訓練并預測下一個單詞 token,然后再用 RLHF。
  • 今天的 GPT-4V 具有比 3 月份版本更好的 OCR(從像素讀取文本)能力。
  • 安全限制:GPT-4V 在許多類別中的拒絕回答率很高。例如,當被要求回答敏感的人口統計問題、識別名人、從背景中識別地理位置以及解決驗證碼時,它現在會說「抱歉,我無能為力」。
  • 一種簡單的技術是將圖像翻譯成幾個單詞(例如「殺人」的刀的圖片),然后應用純文本 GPT-4 過濾器加以識別。
  • 多模態攻擊:這是一個有趣且新穎的方向。例如,你可以上傳惡意提示的屏幕截圖(例如 Do-Anything-Now,臭名昭著的「DAN」提示)。或者在餐巾紙上畫一些神秘的符號來以某種方式停用過濾器。
  • 在嚴肅的科學文獻(如醫學)中,GPT-4V 仍然會產生幻覺,部分原因是 OCR 不準確。所以再次強調,不要接受任何 GPT 的醫療建議!

 不過有人表示,看起來 Bard 對于圖像的識別準確率比 ChatGPT 要高。 有關新技術的貢獻者,OpenAI 副總裁 Peter Welinder 本次特別感謝了工程師 Raul Puri。此外,多模態 ChatGPT 的主要貢獻者還包括 Hyeonwoo Noh、Jamie Kiros、Long Ouyang、Daniel Levy、Chong Zhang、Sandhini Agarwal 等人。

參考內容:

付費5元查看完整內容

相關內容

ChatGPT(全名:Chat Generative Pre-trained Transformer),美國OpenAI 研發的聊天機器人程序 [1] ,于2022年11月30日發布 。ChatGPT是人工智能技術驅動的自然語言處理工具,它能夠通過學習和理解人類的語言來進行對話,還能根據聊天的上下文進行互動,真正像人類一樣來聊天交流,甚至能完成撰寫郵件、視頻腳本、文案、翻譯、代碼,寫論文任務。 [1] //openai.com/blog/chatgpt/

機器之心報道

編輯:澤南「成立公司之后,我們陸續發布開源模型,一切進展順利,」王小川表示。 在業界都驚訝于百川智能平均 28 天發布一款大模型的時候,這家公司并沒有停下腳步。 9 月 6 日下午的發布會上,百川智能宣布正式開源微調后的 Baichuan-2 大模型。

中國科學院院士、清華大學人工智能研究院名譽院長張鈸在發布會上。

這是百川自 8 月發布 Baichuan-53B 大模型后的又一次新發布。本次開源的模型包括 Baichuan2-7B、Baichuan2-13B、Baichuan2-13B-Chat 與其 4bit 量化版本,并且均為免費可商用。 除了模型的全面公開之外,百川智能此次還開源了模型訓練的 Check Point,并公開了 Baichuan 2 技術報告,詳細介紹了新模型的訓練細節。百川智能創始人兼 CEO 王小川表示,希望此舉能夠幫助大模型學術機構、開發者和企業用戶深入了解大模型的訓練過程,更好地推動大模型學術研究和社區的技術發展。

今天開源的模型相對于大模型而言體量「較小」,其中 Baichuan2-7B-Base 和 Baichuan2-13B-Base 均基于 2.6 萬億高質量多語言數據進行訓練,在保留了上一代開源模型良好的生成與創作能力,流暢的多輪對話能力以及部署門檻較低等眾多特性的基礎上,兩個模型在數學、代碼、安全、邏輯推理、語義理解等能力有顯著提升。 「簡單來說,Baichuan7B 70 億參數模型在英文基準上已經能夠與 LLaMA2 的 130 億參數模型能力持平。因此,我們可以做到以小博大,小模型相當于大模型的能力,而在同體量上的模型可以得到更高的性能,全面超越了 LLaMA2 的性能,」王小川介紹道。 其中 Baichuan2-13B-Base 相比上一代 13B 模型,數學能力提升 49%,代碼能力提升 46%,安全能力提升 37%,邏輯推理能力提升 25%,語義理解能力提升 15%。

據介紹,在新的模型上,百川智能的研究者們從數據獲取到微調進行了很多優化。 「我們借鑒了之前做搜索時的更多經驗,對大量模型訓練數據進行了多粒度內容質量打分,使用了 2.6 億 T 的語料級來訓練 7B 與 13B 的模型,并且加入了多語言的支持,」王小川表示。「我們在千卡 A800 集群里可以達到 180TFLOPS 的訓練性能,機器利用率超過 50%。在此之外,我們也完成了很多安全對齊的工作。」 本次開源的兩個模型在各大評測榜單上的表現優秀,在 MMLU、CMMLU、GSM8K 等幾大權威評估基準中,以較大優勢領先 LLaMA2,相比其他同等參數量大模型,表現也十分亮眼,性能大幅度優于 LLaMA2 等同尺寸模型競品。 更值得一提的是,根據 MMLU 等多個權威英文評估基準評分 Baichuan2-7B 以 70 億的參數在英文主流任務上與 130 億參數量的 LLaMA2 持平。

7B 參數模型的 Benchmark 成績。

13B 參數模型的 Benchmark 成績。

Baichuan2-7B 和 Baichuan2-13B 不僅對學術研究完全開放,開發者也僅需郵件申請獲得官方商用許可后,即可以免費商用。 「除了模型發布以外,我們也希望對學術領域做更多的支持,」王小川表示。「除了技術報告以外,我們也把 Baichuan2 大模型訓練過程中的權重參數模型進行了開放。這對于大家理解預訓練,或者進行微調強化能夠帶來幫助。這也是在國內首次有公司能開放這樣的訓練過程。」 大模型訓練包含海量高質量數據獲取、大規模訓練集群穩定訓練、模型算法調優等多個環節。每個環節都需要大量人才、算力等資源的投入,從零到一完整訓練一個模型的高昂成本,阻礙了學術界對大模型訓練的深入研究。 百川智能本次開源了模型訓練從 220B 到 2640B 全過程的 Check Point。這對于科研機構研究大模型訓練過程、模型繼續訓練和模型的價值觀對齊等極具價值,可以推動國內大模型的科研進展。

此前,大部分開源模型只是對外公開自身的模型權重,很少提及訓練細節,開發者們只能進行有限的微調,很難深入研究。 百川智能公開的 Baichuan 2 技術報告詳細介紹了 Baichuan 2 訓練的全過程,包括數據處理、模型結構優化、Scaling law、過程指標等。 百川智能自成立之初,就將通過開源方式助力中國大模型生態繁榮作為公司的重要發展方向。成立不到四個月,便相繼發布了 Baichuan-7B、Baichuan-13B 兩款開源免費可商用的中文大模型,以及一款搜索增強大模型 Baichuan-53B,兩款開源大模型在多個權威評測榜單均名列前茅,目前下載量超過 500 萬次。 上周,首批大模型公眾服務拍照落地是科技領域的重要新聞。在今年創立的大模型公司中,百川智能是唯一一家通過《生成式人工智能服務管理暫行辦法》備案,可以正式面向公眾提供服務的企業。 憑借行業領先的基礎大模型研發和創新能力,此次開源的兩款 Baichuan 2 大模型,得到了上下游企業的積極響應,騰訊云、阿里云、火山方舟、華為、聯發科等眾多知名企業均參加了本次發布會并與百川智能達成了合作。據介紹,百川智能的大模型在 Hugging Face 上近一個月來的下載量已達到 337 萬。 按照此前百川智能的計劃,在今年他們還要發布千億參數大模型,并在明年一季度推出 「超級應用」。

? THE END 轉載請聯系本公眾號獲得授權 投稿或尋求報道:

付費5元查看完整內容

機器之心報道****編輯:小舟、梓文

擴散模型雖好,但如何保證生成的圖像準確高質量?GPT-4或許能幫上忙。

文本到圖像生成領域近兩年取得了很大的突破,從 GAN 到 Stable Diffusion,圖像生成的速度越來越快,生成效果越來越好。然而,AI 模型生成的圖像在細節上還有很多瑕疵,并且使用自然語言指定對象的確切位置、大小或形狀存在一定的困難。為了生成精準、高質量的圖像,現有方法通常依賴于廣泛的提 prompt 工程或手動創建圖像草圖。這些方法需要大量的人工工作,因此非常低效。

最近,來自加州大學伯克利分校(UC 伯克利)和微軟研究院的研究者從編程的角度思考了這個問題。當前,用戶能夠使用大型語言模型較好地控制代碼生成,這讓該研究看到了編寫程序來控制生成圖像細節的可能,包括物體的形狀、大小、位置等等。基于此,該研究提出利用大型語言模型(LLM)生成代碼的功能實現可控型文本到圖像生成。

論文地址://arxiv.org/pdf/2305.18583.pdf

該研究提出了一個簡單而有效的框架 Control-GPT,它利用 LLM 的強大功能根據文本 prompt 生成草圖。Control-GPT 的工作原理是首先使用 GPT-4 生成 TikZ 代碼形式的草圖。如下圖 1 (c) 所示,程序草圖(programmatic sketch)是按照準確的文本說明繪制的,隨后這些草圖被輸入 Control-GPT。Control-GPT 是 Stable Diffusion 的一種變體,它能接受額外的輸入,例如參考圖像、分割圖等等。這些草圖會充當擴散模型的參考點,使擴散模型能夠更好地理解空間關系和特殊概念,而不是僅僅依賴于文本 prompt。這種方法使得 prompt 工程和草圖創建過程不再需要人為干預,并提高了擴散模型的可控性。

我們來看一下 Control-GPT 方法的具體細節。

方法

對圖像生成來說,訓練過程的一個較大挑戰是缺乏包含對齊文本和圖像的數據集。為了解決這個難題,該研究將現有實例分割數據集(例如 COCO 和 LVIS)中的實例掩碼轉換為多邊形的表示形式,這與 GPT-4 生成的草圖類似。

然后,該研究構建了一個包含圖像、文本描述和多邊形草圖的三元數據集,并微調了 ControlNet。該研究發現這種方法有助于更好地理解 GPT 生成的草圖,并且可以幫助模型更好地遵循文本 prompt 指令。

ControlNet 是擴散模型的一種變體,它需要額外的輸入條件。該研究使用 ControlNet 作為基礎圖像生成模型,并通過編程草圖和 grounding token 的路徑對其進行擴展。

框架

如下圖 2 所示,在 Control-GPT 中,首先 GPT-4 會根據文本描述生成 TikZ 代碼形式的草圖,并輸出圖像中物體的位置。然后該研究用 LATEX 編譯 TikZ 代碼,將草圖轉換為圖像格式,再將編程草圖、文本描述和物體位置的 grounding token 提供給經過調優的 ControlNet 模型,最終生成符合條件的圖像。

使用 GPT-4 生成的草圖訓練 ControlNet 是必要的,因為預訓練的 ControlNet 不理解生成的草圖,不能將其轉換為現實圖像。為了 prompt GPT-4,該研究要求用戶遵循如下的 prompt 樣本,以讓 GPT-4 請求 TikZ 代碼片段的結構化輸出,以及相關物體的名稱和位置。然后,該研究使用 GPT-4 的輸出來編譯草圖圖像并獲得 grounding token。

LLM 繪制草圖的準確性如何

Control-GPT 的精度取決于 LLM 生成草圖時的準確性和可控性。因此,該研究對 LLM 在草圖生成方面的性能進行了基準測試。實驗結果表明 GPT 系列模型在草圖生成方面明顯優于 LLaMa 等開源模型,并且 GPT-4 在遵循文本指令方面表現出驚人的高準確性(約 97%)。

該研究對 Control-GPT 和一些經典模型的生成結果進行了人工評估,結果表明當圖像中包含兩個不相關的罕見物體組合時,一些模型的生成效果比較差,而 Control-GPT 的生成結果相對較好,如下表 2 所示:

查詢 LLMs,生成一個 TikZ 代碼片段來描述給定的文本,進而檢查 LLMs 的性能。如下表 1 所示,GPT-series 模型的大多數代碼片段都可以編譯為有效的草圖,而 LLaMA 和 Alpaca 的輸出要么是空的,要么不可運行。在 GPT-series 模型中,最新的 GPT-4 在 95 個查詢中只有 3 次失敗,這些查詢成功地生成了有效草圖,在遵循文本指令方面的成功率大約有 97%。ChatGPT 是 GPT-3.5 的 RLHF 微調版本,其性能明顯低于原始 GPT-3.5。在調優過程中,聊天能力和代碼生成之間可能存在著權衡。

在下圖 4 中,研究者提供了一個來自 GPT 系列模型的可視化草圖例子。雖然生成的草圖不如照片那樣逼真,但它們往往能捕捉到語義,并正確推理出物體的空間關系。生成的草圖經常出人意料地通過簡單的代碼片斷來正確處理物體形狀。

下圖最后一行展示了 GPT-4 的一個失敗案例,即模型無法生成物體形狀,而 GPT-3.5 卻能給出一個正確的草圖。GPT-4 在草圖生成方面的高精度帶來的啟發是:可以使用它來提高圖像生成模型的可控性。

實驗

基于 Visor 數據集,研究者對 Control-GPT 進行了一系列實驗設置的評估,測試其在空間關系、物體位置和大小方面的可控性。他們還將評估擴展到多個物體和分布外的 prompt。廣泛的實驗表明,Control-GPT 可以大大提升擴散模型的可控性。

下表 3 中列出了定量評估結果。可以看到,Control-GPT 模型可以在給定的一些規格下更好地控制物體的大小和位置。與幾乎無法控制物體位置和尺寸的 Stable Diffusion 模型(SD-v1.5)相比,Control-GPT 將總體精度從 0% 提高到 14.18%。與現成的 ControlNet 相比,Control-GPT 在所有指標上也取得了更好的表現,獲得了從 8.46% 到 4.18% 的整體改善。這些結果展示了本文的 LLM 集成框架在更細化和精確控制圖像生成過程方面的潛力。

視覺化。下圖 6 展示了定性評估結果,可以看到,ControlGPT 可以按照物體位置和尺寸的規范繪制物體。相比之下,ControlNet 也能遵循,但卻很難生成正確的物體,而 Stable Diffusion 則無法遵循規范。

對空間關系的消融實驗。研究者還探討了模型是否對不同類型的空間關系(如左 / 右 / 上 / 下)有偏好,作為空間關系基準分析的一部分。從下表 4 中可以看出,Control-GPT 在 Visor Score 和物體準確性方面一直比所有的基線模型工作得更好。

多個物體之間的關系。研究者對 Control-GPT 生成多個物體的能力進行了進一步的評估,這些物體的空間關系由 prompt 指定。下圖 7 展示了一些例子,Control-GPT 能理解不同物體之間的空間關系,并在 GPT-4 的幫助下將它們放入布局中,表現出了更好的性能。

可控性與圖像逼真度。通常,在生成逼真圖像與遵循精確布局之間往往存在著妥協,特別是對于分布外的文字 prompt。如下圖 8 所示,(a)是一個例子,生成的圖像完全遵循布局,但這導致了圖像中的一些偽影;而在(b)中,照片往往看起來很逼真,但沒有很好地遵循草圖。

更多研究細節,可參考原論文。

付費5元查看完整內容

IDC 中國副總裁兼首席分析師武連峰表示,“大模型的背后蘊藏著一場人工智能落地模式的變革。如今火爆全球的 ChatGPT 背后的技術支撐正是大模型。沒有對大模型的長期投入,就不會誕生 ChatGPT 這樣的應用。在 IDC 提出的大模型評估框架下,百度文心大模型在本次評估中表現非常突出,是其打造生成式對話產品文心一言的堅實基礎。

** 大模型開啟 AI 開發新范式,**

** 行業標準牽引規范發展 **

《白皮書》認為,人工智能已進入大規模落地應用的關鍵時期,而大模型的通用性、泛化性以及基于“預訓練+精調”等新開發范式,能夠**解決落地門檻過高、數據資源有限、應用開發“重復造輪子”**等問題。因此,攻關大模型成為產業智能化發展的必然選擇,為政策制定者和企業管理者所重點關注。

付費5元查看完整內容

摘要:

我們的項目目標是創建可視化系統,使領域專家(SME)能夠構建、策劃、評估和評價以數據為中心的機器學習模型。我們的系統允許領域專家直觀地探索數據,通過界面構建目標函數,并將其提交給AutoML系統以生成機器學習模型。通過整合輸入數據、模型輸出和結果的可視化探索,系統支持模型的開發、調整,并以一種與底層建模技術相分離的直觀方式進行驗證。

關鍵詞:自動機器學習;可視化;模型學習;模型比較;數據增強

1.0引言

我們的項目是DARPA數據驅動模型開發(D3M)項目的一部分。我們項目的目標是創建可視化系統,使領域專家(SME)能夠構建、策劃、評估和評價以數據為中心的機器學習模型。領域專家擁有特定領域的專業知識,通常是通過多年的經驗獲得的。然而,他們往往不是計算和數據科學方面的專家,因此無法利用現代機器學習技術的力量。我們將構建一些系統,使領域專家能夠直觀地探索數據,通過直觀的界面構建目標函數并提交給AutoML系統,檢查和比較AutoML返回的模型,并為分析目標選擇最佳模型。通過整合輸入數據、模型輸出和驗證結果的可視化探索,我們的系統將允許以一種與底層建模技術脫鉤的方式進行模型開發、調整、形式化、驗證和記錄。

考慮了一個情報分析員的任務:使用我們的可視化系統,根據最近的新聞報道分析一個國家的政治風向。由于他可以通過可視化系統直接訪問一套機器學習模型,他能夠在可視化系統中打開一個預定義的高級分析任務列表,并選擇一個適合她的目標(例如,"發現不尋常的事件"),而不必直接選擇合適的機器學習算法或手動選擇其參數。通過AutoML,可以構建多個不同的模型和具有不同參數的模型,并將輸出結果可視化,從而可以對其進行評估、比較,并與原始數據連接起來。這有助于情報分析員專注于他們的任務和數據,而無需花費精力去了解機器學習建模和參數調整的細微差別。

此外,我們考慮通過用知識庫中的信息來增強領域專家的數據分析能力。知識庫能夠存儲大量的信息和數據。例如,WikiData是一個知識庫,它對維基百科的關系信息進行編碼。與供人類閱讀的維基百科不同,WikiData以結構化的格式存儲信息,從而可以通過SPARQL等正式的查詢語言來檢索數據。將豐富的知識庫整合到領域專家的分析過程中可以幫助領域專家探索新的假設,否則是不可能的做到的。

技術方法

我們提出的可視化系統有四個組成部分,將使領域專家(SME)通過使用AutoML來利用復雜的數據分析算法(見圖1)。我們系統的四個組成部分是 (1) 數據增強,(2) 數據和問題探索,(3) 模型生成,(4) 模型探索和選擇。

圖1:CAVA和Snowcat系統的工作流程

(1) 數據增強。機器學習模型只有在用數據去創建時才是準確和有用的。為此,建模過程的第一步是幫助領域專家搜索、識別并為他們的建模任務策劃必要的數據。需要一個交互式工具來幫助領域專家用從知識庫中獲得的額外特征來增加他們的初始數據集。 (2) 數據和問題探索。領域專家擁有領域專業知識,但缺乏數據科學技能。當他們不了解應該使用哪種算法時,系統如何支持他們創建查詢?我們的解決方案包括兩個步驟。(a) 提供一個探索性的可視化界面,允許領域專家檢查輸入的數據,以及(b) 在數據的基礎上自動生成一些合理的機器學習問題。在向AutoML系統發布任務之前,領域專家可以完善和更新相關的問題。 (3) 模型生成。我們將可視化界面與AutoML系統相結合。給出一個問題定義(由領域專家在上一步通過使用可視化界面生成),我們的系統要求AutoML系統執行該問題并生成一些可信的機器學習模型。 (4) 模型探索和選擇。由AutoML系統生成的模型會有類似的定量指標(如準確率、F1分數等)。然而,它們往往在與領域問題相關的定性指標上有所不同。例如,疾病傳播的增加是以片狀線性方式進行的,還是更有可能是二次性的增加?為了幫助領域專家做出這樣的判斷,我們的關鍵見解是,模型性能的標準評價所提供的豐富數據提供了一個豐富的數據集,對它的探索將使領域專家獲得對模型集合的洞察力,以執行諸如性能預測、模型選擇和信任特征等任務。由AutoML系統生成的模型對領域專家來說(在大多數情況下)是 "黑盒"。因此,我們專注于開發工具,讓領域專家只用這些黑盒產生的輸入/輸出對就能完成他們的任務。

與現有技術的比較

目前的模型構建和整理系統是為那些了解如何與模型直接互動的數據科學家設計的。數據專家必須將問題形式化,以確定一個合適的方法。他們選擇算法和處理通道,并手動調整參數。然后對結果進行評估,可能會導致進一步的調整。這種方法對領域專家來說是不合適的:

  • 該方法需要具備建模工具(如R和Python)的專業知識,這些工具涉及編程和對算法參數的直接控制。
  • 該方法需要了解特定的機器學習建模技術,隨著可用基元集合的增加,這很難維持不斷學習新的建模技術。
  • 該方法要求具備建模過程的技能,包括如何以適當的形式表述問題,如何將問題映射到建模通道,如何比較許多可能的模型,如何通過設計驗證實驗評估結果,以及如何適當地記錄模型的出處。

雖然這些界面對數據科學家來說可能是可用的,但我們需要為領域專家提供新的用戶體驗。

結論

在項目實施過程中,我們重點研究了兩個領域:(1)設計和開發一個交互式可視化系統,幫助領域專家(SME)利用AutoML系統生成復雜的機器學習模型,而不需要編程或統計方面的專業知識;(2)開發一個數據增強工具,幫助SME用存儲在知識庫(如WikiData)中的額外信息豐富其數據。

我們在這兩方面都取得了成功。我們開發了Snowcat,作為一個完整的集成視覺分析系統與AutoML。在NIST進行的評估中,發現Snowcat幫助領域專家創建的機器學習模型比單獨由AutoML生成的模型和由領域專家策劃的模型(手動)更準確。對于數據增強,我們開發了CAVA1來幫助領域專家豐富他們的數據。該工具是在線部署的,MITRE的領域科學家發現它有能力幫助領域專家識別和整合來自知識庫的新數據,以回答新的分析問題。

2.0介紹

領域專家(SMEs)將從使用復雜的數據分析通道中受益,這些是實踐中的數據科學家的職權范圍。這個項目的首要目標是為領域專家提供數據驅動的自動協助,使他們能夠產生與數據科學家產生的模型一樣的性能。我們在這項研究中的作用是在人類用戶(領域專家)和產生數據分析通道的機器學習算法之間提供一個接口。在這個任務中,我們的目標是幫助領域專家定義他們的數據分析問題,而不需要描述正在使用的數據分析源語言。我們設計了交互式可視化系統,以溝通模型之間的差異,并幫助用戶為其任務選擇最佳模型。最后,我們提供互動的方法,允許領域專家使用他們的領域知識來更新和改進通過數據增強和模型完善產生的模型。

現有的商業可視化分析系統,如Tableau和Spotfire,允許領域專家(SMEs)將其數據可視化。然而,這些系統并不支持領域專家利用最新的機器學習和分析技術來進行數據分析。雖然原始數據的可視化是有幫助的,但如果沒有半自動化的分析,領域專家就不得不手動檢查他們的數據,隨著數據集變得更大、更復雜,這可能是乏味和容易出錯的。相反,諸如R、Python和Julia等編程語言為程序員提供了表達數據分析查詢的能力。然而,這些語言的學習曲線很高,可能需要多年的經驗才能使一個程序員熟練掌握。因此,對于不熟悉編程或數據科學的領域專家來說,它們很難被采用。

我們項目的目標是彌合領域專家的分析需求和目前可用的工具之間的這種差距。特別是,這個項目解決了數據分析通道自動化的任務,通過數據驅動的自動化過程,幫助用戶選擇復雜的模型通道。有了我們提出的系統,一個幾乎沒有數據科學背景的領域專家(SME)仍然能夠進行復雜的數據分析,而無需了解分析背后的數學。

我們的工具將為領域專家提供接口,以表達他們的分析意圖,增加他們的數據,探索解決方案模型(由AutoML系統提供),并以互動方式調整和完善模型,所有這些都不要求領域專家有編程技能或深厚的數據分析知識。結合AutoML的進展,所產生的系統將使領域專家能夠利用最先進的機器學習技術,開發出能夠準確分析大量復雜數據的模型。

我們設想模型開發是一個持續的、反復的過程,包括數據探索和增強、用戶互動、模型選擇和完善、模型驗證以及回到數據探索。在這個過程中,我們沒有明確區分原始數據和模型輸出,而是把它們當作領域專家檢查、探索和理解的互補元素。

通過這種概念性的表述,領域專家以一種流暢和直觀的方式參與到模型的結果中來--當領域專家看到模型如何影響原始數據時,他們可以通過可視化向系統提供直接反饋,以指導下一步的計算。由于預期的領域專家并不是數據科學和機器學習方面的專家,我們并不期望領域專家知道,例如,什么是 "必須鏈接 "的約束,或者如何選擇最好的內核,甚至是聚類是適合他們需求的模型。相反,我們的主要貢獻是利用交互式可視化為這些復雜的計算模型提供直觀的抽象的呈現和交互方式,通過它用戶可以有效地利用各種模型,而不必直接與數據模型互動。

在本報告的其余部分,我們描述了為實現這一目標而設計和開發的兩個系統:Snowcat和CAVA。Snowcat是一個端到端的可視化分析系統,幫助領域專家開發機器學習模型,而不需要領域專家直接與AutoML系統的不透明參數和編程互動(見圖1)。CAVA是一個輔助性的數據增強工具,可以為Snowcat產生豐富的數據集。CAVA允許領域專家用存儲在知識庫中的知識和信息來增強他們的數據,如WikiData--維基百科中的信息庫,可使用SPARQL等正式語言查詢。領域專家使用CAVA用額外的領域知識來充實他們的數據。由此產生的增量數據允許在機器學習模型中提出新的假設和更準確的預測。

3.0 方法、假設和程序

這個項目的目標是開發可視化界面,使領域專家(SME)能夠在不同的數據類型和任務中生成機器學習模型。在根本上,該可視化界面與AutoML系統連接,用于生成模型。通過使用可視化,領域專家可以避免直接寫代碼來利用AutoML,或者費力地調整不透明的參數來優化AutoML系統。

在本節中,我們描述了我們在開發這兩個可視化系統時的假設,以幫助領域專家生成機器學習模型:Snowcat和CAVA

3.1 關于AutoML系統和API的假設

AutoML是一個廣泛的術語,用來描述一些機器學習技術,這些技術可以在用戶指定的目標下自動生成或調整機器學習模型。例如,對于圖像的聚類,機器學習的傳統方法是由用戶來進行。(1)選擇一個聚類算法,(2)選擇一些參數值,(3)在訓練數據集上運行聚類算法,(4)檢查應用在測試數據集上的結果指標(準確性、精確性等),以及(5)重復這個過程直到產生的聚類令人滿意。在AutoML的情況下,用戶可以先給出不同的所需類別的圖像例子(即訓練數據),然后要求AutoML尋找合適的算法和相應的參數,以產生結果模型。

盡管AutoML系統有相同的目標,但它們的實現方式可能不同。除了使用不同的搜索算法外,一些AutoML系統可能會返回一個最優化的模型,而另一些則返回一些算法和參數各異的模型。在DARPA的D3M項目中,還有一個要求,即AutoML系統需要返回數據通道(即操作序列--被稱為原語--所產生的模型由其組成)。

為了支持領域專家探索數據、模型、參數,我們的可視化系統必須與AutoML系統密切溝通,并能進入其內部操作。這些AutoML系統應該產生多個不同的模型,這些模型有類似的定量指標供領域專家考慮。此外,AutoML系統應該能夠提供有關所生成模型的定量和定性信息。也就是說,除了關于模型性能的數字指標外,AutoML系統應該能夠描述模型是什么(例如,模型使用什么算法)以及用來構建模型的參數。

與AutoML系統進行通信的API是由D3M計劃指定的。值得注意的是,這個API只由D3M計劃的團隊開發的AutoML系統實現。據我們所知,它與其他開源的AutoML系統(如auto-sklearn、TPOT、hyperopt等)不兼容。

3.2 方法和程序:Snowcat

Snowcat是以模塊化的方式設計的,分為任務和子任務。每個模塊的具體細節將在第4節描述。在高層次上,Snowcat由五個工作部分組成。(1)任務分析:了解領域專家的需求,(2)問題發現和構建:給定一個數據集,生成合理的機器學習任務,(3)可視化和界面設計:設計和實現基于網絡的可視化界面,(4)模型評估、驗證和比較:設計和實現工具,幫助領域專家檢查和評估模型,最終選擇最佳模型,(5)系統架構和可擴展性:設計架構和開發服務器端系統,考慮到處理大型和復雜數據集的擴展性。

3.3 方法和程序:CAVA

CAVA是Snowcat的一個補充系統,幫助領域專家用從知識庫中提取的額外信息增強他們的數據。通過CAVA,我們的目標是為D3M生態系統開發一個交互式可視化工具,使領域專家能夠通過數據完善和增強來建立更好的模型。我們的前提是利用領域專家的領域知識,幫助他們從數據集的集合中策劃新的數據特征(如表格數據中的列),以解決建模或分析任務。

CAVA可以作為一個獨立的工具獨立使用,用于數據增強,也可以在最初的數據探索階段作為Snowcat的集成組件使用(見圖1)。CAVA的初始原型使用WikiData作為其知識庫,但WikiData可以被其他符合必要假設和標準的知識庫所取代(見下文第3.4節)。

CAVA的設計由四個部分組成,其細節將在第4.2節描述。這四個部分是 (1)知識庫集成:向知識庫發送查詢和解析結果的機制,(2)特征工程:將從知識庫檢索的數據轉換為表格形式,并將結果附加到領域專家的原始數據上,(3)可視化和界面設計:設計一個可視化,使領域專家無需編程即可生成SPARQL查詢,以及(4)與Snowcat的集成:與Snowcat系統以及DARPA的D3M基礎設施和生態系統的其他部分進行系統級集成。

3.4 關于CAVA和知識庫的假設

使用CAVA的前提是有一個現有的知識庫,其中包含與特定任務有關的信息。例如,預測埃塞俄比亞糧食短缺的任務應該有一個知識庫,其中可能包括關于埃塞俄比亞的地理、天氣、耕作、人口等。在沒有特定領域信息的情況下,我們發現WikiData可以作為一些任務的合理代理。雖然WikiData可能沒有所有任務的詳細特定領域信息,但它包含了許多主題的大量信息。WikiData所包含的信息范圍與維基百科相似。然而,與維基百科不同的是,WikiData被存儲在一個可查詢的知識庫中。

在CAVA中使用的WikiData的一個特殊功能是其 "實體匹配 "算法。WikiData的這一功能可以返回知識庫中最相似的節點,并給出一個字符串。例如,如果實體匹配算法的輸入是 "教父 "這個字符串,WikiData將返回一些可信的節點,包括電影 "教父",或指孩子監護人的世俗術語。并非所有的知識庫都有實體匹配功能,但CAVA系統假定它是可用的。

CAVA對知識庫的另一個假設是元數據的可用性。例如,當查詢馬薩諸塞州的面積時,查詢結果是27,336。這個數字的單位(平方公里)通常只作為元數據提供。CAVA利用這種元數據來幫助用戶更好地理解可視化中呈現的數據。

4.0 結果和討論

在這一節中,我們描述了我們在Snowcat和CAVA這兩個系統上的工作。在Snowcat中,我們為非專業的領域專家(SME)開發了一個數據探索和分析的可視化系統。Snowcat與AutoML系統集成在一起,這兩個系統使數據科學技能有限的領域專家能夠利用機器學習技術來生成模型。因此,領域專家能夠做出更明智的決定,分析更大量的數據,并最終使人在環形數據分析以數據感應和存儲的速度擴展。在NIST獨立進行的一項評估中,使用Snowcat的領域專家被發現在未披露的預測任務中表現優于AutoML和人類專家。

在CAVA中,我們為D3M生態系統開發了一個交互式可視化分析工具,使領域專家能夠通過增強他們的數據建立更好的模型。我們的前提是,與其合并數據集進行數據增強,不如幫助領域專家從知識庫中提取和策劃一個新的數據集來解決建模或分析任務,這樣可以更好地利用領域專家的領域知識。我們對CAVA的評估發現,參與者和領域專家能夠使用CAVA從大型知識庫(WikiData)中找到相關的數據,而由此產生的增強數據在與Snowcat結合使用時產生的模型具有更高的準確性

4.1 Snowcat

Snowcat系統由5個工作模塊組成(任務分析,問題發現和構建,可視化和界面設計,模型評估、驗證和比較,以及系統結構和可擴展性)。我們介紹了每項工作的結果。請注意,每個工作模塊的研究和開發并不總是集成到Snowcat系統中。通常情況下,研究結果是作為一個獨立的原型發表的。只有當研究結果適合DARPA的目標時,研究原型才會被轉換成生產代碼,然后被整合到Snowcat中。

4.1.1任務分析

這項工作涉及到一項人類主體研究,以更好地了解領域專家通常執行的數據分析任務的范圍。這個工作模塊的目標是正式記錄領域專家在使用機器學習工具時的需求。其結果被用來指導Snowcat系統的設計和開發。為了完成這個工作模塊,我們進行了文獻調查、用戶研究和訪談,以制定一個與數據分析任務相對應的操作清單。

開展的工作

為了更好地了解數據科學家所采用的流程,以及他們在確定客戶需要什么分析時遇到的痛點,我們進行了結構化的文獻回顧,并對來自各種數據密集型領域的14名數據科學家進行了半結構化的訪談:市場研究、生物醫學研究、政策研究以及流行病學和健康研究。在每個領域,我們都尋找了直接與客戶對接的專業人士,他們或者自己進行數據分析,或者管理其他數據科學家的團隊。

成果

在對數據科學家的訪談進行分析后,我們發現了數據科學家為更好地理解客戶的需求而采用的三種常見方法,我們稱之為工作--倒退、探究和推薦。這些方法中的每一種都對應著客戶需求的不同清晰度。例如,逆向工作為具有高清晰度需求的客戶提供服務,他們可以準確地說明他們所期望的分析結果。從一個明確的預期結果出發,數據科學家可以 "倒退 "到適當的分析。另一方面,推薦服務于低清晰度需求的客戶,他們可能不知道自己在尋找什么。它包括數據科學家運行一些不同的分析,以了解哪些結果是客戶最感興趣的。

文獻綜述和訪談研究的綜合結果已被編入一篇論文,并在2019年的EuroVis上發表。這篇論文作為開發Snowcat系統的設計要求文件。

4.1.2 問題的發現與構建

我們開發了自動發現明確定義的 "問題 "的方法,這些問題被格式化,并由AutoML系統執行以生成機器學習模型。例如,一個 "問題 "可以是對一些數據點進行分類,目的是利用數據集中的一些用戶指定的屬性使F1分數最大化。

在Snowcat中,系統最初會研究給定的數據集,并發現所有可能的明確定義的問題。用戶互動有兩種方式:領域專家可以通過編輯由Snowcat自動發現的問題來完善一個問題。或者,領域專家可以在探索數據集后創建自己的問題集。創建問題的過程可以通過與可視化界面的互動來完成,而不需要領域專家的編程努力。

開展的工作

我們設計和開發了兩個軟件組件來完成這個工作模塊。首先,我們設計了一個算法來檢查一個領域專家的數據集,并列舉出所有可能的問題,這些問題可以在給定的數據屬性和數據特性下應用于該數據集。使用一個簡單的啟發式方法將這些問題從最相關到最不相關進行排序。

另外,我們還開發了一個交互式界面,以使領域專家能夠。(1) 檢查自動生成的問題,(2) 完善和編輯該問題,或(3) 從頭開始手動創建一個新的問題。在一個問題被策劃好之后,領域專家可以點擊界面上的一個按鈕來啟動由AutoML系統處理的模型學習過程。

成果

這兩個軟件組件已被整合到Snowcat中。參見圖1,了解這些組件如何在Snowcat工作流程中發揮作用。圖1中的面板2是可視化界面的圖示。

另外,我們研究了領域專家為給定任務生成 "目標函數 "的其他方法。例如,雖然最大化F1分數是一項合理的任務目標,但它可能沒有反映領域專家的其他考慮,如排除某些數據點,注釋數據點之間的相似性關系等。我們在生成目標函數方面的研究結果發表在EuroVis 2020上。這項工作沒有被整合到Snowcat系統中,因為該技術的使用需要一個特殊類型的AutoML系統,而D3M計劃中并不支持。

4.1.3 可視化和界面設計

在設計和開發Snowcat的可視化過程中,我們遵循了一個迭代的設計過程。其結果是根據領域專家的反饋進行了兩次重大的重新設計。最終的可視化界面由三個部分組成。(1)任務工作流程,(2)數據探索和可視化,以及(3)會話管理。

任務工作流程:修訂期間最重要的設計變化是加入了一個指導性的工作流程,以幫助領域專家在其建模任務中取得進展。使用 “卡片”設計,領域專家可以嚴格遵循 “數據探索、任務選擇、模型生成、模型評估和模型比較”的工作流程(如圖1所示),或者他們可以使用 “卡片”從默認的流程中進行分支。例如,在“任務選擇”階段,領域專家可以打開數據探索的卡片,用可視化的方式重新檢查數據。卡片的模塊化性質平衡了領域專家對指導的需求和對開放式探索的靈活性。

圖2:Snowcat支持的任務和數據類型。

數據探索和可視化:根據D3M指定的數據類型列表,我們設計和開發了一系列的可視化工具,以支持領域專家探索各種數據類型。我們開發的新的可視化工具包括:(1)文本數據,(2)表格數據,(3)時間序列數據,(4)圖形數據,(5)圖像,(6)視頻,(7)音頻,以及(8)語音的可視化。對于文本數據,我們顯示一個文件列表,可按內容搜索,包括高亮和過濾。對于表格數據,我們顯示一組協調的Barcharts,可以進行交叉過濾以進行數據探索。對于時間序列數據,我們為每個隨時間變化的屬性顯示小倍數的線形圖。對于圖形數據,我們顯示節點鏈接圖,并突出顯示預測的邊和節點。對于表格數據,我們使用特征直方圖。對于圖像,我們顯示按其屬性分組的圖像。用戶可以選擇任何一張圖片,將其放大以便進一步檢查。對于視頻、音頻和語音數據,我們使用時間序列可視化和用于觀看或收聽原始數據的播放器來顯示數據的并排面板。圖2顯示了Snowcat支持的數據類型列表。圖3顯示了這些可視化設計的例子。

會話管理:我們在Snowcat系統中增加了對會話的支持。在增加會話管理功能之前,Snowcat是 "無記憶 "的,即領域專家無法 "回去 "查看AutoML系統在同一數據集的不同變化下(例如,在數據增強后)或在不同的問題描述下(例如,將目標從最大化準確度改為最大化F1分數)生成的模型。目前,Snowcat提供兩種類型的會話:(1)跨越不同問題描述的會話(使用相同的數據),以及(2)跨越不同數據集的會話(例如,作為執行數據增強的結果)。我們在可視化中實施了一個工作流程,以支持這兩種類型的會議,使領域專家能夠比較不同會議產生的模型。

圖3:Snowcat中支持的可視化實例。

其他特點:Snowcat的其他功能包括。(1)模型通道可視化,(2) "數據事實 "可視化,以及(3)與D3M Datamarts和其他數據增強系統的集成。模型通道可視化指的是將D3M AutoML系統生成的機器學習模型的程序、超參數和參數可視化。"數據事實 "可視化是指將高層次的數據特征與自然語言中的特征描述一起可視化的組件(見圖4)。這項工作是基于開發團隊成員之前的出版物。它被用作領域專家的探索性工具,在進行數據分析和探索之前,他們更喜歡對一個不熟悉的數據集進行總結。最后,Snowcat被集成以支持數據的增強。這種整合可以是與D3M生態系統內開發的Datamarts系統或我們在第4.2節中描述的CAVA系統。

開展的工作

該可視化系統是使用VUE.js庫在Javascript中開發的,這樣它就可以在現代瀏覽器中運行。上面提到的四個組件被實現并集成到一個有凝聚力的可視化系統中,允許領域專家對使用AutoML生成機器學習模型的過程有充分的看法和控制。每個組件的設計都考慮到了可擴展性(例如,通過使用采樣技術),以確保領域專家在分析過程中的流暢性和互動性。

成果

基于網絡的可視化已經完成,并與Snowcat后臺服務器和D3M的AutoML系統集成。開發的可視化的某些方面是基于正在進行的研究。關于多類散點圖可視化設計的工作已經發表在arXiv。我們關于遞歸神經網絡可視化的工作,特別是消失的梯度,于2018年發表在IEEE CG&A雜志上。最后,團隊為評估Snowcat而開發的一種基于推理學習的技術于2019年發表在IEEE VIS研討會上。

圖4:"數據事實"的可視化設計

4.1.4 模型評估、驗證和比較

我們采用 "引導式 "方法來設計模型評估、驗證和比較的過程,將任務分解成多個階段。系統引導領域專家用戶完成每個階段的任務。Snowcat系統支持一些機器學習建模問題的模型輸出,包括(1)分類,(2)回歸,(3)聚類,(4)鏈接預測,(5)頂點提名,(5)社區發現,(5)圖聚類,(6)圖匹配,(7)時間序列預測,以及(8)協同過濾。這些不同的可視化被整合到我們的網絡可視化框架中,該框架采用AutoML系統產生的預測并將其顯示給用戶。該可視化系統通過為領域專家的任務選擇一個最佳模型的過程來引導他們。與不同數據類型的可視化相似,我們投資了一個模塊化的、基于卡片的界面,幫助領域專家遵循一個默認的工作流程,同時提供靈活性以允許開放探索。所有的可視化都支持交叉過濾,例如,在表格數據和原始數據之間,以及在輸入數據和模型輸出之間,這樣,用戶可以檢查數據和機器學習模型之間的聯系。圖2顯示了Snowcat支持的機器學習任務(以及由此產生的模型)的清單。

開展的工作

已完成的工作 Snowcat的模型評估、驗證和比較組件是在Vue.js中實現的,使用的是與可視化組件類似的 "卡片 "隱喻。卡片的使用使得這兩個組件可以完全整合,當領域專家在檢查模型的時候,他們可以調出可視化卡片來檢查原始數據。此外,由于交叉過濾機制,領域專家可以選擇模型的一部分(例如,混淆矩陣中的一個數字)并觀察可視化卡片中突出顯示的相應數據點。

成果

模型評估、驗證和比較部分已經完成,并完全整合到Snowcat中。在這一過程中,我們進行了一系列的研究,導致了最終的設計。首先,我們完成了一個研究項目,使用交互式可視化界面幫助用戶理解和比較對象嵌入,這是一種重要的數據結構,經常在處理通道的中間步驟中被用作數據的模型。這種模型比較方法是允許用戶比較整個通道的一個步驟,這些通道導致了用于決策的最終模型。這項工作的成果發表在EuroVis 2018上,2020年在IEEE TVCG雜志上發表了一個擴展。

第二,我們研究了在神經架構搜索中發現的神經網絡。該團隊與卡內基梅隆大學和劍橋的IBM研究院的外部合作者合作,為卷積神經網絡(CNN)架構開發視覺編碼,以允許數百個架構同時被比較。我們使用這些新的視覺編碼,將神經結構搜索期間產生的大量數據可視化。這些可視化數據被用來比較多種元學習算法的發現過程。這項工作的成果發表在2019年的ICLR研討會和IEEE TVCG雜志上。

最后,我們開發了用于分析不同機器學習模型的方法。為了分析離散選擇分類器的結果,我們開發了一種方法,使用戶能夠互動地探索為測試不同分類器而進行的實驗。這些想法已經被建立在一個叫做 "Boxer "的原型系統中。這項工作的結果發表在EuroVis 2020。對于回歸模型,我們開發了一種用于交互式引導和檢查多元回歸模型的技術。這項工作發表在2019年的IEEE CG&A雜志上。

4.1.5 系統架構和可擴展性

為了實現可擴展性和模塊化的目標,在設計和開發Snowcat系統方面投入了大量的時間和精力。Snowcat架構的三個獨特方面是 (1) 它支持不同數據類型和任務類型的基于網絡的客戶端可視化,(2) 它通過中間件服務器與AutoML系統連接,以請求或獲得訓練和測試數據的結果,(3) 它允許來自不同領域專家用戶在不同數據集上的多個同步連接,(4) 它與數據增強模塊互操作,允許動態更新數據集。

開展的工作

Snowcat系統是采用客戶-服務器架構開發的。客戶端可視化是用Javascript開發的,在現代網絡瀏覽器中運行。服務器由多個相互連接的組件組成。與客戶端的主要接口是作為一個Node.js服務器實現的。用戶上傳的數據存儲在一個Redis數據庫中。AutoML被視為一個獨立的組件。這些不同組件之間的通信是通過谷歌的Protobuf消息傳遞協議完成的。

為了支持領域專家對不同類型的數據和任務類型的探索和分析,我們開發了一種方法,前端可視化中的每個 "卡片 "都由服務器中的相應進程支持。例如,用于可視化表格數據的卡片使用一些協調的Barcharts。將原始數據離散成bin(每個bin對應于barchart中的一個bar)的操作在服務器上由一個專門的進程執行。有了這種架構設計,大量的原始數據就不需要從服務器上不必要地發送到客戶端。這些卡的特定進程的實現是由Javascript和Python混合完成的。特別選擇Python是因為它有用于執行機器學習任務的廢棄庫(最明顯的是scikit-learn庫)。

最后,為了支持多個同時的客戶端連接,Snowcat使用Node.js線程。每個與Snowcat服務器的連接都由線程池中的一個空閑線程處理。每個連接的會話信息都存儲在Redis數據庫中(與用戶上傳的數據一起)。這些信息在需要時由線程檢索。

成果

最終的Snowcat系統滿足了所有D3M的要求。它可以與所有實現指定D3M API的AutoML系統集成。該系統已經被做成了Docker容器,因此它可以被部署在大多數系統上。Snowcat系統的描述,包括設計過程和評估,可以在我們發表于EuroVis 2019的論文中找到。

4.2 CAVA

我們對CAVA的目標是為D3M生態系統開發一個交互式可視化分析工具,使領域專家(SME)能夠通過增強他們的數據建立更好的模型。圖5說明了我們使用知識庫進行數據增強的概念框架。作為數據增強過程的結果,額外的數據列被添加到領域專家的原始數據集(在圖中被稱為 "種子數據"),并從知識庫中提取信息。

為了實現這一目標,我們利用其他D3M工作者的努力,他們已經開發了一個知識庫,由D3M項目的相關數據集組成。鑒于這樣一個知識庫,CAVA支持領域專家探索、搜索和組合知識庫中的信息,并將其轉化為新的數據特征,可以添加到領域專家的原始數據中,從而形成一個新的、增強的數據集。然后這個數據集可以被Snowcat攝取,用于生成機器學習模型,從而完成一個完整的數據工作流程。

圖5:使用知識庫進行數據增強的概念性框架

CAVA系統有四個要素:(1)知識庫整合,(2)將知識庫的功能工程轉化為表格形式,(3)設計交互式視覺界面,以及(4)與D3M生態系統整合。

4.2.1 知識庫整合

我們認為知識庫代表了一個數據的集合。知識庫的圖結構是至關重要的,因為它以結構化的形式捕獲數據,因此允許圖包括來自公共資源的數據以及D3M的特定數據集。知識庫中的圖可以通過關系進行探索和連接。它可以按照圖中的關系(即邊)進行探索、發現和提取。該結構強制執行實體間關系的語義和句法兼容性。挑戰在于,它需要將標準的數據操作,如查詢、總結和提取,轉換為圖的操作。

我們通過定義一套支持所需場景范圍的操作基元來克服這一挑戰。例如,我們創建了一些接口來列舉可能的查詢答案,建議可能導致成功提取的查詢,并評估從查詢中提取的數據。

開展的工作

我們將WikiData知識庫納入了CAVA系統。CAVA通過SPARQL查詢與WikiData進行交流。因此,CAVA并不拘泥于使用WikiData,而是可以與其他支持SPARQL查詢的知識庫相連接。正如第3.4節所述,CAVA對知識庫的能力做了一些假設。為了使CAVA能夠通用于各種知識庫,我們重新實現了CAVA廣泛使用的 "實體解析 "功能。

實體解析是將用戶上傳的數據文件中的元素映射到知識庫中的對象的過程(例如,將數據中的字符串 "Massachusetts "與WikiData中的對象Q771相匹配)。在CAVA中,我們最初利用WikiData的labelservice功能(通過WikiData的API)來執行這種匹配操作。當我們轉而使用其他知識庫時,我們實施了新的實體解析方法,利用了知識圖譜的拓撲結構。首先,我們在上傳的數據中找到條目中 "最常共享 "的節點。例如,我們發現MA、PA、NM等字符串都有相同的共同節點(如 "State"、"USA "等)。因此,當出現歧義時(如GA指的是格魯吉亞還是加蓬),我們會檢查這兩種可能性中哪一種最符合其他條目的拓撲結構。

成果

我們已經完成了CAVA與WikiData以及其他D3M團隊創建的知識庫的整合。我們的新實體匹配方案在大多數測試案例中都運行良好,但當上傳的數據本身比較混亂,或者WikiData中用于建立 "基線 "拓撲結構的數據有限(比如埃塞俄比亞的地區)時,就會失敗。

4.2.2 將知識庫的特征工程轉化為表格形式

一旦在知識庫中找到相關信息,CAVA就會進行必要的轉換,將信息轉換為與領域專家的輸入數據相匹配的表格形式。特別是,由于知識庫通常表示為語義圖,這一目標類似于將圖信息轉換為表格數據。

圖6:使用CAVA進行數據擴增的一個例子

考慮到圖6所示的情況,一個領域專家想用以下內容來增加他們的國家數據集。面積、人口和平均鄰國的國內生產總值(GDP)。首先,數據集的每一行(例如,"德國")被映射到知識圖譜中的一個實體。領域專家可以使用知識圖譜來識別與 "德國 "節點相連的地區和人口信息。為了選擇平均鄰居GPD,領域專家需要執行一個嵌套操作,首先確定德國的所有鄰國("丹麥"、"法國"、"奧地利 "等),遞歸檢索它們的每個GDP信息,然后計算這些GDP的平均值。

上面的例子說明了使用知識庫進行數據增強的力量。對圖的遞歸探索,結合代數運算符的使用,可以幫助領域專家產生復雜和細微的數據,并將其添加到領域專家的原始數據集中。如果沒有一個知識結構,這些操作對于一個領域專家來說將是乏味的,難以執行的。

開展的工作 我們成功地使用SPARQL在CAVA中生成遞歸的復雜查詢。通過使用可視化(詳見第4.2.3節),領域專家無需編程即可構建任意復雜的遞歸查詢。除了遞歸查詢外,CAVA還支持特征工程的兩種操作:代數操作和帶時間數據的操作。

首先,CAVA支持對一個元組的數值進行代數運算。這些操作包括最小、最大、計數、平均等,具體取決于數據類型。如圖6中的例子所示,這些操作可以與查詢一起使用,用于面向數據的任務。

第二, CAVA支持領域專家用時間性數據進行數據增強。當同一數據屬性有多個條目,但記錄的時間不同時,就需要策劃時間性查詢。例如,實體 "德國"的 "人口 "屬性有許多條目,因為德國的人口每年都在變化。為了幫助領域專家用最相關的條目來增加他們的數據,我們的系統支持領域專家從以下選項中進行選擇:(1)在所有的條目中選擇一個操作(如最大、最小、平均等),(2)選擇最近的條目,(3)匹配與給定日期(由用戶輸入)最接近的條目,以及(4)讓系統根據數據中的一欄自動推斷出適當的條目。選項(4)特別有意思,因為如果輸入的數據包含時間戳信息,我們的系統可以檢索出與給定時間戳最接近的條目。

成果

我們成功地實現了查詢引擎,包括生成包含代數運算和時間函數的SPARQL查詢,并對知識庫的結果進行解析。在我們的測試中,我們發現查詢的生成對各種復雜的、嵌套的和遞歸的查詢都很穩健。

4.2.3 可視化和交互式界面設計

我們把CAVA的界面設計成一個輕量級的基于網絡的互動可視化。可視化的目標是幫助領域專家表達和闡述上文所述的復雜查詢,但不要求領域專家明確地編寫SPARQL查詢。此外,可視化需要幫助領域專家在他們的數據增強過程中建立信心,例如通過顯示要增強的數據的質量和提供所產生的增強數據的預覽。

開展的工作

我們為領域專家開發了一個交互式視覺界面,以探索原始數據集及其關系數據集中的所有數據屬性。圖7顯示了CAVA界面的概況。該視圖首先在一列中列出原始數據集的所有屬性。對于每個數據屬性,該視圖提供了四個功能。"相關屬性"、"分布"、"添加 "和 "刪除"。領域專家可以點擊 "相關屬性 "按鈕來展開下一層次的數據集,并在新的一列中列出所有相關屬性。通過點擊 "分布 "按鈕,領域專家將能夠看到所選數據屬性的分布圖。如果領域專家對選定的屬性感到滿意,他們可以點擊 "添加 "按鈕,將該屬性添加到輸出數據集中,該數據集將被傳遞到下一個問題階段。另一方面,如果領域專家不想要以前選擇的屬性,他們可以使用 "刪除"按鈕將其從輸出數據集中刪除。

圖7:CAVA的界面

此外,我們還開發了三個可視化界面,以幫助領域專家進行數據增強: a) 基于抽樣的數據預覽。為了解決提高處理大型數據集的可擴展性,同時盡量減少用戶的等待時間的挑戰,我們開發了一種基于抽樣的方法,為用戶提供了用戶數據增強操作的近似預覽(見圖7的D面板)。這種 "基于抽樣的預覽"延伸到可視化中的許多地方,包括但不限于。(1)對將包括在增強中的數據屬性的質量的估計,(2)數據屬性的預期分布的可視化,(3)增強后數據中產生的行的例子。如果沒有基于抽樣的方法,完整的數據集(可能有數百萬行)的完整 "join"可能需要幾分鐘甚至幾個小時才能完成。基于抽樣的方法將等待時間減少到幾秒鐘,同時為用戶提供了對增強操作和過程進行決策所需的直覺。 b) 一個 "貫穿式連接 "的可視化解釋。由于數據增強可能很復雜,特別是當需要連接的數據在知識圖譜中存在3個或更多的 "hops"時,我們觀察到這些復雜的增強程序會讓那些可能不熟悉知識圖譜和數據增強過程的用戶不知所措。為了幫助緩解使用我們的數據增強工具的困難,我們開發了一個可視化的工具來解釋這些復雜的增強過程。通過使用這種可視化的方式,用戶可以預覽擴增操作,并在投入操作之前進行調整。 c) 對實時迭代建模的支持。由于D3M中數據增強的目的是為了提高所產生的機器學習模型的質量,我們在系統中增加了對建模工具直接整合的支持。具體來說,在我們的系統中,用戶可以快速檢查新增加的數據特征是否改善了模型(如果沒有,可以刪除該特征)。系統對模型的迭代(以及用于生成模型的數據特征)進行跟蹤,允許用戶看到進展情況,并跳回到之前的模型,嘗試不同的數據增強想法。

成果

我們成功地實現了基于網絡的可視化界面。在對佐治亞理工學院招募的參與者進行的評估中,參與者認為該可視化界面使用起來很直觀,尤其是在尋找相關數據進行擴增時。此外,與使用原始(未增強的)數據相比,所產生的增強數據被證明可以提高由AutoML系統生成的模型的準確性(見下一節,第4.2.4節)。

4.2.4 與 D3M 生態系統的整合

CAVA被設計為與現有的D3M生態系統(包括Snowcat)集成。CAVA的使用代表了圖1所示的數據工作流程中最左邊的一個面板。有了這個工作流程中的額外步驟,領域專家將首先增強數據,指定問題,并使用AutoML系統建立模型。如果領域專家對結果不滿意,領域專家將通過返回數據增強來迭代這個過程。

為了支持CAVA在D3M生態系統中的使用,我們對CAVA進行了設計,使其可以作為一個獨立的服務,支持同時連接多個系統,或者通過與Snowcat等系統完全集成,以專用方式使用。

開展的工作 CAVA最初開發時的假設是,它將被集成到類似于Snowcat的建模系統中。然而,在D3M項目的過程中,我們逐漸意識到這種整合是困難的,并且較難實現,原因是其他D3M建模系統對編程語言、數據工作流程等的假設不同。因此,CAVA的最終實現是作為一個獨立的系統,即CAVA輸出一個數據集,其他D3M建模系統會攝入該數據集。特別地是,為了使CAVA與D3M生態系統的其他部分相結合,我們開發了以下功能。

a) CSV文件的上傳和下載:CAVA的一個關鍵特征是領域專家能夠以CSV文件的形式上傳(和下載)自己的數據。盡管這一功能看起來微不足道,但我們為支持這一目標實施了一些重要的創新。首先,當用戶上傳他們自己的CSV文件時,我們的系統為用戶提供了 "糾正 "數據的機會。例如,如果數據中代表郵編的一列被錯誤地歸類為數字,用戶可以手動選擇將郵編作為一個獨特的標識符(或一個字符串)來處理。作為一個字符串,系統就可以在WikiData中找到該條目。相反,如果不加以糾正,像00155這樣的郵編將被視為數字155,這對于執行數據增強是沒有意義的。

第二,為了支持增強后的數據下載,CAVA包括一些系統優化,以提高速度和性能。如前所述,CAVA使用了一種基于 "抽樣 "的方法,以確保服務器的響應速度(尤其是當數據的規模可能很大,有數百萬條記錄時)。對于下載過程,CAVA只在領域專家要求下載完整數據集時,通過對數據中的所有行執行增強查詢來實現完整數據集。

b) 部署在D3M服務器上:目前,CAVA被部署在D3M服務器上。在沒有指定特定領域的知識庫的情況下,CAVA連接到公共WikiData.org網站來進行數據增強。使用公共WikiData.org知識庫的一個好處是,WikiData.org的規模持續增長(并且不斷維護和更新以糾正錯誤和誤差)。因此,領域專家可以利用 "更新到最新 "的信息。

c) 支持多個同時使用的用戶。CAVA的設計是為了支持多個領域專家用戶同時使用CAVA來增加他們自己的數據集。為了允許多個用戶同時使用,CAVA服務器采用Node.js構建,以提高效率,并使用多線程架構。此外,為了支持領域專家上傳他們自己的CSV文件,這些文件可能有數千兆字節大小,CAVA使用Redis作為數據管理引擎。

成果

完整的CAVA系統既部署在D3M的集群上,也部署在塔夫茨大學的服務器上。該系統在大學招募的參與者和MITRE的領域專家中都得到了評估。在這兩種情況下,CAVA都被認為是有用的,特別是當特定問題的知識庫可用于某項任務時。WikiData可以滿足領域專家的一些需求。然而,對于特定領域的數據集和任務,WikiData可能并不總是擁有領域專家所需的數據來進行所需的增強。CAVA的設計、實現和評估已于2020年發表在IEEE TVCG雜志上。

5.0 結論

作為D3M計劃的一部分,我們成功開發了兩個系統。首先,我們開發了Snowcat系統,允許領域專家(SME)利用自動機器學習(AutoML)系統來生成機器學習模型。Snowcat被設計成易于使用,不需要領域專家擁有機器學習、統計或編程方面的知識或技能。在NIST進行的一項獨立評估中,使用Snowcat的領域專家能夠創建機器學習模型,這些模型比AutoML自動生成的模型(沒有領域專家的干預)和由領域專家手動策劃的模型更準確。

第二,我們開發了CAVA系統來幫助領域專家增加他們的輸入數據。由于機器學習模型的準確度只能與用于訓練模型的數據一樣,適當的數據增強可以顯著提高機器學習模型的結果。CAVA使用知識庫作為增強的來源。通過與基于網絡的可視化界面的互動,領域專家可以執行復雜的數據增強操作,而無需編程或編寫明確的數據庫查詢。在對一所大學招募的參與者和來自MITRE的領域專家進行的評估中,發現CAVA在幫助領域專家識別相關數據進行擴增方面非常有用。此外,使用CAVA從增強的數據集生成的機器模型比從原始(未增強的)數據生成的模型更準確。

兩個系統的源代碼都可以在Github上作為開源項目使用。這兩個系統也可以作為Docker容器使用,以方便部署。

付費5元查看完整內容
北京阿比特科技有限公司