• 您現在的位置是:首頁 >人工智能 > 2021-04-28 02:21:36 來源:

    將深度學習AI放在軟件開發上

    導讀 萊斯大學的計算機科學家已經創建了一個深度學習的軟件編碼應用程序,可以幫助人類程序員瀏覽越來越多的通常沒有文檔的應用程序編程接口或AP

    萊斯大學的計算機科學家已經創建了一個深度學習的軟件編碼應用程序,可以幫助人類程序員瀏覽越來越多的通常沒有文檔的應用程序編程接口或API。

    Rice應用程序被稱為Bayou,是由國防高級研究計劃局資助的一項計劃創建的,旨在從GitHub等在線源代碼庫中提取知識。關于Bayou的論文將于5月1日在不列顛哥倫比亞省溫哥華舉行的第六屆學習代表國際會議上發表,該會議是深度學習研究的首要渠道。用戶可以在askbayou.com上試用。

    設計可以對計算機進行編程的應用程序是計算機科學領域長期以來所熟知的,稱為人工智能(AI)。

    “人們已經嘗試了60年來構建可以編寫代碼的系統,但問題是這些方法并沒有那么模糊,”Bayou聯合創始人賴斯計算機科學副教授Swarat Chaudhuri說。“你通常需要提供很多關于目標程序的詳細信息,寫下這些細節可以和編寫代碼一樣多。

    “Bayou是一個相當大的改進,”他說。“開發人員可以向Bayou提供非常少量的信息 - 實際上只是幾個關鍵字或提示 - 而且Bayou會嘗試閱讀程序員的想法并預測他們想要的程序。”

    Chaudhuri說,Bayou通過研究數百萬行人類編寫的Java代碼來訓練自己。“它基本上研究了GitHub上的所有內容,并借鑒它來編寫自己的代碼。”

    Bayou聯合創始人Chris Jermaine是計算機科學教授,他與Chaudhuri共同負責Rice的智能軟件系統實驗室,他說Bayou對于合成特定軟件API的代碼示例特別有用。

    “今天的編程與30或40年前的編程非常不同,”杰梅因說。“今天的計算機放在我們的口袋里,戴在我們的手腕上以及數十億的家用電器,車輛和其他設備中。程序員從頭開始編寫代碼的日子早已不復存在。”

    該實驗室的研究科學家Bayou建筑師Vijay Murali說:“現代軟件開發完全是關于APls。這些是系統特定的規則,工具,定義和協議,允許一段代碼與特定的操作系統,數據庫交互,硬件平臺或其他軟件系統。有數百種API,開發人員很難對它們進行導航。他們在Stack Overflow等問答網站上花了很多時間向其他開發人員尋求幫助。“

    Murali說,開發商現在可以開始在Bayou詢問其中的一些問題,這將立即給出答案。

    “即時反饋可以立即解決問題,如果沒有,Bayou的示例代碼應該為他們的同齡人帶來更明智的問題,”Murali說。

    Jermaine表示,該團隊的主要目標是讓開發人員嘗試擴展Bayou,后者已經在許可的開源許可下發布。

    “我們掌握的關于人們對像Bayou這樣的系統的期望的信息越多,我們就越能做到這一點,”他說。“我們希望盡可能多的人使用它。” Bayou基于一種稱為神經草圖學習的方法,該方法訓練人工神經網絡以識別數十萬個Java程序中的高級模式。它通過為每個讀取的程序創建一個“草圖”,然后將該草圖與程序背后的“意圖”相關聯來實現。

    當用戶詢問Bayou問題時,系統會判斷要求寫入的程序。然后,它為用戶可能想要的幾個最可能的候選程序創建草圖。

    “基于這種猜測,Bayou的一個獨立部分,一個了解Java的低級細節并且可以進行自動邏輯推理的模塊,將生成四到五個不同的代碼塊,”Jermaine說。“它會向用戶呈現這些內容,就像在網絡搜索上點擊一樣。'這個很可能是正確答案,但這里還有三個可能是您正在尋找的內容。'”

  • 成人app