版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
打造一流的視覺AI技術(shù)本次分享主要分以下幾個部分:首先簡要介紹一下計算機視覺技術(shù)的相關(guān)背景,然后結(jié)合格靈深瞳的實踐,從算法研發(fā)、訓練平臺、智能數(shù)據(jù)處理、異構(gòu)計算等幾個方面著重介紹如何打造一流的視覺AI技術(shù),最后介紹格靈深瞳在相關(guān)技術(shù)落地方面的情況。計算機視覺及其相關(guān)技術(shù)計算機視覺概述計算機視覺作為人工智能領(lǐng)域最重要的技術(shù)方向之一,其基礎(chǔ)是機器學習算法,而深度學習算法無疑是當前最受歡迎的機器學習算法。隨著計算機算力的不斷增強,海量數(shù)據(jù)的增長,深度學習算法的提出使得用更大量數(shù)據(jù)訓練更深的網(wǎng)絡成為可能,在限定的場景下,一些圖像識別算法的準確率已經(jīng)超越了人類。從應用角度,我們正處于計算機視覺應用爆炸性增長的智能時代,包括移動互聯(lián)網(wǎng)、自動駕駛、智慧城市、智慧醫(yī)療、機器人、增強現(xiàn)實、智慧工業(yè)等在內(nèi)的多個方向,都取得了非常多的進步。從另外一個視角看,計算機視覺是對物理世界的數(shù)字化,是智慧物聯(lián)網(wǎng)時代最大入口,和大數(shù)據(jù)技術(shù)結(jié)合擁有非常廣闊的應用場景。計算機視覺技術(shù)愿景計算機視覺技術(shù)從廣義上講是讓計算機看懂世界,狹義上講就是通過豐富的視覺傳感器,理解物理世界中每個物體的位置、屬性、身份以及行為等信息。計算機視覺技術(shù)從算法方面期待:功能更加豐富:感知方面從位置檢測、屬性識別、身份識別,逐步向行為識別和關(guān)系識別(不同物體間的關(guān)系)發(fā)展;目標類別更全:分析目標從人臉、人體、車輛,拓展到商品,再拓展到其它物體;理解粒度更細:從理解圖像中包含什么物體的分類任務,到理解物體在圖中的具體位置和數(shù)目的檢測任務,進一步到理解物體的部件以及關(guān)鍵點位置的關(guān)鍵點定位技術(shù),更進一步到理解每個像素所屬類別的語義分割任務。計算機視覺技術(shù)從產(chǎn)品性能角度則期待:精度更高、速度更快、成本更低、支持規(guī)模更大、功能更豐富。如何打造一流的視覺AI技術(shù)構(gòu)建計算機視覺系統(tǒng)的基本流程對于一個視覺應用系統(tǒng)而言,需要先將應用系統(tǒng)劃分為不同的子模塊,比如人臉識別系統(tǒng),就包括人臉檢測、特征點定位、人臉識別等不同子模塊。對于每一個子模塊,都由輸入輸出定義、數(shù)據(jù)收集、數(shù)據(jù)標注,訓練框架選擇,算法實現(xiàn),模型訓練,模型選擇,模型上線等不同步驟組成。構(gòu)建計算機視覺計算系統(tǒng)主要包含下面幾個關(guān)鍵因素:核心算法研發(fā):即如何開發(fā)出更準確、更快、更多功能的算法;自動化大規(guī)模訓練框架:即如何支持更大規(guī)模集群,更加自動化地訓練算法;智能數(shù)據(jù)挖掘和標注:即如何做到高效的數(shù)據(jù)挖掘和低成本的標注;基于硬件平臺的計算優(yōu)化:即如何選擇硬件平臺,以及在硬件平臺上做性能優(yōu)化。算法研發(fā)是一個不斷迭代、精心打磨的過程,工業(yè)界和學術(shù)界最大的區(qū)別是學術(shù)界希望創(chuàng)造更多的算法,追求更多的是新穎性和創(chuàng)造性,而工業(yè)界追求的是系統(tǒng)的功能、性能、穩(wěn)定性指標,并不要求發(fā)明最新穎的算法,而是要依據(jù)業(yè)務需求和資源限制做出最好用的系統(tǒng)。在工業(yè)界進行算法改進,包括很多維度,如數(shù)據(jù)如何處理、數(shù)據(jù)規(guī)模和來源,參數(shù)設(shè)置、模型結(jié)構(gòu),還包括損失函數(shù)設(shè)計,模型加速算法等,每一個因素都可能對最終結(jié)果影響很大。還有非常重要的一點是,需要從系統(tǒng)角度去解決問題,比如設(shè)計新的系統(tǒng)處理流程,比如把問題定義為檢測問題還是識別問題。人臉識別損失函數(shù)演進以人臉識別算法為例,由于我們無法訓練一個能分類世界上所有人的分類模型,所以人臉識別最終是希望訓練一個將人臉圖像轉(zhuǎn)換為表示能力非常強的特征模型,這里面非常核心的是損失函數(shù)的設(shè)計。最早的人臉識別算法是采用了softmax損失函數(shù),但softmax損失函數(shù)的缺陷是當類別數(shù)非常大時參數(shù)規(guī)模非常大,并且,要求每個人的樣本數(shù)比較均衡,且不能太少,很多時候無法滿足。后來出現(xiàn)了pair-wise形式的損失函數(shù),這個損失函數(shù)將分類轉(zhuǎn)換為兩類問題,即同一個人以及不同人兩類,希望同一個人兩張圖片之間的距離盡可能小,而不同人兩張圖片之間的距離盡可能大,從而不會有類別太多的參數(shù)規(guī)模問題,且不對樣本數(shù)目有太多要求。后來還出現(xiàn)了Triplet損失函數(shù)形式,要求同一個人圖片之間的距離小于不同人圖片之間的距離。但是pair-wise和triplet損失函數(shù)的缺陷是容易受數(shù)據(jù)噪聲影響,比較難訓練,收斂也比較慢。后來大家又發(fā)現(xiàn),將softmax形式做改進可以取得很好的效果,包括對特征的歸一化、權(quán)重矩陣的歸一化以及加margin等。所以,我們看到僅僅是人臉識別損失函數(shù)這樣一個技術(shù)點,就包含了非常多的選擇和迭代。在工業(yè)界,想真正做好一個算法模型,就都需要跟蹤很多工作,同時由于論文里的很多結(jié)論在大規(guī)模實際數(shù)據(jù)情況下,和論文中的結(jié)果可能會不同,所以需要結(jié)合實際數(shù)據(jù)和場景進行一一驗證。這要求我們在工業(yè)界真正想做一流的算法,不僅僅要求我們可以正確理解論文中的算法思路,還要求能夠在工業(yè)界的數(shù)據(jù)規(guī)模下正確實現(xiàn),并設(shè)置正確的參數(shù)和訓練技巧,同時還需要結(jié)合實際情況去改進。對于人臉識別系統(tǒng)而言,損失函數(shù)是影響人臉模型表示的一個因素。除此之外還包括訓練數(shù)據(jù)的數(shù)據(jù)量、純度和數(shù)據(jù)分布,數(shù)據(jù)增強的方式,比如收集的數(shù)據(jù)往往數(shù)據(jù)質(zhì)量比較高,為了使得模型在低分辨率數(shù)據(jù)上有好的效果,需要在訓練過程加入相應的擾動。除此之外,人臉識別的前序模塊,比如人臉檢測和特征點定位的精度也會影響識別效果。還有包括如何利用模型蒸餾等方法進行速度提升,如何利用人臉的多個部件融合進行效果提升,在視頻中,如何通過人臉質(zhì)量屬性選擇最優(yōu)的人臉進行識別,如何融合多幀圖像進行處理等。對于一個人臉識別系統(tǒng)而言,上述的每一個因素都會影響最終的系統(tǒng)效率和用戶體驗,每一點都需要精細打磨。每一個智能系統(tǒng)都是由多個智能算法模型組成的,以我們針對智慧城市、智慧商業(yè)領(lǐng)域研發(fā)的智能視頻理解系統(tǒng)而言,包括幾百個模型。這個系統(tǒng)里面,從大的方面講,包括物體檢測、人臉識別、人體智能分析、車輛智能分析等幾個大模塊,具體到比如智能車輛分析這個子方向而言,則包括車牌識別、車型車款識別、車輛以圖搜圖(ReID)、車身顏色識別、標志物識別、未系安全帶、開車打電話等很多子模型。對于如此多的算法模型,如果每個模型都需要不斷迭代,同時要支持不同硬件平臺的不同版本,在研發(fā)人員和訓練硬件資源受限條件下,如何持續(xù)打磨核心算法是一個很大的挑戰(zhàn)。傳統(tǒng)的算法開發(fā)模式,算法工程師往往提起數(shù)據(jù)標注任務,由數(shù)據(jù)標注員標注完成數(shù)據(jù)標注,但算法工程師需要關(guān)心如何開發(fā)標注工具、如何培訓標注人員、如何轉(zhuǎn)換數(shù)據(jù)格式、如何提純標注完的數(shù)據(jù),最后再手工方式在一臺物理機上將模型訓練出來。這種模式下,算法工程師有60%的時間都在處理和數(shù)據(jù)相關(guān)的工作,比如搜集數(shù)據(jù)、指導開發(fā)標注工具、清洗標注數(shù)據(jù)或者發(fā)起二次標注;還有20%的時間是在調(diào)參數(shù),看訓練日志,包括處理磁盤空間不足、GPU被別人占用等意外;其實只有大約15%左右的時間在實現(xiàn)算法,僅有5%的時間在思考算法。同時,這個模式的缺點是數(shù)據(jù)標注成本很高,算法工程師的時間利用率很低,同時由于沒有統(tǒng)一協(xié)調(diào),GPU或者空閑或者被大家搶占,GPU的利用率也很低。更好的一種模式是為算法研發(fā)團隊配備一個數(shù)據(jù)平臺開發(fā)團隊,專門負責算法團隊所需要的數(shù)據(jù)以及訓練平臺。也就是說,算法團隊僅僅需要提出數(shù)據(jù)的需求和要求,其它都由數(shù)據(jù)平臺團隊去完成。數(shù)據(jù)平臺團隊負責數(shù)據(jù)的收集、標注前處理、標注工具開發(fā)、標注后處理、訓練和測試數(shù)據(jù)管理等工作,其目標是為算法團隊用最高效低成本的方式提供高質(zhì)量的訓練數(shù)據(jù)。同時,為了提升訓練效率,數(shù)據(jù)平臺團隊還需要負責打造統(tǒng)一的訓練平臺。這種模式下,算法工程師的工作20%花在溝通確定數(shù)據(jù)處理流程,同時由于有統(tǒng)一的訓練平臺,算法工程師只需要花費大約10%的時間在訓練調(diào)參上。那么自然就會花費更多的時間在實現(xiàn)算法和思考算法上。這種模式下,不僅僅算法工程師的效率得到提升,而且數(shù)據(jù)標注成本在降低,數(shù)據(jù)增長速度在提升,GPU利用率也在提高。還有一點非常重要的是,智能數(shù)據(jù)處理平臺在正常運行下,只需要標注人員進行標注,數(shù)據(jù)量就會不斷增長,不依賴算法以及開發(fā)人員的投入,這是未來任何一個智能學習系統(tǒng)需要具備的特性。構(gòu)建自動化訓練管理平臺的目的是為了提升人員產(chǎn)出效率,節(jié)省人力,提高訓練資源的利用率。一方面對訓練數(shù)據(jù)進行統(tǒng)一管理,每臺機器都能訪問,避免在機器間拷貝;第二,對訓練代碼和參數(shù)進行管理,實現(xiàn)代碼、參數(shù)、環(huán)境自由在多臺機器間拷貝,省去環(huán)境搭建的時間;第三,對計算資源和任務進行管理,省去工程師關(guān)注資源空閑的時間,同時,可以在沒有空閑資源時任務排隊,省去關(guān)注時間,同時提升資源利用效率。此外,為了避免算法人員看日志的時間花費,增加模型評估和選擇,自動評估和選擇模型。對算法人員而言,可以在網(wǎng)頁新建任務,選擇訓練數(shù)據(jù),確定代碼和參數(shù),就可以開始訓練,同時可以設(shè)置幾套參數(shù)進行訓練,最終等待訓練產(chǎn)出的最優(yōu)模型即可?,F(xiàn)在已經(jīng)有很多優(yōu)秀的深度學習開源框架,比如tensorflow、mxnet、pytorch等。有一些創(chuàng)業(yè)公司,自己自行開發(fā)了一套自己的開源框架,但我個人認為其實沒有太大的必要。一方面,私有的框架,很難保證比開源框架更加先進,開源框架吸收了世界上最先進的思想,有很多優(yōu)秀的人會產(chǎn)生貢獻,創(chuàng)業(yè)公司很難有這樣的實力做得更好。此外,自己開發(fā)的框架,對于新入職員工而言有使用門檻,此外,由于很多好的算法都是在開源軟件基礎(chǔ)上做的,使用自己的框架也不利于進行技術(shù)交流。但是,是不是直接利用開源軟件就夠了呢?我想答案也是否定的。現(xiàn)在的開源框架,在大規(guī)模數(shù)據(jù)訓練方面做得還不是很好,總是會有一些特別的任務是開源軟件無法支持的。所以,基于現(xiàn)有開源軟件,根據(jù)自己的任務做框架改進是一個對大多數(shù)公司而言都更加合理的選擇。比如對于人臉識別任務而言,最終是一個上億類別的分類問題,如果直接采用現(xiàn)有框架,是無法完成這個任務的。采用softmax作為損失函數(shù),在特征維度僅僅是128維時,最后一個權(quán)重矩陣的數(shù)據(jù)規(guī)模是幾十G,遠遠超過了現(xiàn)在顯卡的顯存。我們必須實現(xiàn)一種新的框架來完成數(shù)億類別的訓練任務。我們采用了一種“數(shù)據(jù)并行+模型并行”的方法,先將數(shù)據(jù)分配到不同的GPU上,先進行前向預測計算得到經(jīng)過卷積網(wǎng)絡之后的特征,然后將不同卡上的特征進行匯聚。但權(quán)重矩陣在一臺機器上是無法保存下的,因此,需要把權(quán)重矩陣分配到不同的機器上進行運算這個時候就用到模型并行思路。我們知道,在并行計算中,計算是比較容易通過并行解決的,但是,通信量往往會成為瓶頸。我們設(shè)計的這個數(shù)據(jù)并行加模型并行的方式,只需要把所有樣本的特征在多機間做同步,數(shù)據(jù)量很少,所以可以得到很高的加速比。我們大家都知道數(shù)據(jù)很重要,但如何低成本、高效地獲取大量高質(zhì)量數(shù)據(jù)其實是一件不那么容易的事情。最簡單處理數(shù)據(jù)的方法就是收集數(shù)據(jù)直接人工標注,但直接標注的缺陷是效率很低,比如直接標注百萬級別人臉數(shù)據(jù),需要花費近百萬費用,如果標注數(shù)億數(shù)據(jù),費用顯然是無法承受的。一種常見思路是選擇標注工作量小的有先驗約束的數(shù)據(jù)源,如相冊數(shù)據(jù),每個人的相冊基本上都是來自于家人或者朋友的數(shù)據(jù),這樣的數(shù)據(jù),直接標注也不合理,比如隱私問題,比如人的標注準確率問題。我們實現(xiàn)了一套人臉自動數(shù)據(jù)標注系統(tǒng),包括如何從圖片中檢測、定位人臉,包括人臉區(qū)域割取、特征提取,包括人臉質(zhì)量獲取,以及基于人臉質(zhì)量做過濾,包括做子集中的聚類,以及類間去重,以及訓練人臉模型,同時,人臉模型還可以反饋重新進行人臉特征提取和聚類,不斷迭代。當然,實際系統(tǒng)要更加復雜,有非常多的參數(shù)和細節(jié)邏輯,但是,這樣的一套系統(tǒng),使得人臉識別數(shù)據(jù)標注成為一個自動化的過程,基本上不需要人工再參與,節(jié)省了大量的標注人力。類似的案例還有很多,比如可以依據(jù)車牌號碼進行車輛相關(guān)數(shù)據(jù)收集,可以只標注一輛車的屬性就可以得到同一個車牌的多輛車的結(jié)果??傊?,實踐表明,在數(shù)據(jù)上花費的所有努力都是值得的,這已經(jīng)成為技術(shù)驅(qū)動的創(chuàng)新型公司的核心競爭力之一。數(shù)據(jù)平臺團隊,除了準備數(shù)據(jù)和開發(fā)訓練平臺外,還可以參與算法的訓練和改進工作。很多算法,經(jīng)過算法工程師的迭代之后,在算法方面已經(jīng)相對確定,更多的是調(diào)參和數(shù)據(jù)相關(guān)工作。這一塊是可以由數(shù)據(jù)平臺工程師通過數(shù)據(jù)驅(qū)動的方式來改進的。比如,我們在一些任務中,就在算法工程師基本不需要參與的情況下,數(shù)據(jù)平臺工程師通過高效挖掘困難數(shù)據(jù)并標注的方式可以使算法持續(xù)改善。上述的智能數(shù)據(jù)處理和自動化訓練平臺系統(tǒng),結(jié)合起來,在我們的內(nèi)部被稱為深瞳大腦項目。深瞳大腦的終極目標是希望將人工智能中人工的部門減少到最少,打造一套動態(tài)更新的“數(shù)據(jù)采集->標注->算法研發(fā)->模型訓練->產(chǎn)品落地->數(shù)據(jù)產(chǎn)生”的閉環(huán)系統(tǒng),最終僅僅在數(shù)據(jù)標注環(huán)節(jié)依賴人工,成為一套真正的基于自主學習的智能系統(tǒng)。除了算法效果、算法功能外,還需要考慮預測速度以及承載硬件的成本。最底層是芯片等硬件平臺的選擇,之上是預測框架,再之上是sdk封裝以及處理流程和分布式架構(gòu),再上層則是各種視覺應用。這其中涉及很多工作,如硬件的選擇,GPU、Arm、FPGA、DSP還有專門為深度學習設(shè)計的ASIC芯片。硬件平臺對整個計算機視覺識別系統(tǒng)非常重要,為了做一個正確的平臺選擇,需要考慮主芯片的計算能力、成本,接口支持豐富程度,以及編解碼、ISP,軟件兼容性以及平臺易用程度等。選定硬件平臺之后,首先應該從算法角度考慮如何減少計算量。比較簡單的是基于經(jīng)典網(wǎng)絡去改變總的層數(shù)以及每層特征通道數(shù)目。進一步,可以結(jié)合各種經(jīng)典網(wǎng)絡去設(shè)計自己的網(wǎng)絡,比如在嵌入式平臺上,可以參考Depth-Wise結(jié)構(gòu)、ShuffleNet結(jié)構(gòu)中的核心思路設(shè)計自己的新網(wǎng)絡。還可以基于強化學習模型搜索更優(yōu)的網(wǎng)絡。此外,還有一個非常重要的思路,就是如何通過模型蒸餾的方法去使得一個小網(wǎng)絡訓練得到接近大網(wǎng)絡的效果。除了算法層面外,還可以從異構(gòu)計算層面利用各個平臺特性進行優(yōu)化,比如英偉達GPU平臺可以優(yōu)先考慮TensorRT以及CUDA指令進行優(yōu)化。格靈深瞳成立于2013年,公司的愿景是讓計算機理解世界,讓AI使生活更美好。我們專注于研發(fā)包括計算機視覺在內(nèi)的人工智能核心算法,并把先進的人工智能科技轉(zhuǎn)化為具備低成本、大規(guī)模部署能力的產(chǎn)品和服務,并深度結(jié)合應用場景,為用戶提供高性能、可靠實用的智慧解決方案。在核心算法層面,我們在人臉識別、人體再識別、車輛智能分析等方向都處于行業(yè)領(lǐng)先水平。以人臉識別為例,在十億次誤識一次的情況下,識別率可以達到90%;在車輛的主品牌、子品牌和年款識別上,總類別數(shù)可以達到20000種;在行人再識別上,我們的線上模型在沒有針對測試數(shù)據(jù)訓練的情況下,在Market1501上面首選識別率達到98.1%,超過目前所有的公開結(jié)果。在核心引擎層面,我們打造了一套全目標視頻結(jié)構(gòu)化引擎,支持人臉識別、人體識別、車輛識別以及非機動車識別,支持視頻、圖像、歷史流、歷史視頻文件等多種模式,而且性能指標非常高,普通模式下單機可以做到320路,高速模式下單機可以做到1000路。以數(shù)據(jù)、算法、訓練平臺為核心,我們構(gòu)建了深瞳大腦架構(gòu),基于深瞳大腦,我們可以不斷地產(chǎn)出業(yè)界領(lǐng)先的各種算法,比如全目標抓拍算法、全目標屬性識別算法、人臉識別聚類算法、物體以圖搜圖算法、行為識別算法、即時
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鋁單板藝術(shù)中心施工合同
- 新能源材料堆場租賃協(xié)議
- 屋頂人力資源租賃合同
- 融資貸款居間合同范例
- 融資借款協(xié)議三篇
- 蜘蛛人更換玻璃協(xié)議書(2篇)
- 公路檢測資質(zhì)掛鉤合同范本
- 集體土地所有權(quán)登記成果更新匯交服務合同
- 集體合同主要條款
- 住房代銷代理合同范例
- 擴張性心肌病
- GB/T 45047-2024土方機械純電動輪胎式裝載機技術(shù)要求
- 《報告文學研究》自學考試省考課程習題集及答案
- ICU患者跌倒、墜床應急預案及防范措施
- 國家開放大學2024年12月《中國近現(xiàn)代史綱要試卷B-版本3》大作業(yè)參考答案
- 國家開放大學Python程序設(shè)計形考任務實驗六-互聯(lián)網(wǎng)評論數(shù)據(jù)分析及其展示綜合案例
- 施工企業(yè)五年規(guī)劃
- 2024年農(nóng)村土地整治承包協(xié)議
- 大學生職業(yè)規(guī)劃課件
- 北京市2024年中考道德與法治真題試卷(含答案)
- 2024中考語文記敘文閱讀-概括分析人物形象(學生版)
評論
0/150
提交評論