使用Unity感知工具大批量生成、分析合成數據,高效地訓練ML模型

2021-01-08 騰訊網

合成數據可降低獲取標註數據的難度,方便機器學習模型的訓練。本文屬於合成數據系列第二篇,我們將用一個對象檢測的例子,來介紹Unity生成和分析合成數據集的各種工具。

在系列首篇文章中(點擊回看),我們討論了搜集大量標籤圖像、訓練機器學習模型完成電腦視覺任務時遇到的各種挑戰。還討論了Google Cloud AI和OpenAI的最前沿研究,在物體檢測等類似任務中使用合成數據的可行性。

然而,搜集合成數據、製作可用於訓練的數據集是十分複雜的,一不小心就會有所疏漏。這導致開發者往往不得不編寫一些一次性的方案來生成數據,然而這些數據的效果通常不理想。今天,我們為大家介紹兩款全新工具:Unity Perception Package和Dataset Insight,它們可以刪繁就簡,讓高質量合成數據集的生成和分析更為簡單。

Unity Perception 功能包

Unity Perception 功能包捕捉到的RGB、2D包圍盒以及其它度量信息

Unity Perception 功能包能夠以全新的方式在Unity中合生成合成數據集,且同時支持通用渲染管線(URP)與高清渲染管線(HDRP)。在初版中,功能包帶有捕捉數據集的工具,包含4種基本功能:添加對象標籤、貼標器、圖像捕捉和自定義度量衡。用戶在功能包中輸入對象標籤的相關信息,接著功能包會自動挑選信息、將其反饋到貼標器中。貼標器使用該信息來生成Ground Truth真值數據,象是3D包圍盒或語義分隔遮罩。經過處理的真值會與相關度量衡一起儲存到JSON文件中。

我們計劃在未來添加更多的貼標器,比如實例分隔,來支持其它常見的計算機視覺任務;場景生成工具;配置、管理大批domain randomization(域隨機化)參數的功能,以及雲服務的規模擴展。

Data Insights數據分析

任何ML從業者都明白查看、分析帶標註數據的重要性。而在合成數據集中,雲端模擬可生成上百萬的圖像,數據集會變得非常大。Dataset Insights是一款Python功能包,可讓大型合成數據集的數據運算、報告生成更為簡單高效。功能包可根據不同的度量衡,利用本地設備或雲端服務,在每幀上可視化整個數據集運算積累而成的統計數據。

在下面,我們將介紹如何使用Unity Perception Package和Dataset Insights來生成合成數據集,訓練一個可檢測商品、並為其貼上標籤的物品檢測模型。所有工具都具備通用性,也適用於其他環境和計算機視覺任務。我們的目標是讓更多ML從業者可利用起合成數據來解決各式各樣的需求。

3D資源製作

在Google Cloud AI最近的一次研究中,谷歌使用了64種常見商品,包括麥片與紙巾,來驗證了只用合成數據訓練物體檢測模型的可行性。我們受到研究啟發,使用了與原產品大小、形狀和紋理變化相近的同數量產品來進行訓練。

我們使用數字內容創作工具、掃描標籤和攝影掃描來製作了一整個庫的商品3D資源。還將現實圖像貼在方塊、球體和柱狀體這類簡單形狀上,來製作背景和遮擋物資源。所有商品都帶有通用渲染管線、Shader Graph製作而成的著色器。

場景製作

我們在背景貨架上放置了3D資源,又加入了形狀、紋理上的幹擾讓場景更為複雜。多樣化的訓練場景可讓訓練出的ML模型能應付現實中的大部分場景。

Unity編輯器中的場景視圖,展示了各個資源的擺放

自左向右:遮擋物體、商品3D資源、和背景貨架資源

在每個渲染的Loop循環中,系統會隨機生成前景、背景和遮擋物體的擺放位置,以及燈光、物體顏色、模糊效果和噪聲幹擾。如下方代碼所示,Perception功能包會抓取RGB圖像、對象包圍盒和其它隨即參數來生成數據集中的每個圖像。

Unity Perception生成的帶註解數據輸出

從合成數據集中採樣而來的帶標籤圖像

