亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成方法

文檔序號:40384728發(fā)布日期:2024-12-20 12:07閱讀:來源:國知局

技術(shù)特征:

1.一種知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成方法,其特征在于,所述代碼生成方法包括下列步驟:s1,構(gòu)建編程語言知識庫;s2,設(shè)置分類器模型;s3,設(shè)置代碼生成模型;以及s4,知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成。

2.根據(jù)權(quán)利要求1所述的一種知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成方法,其特征在于,所述所述步驟s1包括下列子步驟:s1.1,學(xué)習(xí)獲取目標(biāo)編程語言相關(guān)知識;s1.2,設(shè)置代碼類別及對應(yīng)知識表示;s1.3,形成知識庫。

3.根據(jù)權(quán)利要求2所述的一種知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成方法,其特征在于,所述子步驟s1.2的具體內(nèi)容為:將在所述編程語言編寫中出現(xiàn)的各主要數(shù)據(jù)類別形式的知識歸納總結(jié),形成所述類別人工總結(jié)提煉出的“知識”;所述子步驟s1.3的具體內(nèi)容為:將得到的各個代碼類別和對應(yīng)的知識表示以鍵值對(k,v)的形式組織起來,并將這些鍵值對匯總成為一個字典,作為該編程語言的知識庫k,也就是:k={(k1,v1),(k2,v2),…,(kn,vn)},其中,(ki,vi)表示第i個類別和對應(yīng)的知識。

4.根據(jù)權(quán)利要求3所述的一種知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成方法,其特征在于,所述子步驟s2.1的具體內(nèi)容為:根據(jù)目標(biāo)編程語言特點和數(shù)據(jù)獲取的難易程度,從網(wǎng)絡(luò)搜索已有數(shù)據(jù)集,或是自行編寫腳本從已有工程源代碼中自動抽取生成分類數(shù)據(jù)集,所述分類數(shù)據(jù)集的格式應(yīng)為:dt={(x1,y1),(x2,y2),…,(xn,yn)},其中,dt表示文本分類數(shù)據(jù)集,xi表示第i個自然語言描述文本,yi表示該自然語言描述文本對應(yīng)的生成代碼的類別;所述子步驟s2.2的具體內(nèi)容為:使用編程語言指令文本分類數(shù)據(jù)集訓(xùn)練分類器模型,使所述分類器模型學(xué)會根據(jù)目標(biāo)編程語言的自然語言代碼生成指令,判斷用戶想要生成的目標(biāo)代碼的所屬類別。

5.根據(jù)權(quán)利要求4所述的一種知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成方法,其特征在于,所述子步驟s3.1的具體內(nèi)容為:根據(jù)目標(biāo)編程語言代碼生成數(shù)據(jù)獲取的難易程度,以直接選取已有數(shù)據(jù)集或自行構(gòu)建數(shù)據(jù)集的方式,得到訓(xùn)練用數(shù)據(jù)集;所述子步驟s3.2的具體內(nèi)容為:使用所述訓(xùn)練數(shù)據(jù)集,對基線代碼生成模型按硬件資源水平和實際使用需求進(jìn)行訓(xùn)練或微調(diào)。

6.根據(jù)權(quán)利要求5所述的一種知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成方法,其特征在于,所述子步驟s4具體包括下列內(nèi)容:s4.1,將所述知識庫模塊、分類器模塊和代碼生成模塊進(jìn)行組合;s4.2,輸入需要生成對應(yīng)代碼的自然語言描述文本,記為description,所述自然語言描述文本首先經(jīng)過分類器模型進(jìn)行意圖解析,得到該描述想要生成的目標(biāo)代碼類別,記為categoryd,即:categoryd=classifier(description),classifier()表示通過分類器網(wǎng)絡(luò)進(jìn)行推斷,在編程語言知識庫k中搜索鍵categoryd,若搜到,取出其映射的值knowledged,也就是“知識”,與用戶輸入的自然語言描述文本拼接,形成代碼生成模型的輸入,記為inputd;若是沒有搜到,則直接將輸入作為代碼生成模型的輸入inputd;最后,將得到的輸入饋送給代碼生成模型進(jìn)行文本到代碼的生成任務(wù),即:outputd=generator(inputd),其中,outputd即為最終生成的目標(biāo)編程語言代碼段,generator()表示使用代碼生成模型進(jìn)行推斷。


技術(shù)總結(jié)
本發(fā)明涉及一種知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成方法,具體涉及一種基于知識和數(shù)據(jù)雙輪驅(qū)動的用于自動生成編程語言的方法,屬于自然語言處理技術(shù)領(lǐng)域。本發(fā)明代碼生成方法包括下列步驟:S1,構(gòu)建編程語言知識庫;S2,設(shè)置分類器模型;S3,設(shè)置代碼生成模型;以及S4,根據(jù)知識庫、分類器模型和代碼生成模型進(jìn)行知識和數(shù)據(jù)雙輪驅(qū)動的代碼生成。與現(xiàn)有技術(shù)相比,本發(fā)明將知識和數(shù)據(jù)兩方面信息結(jié)合進(jìn)行代碼生成,所涉及到的模型結(jié)構(gòu)相對獨立,使用者可以根據(jù)實際訓(xùn)練資源,自由選擇合適尺寸的分類器模型和代碼生成模型完成訓(xùn)練,在代碼數(shù)據(jù)量較小、代碼生成模型參數(shù)量較小的情形下依然具有不錯的表現(xiàn)。

技術(shù)研發(fā)人員:常君旸,張華平
受保護(hù)的技術(shù)使用者:北京理工大學(xué)
技術(shù)研發(fā)日:
技術(shù)公布日:2024/12/19
當(dāng)前第2頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1