本發(fā)明專利技術(shù)提供了一種定位芯片運(yùn)行錯(cuò)誤的方法及裝置,其中,定位芯片運(yùn)行錯(cuò)誤的方法包括:在開(kāi)發(fā)板生成神經(jīng)網(wǎng)絡(luò)模型;通過(guò)開(kāi)發(fā)板上的芯片運(yùn)行的第一程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第一測(cè)試模型,在第一程序運(yùn)行第一測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第一運(yùn)行日志,通過(guò)利用開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第二測(cè)試模型,并且在第二程序運(yùn)行第二測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第二運(yùn)行日志;以及根據(jù)第一運(yùn)行日志和第二運(yùn)行日志,定位芯片運(yùn)行的第一測(cè)試模型的錯(cuò)誤,能夠高效率、高精度、自動(dòng)化的定位芯片運(yùn)行錯(cuò)誤的原因,大大減小開(kāi)發(fā)周期。
【技術(shù)實(shí)現(xiàn)步驟摘要】
定位芯片運(yùn)行錯(cuò)誤的方法及裝置
本專利技術(shù)涉及神經(jīng)網(wǎng)絡(luò)開(kāi)發(fā)
,具體涉及一種自動(dòng)快速定位芯片運(yùn)行錯(cuò)誤的方法及裝置。
技術(shù)介紹
人工神經(jīng)網(wǎng)絡(luò)是由大量的、簡(jiǎn)單的處理單元(稱為神經(jīng)元)廣泛地互相連接而形成的復(fù)雜網(wǎng)絡(luò)系統(tǒng),它反映了人腦功能的許多基本特征,是一個(gè)高度復(fù)雜的非線性動(dòng)力學(xué)習(xí)系統(tǒng)。神經(jīng)網(wǎng)絡(luò)具有大規(guī)模并行、分布式存儲(chǔ)和處理、自組織、自適應(yīng)和自學(xué)能力,特別適合處理需要同時(shí)考慮許多因素和條件的、不精確和模糊的信息處理問(wèn)題。神經(jīng)網(wǎng)絡(luò)在系統(tǒng)辨別、模式識(shí)別、智能控制等領(lǐng)域有著廣泛而吸引人的前景,是目前最為火熱的研究方向-深度學(xué)習(xí)的基礎(chǔ)。但是,開(kāi)發(fā)神經(jīng)網(wǎng)絡(luò)時(shí),芯片解析神經(jīng)網(wǎng)絡(luò)模型的參數(shù)時(shí)出現(xiàn)錯(cuò)誤往往導(dǎo)致芯片運(yùn)行錯(cuò)誤,此時(shí),開(kāi)發(fā)者需要逐一檢查神經(jīng)網(wǎng)絡(luò)模型的所有解析參數(shù),以確定錯(cuò)誤層及錯(cuò)誤參數(shù)的位置,進(jìn)而消除錯(cuò)誤,工作量大,花費(fèi)開(kāi)發(fā)者大量時(shí)間。
技術(shù)實(shí)現(xiàn)思路
有鑒于此,本專利技術(shù)實(shí)施例提供了一種定位芯片運(yùn)行錯(cuò)誤的方法及裝置,能夠高效率、高精度、自動(dòng)化的定位芯片運(yùn)行錯(cuò)誤的原因,大大減小開(kāi)發(fā)周期。根據(jù)本專利技術(shù)實(shí)施例的第一方面,提供一種定位芯片運(yùn)行錯(cuò)誤的方法,包括:在開(kāi)發(fā)板生成神經(jīng)網(wǎng)絡(luò)模型;通過(guò)開(kāi)發(fā)板上的芯片運(yùn)行的第一程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第一測(cè)試模型,在第一程序運(yùn)行第一測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第一運(yùn)行日志,通過(guò)利用開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第二測(cè)試模型,并且在第二程序運(yùn)行第二測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第二運(yùn)行日志;根據(jù)第一運(yùn)行日志和第二運(yùn)行日志,定位芯片運(yùn)行的第一測(cè)試模型的錯(cuò)誤。在本專利技術(shù)的一個(gè)實(shí)施例中,上述通過(guò)開(kāi)發(fā)板上的芯片運(yùn)行的第一程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第一測(cè)試模型,包括:通過(guò)開(kāi)發(fā)板上的芯片運(yùn)行的第一程序解析第一測(cè)試模型,得到第一測(cè)試模型的參數(shù),其中,上述通過(guò)利用開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第二測(cè)試模型,包括:通過(guò)利用開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序解析第二測(cè)試模型,得到第二測(cè)試模型的參數(shù)。在本專利技術(shù)的一個(gè)實(shí)施例中,上述第一運(yùn)行日志和第二運(yùn)行日志分別包括第一測(cè)試模型和第二測(cè)試模型的每一層的運(yùn)行結(jié)果,其中,上述根據(jù)第一運(yùn)行日志和第二運(yùn)行日志,定位芯片運(yùn)行的第一測(cè)試模型的錯(cuò)誤,包括:通過(guò)比較第一測(cè)試模型和第二測(cè)試模型的每一層的運(yùn)行結(jié)果,定位第一測(cè)試模型的出錯(cuò)層。在本專利技術(shù)的一個(gè)實(shí)施例中,上述第一運(yùn)行日志和第二運(yùn)行日志分別包括第一測(cè)試模型和第二測(cè)試模型的每一層的參數(shù),其中,該定位芯片運(yùn)行錯(cuò)誤的方法還包括:通過(guò)比較第一測(cè)試模型和第二測(cè)試模型的出錯(cuò)層的參數(shù),定位第一測(cè)試模型的出錯(cuò)層的出錯(cuò)參數(shù)。在本專利技術(shù)的一個(gè)實(shí)施例中,上述第一運(yùn)行日志和第二運(yùn)行日志分別包括第一測(cè)試模型和第二測(cè)試模型的每一層的參數(shù),其中,上述在開(kāi)發(fā)板生成神經(jīng)網(wǎng)絡(luò)模型,包括:在開(kāi)發(fā)板上將原始神經(jīng)網(wǎng)絡(luò)模型轉(zhuǎn)換成神經(jīng)網(wǎng)絡(luò)模型,其中該定位芯片運(yùn)行錯(cuò)誤的方法還包括:在開(kāi)發(fā)板上將原始神經(jīng)網(wǎng)絡(luò)模型轉(zhuǎn)換成神經(jīng)網(wǎng)絡(luò)模型時(shí),生成日志參數(shù)文件,該日志參數(shù)文件包括神經(jīng)網(wǎng)絡(luò)模型的每個(gè)層的參數(shù);其中,上述根據(jù)第一運(yùn)行日志和第二運(yùn)行日志,定位芯片運(yùn)行的第一測(cè)試模型的錯(cuò)誤,包括:通過(guò)比較第一測(cè)試模型的出錯(cuò)層的參數(shù)與日志參數(shù)文件中與出錯(cuò)層對(duì)應(yīng)的層的參數(shù),定位第一測(cè)試模型的出錯(cuò)層的出錯(cuò)參數(shù)。在本專利技術(shù)的一個(gè)實(shí)施例中,該定位芯片運(yùn)行錯(cuò)誤的方法還包括:通過(guò)比較第一測(cè)試模型的出錯(cuò)層的參數(shù)與日志參數(shù)文件中與出錯(cuò)層對(duì)應(yīng)的層的參數(shù),確定出錯(cuò)參數(shù)對(duì)應(yīng)的正確參數(shù)。在本專利技術(shù)的一個(gè)實(shí)施例中,上述參數(shù)包括神經(jīng)網(wǎng)絡(luò)模型的結(jié)構(gòu)、權(quán)重、偏置和損失函數(shù)中的至少一種。在本專利技術(shù)的一個(gè)實(shí)施例中,上述開(kāi)發(fā)板包括神經(jīng)網(wǎng)絡(luò)處理器NPU開(kāi)發(fā)板,芯片包括深度學(xué)習(xí)芯片,第一程序包括嵌入式的軟件開(kāi)發(fā)工具包SDK可執(zhí)行程序,第二程序包括在嵌入式環(huán)境下運(yùn)行的仿真程序。根據(jù)本專利技術(shù)實(shí)施例的第二方面,提供一種定位芯片運(yùn)行錯(cuò)誤的裝置,包括:第一生成模塊,用于在開(kāi)發(fā)板生成神經(jīng)網(wǎng)絡(luò)模型;第二生成模塊,用于通過(guò)開(kāi)發(fā)板上的芯片運(yùn)行的第一程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第一測(cè)試模型,在第一程序運(yùn)行第一測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第一運(yùn)行日志,通過(guò)利用開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第二測(cè)試模型,并且在第二程序運(yùn)行第二測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第二運(yùn)行日志;以及定位模塊,用于根據(jù)第一運(yùn)行日志和第二運(yùn)行日志,定位芯片運(yùn)行的第一測(cè)試模型的錯(cuò)誤。根據(jù)本專利技術(shù)實(shí)施例的第三方面,提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)可執(zhí)行指令,可執(zhí)行指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上所述的定位芯片運(yùn)行錯(cuò)誤的方法。根據(jù)本專利技術(shù)實(shí)施例提供的技術(shù)方案,分別通過(guò)開(kāi)發(fā)板上的芯片運(yùn)行的第一程序和利用開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序加載神經(jīng)網(wǎng)絡(luò)模型,運(yùn)行該神經(jīng)網(wǎng)絡(luò)模型分別得到第一運(yùn)行日志和第二運(yùn)行日志,并根據(jù)第一運(yùn)行日志和第二運(yùn)行日志的比較結(jié)果定位芯片運(yùn)行的模型的錯(cuò)誤,可以高效率、高精度、自動(dòng)化的確定芯片運(yùn)行錯(cuò)誤的原因,不必逐一檢查芯片運(yùn)行的神經(jīng)網(wǎng)絡(luò)模型的所有參數(shù),便于開(kāi)發(fā)者節(jié)約大量時(shí)間,減小開(kāi)發(fā)周期。附圖說(shuō)明為了更清楚地說(shuō)明本專利技術(shù)實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本專利技術(shù)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1所示為本專利技術(shù)一實(shí)施例提供的定位芯片運(yùn)行錯(cuò)誤的方法的流程示意圖。圖2所示為本專利技術(shù)另一實(shí)施例提供的定位芯片運(yùn)行錯(cuò)誤的方法的流程示意圖。圖3所示為本專利技術(shù)一實(shí)施例提供的定位芯片運(yùn)行錯(cuò)誤的裝置的框圖。圖4所示為本專利技術(shù)另一實(shí)施例提供的定位芯片運(yùn)行錯(cuò)誤的裝置的框圖。具體實(shí)施方式下面將結(jié)合本專利技術(shù)實(shí)施例中的附圖,對(duì)本專利技術(shù)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本專利技術(shù)一部分實(shí)施例,而不是全部的實(shí)施例。基于本專利技術(shù)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本專利技術(shù)保護(hù)的范圍。圖1所示為本專利技術(shù)一實(shí)施例提供的定位芯片運(yùn)行錯(cuò)誤的方法的流程示意圖。例如,該方法可以由開(kāi)發(fā)板執(zhí)行。如圖1所示,該方法包括如下內(nèi)容。S110:在開(kāi)發(fā)板生成神經(jīng)網(wǎng)絡(luò)模型。應(yīng)當(dāng)理解,神經(jīng)網(wǎng)絡(luò)模型可以是由開(kāi)發(fā)人員直接在開(kāi)發(fā)板生成的神經(jīng)網(wǎng)絡(luò)模型,也可以是在開(kāi)發(fā)板上對(duì)在其它設(shè)備上生成的原始神經(jīng)網(wǎng)絡(luò)模型進(jìn)行模型轉(zhuǎn)換生成的神經(jīng)網(wǎng)絡(luò)模型,本專利技術(shù)對(duì)此不作限定。例如,可以將在GPU上訓(xùn)練的caffe模型轉(zhuǎn)換成開(kāi)發(fā)板上的NPU芯片的神經(jīng)網(wǎng)絡(luò)模型。另外,本專利技術(shù)對(duì)神經(jīng)網(wǎng)絡(luò)模型的具體類型不作限定,例如,神經(jīng)網(wǎng)絡(luò)模型可以是卷積神經(jīng)網(wǎng)絡(luò)模型,也可以是循環(huán)神經(jīng)網(wǎng)絡(luò)模型、深度神經(jīng)網(wǎng)絡(luò)模型等。神經(jīng)網(wǎng)絡(luò)模型可以包括輸入層、中間層和輸出層等,例如,卷積神經(jīng)網(wǎng)絡(luò)模型可以包括輸入層、卷積層、池化層、全連接層等。S120:通過(guò)開(kāi)發(fā)板上的芯片運(yùn)行的第一程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第一測(cè)試模型,在第一程序運(yùn)行第一測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第一運(yùn)行日志,通過(guò)利用開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序加載神經(jīng)網(wǎng)絡(luò)模型,得到第二測(cè)試模型,并且在第二程序運(yùn)行第二測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第二運(yùn)行日志。應(yīng)當(dāng)理解,第一測(cè)試模型可以是第一程序運(yùn)行的神經(jīng)網(wǎng)絡(luò)模型,第二測(cè)試模型可以是第二程序運(yùn)行的同一神經(jīng)網(wǎng)絡(luò)模型,本專利技術(shù)對(duì)此不作限定。開(kāi)發(fā)板包括ARM開(kāi)發(fā)板、FPG本文檔來(lái)自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
1.一種定位芯片運(yùn)行錯(cuò)誤的方法,其特征在于,包括:在開(kāi)發(fā)板生成神經(jīng)網(wǎng)絡(luò)模型;通過(guò)所述開(kāi)發(fā)板上的芯片運(yùn)行的第一程序加載所述神經(jīng)網(wǎng)絡(luò)模型,得到第一測(cè)試模型,在所述第一程序運(yùn)行所述第一測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第一運(yùn)行日志,通過(guò)利用所述開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序加載所述神經(jīng)網(wǎng)絡(luò)模型,得到第二測(cè)試模型,并且在所述第二程序運(yùn)行所述第二測(cè)試模型對(duì)所述輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第二運(yùn)行日志;以及根據(jù)所述第一運(yùn)行日志和所述第二運(yùn)行日志,定位所述芯片運(yùn)行的所述第一測(cè)試模型的錯(cuò)誤。
【技術(shù)特征摘要】
1.一種定位芯片運(yùn)行錯(cuò)誤的方法,其特征在于,包括:在開(kāi)發(fā)板生成神經(jīng)網(wǎng)絡(luò)模型;通過(guò)所述開(kāi)發(fā)板上的芯片運(yùn)行的第一程序加載所述神經(jīng)網(wǎng)絡(luò)模型,得到第一測(cè)試模型,在所述第一程序運(yùn)行所述第一測(cè)試模型對(duì)輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第一運(yùn)行日志,通過(guò)利用所述開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序加載所述神經(jīng)網(wǎng)絡(luò)模型,得到第二測(cè)試模型,并且在所述第二程序運(yùn)行所述第二測(cè)試模型對(duì)所述輸入數(shù)據(jù)進(jìn)行預(yù)測(cè)時(shí),生成第二運(yùn)行日志;以及根據(jù)所述第一運(yùn)行日志和所述第二運(yùn)行日志,定位所述芯片運(yùn)行的所述第一測(cè)試模型的錯(cuò)誤。2.如權(quán)利要求1所述的定位芯片運(yùn)行錯(cuò)誤的方法,其特征在于,所述通過(guò)所述開(kāi)發(fā)板上的芯片運(yùn)行的第一程序加載所述神經(jīng)網(wǎng)絡(luò)模型,得到第一測(cè)試模型,包括:通過(guò)所述開(kāi)發(fā)板上的芯片運(yùn)行的第一程序解析所述第一測(cè)試模型,得到所述第一測(cè)試模型的參數(shù),其中,所述通過(guò)利用所述開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序加載所述神經(jīng)網(wǎng)絡(luò)模型,得到第二測(cè)試模型,包括:通過(guò)利用所述開(kāi)發(fā)板的環(huán)境運(yùn)行的第二程序解析所述第二測(cè)試模型,得到所述第二測(cè)試模型的參數(shù)。3.如權(quán)利要求2所述的定位芯片運(yùn)行錯(cuò)誤的方法,其特征在于,所述第一運(yùn)行日志和所述第二運(yùn)行日志分別包括所述第一測(cè)試模型和所述第二測(cè)試模型的每一層的運(yùn)行結(jié)果,其中,所述根據(jù)所述第一運(yùn)行日志和所述第二運(yùn)行日志,定位所述芯片運(yùn)行的所述第一測(cè)試模型的錯(cuò)誤,包括:通過(guò)比較所述第一測(cè)試模型和所述第二測(cè)試模型的每一層的運(yùn)行結(jié)果,定位所述第一測(cè)試模型的出錯(cuò)層。4.如權(quán)利要求3所述的定位芯片運(yùn)行錯(cuò)誤的方法,其特征在于,所述第一運(yùn)行日志和所述第二運(yùn)行日志分別包括所述第一測(cè)試模型和所述第二測(cè)試模型的每一層的參數(shù),其中,所述方法還包括:通過(guò)比較所述第一測(cè)試模型和所述第二測(cè)試模型的所述出錯(cuò)層的參數(shù),定位所述第一測(cè)試模型的所述出錯(cuò)層的出錯(cuò)參數(shù)。5.如權(quán)利要求3所述的定位芯片運(yùn)行錯(cuò)誤的方法,其特征在于,所述第一運(yùn)行日志和所述第二運(yùn)行日志分別包括所述第一測(cè)試模型和所述第二測(cè)試模型的每一層的參數(shù),其中,所述在開(kāi)發(fā)板生成神經(jīng)網(wǎng)絡(luò)模...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:張韻東,余洋,徐祥,
申請(qǐng)(專利權(quán))人:北京中星微電子有限公司,
類型:發(fā)明
國(guó)別省市:北京,11
還沒(méi)有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。