使用Dataset Insights分析數據

在大型合成數據集中,要人工檢查所有圖像幾乎是天方夜譚,而識別中的偏差、缺失、瑕疵、錯誤的擺放位置、擺放姿勢等等問題都會讓ML模型的表現無法達到最優。

在本例中,生成的對象集會被送入Dataset Insights,用於計算統計數據、訓練ML模型。Insights能高效處理用於對象檢測模型訓練的圖像數據,確保數據是有效的。部分數據集的總結數據在下方列出。

Dataset Insights中的表格,展示了數據集中各個對象的分布

通過表格可知商品被識別次數沒有出現過多或過少的情況

在測試階段,我們遇到過部分對象多次出現在一幀中的異常情況,在對象計數的可視化圖表中也有體現。對此,我們迅速修復了問題,確保對象能平均地分布到整個數據集中。

數據集中每個例子的對象計數分布

雖然我們希望數據集的對象分布能平均分散在每幀上,但也希望ML模型具有在數量或多或少的圖片中檢測多個對象的能力。上方表格展示了數據集每幀中所出現的標籤對象,對象跟隨一個固定的正態分布模式,每幀約有7個對象。

不同光源位置的可視化圖表。每個點都表示影響目標對象的光源。為了模擬現實世界中的光照條件,我們還多樣化了場景光照的方向和顏色。在上圖中,光源位於不同的位置,讓數據集中捕捉到的光照和陰影都有不同。

Unity Simulation:大規模模擬合成數據集

為了在模擬中體現出儘可能多的排序組合,我們使用了Unity Simulation雲服務,在雲端運行項目,生成訓練計算機視覺模型所需的完整數據集。

在下一篇文章中,我們將進一步介紹如何使用Unity Simulation生成大規模數據集,來訓練機器學習模型、與真實數據做比照,討論合成數據帶來的經濟效益,及幾個模擬過程中學到的關鍵點。

Perception工具完全免費,請在Github上下載工具和對象檢測示例。如果想要擴大數據集規模,歡迎註冊使用Unity Simulation (Beta)雲服務。

*文中所有商標均為企業私有財產

