System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及計算機,具體涉及一種映射構建方法、裝置及電子設備。
技術介紹
1、在軟件的開發過程中,常用代碼倉庫來存儲和管理代碼,由于代碼倉庫中存儲有大量的代碼,經常需要通過關鍵詞從代碼倉庫中查找包括該關鍵詞的代碼表述詞的代碼文件,關鍵詞的代碼表述詞是指關鍵詞在代碼中的表述詞;但是在一些特殊的軟件項目中,一些關鍵詞雖然具有在通用語言下的表述,但是該關鍵詞在代碼中的表述詞并不是通常語言下的表述,例如,關鍵詞“頻道”在通用語言下的英文表述為“channel”(也即,通常在代碼中用“channel”指代“頻道”),但在一些軟件項目中,在代碼中通過“guild”來指代“頻道”,此種情況下,可以視為“頻道”這個詞是在該軟件項目中的專有名詞。相關技術中,常需要通過人工建立某個領域或者組織內部的專有名詞與代碼表述詞之間的映射關系,通過專有名詞與代碼表述詞之間的映射關系來輔助理解該領域下或者組織內部的代碼文件或者進行代碼文件的查找,但是,人工建立專有名詞與代碼表述詞之間映射關系的效率較低,花費時間較長。
技術實現思路
1、有鑒于此,本申請實施例提出了一種映射構建方法、裝置及電子設備,其能夠自動構建候選名詞與來源于代碼文件的目標參考詞之間的映射關系,提高映射關系的構建效率。
2、本申請實施例是采用以下技術方案來實現的:
3、第一方面,本申請實施例提供了一種映射構建方法,方法包括:根據多條代碼提交記錄的描述信息中的分詞,確定候選名詞;根據各代碼提交記錄所提交代碼文件的文件路徑中的分
4、第二方面,本申請實施例提供了一種映射構建裝置,裝置包括:第一獲取模塊,用于根據多條代碼提交記錄的描述信息中的分詞,確定候選名詞。第二獲取模塊,用于根據各代碼提交記錄所提交代碼文件的文件路徑中的分詞,構建各代碼提交記錄對應的參考詞集合。第一篩選模塊,用于確定候選名詞對應的至少一個候選參考詞,候選參考詞是指參考代碼提交記錄對應的參考詞集合中的參考詞;參考代碼提交記錄是指描述信息包括候選名詞的代碼提交記錄。第一計算模塊,用于確定各候選參考詞在多個參考代碼提交記錄中的第一出現頻率。第二篩選模塊,用于在至少一個候選參考詞中,確定第一出現頻率大于第一頻率閾值的目標參考詞。第二計算模塊,用于根據第一參考詞的第一出現頻率和候選名詞相對于第一參考詞的第一頻率,確定候選名詞相對于第一參考詞的分散度,候選名詞相對于第一參考詞的第一頻率是指所對應的參考詞集合中包括第一參考詞的參考代碼提交記錄在第一代碼提交記錄集合中的出現頻率,第一代碼提交記錄集合是指對應的參考詞集合中包括第一參考詞的代碼提交記錄的集合。輸出模塊,用于若候選名詞相對于目標參考詞的分散度不超過分散度閾值,建立候選名詞與目標參考詞之間的映射關系,目標參考詞作為候選名詞在代碼中的表述詞,目標參考詞是指對應于候選名詞的分散度最小的第一參考詞。
5、在一些實施方式中,第一獲取模塊包括分詞單元和清洗單元,分詞單元用于對各代碼提交記錄的描述信息進行分詞,得到分詞集合;清洗單元用于對分詞集合進行清洗處理,得到中間分詞集合;基于中間分詞集合中的各分詞,確定候選名詞。
6、在一些實施方式中,第二獲取模塊還包處理單元、組合單元和添加單元。處理單元用于針對各代碼提交記錄,將該代碼提交記錄所提交代碼文件的文件路徑進行分詞處理,確定文件路徑中的分詞;組合單元用于將在文件路徑中位置相鄰的至少兩個分詞進行組合,得到文件路徑對應的組合詞;添加單元用于將該代碼提交記錄所提交代碼文件的文件路徑中的分詞和文件路徑對應的組合詞,添加到代碼提交記錄對應的參考詞集合中。
7、在一些實施方式中,第一計算模塊包括構造單元、編碼單元和執行單元。其中,構造單元用于根據各候選參考詞的編碼和各候選參考詞的分詞長度,確定候選名詞在每個參考代碼提交記錄下的第一特征向量,候選名詞在一參考代碼提交記錄下的第一特征向量中第k維的值是根據在該參考代碼提交記錄對應的參考詞集合中分詞長度為k的全部候選參考詞的編碼確定的;k∈[1,n],n為最大分詞長度;編碼單元用于基于候選名詞在多個參考代碼提交記錄下的第一特征向量中位于同一維的值進行二進制編碼,得到候選名詞在第k維下的多個二進制編碼,二進制編碼中的一個二進制位對應一個候選參考詞;執行單元用于針對每個二進制位,根據候選名詞在第k維下的多個二進制編碼中該二進制位下值相同的二進制編碼的數量與針對候選名詞的第一特征向量的總數量,確定該二進制位所對應候選參考詞在多個參考代碼提交記錄中的第一出現頻率。
8、在一些實施方式中,編碼單元用于針對各參考代碼提交記錄,確定在該參考代碼提交記錄對應的參考詞集合中分詞長度為k的候選參考詞;將分詞長度為k的候選參考詞的編碼進行指數運算,得到分詞長度為k的候選參考詞對應的指數運算結果,在指數運算中,以2為底數,分詞長度為k的候選參考詞的編碼為指數;將分詞長度為k的全部候選參考詞對應的指數運算結果相加,得到候選名詞在該參考代碼提交記錄下第k維的值;將候選名詞在該參考代碼提交記錄下第1維的值至第n維的值順序進行組合,得到候選名詞在該參考代碼提交記錄下的第一特征向量。
9、在一些實施方式中,第二計算模塊用于計算第一參考詞的第一出現頻率與候選名詞在該第一參考詞下的第一頻率的第一乘積;將1與第一乘積的差作為候選名詞相對于第一參考詞的分散度。
10、在一些實施方式中,映射構建裝置還包括:路徑獲取模塊,用于根據各代碼提交記錄所提交代碼文件的文件路徑,構建各代碼提交記錄對應的參考路徑集合。路徑篩選模塊,用于確定候選名詞對應的至少一個候選參考路徑,候選參考路徑是指參考代碼提交記錄對應的參考路徑集合中的參考路徑。路徑頻率計算模塊,用于確定各候選參考路徑在多個參考代碼提交記錄中的第二出現頻率。路徑選取模塊,用于在至少一個候選參考路徑中,確定第二出現頻率大于第二頻率閾值的目標參考路徑。路徑映射構建模塊,用于構建候選名詞與目標參考路徑之間的映射關系。
11、在一些實施方式中,映射構建裝置還包括:路徑向量構建模塊,用于本文檔來自技高網...
【技術保護點】
1.一種映射構建方法,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,所述確定各所述候選參考詞在多個參考代碼提交記錄中的第一出現頻率,包括:
3.根據權利要求2所述的方法,其特征在于,所述根據各所述候選參考詞的編碼和各所述候選參考詞的分詞長度,確定所述候選名詞在每個參考代碼提交記錄下的第一特征向量,包括:
4.根據權利要求1所述的方法,其特征在于,所述根據所述第一參考詞的第一出現頻率和所述候選名詞相對于所述第一參考詞的第一頻率,確定所述候選名詞相對于所述第一參考詞的分散度,包括:
5.根據權利要求1所述的方法,其特征在于,所述方法還包括:
6.根據權利要求5所述的方法,其特征在于,所述構建所述候選名詞與所述目標參考路徑之間的映射關系之前,所述方法還包括:
7.根據權利要求6所述的方法,其特征在于,所述確定各所述候選參考路徑在多個所述參考代碼提交記錄中的第二出現頻率,包括:
8.根據權利要求7所述的方法,其特征在于,所述根據各所述候選參考路徑的編碼和各所述候選參考路徑的路徑層級,確定所
9.根據權利要求6所述的方法,其特征在于,所述根據所述目標參考路徑的第二出現頻率和所述候選名詞相對于所述目標參考路徑的第二頻率,確定所述候選名詞相對于所述目標參考路徑的參考分散度,包括:
10.根據權利要求5所述的方法,其特征在于,所述根據各所述代碼提交記錄所提交代碼文件的文件路徑,構建各所述代碼提交記錄對應的參考路徑集合,包括:
11.根據權利要求1所述的方法,其特征在于,所述根據各所述代碼提交記錄所提交代碼文件的文件路徑中的分詞,構建各所述代碼提交記錄對應的參考詞集合,包括:
12.根據權利要求1所述的方法,其特征在于,所述根據多條代碼提交記錄的描述信息中的分詞,確定候選名詞,包括:
13.一種映射構建裝置,其特征在于,包括:
14.一種電子設備,其特征在于,包括:
15.一種計算機程序產品,包括計算機程序/指令,其特征在于,該計算機程序/指令被處理器執行時實現權利要求1-12中任意一項方法的步驟。
...【技術特征摘要】
1.一種映射構建方法,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,所述確定各所述候選參考詞在多個參考代碼提交記錄中的第一出現頻率,包括:
3.根據權利要求2所述的方法,其特征在于,所述根據各所述候選參考詞的編碼和各所述候選參考詞的分詞長度,確定所述候選名詞在每個參考代碼提交記錄下的第一特征向量,包括:
4.根據權利要求1所述的方法,其特征在于,所述根據所述第一參考詞的第一出現頻率和所述候選名詞相對于所述第一參考詞的第一頻率,確定所述候選名詞相對于所述第一參考詞的分散度,包括:
5.根據權利要求1所述的方法,其特征在于,所述方法還包括:
6.根據權利要求5所述的方法,其特征在于,所述構建所述候選名詞與所述目標參考路徑之間的映射關系之前,所述方法還包括:
7.根據權利要求6所述的方法,其特征在于,所述確定各所述候選參考路徑在多個所述參考代碼提交記錄中的第二出現頻率,包括:
8.根據權利要求7所述的方法,其特征在于,所述根據各所述候選參考路徑的編碼和各所述候選參考路徑...
【專利技術屬性】
技術研發人員:黃輝煌,劉豐富,
申請(專利權)人:騰訊科技深圳有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。