版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
(19)國家知識產(chǎn)權(quán)局GO6TGO6T地址美國加利福尼亞州針對神經(jīng)網(wǎng)絡(luò)的迭代式小樣本精細化的微本發(fā)明公開了針對神經(jīng)網(wǎng)絡(luò)的迭代式小樣用相對短的系列微訓練步驟以低學習率執(zhí)行迭網(wǎng)絡(luò)訓練框架接收訓練后的神經(jīng)網(wǎng)絡(luò)以及第二使用較低的學習率來調(diào)整訓練后的神經(jīng)網(wǎng)絡(luò)的2接收使用第一組超參數(shù)和第一訓練數(shù)據(jù)集訓練為滿足損失函數(shù)的神經(jīng)網(wǎng)絡(luò),其中,訓練后的神經(jīng)網(wǎng)絡(luò)生成包括視覺偽像的輸出數(shù)據(jù);接收第二訓練數(shù)據(jù)集,其中,所述第二訓練數(shù)據(jù)集包括被選擇以訓練所述訓練后的神經(jīng)網(wǎng)絡(luò)以抑制所述視覺偽像的附加訓練樣本;接收第二組超參數(shù),其中與所述第一組超參數(shù)中的對應(yīng)的第一學習參數(shù)相比,在所述第二組超參數(shù)中指定的第二學習參數(shù)限制對所述神經(jīng)網(wǎng)絡(luò)使用的一個或更多個權(quán)重的調(diào)根據(jù)所述第二組超參數(shù)將所述第二訓練數(shù)據(jù)集應(yīng)用于所述神經(jīng)網(wǎng)絡(luò),同時調(diào)整所述一個或更多個權(quán)重,所述神經(jīng)網(wǎng)絡(luò)使用所述一個或更多個權(quán)重處理所述第二訓練數(shù)據(jù)集,以產(chǎn)生第一微訓練神經(jīng)網(wǎng)絡(luò)。2.根據(jù)權(quán)利要求1所述的方法,其中,所述第一學習參數(shù)包括第一學習率,并且所述第二學習參數(shù)包括小于所述第一學習率的第二學習率。3.根據(jù)權(quán)利要求2所述的方法,其中,所述第二學習率比所述第一學習率低至少十倍。4.根據(jù)權(quán)利要求1所述的方法,還包括:確定已經(jīng)滿足完成要求。5.根據(jù)權(quán)利要求4所述的方法,其中確定包括從用戶界面接收輸入指示。6.根據(jù)權(quán)利要求1所述的方法,還包括:使用所述第一微訓練神經(jīng)網(wǎng)絡(luò)從所述第二訓練數(shù)據(jù)集中的相應(yīng)訓練圖像生成并顯示測試圖像,其中,相對于針對所述相應(yīng)訓練圖像通過所述神經(jīng)網(wǎng)絡(luò)所生成的第二測試圖像,減少了在所述測試圖像內(nèi)的所述視覺偽像。7.根據(jù)權(quán)利要求1所述的方法,其中,所述視覺偽像包括幾何混疊偽像。8.根據(jù)權(quán)利要求1所述的方法,其中,所述視覺偽像包括渲染噪聲偽像。并行處理單元,耦合到所述存儲電路,其中,所述并行處理單元檢索并執(zhí)行所述編程指接收使用第一組超參數(shù)和第一訓練數(shù)據(jù)集進行訓練以滿足損失函數(shù)的神經(jīng)網(wǎng)絡(luò),其中,訓練后的神經(jīng)網(wǎng)絡(luò)生成包括視覺偽像的輸出數(shù)據(jù);接收第二訓練數(shù)據(jù)集,其中,所述第二訓練數(shù)據(jù)集包括被選擇以訓練所述訓練后的神經(jīng)網(wǎng)絡(luò)以抑制所述視覺偽像的附加訓練樣本;接收第二組超參數(shù),其中與所述第一組超參數(shù)中的對應(yīng)的第一學習參數(shù)相比,在所述第二組超參數(shù)中指定的第二學習參數(shù)限制對所述神經(jīng)網(wǎng)絡(luò)使用的一個或更多個權(quán)重的調(diào)根據(jù)所述第二組超參數(shù)將所述第二訓練數(shù)據(jù)集應(yīng)用于所述神經(jīng)網(wǎng)絡(luò),同時調(diào)整所述神經(jīng)網(wǎng)絡(luò)處理所述第二訓練數(shù)據(jù)集所使用的所述一個或更多個權(quán)重,以產(chǎn)生第一微訓練神經(jīng)10.一種非暫時性計算機可讀介質(zhì),存儲用于面部分析的計算機指令,當由一個或更多個處理器執(zhí)行所述計算機指令時,使得所述一個或更多個處理器執(zhí)行以下操作:接收使用第一組超參數(shù)和第一訓練數(shù)據(jù)集進行訓練以滿足損失函數(shù)的神經(jīng)網(wǎng)絡(luò),其中,訓練后的神經(jīng)網(wǎng)絡(luò)生成包括視覺偽像的輸出數(shù)據(jù);3接收第二訓練數(shù)據(jù)集,其中,所述第二訓練數(shù)據(jù)集包括被選擇以訓練所述訓練后的神經(jīng)網(wǎng)絡(luò)以抑制所述視覺偽像的附加訓練樣本;接收第二組超參數(shù),其中與所述第一組超參數(shù)中的對應(yīng)的第一學習參數(shù)相比,在所述第二組超參數(shù)中指定的第二學習參數(shù)限制對所述神經(jīng)網(wǎng)絡(luò)使用的一個或更多個權(quán)重的調(diào)根據(jù)所述第二組超參數(shù)將所述第二訓練數(shù)據(jù)集應(yīng)用于所述神經(jīng)網(wǎng)絡(luò),同時調(diào)整所述神經(jīng)網(wǎng)絡(luò)處理所述第二訓練數(shù)據(jù)集所使用的所述一個或更多個權(quán)重,以產(chǎn)生第一微訓練神經(jīng)網(wǎng)絡(luò)。4[0001]本發(fā)明專利申請是申請日為2020年10月12日,申請?zhí)枮?02011083316.3,以及發(fā)明名稱為“針對神經(jīng)網(wǎng)絡(luò)的迭代式小樣本精細化的微訓練”的發(fā)明專利申請案的分案申請。技術(shù)領(lǐng)域[0002]本公開涉及神經(jīng)網(wǎng)絡(luò)訓練,并且更具體地,涉及對神經(jīng)網(wǎng)絡(luò)的迭代式小樣本精細化的微訓練。背景技術(shù)[0003]常規(guī)的神經(jīng)網(wǎng)絡(luò)訓練技術(shù)有時在準確性或質(zhì)量方面產(chǎn)生不足的結(jié)果。當訓練基于可能不足、片面的或其組合的數(shù)據(jù)集時,尤其如此。此外,傳統(tǒng)的訓練技術(shù)通常在訓練損失不準確或數(shù)據(jù)不足導致再訓練不切實際或無效的受限情況下無法提供其他改進機會。在生成型神經(jīng)網(wǎng)絡(luò)圖像合成應(yīng)用程序中,以生成的圖像中的圖像偽影的形式出現(xiàn)的結(jié)果可能不充分。需要解決這些問題和/或與現(xiàn)有技術(shù)相關(guān)聯(lián)的其他問題。發(fā)明內(nèi)容[0004]公開了一種方法、計算機可讀介質(zhì)和系統(tǒng),用于微訓練神經(jīng)網(wǎng)絡(luò)以提高準確性和/或質(zhì)量。該方法包括使用第一組超參數(shù)和第一訓練數(shù)據(jù)集接收訓練為滿足損失函數(shù)的神經(jīng)網(wǎng)絡(luò),接收第二訓練數(shù)據(jù)集,以及接收第二組超參數(shù)。在一個實施例中,與第一組超參數(shù)中的對應(yīng)的第一學習參數(shù)相比,在第二組超參數(shù)中指定的第二學習參數(shù)限制了神經(jīng)網(wǎng)絡(luò)使用的一個或更多個權(quán)重的調(diào)整。該方法還包括根據(jù)第二組超參數(shù)將第二訓練數(shù)據(jù)集應(yīng)用于神經(jīng)網(wǎng)絡(luò),以通過調(diào)整神經(jīng)網(wǎng)絡(luò)用來處理第二訓練數(shù)據(jù)集的一個或更多個權(quán)重來產(chǎn)生第一微訓練神經(jīng)網(wǎng)絡(luò)。在某些應(yīng)用程序中,經(jīng)訓練的神經(jīng)網(wǎng)絡(luò)會生成包括視覺偽影的輸出數(shù)據(jù),并且,根據(jù)該方法產(chǎn)生的第一微訓練神經(jīng)網(wǎng)絡(luò)減少了視覺偽像。附圖說明[0005]圖1A示出了根據(jù)一個實施例的用于微訓練神經(jīng)網(wǎng)絡(luò)的方法的流程圖。[0006]圖1B示出了根據(jù)一個實施例的在整個假設(shè)空間內(nèi)的微訓練。[0007]圖1C示出了根據(jù)一個實施例的神經(jīng)網(wǎng)絡(luò)框架。[0008]圖2A示出了根據(jù)一個實施例的用于使用微訓練來改善神經(jīng)網(wǎng)絡(luò)訓練的方法的流程圖。[0009]圖2B示出了根據(jù)一個實施例的各種微訓練網(wǎng)絡(luò)的層之間的平均差的圖。[0010]圖3示出了根據(jù)一個實施例的并行處理單元。[0011]圖4A示出了根據(jù)一個實施例的在圖3的并行處理單元內(nèi)的一般處理集群。[0012]圖4B示出了根據(jù)一個實施例的圖3的并行處理單元的存儲器分區(qū)單元。[0013]圖5A示出了根據(jù)一個實施例的圖4A的流式多處理器。[0014]圖5B是根據(jù)實施例的使用圖3的PPU實現(xiàn)的處理系統(tǒng)的概念圖。5[0015]圖5C示出了其中可以實現(xiàn)各種先前實施例的各種架構(gòu)和/或功能的示例性系統(tǒng)。具體實施方式[0016]所公開的技術(shù),在本文中稱為微訓練,通過使用一系列小樣本(few-shot)微訓練步驟以低學習率執(zhí)行迭代式精細化來提高訓練的神經(jīng)網(wǎng)絡(luò)的準確性。微訓練步驟包括比對訓練的神經(jīng)網(wǎng)絡(luò)的初始訓練少得多的訓練迭代。在這種情況下,較低的學習率有助于在不顯著改變訓練后的神經(jīng)網(wǎng)絡(luò)的計算結(jié)構(gòu)的情況下逐步提高準確性。在本文中,計算結(jié)構(gòu)既指神經(jīng)網(wǎng)絡(luò)拓撲又指其中內(nèi)部表示的各種分布(例如,通過激活權(quán)重,激活函數(shù)等)。給定的網(wǎng)絡(luò)拓撲可以指定內(nèi)部人工神經(jīng)元節(jié)點如何組織成層并相互連接。每個微訓練步驟之后可以是評估步驟(例如,來自操作員通過用戶界面的輸入),以評估增量質(zhì)量變化。例如,與細線相關(guān)聯(lián)的少量像素(例如,在室外場景中,黑暗的電話線對著明亮的天空)可能會呈現(xiàn)出對人工操作者(查看者)可見的混疊偽像,而這些偽像偽影在常規(guī)自動訓練中已被忽略;但是,可以在微訓練期間對這些像素進行優(yōu)化,以使其具有適當?shù)目逛忼X效果(antialiased)。在這種情況下,微訓練精細化了先前訓練的網(wǎng)絡(luò),以減少或消除這種視覺上重要的偽像(例如混疊)。[0017]圖1A示出了根據(jù)一個實施例的用于微訓練神經(jīng)網(wǎng)絡(luò)的方法110的流程圖。盡管在處理單元的上下文中描述了方法110,但是方法110也可以由程序、定制電路或定制電路與程序的組合來執(zhí)行。例如,方法110可以由GPU(圖形處理單元)、CPU(中央處理單元)或能夠執(zhí)行用于評估和訓練神經(jīng)網(wǎng)絡(luò)的操作的任何處理器執(zhí)行。此外,本領(lǐng)域普通技術(shù)人員將理解,執(zhí)行方法110的任何系統(tǒng)都在本公開的實施例的范圍和精神內(nèi)。在一個實施例中,處理單元結(jié)合神經(jīng)網(wǎng)絡(luò)訓練框架和/或神經(jīng)網(wǎng)絡(luò)運行系統(tǒng)的各種操作來執(zhí)行方法110。在某些實施例中,處理單元包括并行處理單元的一個或更多個實例,例如圖3的并行處理單元300。[0018]方法110在步驟111處開始,其中處理單元使用第一組超參數(shù)(H?)和第一訓練數(shù)據(jù)集(Ds)接收訓練為滿足損失函數(shù)(L)的神經(jīng)網(wǎng)絡(luò)(Gs)。在一個實施例中,神經(jīng)網(wǎng)絡(luò)是被配置為生成圖像的深度生成型神經(jīng)網(wǎng)絡(luò)。在一個實施例中,第一組超參數(shù)包括至少一個模型規(guī)歷元計數(shù)指定所有指定的訓練樣本上的訓練次數(shù)。給定訓練樣本上的每個訓練遍歷包括一個前向遍歷和一個后向遍歷??梢詫⒅付ǖ挠柧殬颖窘M織為批次,其中批次大小指定每批次的訓練樣本數(shù)量。訓練迭代次數(shù)指定了對不同批次進行的、用以一次性在所有可用訓練樣本上訓練給定的神經(jīng)網(wǎng)絡(luò)的訓練遍歷次數(shù)。例如,對于1000個訓練樣本和200個批處理量,需要5次迭代才能完成一個時期。在一個實施例中,給定的一組超參數(shù)可以參考訓練樣本的一個或更多個集合。此外,學習率是一個值,該值可縮放給定神經(jīng)網(wǎng)絡(luò)在給定遍歷中調(diào)整權(quán)重的速度。另外,損失函數(shù)可以指定由神經(jīng)網(wǎng)絡(luò)計算的預(yù)測輸出與實際輸出之間的差。在超參數(shù)的情況下,損失函數(shù)可以指定用于計算差的函數(shù)。[0019]在某些使用情況下,通過使用第一組超參數(shù)(H?)和第一訓練數(shù)據(jù)集(Ds)優(yōu)化損失函數(shù)(Ls),訓練神經(jīng)網(wǎng)絡(luò)(Gs)生成新圖像。但是,當使用不同的測試數(shù)據(jù)集(D)評估神經(jīng)網(wǎng)絡(luò)時,結(jié)果可能不令人滿意(例如,生成的圖像中可見的偽像)。由于一個或更多個原因,可能會導致結(jié)果不令人滿意。當損失函數(shù)Ls與測試損失函數(shù)(L)不同時,發(fā)生第一示例性原6這種情況下,損失函數(shù)(L)可能會提供不充分的損失反饋,從而以避免視覺偽影的方式訓練神經(jīng)網(wǎng)絡(luò)Gs,而視覺偽影可能僅對L是重要的。當測試損失函數(shù)涉及主觀的人類觀看者時,這種情況尤其具有挑戰(zhàn)性。[0020]當?shù)谝挥柧殧?shù)據(jù)集(Ds)的分布與測試數(shù)據(jù)集(D)的分布足夠不同時,可能會出現(xiàn)結(jié)果不令人滿意的第二個示例性原因。在這種情況下,第一訓練數(shù)據(jù)集可能缺乏足夠的代表性數(shù)據(jù)來以避免視覺偽像的方式訓練神經(jīng)網(wǎng)絡(luò)Gs。當對第一組超參數(shù)(H?)進行次優(yōu)化調(diào)諧時,可能會出現(xiàn)結(jié)果不令人滿意的第三個示例性原因。但是,僅優(yōu)化超參數(shù)(H?)以克服訓練不足通??赡苁遣磺袑嶋H的。[0021]當結(jié)果不令人滿意的上述三個原因中的任何一個在神經(jīng)網(wǎng)絡(luò)訓練使用情況下可操作時,常規(guī)上簡單地重新訓練神經(jīng)網(wǎng)絡(luò)Gs不一定可以改善評估L可能是不切實際的;捕獲足夠大的訓練數(shù)據(jù)集可能是不切實際的;并且,優(yōu)化Hs可能是不切實際的。然而,本文公開的微訓練技術(shù)提供了一種在不克服不切實際的障礙的情況下改善結(jié)果的機制。[0022]在一個實施例中,S等于零,并且神經(jīng)網(wǎng)絡(luò)G?是訓練后的神經(jīng)網(wǎng)絡(luò)(G?),其使用第一訓練數(shù)據(jù)集(D)和第一組超參數(shù)(H?)進行了訓練。在各種使用情況下,訓練后的神經(jīng)網(wǎng)絡(luò)可以生成包括視覺偽像的輸出數(shù)據(jù)。偽像可以包括但不限于幾何混疊偽像(例如鋸齒狀邊緣、塊狀外觀)、噪聲偽像(例如渲染噪聲偽像)、照明效果偽像(例如水反射偽像)和時間偽像[0023]在步驟113中,處理單元接收第二訓練數(shù)據(jù)集(D?)。第二訓練數(shù)據(jù)集D?可以包括被選擇以專門訓練神經(jīng)網(wǎng)絡(luò)以抑制視覺偽像的附加訓練樣本。例如,為了改善抗鋸齒質(zhì)量,可以獲取描繪細高對比度線條的其他圖像,并將其與第二訓練數(shù)據(jù)集(D?)混合,以在微訓練期間使用,從而引導神經(jīng)網(wǎng)絡(luò)G?產(chǎn)生更連續(xù)且美觀的抗鋸齒線,而不會打擾其他有價值的訓練。在步驟115中,處理單元接收第二組超參數(shù)(H?)。在一個實施例中,在第二組超參數(shù)中指定第二學習參數(shù),以與第一組超參數(shù)中的對應(yīng)的第一學習參數(shù)相比,限制由神經(jīng)網(wǎng)絡(luò)使用的一個或更多個權(quán)重的調(diào)整。在一個實施例中,第一學習參數(shù)包括第一學習率,并且第二學習參數(shù)包括小于第一學習率的第二學習率。在某些實施例中,第二學習率比第一學習率低十倍到低一千倍。例如,第一學習率可以在1e-3至1e-5的范圍內(nèi),而第二學習率可以在le-4至le-8的范圍內(nèi)。[0024]在一個實施例中,第一組超參數(shù)包括第一訓練迭代計數(shù),并且第二組超參數(shù)包括小于第一訓練迭代計數(shù)的第二訓練迭代計數(shù)。在某些實施例中,第二訓練迭代計數(shù)比第一訓練迭代計數(shù)小一千倍(或更多)。更一般地,第二組超參數(shù)可以指定用于訓練的總計算量,該總計算量可以比第一組超參數(shù)所指定的總計算量小數(shù)百至數(shù)千倍(或更多倍)。[0025]在步驟117中,處理單元根據(jù)第二組超參數(shù)將第二訓練數(shù)據(jù)集應(yīng)用于神經(jīng)網(wǎng)絡(luò),同時調(diào)整神經(jīng)網(wǎng)絡(luò)用來處理第二訓練數(shù)據(jù)集以產(chǎn)生第一微訓練神經(jīng)網(wǎng)絡(luò)的一個或多個權(quán)重。以這種方式,第一微訓練神經(jīng)網(wǎng)絡(luò)(G?)代表訓練神經(jīng)網(wǎng)絡(luò)(G。)的另外的訓練實例。[0026]在一個實施例中,處理單元將第二訓練數(shù)據(jù)集與第一訓練數(shù)據(jù)集的至少一部分結(jié)合應(yīng)用以產(chǎn)生第一微訓練神經(jīng)網(wǎng)絡(luò)。例如,整個第二訓練數(shù)據(jù)集以及整個第一訓練數(shù)據(jù)集可用于訓練和產(chǎn)生第一微訓練神經(jīng)網(wǎng)絡(luò)。在另一個示例中,可以使用整個第二訓練數(shù)據(jù)集以及第一訓練數(shù)據(jù)集的大約一半。可替代地,第二訓練數(shù)據(jù)集和第一訓練數(shù)據(jù)集的各種其他組合可以被應(yīng)用于訓練和產(chǎn)生第一微訓練神經(jīng)網(wǎng)絡(luò)。在一個實施例中,第二訓練迭代計數(shù)用于訓練和產(chǎn)生第一微訓練神經(jīng)網(wǎng)絡(luò)。[0027]在一個實施例中,可以在微訓練期間調(diào)節(jié)第一微訓練神經(jīng)網(wǎng)絡(luò)的每個權(quán)重。在替代實施例中,某些權(quán)重,例如與特定層相關(guān)的權(quán)重,可以被鎖定并且在微訓練期間不被調(diào)[0028]在一個實施例中,訓練后的神經(jīng)網(wǎng)絡(luò)實現(xiàn)具有第一組激活函數(shù)權(quán)重的U-Net架構(gòu),并且第一微訓練神經(jīng)網(wǎng)絡(luò)實現(xiàn)具有第二組不同的激活函數(shù)權(quán)重的對應(yīng)的U-Net架構(gòu)。在各個實施例中,訓練神經(jīng)網(wǎng)絡(luò)和第一微訓練神經(jīng)網(wǎng)絡(luò)包括在生成對抗神經(jīng)網(wǎng)絡(luò)(GAN)系統(tǒng)內(nèi)的網(wǎng)絡(luò)。GAN通常包括一個生成器網(wǎng)絡(luò)和一個鑒別器網(wǎng)絡(luò),每個網(wǎng)絡(luò)都可以是一個深度神經(jīng)網(wǎng)絡(luò),例如具有任意深度架構(gòu)的U-Net.GAN結(jié)構(gòu)使生成器網(wǎng)絡(luò)與鑒別器網(wǎng)絡(luò)相對立,生成器網(wǎng)絡(luò)學習生成與自然數(shù)據(jù)無法區(qū)分的合成數(shù)據(jù),鑒別器網(wǎng)絡(luò)學習將合成數(shù)據(jù)與自然數(shù)據(jù)區(qū)分開。在某些應(yīng)用程序中,可以訓練生成器網(wǎng)絡(luò)以產(chǎn)生高質(zhì)量的合成數(shù)據(jù),例如合成的虛構(gòu)圖像。在其他應(yīng)用程序中,鑒別器網(wǎng)絡(luò)學會了將識別范圍推廣到自然或初始訓練數(shù)據(jù)之外。在本公開的上下文中,可以在訓練期間執(zhí)行任何技術(shù)上可行的訓練機制(例如,反向傳播),而不會脫離各種實施例的范圍和精神。[0029]現(xiàn)在將根據(jù)用戶的需求,給出關(guān)于可用于實現(xiàn)前述框架的各種可選架構(gòu)和特征的更多說明性信息。應(yīng)該特別注意的是,以下信息是出于說明目的而提出的,不應(yīng)以任何方式解釋為限制。下列任何特征都可以可選地合并或不排除所描述的其他特征。[0030]圖1B示出了根據(jù)一個實施例的在整個假設(shè)空間140內(nèi)的微訓練。如圖所示,未訓練的神經(jīng)網(wǎng)絡(luò)G?橫穿初始訓練路徑142,從而產(chǎn)生訓練的神經(jīng)網(wǎng)絡(luò)G??梢愿鶕?jù)任何技術(shù)上可行的訓練技術(shù)來遍歷初始訓練路徑142。訓練后的神經(jīng)網(wǎng)絡(luò)G?位于局部優(yōu)化區(qū)域144內(nèi),但是訓練后的神經(jīng)網(wǎng)絡(luò)G?可能實際上沒有基于第一訓練數(shù)據(jù)集D?和第一組超參數(shù)H?提供理想結(jié)果146。所公開的方法110和200精細化了訓練后的神經(jīng)網(wǎng)絡(luò)G?,使其更接近理想結(jié)果146。在該示例中,訓練后的神經(jīng)網(wǎng)絡(luò)G。通過從訓練后的神經(jīng)網(wǎng)絡(luò)G?到微訓練的神經(jīng)網(wǎng)絡(luò)G?、G?,最后是G?的路徑進行了精細化。此外,該技術(shù)提供了主觀的人工輸入,以使自動訓練結(jié)果與人工感知更好地對準,從而以視覺上重要且與人類感知不同的方式提高質(zhì)量,但是難以自動損失函數(shù)的形式在算法上建模。[0031]如圖所示,初始訓練結(jié)果使用訓練數(shù)據(jù)集D?,損失函數(shù)和超參數(shù)H?產(chǎn)生了訓練后的神經(jīng)網(wǎng)絡(luò)G?。使用所公開的微訓練技術(shù)的改進的訓練結(jié)果產(chǎn)生精細化的神經(jīng)網(wǎng)絡(luò)G?,其更接近理想結(jié)果146。在微訓練期間對訓練后的神經(jīng)網(wǎng)絡(luò)G?進行小的更改保留了使用訓練數(shù)據(jù)集D?進行原始訓練的好處,同時允許可以提高質(zhì)量的較小的修改。例如,精細化的神經(jīng)網(wǎng)絡(luò)G?通??梢詮?fù)制經(jīng)過訓練的神經(jīng)網(wǎng)絡(luò)G?,但對激活函數(shù)權(quán)重進行小的更改可以提高質(zhì)量。[0032]所公開的微訓練技術(shù)包括:接收訓練的神經(jīng)網(wǎng)絡(luò)G?(Gs,s=);接收第二訓練數(shù)據(jù)集(例如,D?);接收第二組超參數(shù)H?;以及基于神經(jīng)網(wǎng)絡(luò)Gs訓練新的微訓練神經(jīng)網(wǎng)絡(luò)Gs+1。在第一微訓練會話中,從神經(jīng)網(wǎng)絡(luò)G?生成神經(jīng)網(wǎng)絡(luò)G?。在一個實施例中,可以將額外的訓練樣本添加到后續(xù)的第二訓練數(shù)據(jù)集(例如,D?,D?等)中,并且每個后續(xù)的微訓練會話(例如,迭代)可以產(chǎn)生后續(xù)的神經(jīng)網(wǎng)絡(luò)G?、G?等??梢詧?zhí)行多個微訓練會話以進一步精細化后續(xù)的神經(jīng)網(wǎng)絡(luò)Gs+n。微訓練通常保持訓練的神經(jīng)網(wǎng)絡(luò)的內(nèi)部計算結(jié)構(gòu),從而允許在原始訓練的神經(jīng)網(wǎng)絡(luò)(Gs)和隨后的微訓練的神經(jīng)網(wǎng)絡(luò)Gs+1的輸出上執(zhí)行比較和內(nèi)插操作。如圖所示,所公開的技]8術(shù)允許微訓練的神經(jīng)網(wǎng)絡(luò)G?提供比常規(guī)訓練的神經(jīng)網(wǎng)絡(luò)G?更接近理想結(jié)果146的結(jié)果。此外,所公開的技術(shù)提供了神經(jīng)網(wǎng)絡(luò)質(zhì)量的改進,同時有利地僅需要初始訓練之外的適度的額外計算工作,因為與傳統(tǒng)訓練相比,微訓練所需的訓練迭代數(shù)量級要少。[0033]在一個示例性用例中,在產(chǎn)生了微訓練的神經(jīng)網(wǎng)絡(luò)之后,可以由微訓練的神經(jīng)網(wǎng)絡(luò)處理某些訓練數(shù)據(jù),并將結(jié)果顯示給觀看者以進行評估。如果結(jié)果被評估為可接受,則觀看者可以向用戶界面提供輸入,以指示已經(jīng)滿足了完成要求。在該示例中,觀看者可能正在評估與抗鋸齒、降噪、照明效果等相關(guān)的視覺偽像。相對于先前的訓練會話,這樣的視覺偽像可能難以通過算法量化為更好或更差,但是觀看者可以基于人類對偽像的感知而容易地提供主觀評估。進一步舉例,第二訓練數(shù)據(jù)集可以被構(gòu)造為包括訓練數(shù)據(jù),該訓練數(shù)據(jù)專門解決了由微訓練瞄準的視覺偽像。在抗混疊的特定應(yīng)用程序中,總屏幕像素的一小部分可能具有偽影,例如與細高對比度線相關(guān)的偽影(例如,在室外場景中,黑暗的電話線與明亮的天空相對)。由于只有幾個像素受到某些混疊偽影的影響,傳統(tǒng)的訓練技術(shù)可能無法可靠地為這幾個像素產(chǎn)生高質(zhì)量的結(jié)果;然而,這些混疊偽像對于觀看者而言可能是非常明顯[0034]圖1C示出了根據(jù)一個實施例的神經(jīng)網(wǎng)絡(luò)框架170。如圖所示,神經(jīng)網(wǎng)絡(luò)框架170包括鑒別器178,該鑒別器178被配置為接收包括參考圖像數(shù)據(jù)的參考樣本176或包括合成圖像數(shù)據(jù)的合成樣本186。鑒別器178生成由參數(shù)調(diào)整單元180使用的損耗輸出,用于計算對各個神經(jīng)網(wǎng)絡(luò)參數(shù)的調(diào)整。在以下描述的上下文中,損失表示所選樣本176或186是參考樣本而不是合成樣本的置信度。參數(shù)調(diào)整單元180還接收超參數(shù)作為輸入??梢詮挠柧殧?shù)據(jù)集174中選擇參考樣本176,該訓練數(shù)據(jù)集174包括來自現(xiàn)實世界場景的捕獲圖像以用作參考樣本圖像175。生成器184基于先前的訓練和潛在隨機變量182和/或其他輸入來合成樣本186。在一個實施例中,發(fā)生器184包括第一神經(jīng)網(wǎng)絡(luò),并且鑒別器1[0035]在一個實施例中,神經(jīng)網(wǎng)絡(luò)框架170被配置為在生成對抗網(wǎng)絡(luò)(GAN)模式下操作,其中鑒別器178被訓練以識別“真實”參考樣本圖像175,而生成器184被訓練以合成“假”樣本186。在一個實施例中,鑒別器178在樣本176上進行訓練,每個訓練遍歷包括對樣本176進行評估的前向遍歷和使用例如反向傳播技術(shù)對鑒別器178內(nèi)的權(quán)重和/或偏差進行調(diào)整的反向遍歷。此外,生成器184然后訓練以合成可以欺騙鑒別器178的樣本186。每個訓練遍歷包括其中合成樣本186的前向遍歷,以及其中生成器184內(nèi)的權(quán)重和/或偏差被調(diào)整(例如,使用反向傳播)的反向遍歷。在一個實施例中,參數(shù)調(diào)整單元180執(zhí)行反向傳播以計算由給定訓練遍歷產(chǎn)生的新的神經(jīng)網(wǎng)絡(luò)參數(shù)(例如,權(quán)重和/或偏差)。[0036]在對抗訓練的過程中,鑒別器178可以學會更好地一般化(generalize),而生成器184可以學會更好地合成。兩項改進可能分別有用。在某些用例中,例如圖像增強(例如,超分辨率/上采樣、抗混疊、去噪等),可能需要訓練優(yōu)化以克服由生成器184內(nèi)最初訓練的神經(jīng)網(wǎng)絡(luò)G?合成的圖像中的偽像。當神經(jīng)網(wǎng)絡(luò)框架170被配置為執(zhí)行圖1A中描述的微訓練方法110和/或圖2A中描述的方法200時,可以提供這種訓練精細化。[0037]在一個實施例中,神經(jīng)網(wǎng)絡(luò)框架170被配置為以微訓練模式操作,其中樣本圖像175被選擇為專門針對最初訓練的神經(jīng)網(wǎng)絡(luò)G?中的缺陷。在微訓練模式下,生成器184生成樣本186,該樣本186由用戶界面188顯示在顯示設(shè)備上??梢栽谙惹吧傻臉颖九赃咃@示樣本186,并且觀看者可以確定樣本186是否是對先前生成的樣本的改進。此外,用戶界面1889可以在顯示設(shè)備上顯示一組樣本186,并且從觀看者接收指示在微訓練期間是否已經(jīng)充分訓練發(fā)生器184的輸入。在一個實施例中,神經(jīng)網(wǎng)絡(luò)框架170被配置為執(zhí)行圖1A中描述的方法110和圖2A中描述的方法200。神經(jīng)網(wǎng)絡(luò)框架170還可執(zhí)行常規(guī)訓練技術(shù),包括用于GAN訓使用第二組超參數(shù)。[0038]圖2A示出了根據(jù)一個實施例的,用于使用微訓練來改善神經(jīng)網(wǎng)絡(luò)訓練的方法200的流程圖。盡管在處理單元的上下文中描述了方法200,但是方法200也可以由程序、定制電理單元)或能夠執(zhí)行用于評估和訓練神經(jīng)網(wǎng)絡(luò)的操作的任何處理器執(zhí)行。此外,本領(lǐng)域普通技術(shù)人員將理解,執(zhí)行方法200的任何系統(tǒng)都在本公開的實施例的范圍和精神內(nèi)。在一個實施例中,處理單元結(jié)合神經(jīng)網(wǎng)絡(luò)訓練框架和/或神經(jīng)網(wǎng)絡(luò)運行系統(tǒng)的各種操作來執(zhí)行方法200。在某些實施例中,處理單元包括并行處理單元的一個或更多個實例,例如圖3的并行處理單元300。在一個實施例中,圖1C中描述的神經(jīng)網(wǎng)絡(luò)框架170至少部分地在處理單元上實[0039]方法200在步驟201處開始,其中處理單元使用生成器神經(jīng)網(wǎng)絡(luò)合成第一組數(shù)據(jù)。在一個實施例中,生成器神經(jīng)網(wǎng)絡(luò)包括方法110的訓練后的神經(jīng)網(wǎng)絡(luò)。在一個實施例中,合成數(shù)據(jù)包括一個或更多個圖像(例如,視頻幀)??梢愿鶕?jù)任何技術(shù)上可行的技術(shù)來生成圖像,包括本領(lǐng)域已知的用于深度學習超采樣(DLSS)、超分辨率/上采樣和/或抗鋸齒、去噪以及被配置為充當生成器網(wǎng)絡(luò)的神經(jīng)網(wǎng)絡(luò)等的技術(shù)。[0040]在步驟203中,確定是否滿足完成要求??梢詧?zhí)行任何技術(shù)上可行的技術(shù)來確定滿足完成要求。在一個實施例中,將合成的一個或更多個圖像在顯示設(shè)備上呈現(xiàn)給人類觀看者,并且如果觀看者將一個或更多個圖像的質(zhì)量評估為足夠好,則滿足完成要求。例如,諸如用戶界面188的用戶界面可以從觀看者接收指示結(jié)果是可接受的并且因此滿足完成要求的輸入。在一個實施例中,用戶界面在處理單元上執(zhí)行,圖像和用戶界面工具呈現(xiàn)在顯示設(shè)[0041]如果在步驟204中滿足完成要求,則方法200終止。否則,如果不滿足完成要求,則方法200進行到205。為了完成步驟204,處理單元接收滿足完成要求的指示。在一個實施例中,當用戶界面接收到微訓練已產(chǎn)生足夠好的結(jié)果的輸入指示時,滿足完成要求。[0042]在步驟205中,處理單元準備第二訓練數(shù)據(jù)集。在一個實施例中,準備第二訓練數(shù)據(jù)集可以包括通過用戶界面接收輸入以選擇要包括在第二訓練數(shù)據(jù)集中的圖像??梢赃x擇圖像以更好地使訓練數(shù)據(jù)集Ds中包括的目標輸出數(shù)據(jù)的分布與生成器神經(jīng)網(wǎng)絡(luò)的測試需求更好地對準,該訓練數(shù)據(jù)集Ds在由測試數(shù)據(jù)集D?表示的生成器神經(jīng)網(wǎng)絡(luò)的測試需求的生成器神經(jīng)網(wǎng)絡(luò)微訓練期間使用。準備第二訓練數(shù)據(jù)集可以包括但不限于捕獲另外的訓練樣本,該訓練樣本專門針對由觀看者標識的視覺偽像和/或圖像特征,以通過微訓練去除。準備第二訓練數(shù)據(jù)集可以進一步包括但不限于從第一訓練數(shù)據(jù)集中去除可能有錯誤或遺漏的樣本,重新捕獲錯誤的樣本,以及添加/修改/增強第一訓練數(shù)據(jù)集以更緊密地對準具有測試數(shù)據(jù)集的第二訓練數(shù)據(jù)集的訓練分布。然后,方法200繼續(xù)執(zhí)行圖1A的方法110以產(chǎn)生微訓練的生成器網(wǎng)絡(luò)。完成方法110后,方法200進入步驟207。[0043]在步驟207中,處理單元使用微訓練的生成器網(wǎng)絡(luò)來合成第二組數(shù)據(jù)。在一實施例中,合成數(shù)據(jù)包括一個或更多個圖像(例如,視頻幀)。可以根據(jù)任何技術(shù)上可行的技術(shù)來生成圖像,包括本領(lǐng)域已知的用于深度學習超采樣(DLSS)、超分辨率/上采樣和/或抗鋸齒、去噪、被配置為充當生成器網(wǎng)絡(luò)的神經(jīng)網(wǎng)絡(luò)提供的技術(shù)等。[0044]在步驟209中,確定結(jié)果在第一組數(shù)據(jù)和第二組數(shù)據(jù)之間是否得到改善。在一個實施例中,將包括第一組數(shù)據(jù)的圖像與包括第二組數(shù)據(jù)的對應(yīng)圖像在顯示設(shè)備上進行比較,以供人類觀看者使用。觀看者可以評估所顯示圖像的質(zhì)量。例如,可以通過用戶界面從觀看者接收指示結(jié)果得到改善的輸入來確定結(jié)果得到改善。在一個實施例中,用戶界面在處理單元上執(zhí)行,圖像和用戶界面工具呈現(xiàn)在顯示設(shè)備上。[0045]如果在步驟210中改善了結(jié)果,則該方法返回到步驟203。否則,該方法進行到步驟211。在步驟211中,處理單元調(diào)整一個或更多個微訓練參數(shù)。此外,處理單元可以丟棄先前由方法110生成的微訓練神經(jīng)網(wǎng)絡(luò)。調(diào)整一個或更多個微訓練參數(shù)可以包括但不限于將訓練樣本(例如,圖像)添加到第二訓練數(shù)據(jù)集中,從第二訓練數(shù)據(jù)集中去除訓練樣本,并調(diào)整一個或更多個超參數(shù),例如學習率,迭代次數(shù)等。在一個實施例中,觀看者通過用戶界面來執(zhí)行調(diào)整一個或更多個微訓練參數(shù)。在完成步驟211之后,該方法返回到步驟205。[0046]可以執(zhí)行方法步驟203到211的多次遍歷,直到在步驟204中滿足完成要求并且用戶界面接收到微訓練已產(chǎn)生足夠好的結(jié)果的輸入指示。在方法110的每個微訓練期間,都會生成一個后續(xù)的新神經(jīng)網(wǎng)絡(luò)(例如,G?,G?,G?等)。取決于新的神經(jīng)網(wǎng)絡(luò)是否改善結(jié)果,可以保留或丟棄每個新的神經(jīng)網(wǎng)絡(luò)。[0047]在一個實施例中,方法110和/或方法200可以執(zhí)行轉(zhuǎn)移學習以產(chǎn)生針對與初始訓練的神經(jīng)網(wǎng)絡(luò)G?不同的應(yīng)用程序而優(yōu)化的新的神經(jīng)網(wǎng)絡(luò)Gs+n。在另一個實施例中,例如在鑒別器網(wǎng)絡(luò)中,可以執(zhí)行方法110和/或方法200以提高通用性。[0048]更一般地,公開的技術(shù)提供了對現(xiàn)有(例如,預(yù)訓練的)神經(jīng)網(wǎng)絡(luò)的快速精細化訓練,僅使用針對新應(yīng)用程序的小的訓練集的針對新應(yīng)用程序的快速精細化,以及在訓練循環(huán)中在操作員中的循環(huán)機制。[0049]圖2B示出了根據(jù)一個實施例的各種微訓練網(wǎng)絡(luò)的層之間的平均差的曲線圖250。如圖所示,垂直軸252指示從同一父項(即,最初訓練的神經(jīng)網(wǎng)絡(luò)G?)但具有不同的微訓練或由線255、256、257和258表示的微訓練深度產(chǎn)生的各種微訓練的神經(jīng)網(wǎng)絡(luò)(G?,G?等)的層系數(shù)(權(quán)重和偏差)之間的總體差異。水平軸254包含離散的標記,每個標記分別表示特定神經(jīng)網(wǎng)絡(luò)拓撲結(jié)構(gòu)的不同神經(jīng)網(wǎng)絡(luò)層的權(quán)重和偏差。如圖所示,線255指示的層系數(shù)的差異通常大于線258指示的層系數(shù)的差異。此外,與線255關(guān)聯(lián)的神經(jīng)網(wǎng)絡(luò)已經(jīng)過微訓練,以使其比與線258關(guān)聯(lián)的神經(jīng)網(wǎng)絡(luò)更遠離父神經(jīng)網(wǎng)絡(luò)。[0050]如各種微訓練神經(jīng)網(wǎng)絡(luò)的權(quán)重和偏差差異的整體形狀所示,與微訓練相關(guān)的小的迭代步驟和低學習率不會改變微訓練神經(jīng)網(wǎng)絡(luò)的整體計算結(jié)構(gòu)。保留神經(jīng)網(wǎng)絡(luò)之間的計算結(jié)構(gòu)可提供諸如父網(wǎng)絡(luò)與使用微訓練生成的不同網(wǎng)絡(luò)之間的比較和插值之類的操作。例如,可以訓練圖像銳化神經(jīng)網(wǎng)絡(luò)以提高合成的輸出圖像的銳度,但是可以將所得的輸出圖像評估為過度銳化;因而,可以使用父神經(jīng)網(wǎng)絡(luò)和圖像銳化神經(jīng)網(wǎng)絡(luò)之間的權(quán)重的平均值或內(nèi)插來降低銳度。這樣的內(nèi)插步驟僅需要權(quán)重和偏差的內(nèi)插,而無需任何額外的訓練。更一般地,可以在父神經(jīng)網(wǎng)絡(luò)和從父神經(jīng)網(wǎng)絡(luò)產(chǎn)生的微訓練網(wǎng)絡(luò)之間和之中執(zhí)行計算合成。[0051]并行處理架構(gòu)11[0052]圖3示出了根據(jù)至少一個實施例的并行處理單元(“PPU”)300。在一個實施例中,PPU300是在一個或更多個集成電路設(shè)備上實現(xiàn)的多線程處理器。PPU300是被設(shè)計為并行處理許多線程的延遲隱藏架構(gòu)。線程(即,執(zhí)行線程)是被配置為由PPU300執(zhí)行的一組指令的實例。在一個實施例中,PPU300是圖形處理單元(GPU),圖形處理單元配置為實現(xiàn)用于處理三維(3D)圖形數(shù)據(jù)的圖形渲染管道,以便生成用于在顯示設(shè)備(諸如液晶顯示器(LCD)設(shè)備)上顯示的二維(2D)圖像數(shù)據(jù)。在其他實施例中,PPU300用于執(zhí)行通用計算。盡管這里出于說明性目的提供了一個示例性并行處理器,但應(yīng)強烈注意,僅出于說明性目的而提出了這種處理器,并且可以采用任何處理器來對其進行補充和/或替代。[0053]一個或更多個PPU300可以被配置成加速高性能計算(HPC)、數(shù)據(jù)中心和機器學習應(yīng)用程序。PPU300可以被配置成加速許多的深度學習系統(tǒng)和應(yīng)用程序,包括自動駕駛汽車化、實時語言翻譯、在線搜索優(yōu)化以及個性化[0054]如圖3所示,PPU300包括輸入/輸出(I/0)單元305、前端單元315、調(diào)度器單元320、工作分配單元325、集線器330、交叉開關(guān)(Xbar)370、一個或更多個通用處理集群(GPC)350和一個或更多個存儲器分區(qū)單元380.PPU300通過一個或更多個高速NV鏈路310互連連接到主機處理器或其他PPU300.PPU300連接到包括多個存儲器設(shè)備的本地存儲器304。在一個實施例中,本地存儲器包括多個動態(tài)隨機存取存儲器(DRAM)設(shè)備。在DRAM設(shè)備可配置為[0055]NVLink310互連使系統(tǒng)能夠縮放并包括與一個或更多個CPU300組合的一個或多個PPU,支持PPU300和CPU之間的高速緩存一致性,以及CPU主控。數(shù)據(jù)和/或命令可以由NVLink310通過集線器330傳送到PPU300的其他單元或從PPU300的其他單元傳出,PPU300的其他單元例如一個或多個復(fù)制引擎、視頻編碼器、視頻解碼器、電源管理單元等(未明[0056]I/0單元305被配置為通過互連302從主機處理器(未示出)發(fā)送和接收通信(例如,命令、數(shù)據(jù))。I/0單元305直接通過互連302或通過一個或更多個中間設(shè)備(例如存儲器橋)與主機處理器通信。在一個實施例中,I/0單元305可以經(jīng)由互連302與一個或更多個其他處理器(例如一個或更多個PPU300)通信。在一個實施例中,I/0單元305實現(xiàn)外圍組件互連快速(PCIe)接口,用于通過PCIe總線進行通信并且互連302是PCIe總線。在可選的實施例中,I/0單元305實現(xiàn)用于與外部設(shè)備通信的任何其他眾所周知類型的接口。[0057]I/0單元305對經(jīng)由互連302接收的分組進行解碼。在一個實施例中,分組表示被配置為使PPU300執(zhí)行各種操作的命令。I/0單元305如命令所指定的那樣將解碼的命令發(fā)送到PPU300的各種其他單元。例如,一些命令被發(fā)送到前端單元315。其他命令被發(fā)送到集線器330或PPU300的其他單元,例如一個或更多個復(fù)制引擎、視頻編碼器、視頻解碼器、電源管理單元等(未明確示出)。換句話說,I/0單元305被配置為在PPU300的各種邏輯單元之間路由通信。[0058]在一個實施例中,由主機處理器執(zhí)行的程序在緩沖區(qū)中對命令流進行編碼,該緩沖區(qū)將工作負載提供給PPU300以進行處理。工作負載包括指令和將由那些指令處理的數(shù)據(jù)。緩沖區(qū)是可由主機處理器和PPU300兩者訪問(例如,讀/寫)的存儲器中的區(qū)域。例如,I/0單元305可以被配置為經(jīng)由通過互連302傳送的存儲器請求來訪問連接到互連302的系[0059]前端單元315耦合到調(diào)度器單元320,該調(diào)度器單元320配置各種GPC350以處理由[0060]調(diào)度器單元320耦合到工作分配單元325,該工作分配單元325配置為分派任務(wù)以包括多個時隙(例如32個時隙),這些時隙包含分配給要由特定的GPC350處理的任務(wù)?;钴S不同的GPC350或存儲在存儲器304中。結(jié)果可以通過存儲器分區(qū)單元380寫到存儲器304中,存儲器分區(qū)單元380實現(xiàn)了用于向存儲器304寫入數(shù)據(jù)或從存儲器304讀取數(shù)據(jù)的存儲程接口(API),該應(yīng)用程序編程接口使在主機處理器上執(zhí)行的一個或更多個應(yīng)用程序能夠驅(qū)動器內(nèi)核將任務(wù)輸出至由PPU300處理的一個或更多個流。每個任務(wù)包括一個或更多個350包括用于處理任務(wù)的多個硬件單元。在一個實施例中,每個GPC350包括管線管理器元(MMU)490以及一個或更多個更多的數(shù)據(jù)處理集群(DPC)420.將理解,圖4A的GPC350可以包括代替圖4A所示的單元或除圖4A所示的單元之外的其他硬件單元。[0065]在一實施例中,GPC350的操作由管線管理器410控制。管線管理器410管理一個或更多個DPC420的配置,以處理分配給GPC350的任務(wù)。在一個實施例中,管理器410可以將一個或多個DPC420中的至少一個配置為實現(xiàn)圖形渲染管線的至少一部分。例如,DPC420可以被配置為在可編程流式多處理器(SM)440上執(zhí)行頂點著色器程序。管線管理器410還可以被配置為將從工作分配單元325接收的分組路由到GPC350內(nèi)部的適當邏輯單元。例如,一些分組可以被路由到PROP415和/或光柵引擎425中的固定功能硬件單元,而其他分組可以被路由到DPC420以由圖元引擎435或SM440處理。在一個實施例中,管線管理器410可以配置一個或多個DPC420中的至少一個以實現(xiàn)神經(jīng)網(wǎng)絡(luò)模型和/或計算管線。[0066]PROP單元415被配置為將由光柵引擎425和DPC420生成的數(shù)據(jù)路由到光柵操作組織像素數(shù)據(jù)、執(zhí)行地址轉(zhuǎn)換等。[0067]光柵引擎425包括多個固定功能硬件單元,其被配置為執(zhí)行各種光柵操作。在一個實施例中,光柵引擎425包括設(shè)置引擎、粗略光柵引擎、和圖塊合并引擎。設(shè)置引擎接收轉(zhuǎn)換后的頂點,并生成與這些頂點定義的幾何圖元關(guān)聯(lián)的平面方程。平面方程式被傳送到粗略光柵引擎以生成圖元的覆蓋率信息(例如,圖塊的x,y覆蓋掩碼)。粗略光柵引擎的輸出將傳送到剔除引擎,在剔除引擎中與z測試失敗的圖元相關(guān)聯(lián)的片段將被剔除,并傳輸?shù)郊羟幸?,在剪切引擎中將位于視錐范圍之外的片段進行剪切。那些經(jīng)過裁剪和剔除的片段可以傳遞到精細光柵引擎,以基于設(shè)置引擎生成的平面方程式生成像素片段的屬性。光柵引擎425的輸出包括例如將由在DPC420內(nèi)實現(xiàn)的片段著色器處理的片段。[0068]GPC350中包括的每個DPC420包括M-管道控制器(MPC)430、圖元引擎435和一個或更多個SM440.MPC430控制DPC420的操作,將從管線管理器410接收的分組路由到DPC420中的適當單元。例如,可以將與頂點關(guān)聯(lián)的分組路由到圖元引擎435,圖元引擎435被配置為從存儲器304獲取與該頂點關(guān)聯(lián)的頂點屬性。相比之下,可以將具有著色器程序相關(guān)聯(lián)的分組傳送到SM440。[0069]SM440包括被配置為處理由多個線程代表的任務(wù)的可編程流處理器。每個SM440是多線程的,并且被配置為同時執(zhí)行來自特定線程組的多個線程(例如32個線程)。在一個程被配置為基于同一組指令來處理不同的數(shù)據(jù)集。線程組中的所有線程都執(zhí)行相同的指被配置為基于同一組指令來處理不同的數(shù)據(jù)集,但是線程組中的單個線程在執(zhí)行過程中允許發(fā)散。在一個實施例中,為每個線程束維護程序計數(shù)器、調(diào)用棧和執(zhí)行狀態(tài),從而當線程束內(nèi)的線程發(fā)散時,實現(xiàn)線程束和線程束內(nèi)的串行執(zhí)行之間的并發(fā)。在另一個實施例中,為每個單獨的線程維護程序計數(shù)器、調(diào)用棧和執(zhí)行狀態(tài),從而使所有線程之間,線程束內(nèi)和線程束之間的平等并發(fā)。當為每個單獨的線程維持執(zhí)行狀態(tài)時,可以收斂并并行執(zhí)行執(zhí)行相址到物理地址的轉(zhuǎn)換,存儲器保護以及存儲器請求的仲裁。在一個實施例中,MMU490提供一個或更多個轉(zhuǎn)換后備緩沖區(qū)(TLB),用于將虛擬地址轉(zhuǎn)換為存儲器304中的物理地址。[0071]圖4B示出了根據(jù)一個實施例的圖3的PPU300的存儲器分區(qū)單元380。如圖4B所示,存儲器分區(qū)單元380包括光柵操作(ROP)單元450、二級(L2)高速緩存460和存儲器接口470。存儲器接口470耦合到存儲器304.存儲器接口470可以實現(xiàn)32、64、128、1024位數(shù)據(jù)總線等用于高速數(shù)據(jù)傳輸。在一個實施例中,PPU300包括U個存儲器接口470,每對存儲器分區(qū)單元380一個存儲器接口470,其中每對存儲器分區(qū)單元380連接到存儲器304的相應(yīng)存儲器設(shè)本5,同步動態(tài)隨機存取存儲器或其他類型的持久性存儲。系統(tǒng)可觀的功率和面積節(jié)省。在一個實施例中,每個HBM2堆棧包括四個存儲器管芯,并且Y等于4,而HBM2堆棧每個管芯包括兩個128位通道,總共8個通道和1024位的數(shù)據(jù)總線寬度。[0073]在一個實施例中,存儲器304支持單錯誤校正雙錯誤檢測(SECDED)錯誤校正碼 300處理非常大的數(shù)據(jù)集和/或長時間運行應(yīng)用程序的大規(guī)模集群計算環(huán)境中,可靠性尤其重要。[0074]在一個實施例中,PPU300實現(xiàn)多級存儲器層次結(jié)構(gòu)。在一個實施例中,存儲器分區(qū)單元380支持統(tǒng)一存儲器以為CPU和PPU300存儲器提供單個統(tǒng)一虛擬地址空間,從而實現(xiàn)虛擬存儲器系統(tǒng)之間的數(shù)據(jù)共享。在一個實施例中,跟蹤PPU300對位于其他處理器上的存儲器的訪問頻率,以確保將存儲器頁面移動到更頻繁地訪問頁面的PPU300的物理存儲[0075]在一個實施例中,復(fù)制引擎在多個PPU300之間或PPU300與CPU之間傳輸數(shù)據(jù)。復(fù)制引擎可以為未映射到頁表中的地址生成頁面錯誤。然后,存儲器分區(qū)單元380可以服務(wù)于頁面錯誤,將地址映射到頁面表中,之后復(fù)制引擎可以執(zhí)行傳輸。在常規(guī)系統(tǒng)中,將存儲器固定(例如,不可分頁)以用于多個處理器之間的多個復(fù)制引擎操作,從而實質(zhì)上減少了可用存儲器。發(fā)生硬件頁面故障時,可以將地址傳遞到復(fù)制引擎,而不必擔心內(nèi)存頁面是否駐[0076]來自存儲器304或其他系統(tǒng)存儲器的數(shù)據(jù)可以由存儲器分區(qū)單元380獲取并存儲在L2高速緩存460中,該L2高速緩存460位于芯片上并且在各個GPC350之間共享。如圖所示,每個存儲器分區(qū)單元380包括與對應(yīng)的存儲器304相關(guān)聯(lián)的L2高速緩存460的一部分。然后,可以在GPC350內(nèi)的各個單元中實現(xiàn)低級高速緩存。例如,每個SM440可以實現(xiàn)一級(L1)高速緩存。L1高速緩存是專用于特定SM440的專用存儲器。來自L2高速緩存460的數(shù)據(jù)可以被提取并存儲在每個L1高速緩存中,以在SM440的功能單元中進行處理。L2高速緩存460耦合到存儲器接口470和XBar370。[0077]ROP單元450執(zhí)行與像素顏色有關(guān)的圖形光柵操作,諸如顏色壓縮、像素混合等。ROP單元450還與光柵引擎425一起實施深度測試,從光柵引擎425的剔除引擎接收與像素片段相關(guān)聯(lián)的樣本位置的深度。為與片段相關(guān)的樣本位置針對深度緩沖區(qū)中的對應(yīng)深度來測試深度。如果片段通過了針對樣本位置的深度測試,則ROP單元450更新深度緩沖區(qū),并將深度測試的結(jié)果發(fā)送至光柵引擎425.將意識到,存儲器分區(qū)單元380的數(shù)量可以不同于GPC350的數(shù)目,因此,每個ROP單元450可以耦合到每個GPC350.ROP單元450跟蹤從不同GPC350接收到的數(shù)據(jù)包,并確定將ROP單元450生成的結(jié)果通過Xbar370路由到哪個GPC350。盡管在圖4B中ROP單元450包括在存儲器分區(qū)單元380內(nèi),但是在其他實施例中,可以在存儲器分區(qū)單元380的外部。例如,ROP單元450可以駐留在GPC350或其他單元中。[0078]圖5A示出了根據(jù)一個實施例的圖4A的流式多處理器440.如圖5A所示,SM440包括指令高速緩存505、一個或更多個調(diào)度器單元510、寄存器文件520、一個或更多個處理器核心550、一個或更多個特殊功能單元(SFU)552、一個或多個負載/存儲單元(LSU)554、互連網(wǎng)[0079]如上所述,工作分配單元325分派要在PPU300的GPC350上執(zhí)行的任務(wù)。將任務(wù)分配給GPC350內(nèi)的特定DPC420,如果該任務(wù)與著色器程序相關(guān)聯(lián),則任務(wù)可以被分配給SM440。調(diào)度器單元510從工作分配單元325接收任務(wù),并且管理分配給SM440的一個或更多個線程塊的指令調(diào)度。調(diào)度器單元510調(diào)度線程塊以作為并行線程的線程束執(zhí)行,其中每個線程塊至少分配一個線程束。在一個實施例中,每個線程束執(zhí)行32個線程。調(diào)度器單元510可以管理多個不同的線程塊,將線程束分配給不同的線程塊,然后在每個時鐘周期內(nèi)將來[0080]協(xié)作組是用于組織通信線程的組的編程模型,其允許開發(fā)人員表達線程正在通信執(zhí)行并行算法。傳統(tǒng)編程模型提供了用于同步協(xié)作線程的單個簡單結(jié)構(gòu):跨越線程塊的所有線程的障礙(例如,syncthreads()函數(shù))。但是,程序員通常希望以小于線程塊粒度的大小來定義線程組,并在定義的組內(nèi)進行同步,以實現(xiàn)更高的性能、設(shè)計靈活性以及以集體范圍內(nèi)的功能接口的形式來復(fù)用軟件。[0081]協(xié)作組使程序員能夠在子塊(例如,小至單個線程)和多塊粒度上明確地定義線程組,并執(zhí)行集體操作,例如對協(xié)作組中的線程進行同步。編程模型支持跨軟件邊界的清潔組合(cleancomposition),因此庫和實用程序功能可以在其本地上下文中安全地同步,而不必對收斂進行假設(shè)。協(xié)作組原語可實現(xiàn)新的合作并行模式,包括生產(chǎn)者-消費者并行、伺機并行以及整個線程塊網(wǎng)格上的全局同步。[0082]分派單元515被配置為將指令發(fā)送到一個或更多個功能單元。在該實施例中,調(diào)度器單元510包括兩個調(diào)度單元515,其使得能夠在每個時鐘周期內(nèi)調(diào)度來自同一線程束的兩個不同指令。在替代實施例中,每個調(diào)度器單元510可以包括單個調(diào)度單元515或附加調(diào)度[0083]每個SM440包括寄存器文件520,該寄存器文件520為SM440的功能單元提供一組寄存器。在一個實施例中,寄存器文件520被劃分在每個功能單元之間,使得每個功能單元被分配寄存器文件520的專用部分。在另一個實施例中,寄存器文件520在由SM440執(zhí)行的不同線程之間劃分。寄存器文件520為連接到功能單元的數(shù)據(jù)路徑的操作數(shù)提供臨時存儲。[0084]每個SM440包括L個處理核心550。在一個實施例中,SM440包括大量(例如128個[0086]在一個實施例中,矩陣乘法輸入A和B是16位浮點矩陣,理單元被配置為從存儲器304加載紋理圖(例如,紋理像素的2D陣列)并且對紋理圖進行采520之間的加載和存儲操作。每個SM440包括將每個功能單元連接到寄存器文件520和將任何寄存器,并將LSU554連接到共享存儲器/L1高速緩存570中的寄存器文件和存儲器/L1高速緩存570中的集成使共享存儲器/L1高速緩存570能夠用作用于流傳輸數(shù)據(jù)的高PPU300與一個或更多個其他設(shè)備(例如附加的PPU3是集成在母板的芯片組中的圖形處理單元(有多個GPU和CPU的系統(tǒng)被用于各種行業(yè)。具有數(shù)十至數(shù)千個計算節(jié)點的高性能GPU加速系之間的高速通信鏈路。盡管特定數(shù)量的NVLink31PPU300和CPU530的連接數(shù)可以變化。開關(guān)510在互連302和CPU530之間進行交互。一個實施例中,開關(guān)510支持兩個或更多在各種不同的連接和/或鏈接之間進行交互的協(xié)304和互連302可以位于單個半導體平臺上以形成并行處理模塊525。在又一實施例(未示一個或更多個通信鏈路。NVLink310高速通信鏈路中的一個或更多個可使用與NVLink310通性的多芯片模塊,其模擬芯片上的操作并相對于利用傳統(tǒng)總線實現(xiàn)方式做出了實質(zhì)性的改進。當然,根據(jù)用戶的需求,各種電路或設(shè)備也可以分開放置或以半導體平臺的各種組合放置??商娲?,并行處理模塊525可以被實現(xiàn)為電路板基板,并且每個PPU300和/或存儲器304可以是封裝的設(shè)備。在一個實施例中,CPU530,開關(guān)510和并行處理模塊525位于單個半導體平臺上。[0099]在一個實施例中,每個NVLink310的信令速率是20至25Gigabits/s,并且每個PPU300包括六個NVLink310接口(如圖5B所示,每個PPU300包括五個NVLink310接口)。每個NVLink310在每個方向上提供25Gigabytes/s的數(shù)據(jù)傳輸速率,其中六個鏈接提供300Gigabytes/s。當CPU530還包括一個或更多個NVLink310接口時,NVLinks310可以專[0100]在一個實施例中,NVLink310允許從CPU530到每個PPU300存儲器304的直接加載/存儲/原子訪問。在一個實施例中,NVLink310支持一致性操作,從而允許將從存儲器304讀取的數(shù)據(jù)存儲在CPU530的高速緩存層次結(jié)構(gòu)中,其減少了對CPU530的高速緩存訪直接訪問CPU530內(nèi)的頁表。NVLink310中的一個或更多個也可以被配置為以低功率模式[0101]圖5C示出了示例性系統(tǒng)565,在其中可以實現(xiàn)各種先前實施例的各種架構(gòu)和/或功能。示例性系統(tǒng)565可以被配置為實現(xiàn)圖1A所示的方法110和圖2A所示的方法200。[0102]如圖所示,提供了系統(tǒng)565,該系統(tǒng)565包括至少一個連接至通信總線575的中央處理單元530。通信總線575可使用任何合適的協(xié)議來實現(xiàn),例如PCI(外圍組件互連),PCI-Express,AGP(加速圖形端口),HyperTransport(超傳輸)或任何其他總線或點對點通信協(xié)議。系統(tǒng)565還包括主存儲器540??刂七壿?軟件)和數(shù)據(jù)存儲在主存儲器540中,其可以采[0103]系統(tǒng)565還包括輸入設(shè)備560、并行處理系統(tǒng)525和顯示設(shè)備545,例如傳統(tǒng)的CRT一個甚至可以位于單個半導體平臺上以形成系統(tǒng)565?;蛘?,根據(jù)用戶的需求,各種模塊也可以分別位于半導體平臺中,或者以半導體平臺的各種組合來定位。[0104]此外,系統(tǒng)565可以通過網(wǎng)絡(luò)接口535耦合到網(wǎng)絡(luò)(例如,電信網(wǎng)絡(luò)、局域網(wǎng)[0105]系統(tǒng)565還可以包括輔助存儲器(未示出)。輔助存儲器610包括例如硬盤驅(qū)動器和/或可移動存儲驅(qū)動器,其代表軟盤驅(qū)動器、磁帶驅(qū)動器、光盤驅(qū)動器、數(shù)字多功能盤(DVD)驅(qū)動器、記錄設(shè)備、通用串行總線(USB)閃存??梢苿哟鎯卧x取和/或?qū)懭肟梢苿哟鎯卧?。[0106]計算機程序或計算機控制邏輯算法可以存儲在主存儲器540和/或輔助存儲器中。這樣的計算機程序在被執(zhí)行時使系統(tǒng)565能夠執(zhí)行各種功能。存儲器540、存儲器和/或任何其他存儲器是計算機可讀介質(zhì)的可能示例。[0107]各個先前附圖的架構(gòu)和/或功能可以在通用計算機系統(tǒng)、電路板系統(tǒng)、專用于娛樂目的的游戲控制臺系統(tǒng)、專用系統(tǒng)和/或其他所需的系統(tǒng)的上下文中實現(xiàn)。例如,系統(tǒng)565可[0108]盡管上面已經(jīng)描述了各種實施例,但是應(yīng)該理解,它們僅是示例性的,而非限制性的。因此,優(yōu)選實施例的廣度和范圍不應(yīng)受到任何上述示例性實施例的限制,而應(yīng)僅根據(jù)所附權(quán)利要求及其等同物來限定。[0109]機器學習[0110]在諸如PPU300之類的處理器上開發(fā)的深度神經(jīng)網(wǎng)絡(luò)(DNN)已用于各種用例,從無人駕駛汽車到更快的藥物開發(fā),從在線圖像數(shù)據(jù)庫中的自動圖像字幕到智能實時語言視頻聊天應(yīng)用程序中的翻譯。深度學習是一種模擬人腦的神經(jīng)學習過程,不斷學習,不斷變得更聰明并隨著時間推移更快地提供更準確結(jié)果的技術(shù)。最初,成人會教孩子正確識別和分類各種形狀,最終無需任何指導即可識別形狀。類似地,深度學習或神經(jīng)學習系統(tǒng)需要在對象識別和分類方面進行訓練,因為它在識別基本對象,被遮擋的對象等方面變得更聰明,更有[0111]在最簡單的水平上,人腦中的神經(jīng)元查看接收到的各種輸入,將重要性級別分配給這些輸入中的每一個,并將輸出傳遞給其他神經(jīng)元以對其進行操作。人工神經(jīng)元或感知器是神經(jīng)網(wǎng)絡(luò)的最基本模型。在一個示例中,感知器可以接收表示該感知器被訓練以識別和分類的對象的各種特征的一個或更多個輸入,并且基于該特征在定義對象的形狀的重要性中為這些特征中的每一個分配一定的權(quán)重。[0112]深度神經(jīng)網(wǎng)絡(luò)(DNN)模型包括許多連接節(jié)點的多層(例如,感知器、玻爾茲曼機器、徑向基函數(shù)、卷積層等),可以用大量輸入數(shù)據(jù)對其進行訓練以快速解決高精度復(fù)雜問題。在一個示例中,DNN模型的第一層將汽車的輸入圖像分解為各個部分,并尋找諸如線條和角度之類的基本圖案。第二層組裝線以尋找更高級別的圖案,例如車輪、擋風玻璃和后視鏡。下一層標識車輛的類型,最后幾層為輸入圖像生成標簽,識別特定汽車品牌的模型。[0113]一旦訓練了DNN,就可以部署DNN并將其用于在稱為推理的過程中以識別和分類對象或模型。推理的示例(DNN從給定輸入中提取有用信息的過程)包括識別存入ATM機的支票上的手寫數(shù)字,識別照片中朋友的圖像,向超過五千萬用戶提供電影推薦,識別和分類不同類型無人駕駛汽車中的汽車、行人和道路危險,或者實時翻譯人類語音。[0114]在訓練期間,數(shù)據(jù)在前向傳播階段流經(jīng)DNN,直到產(chǎn)生指示對應(yīng)于輸入的標簽的預(yù)測為止。如果神經(jīng)網(wǎng)絡(luò)未正確標記輸入,則將分析正確標記和預(yù)測
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 深圳證券交易所及其下屬單位2026年備考題庫技術(shù)人員招聘備考題庫附答案詳解
- 重慶市秀山自治縣事業(yè)單位2025年“綠色通道”引進高層次人才6名備考題庫含答案詳解
- 2026年松溪縣“校園行”醫(yī)療緊缺急需專業(yè)技術(shù)人才招聘備考題庫及一套答案詳解
- 2025年上海科技大學綜合辦公室招聘紀檢主管1名備考題庫及一套答案詳解
- 2025年鄭州大學生態(tài)與環(huán)境學院面向社會公開招聘非事業(yè)編制(勞務(wù)派遣)工作人員備考題庫及答案詳解1套
- 宜都市2026年度“招才興業(yè)”事業(yè)單位急需緊缺人才引進公開招聘28人備考題庫及一套完整答案詳解
- 2025年498人國企招聘備考題庫有答案詳解
- 2025年維西縣人民醫(yī)院勞務(wù)派遣人員招聘備考題庫帶答案詳解
- 1-Terpineol-生命科學試劑-MCE
- 廣西旅發(fā)大健康產(chǎn)業(yè)集團有限公司2025年12月招聘備考題庫及參考答案詳解一套
- 疾控中心崗位管理辦法
- PLC控制技術(shù)(三菱FX3U)試題庫及答案
- 英文版合同委托付款協(xié)議
- 維保項目投標文件終版
- 重慶長壽縣2025年上半年公開招聘城市協(xié)管員試題含答案分析
- 軍隊被裝管理辦法
- 文獻檢索課件教學文案
- 2025臨時設(shè)施搭建工程承包合同范本
- 2025年的離婚協(xié)議書模板
- 《PLC虛擬仿真實驗室(FACTORY IO)教程》課件 第四章-西門子S7-1200編程基礎(chǔ) 3-18
- 2025年綜合類-衛(wèi)生系統(tǒng)招聘考試-護士招聘考試歷年真題摘選帶答案(5卷單選題100題)
評論
0/150
提交評論