相關焦點

  • Unity Perception工具 | 使用合成數據訓練出強大的物體檢測ML模型
    合成數據的出現降低了大量搜集帶標籤數據集的難度,可輔助機器學習模型的訓練。  本文屬於「使用Unity生成合成數據」系列第三篇。在第一篇中,我們討論了在為計算機視覺訓練機器學習模型時,搜集大量帶標籤圖像會面臨的。最近,我們又展示了如何使用Unity的認知訓練工具來。
  • 如何高效快速準確地完成ML任務,這4個AutoML庫了解一下
    auto-sklearnauto-sklearn 是一個自動機器學習工具包,它與標準 sklearn 接口無縫集成,因此社區中很多人都很熟悉該工具。通過使用最近的一些方法,比如貝葉斯優化,該庫被用來導航模型的可能空間,並學習推理特定配置是否能很好地完成給定任務。
  • 如何讓神經聲碼器高效地用於序列到序列聲學模型
    如何讓神經聲碼器高效地用於序列到序列聲學模型 IT創事記 發表於 2021-01-07 16:01:32 往往在放下手機之後你才會意識到,電話那頭的客服其實是個機器人;或者準確地說,是「一位」智能客服。
  • 這個模型生成演講替身,肢體語言比總統候選人還豐富
    在離線應用中,新工具可以將動畫師的角色轉變為導演,他只需為期望的動畫效果提供高級輸入即可。之後,學得的網絡將這些指令轉換為適當的身體姿勢序列。在交互場景中,實時生成自然動畫的系統是塑造可信和關聯角色的關鍵所在。瑞典皇家理工學院的研究者通過對 MoGlow 這一基於深度學習的動作合成方法進行改進,提出了一種新的生成模型,該模型可實現當前最優的語音驅動姿勢生成。
  • 如何使用PySpark來利用機器學習模型對流數據進行預測?
    我們正在以前所未有的速度和規模生產數據。這是在數據科學領域工作的大好時候!但是有了大量的數據後,接踵而至的是複雜的挑戰。首要,如何收集大規模的數據?如何確保一旦生成並收集數據,機器學習管道就會繼續產生結果?這些都是業界面臨的重大挑戰,以及為什麼流數據的概念在企業中越來越受到關注。增加處理流數據的能力將極大地擴展當前的數據科學產品投資組合。
  • 研究動態|語音驅動姿勢生成模型來了,肢體語言比總統候選人還豐富
    在離線應用中,新工具可以將動畫師的角色轉變為導演,他只需為期望的動畫效果提供高級輸入即可。之後,學得的網絡將這些指令轉換為適當的身體姿勢序列。在交互場景中,實時生成自然動畫的系統是塑造可信和關聯角色的關鍵所在。瑞典皇家理工學院的研究者通過對 MoGlow 這一基於深度學習的動作合成方法進行改進,提出了一種新的生成模型,該模型可實現當前最優的語音驅動姿勢生成。
  • arXiv | 藥物組合的深度生成模型
    面對計算藥物組合設計中存在的巨大化學空間中「藥物組合爆炸」問題,Yang Shen課題組首次提出使用生成模型來加速發現抗耐藥性的藥物組合。(1)層次變分圖自編碼器(HVGAE)學習基因和疾病表徵第一層輸入為基因-基因網絡數據,使用圖神經網絡(GNN)學習基因特徵表示,將鄰接張量和學習到的基因特徵利用變分自編碼器生成基因表徵。
  • 生成式模型入門:訓練似然模型的技巧 - 機器之心Pro
    機器之心編譯參與:李志偉、Geek AI生成模型不止有 GAN,本教程討論了數學上最直接的生成模型(易處理的密度估計模型)。讀罷本文,你將了解如何定量地比較似然模型。在散度最小化的框架下考慮生成模型是很有用的,因為這讓我們可以仔細思考:為了進行訓練,我們對生成模型有何要求。它可能是隱式的密度模型(GAN),此時採樣相對容易,而並不能計算對數概率;它也可能是基於能量的模型,此時無法進行採樣,而(非標準化的)對數概率則易於計算。
  • NLP領域預訓練模型的現狀及分析
    這種做法的好處是訓練代價很小,預訓練的模型參數可以讓新的模型達到更快的收斂速度,並且能夠有效地提高模型性能,尤其是對一些訓練數據比較稀缺的任務,在神經網絡參數十分龐大的情況下,僅僅依靠任務自身的訓練數據可能無法訓練充分,預訓練方法可以認為是讓模型基於一個更好的初始狀態進行學習,從而能夠達到更好的性能。
  • 12款實用的數據挖掘工具
    毫無疑問,這是世界領先的數據挖掘開源系統。該工具以Java程式語言編寫,通過基於模板的框架提供高級分析。它使得實驗可以由大量的可任意嵌套的操作符組成,這些操作符在XML文件中是詳細的,並且是由快速的Miner的圖形用戶界面完成的。最好的是用戶不需要編寫代碼。它已經有許多模板和其他工具,讓我們可以輕鬆地分析數據。2.
  • 數據不夠,Waymo用GAN來湊:用生成圖像在仿真環境中訓練模型
    這隻GAN,名叫SurfelGAN,能基於無人車收集到的有限的雷射雷達和攝像頭數據,生成逼真的相機圖像。用GAN生成的數據訓練,還是訓練自動駕駛汽車,這到底靠譜不靠譜?接著,通過GAN生成逼真的相機圖像。表面元素場景重建為了忠實保留傳感器信息,同時在計算和存儲方面保持高效,研究人員提出了紋理增強表面元素地圖表示方法。
  • Github Star 7.2K,超級好用的OCR數據合成與半自動標註工具,強烈...
    12 月,它又帶來四大新發布與升級,核心內容先睹為快: 全新發布數據合成工具 Style-Text:可以批量合成大量與目標場景類似的圖像,在多個場景驗證,效果均提升 15% 以上。全新發布 OCR 數據合成工具:Style-Text相比於傳統的數據合成算法,Style-Text 可以實現特殊背景下的圖片風格遷移,只需要少許目標場景圖像,就可以合成大量數據,效果展示如下:1、相同背景批量數據合成2、相同文字批量數據合成
  • 一種高效分析細胞分裂 4D 圖像數據的強大計算工具
    由香港城市大學( CityU)共同領導的一個聯合研究小組開發了一種新的計算工具,它可以重建和可視化三維(3D)細胞形狀以及細胞的時間變化,將幾百小時的手工加速節省至數小時。這一工具徹底改變了生物學家分析圖像數據的方式,它可以促進發育和細胞生物學的進一步研究,例如癌細胞的生長。
  • 關於生成式對抗網絡(GAN) 還有這些開放性問題尚未解決
    其中,GLOW模型被訓練為使用40個GPU在2周內生成256x256張名人臉,並使用大約2億個參數。相比之下,漸進式GAN使用大約4600萬個參數,在包含8個GPU的類似面部數據集上訓練4天,以生成1024x1024個圖像。粗略地說,流程模型需要17倍於GPU的時間和4倍參數才能生成像素減少16倍的圖像。這種比較並不完美,但它能讓你體驗到兩者的差距。那麼,為何流程模型效率較低?
  • 76分鐘訓練BERT!谷歌大腦新型優化器LAMB加速大批量訓練
    當時,BERT 的作者在 Reddit 上也表示預訓練的計算量非常大,Jacob 說:「OpenAI 的 Transformer 有 12 層、768 個隱藏單元,他們使用 8 塊 P100 在 8 億詞量的數據集上訓練 40 個 Epoch 需要一個月,而 BERT-Large 模型有 24 層、2014 個隱藏單元,它們在有 33 億詞量的數據集上需要訓練 40 個 Epoch,因此在
  • 超強大自動NLP工具!谷歌推出AutoML自然語言預訓練模型
    它可以從上傳或粘貼的文本、或谷歌雲存儲的文檔中提取關於人、地點和事件的信息,允許用戶訓練自己的自定義AI模型來對情緒、實體、內容和語法等進行分類、檢測和分析。此外,它還提供自定義實體提取功能,該功能可以在文檔中識別出標準語言模型未出現的特定於領域的實體。
  • 研究人員使用交叉模式模擬數據訓練自主無人機
    卡內基梅隆大學研究人員開發的新方法允許無人機分別學習感知和行動。這兩階段的方法克服了&34;,並創造了一種將完全基於模擬數據訓練的無人機安全地部署到真實世界課程導航的方法。計算機科學學院機器人研究所的博士生羅傑裡奧·博納蒂(Rogerio Bonatti)說:&34;我們的感知模塊經過兩種模式培訓,可提高環境變異的穩健性。幫助訓練無人機感知的第一個模式是圖像。
  • 數據分析軟體工具有哪些?
    數據分析是指用適當的統計分析方法對收集來的大量數據進行分析,將它們加以匯總和理解並消化,以求最大化地開發數據的功能,發揮數據的作用。數據分析是為了提取有用信息和形成結論而對數據加以詳細研究和概括總結的過程。
  • Survey | 基於生成模型的分子設計
    近幾年,基於數據驅動的人工智慧方法,尤其是生成模型,逐漸被用於解決各個領域的逆向設計,並在分子反向設計和藥物發現中展現出了光明的前景。簡而言之,生成模型的作用是捕獲數據分布的潛在規則。取給定空間中的部分數據點集合{Xi}作為訓練集,訓練生成模型匹配真實數據分布,使生成的數據Y∼類似於實際數據X∼。
  • 三維感知與三維數據分析最新進展 - 3D傳感&人工智慧前沿科技論壇
    在劉燁斌副教授團隊的研究成果中,他們先採集人體模型,經過計算後以單視角輸入,服裝可以獨立解析,然後為服裝加入動力學仿真,服裝背側使用動力學計算生成;光影也可以重新重新布置。這項工作微小地改動了已有的 VGG-Face 模型,而創新點在於數據擴增,作者們創造了更多的虛擬 ID、更多的姿態,保證有足夠的數據,然後用二維卷積的方法得到比較好的結果。