訂閱
糾錯
加入自媒體

人工智能有望從根本上改變軟件開發(fā)

分析

Constellation Research的首席分析師兼創(chuàng)始人Ray Wang表示,人工智能技術也出現(xiàn)在靜態(tài)和動態(tài)軟件分析工具中。

Wang說:“機器學習的功能已經很豐富了,比18個月前更加豐富。神經網絡漸漸得到了應用。如今,與其說這是靜態(tài)分析,不如說是動態(tài)分析,但由人工智能驅動的動態(tài)分析將在未來幾年出現(xiàn)!

開發(fā)代碼

然而,就從頭開始編寫新代碼而言,當前的技術還有待改進,Build.com的Berry如是說。

Berry說:“現(xiàn)在我們可以使用一些現(xiàn)成的系統(tǒng),如你的集成開發(fā)環(huán)境,但這更像內置模板剪切粘貼得來的!

但情況開始發(fā)生變化。最受歡迎的集成開發(fā)環(huán)境(微軟的Visual Studio)在4月發(fā)布的最新版本中內置了人工智能代碼自動完成功能。微軟Visual Studio IntelliCode的高級項目經理Mark Wilson-Thomas表示,該功能基于數千個開源的GitHub存儲庫提供的機器學習。

“我們吸取了開源社區(qū)代碼的智慧結晶”,微軟Visual Studio和Visual Studio Code程序管理合作總監(jiān)Amanda Silver如是說。

Silver補充說,這也有助于他們理解常用類的使用方式,“在處理不熟悉的代碼時,這尤其有用!

最近對IntelliCode用戶進行的一項調查發(fā)現(xiàn),超過70%的人表示,與經典的IntelliSense相比,使用新的由人工智能驅動的IntelliCode使他們覺得有更高的效率,Silver如是說。

Silver說,使用這個工具的企業(yè)也可以為自己的員工創(chuàng)建自定義的私有模型。

Silver說:“這使IntelliCode與你的團隊或組織有共同的代碼語言,你無需將源代碼發(fā)給微軟。”

Gartner的分析師Svetlana Sicular表示,這種功能是微軟購買GitHub的首要原因。

GitHub擁有1億多個存儲庫(其中有2500多萬個存儲庫是開源的),微軟于去年收購了GitHub。該平臺對公共存儲庫和小型的私有項目免費開放。

Sicular說:“GitHub是一個代碼存儲庫。在我看來,微軟將使用它來生成新的代碼!

智能應用程序開發(fā)平臺

Build.com的Berry也在密切關注低代碼和無代碼領域里發(fā)生的事情。

Berry說:“這根本談不上是新鮮事兒,只要有開發(fā),開發(fā)人員就已經將系統(tǒng)整合在一起了!

Berry說,最近,人工智能系統(tǒng)的部署因此而變得更輕松快捷。他說:“例如,用于推薦引擎的固有解決方案將過去很難實施的解決方案和定制的解決方案商品化。”

現(xiàn)在,這種低代碼方法變得更加智能,使公司不再浪費時間創(chuàng)建商品系統(tǒng),Berry如是說。他說:“我們因此有機會提出全新的,真正的創(chuàng)新,這就是這種方法的意義所在。我對這些領域在未來所能做出的貢獻感到非常興奮!

以Mendix為例,該公司在長達十年的時間里一直提供積木式的系統(tǒng),這些系統(tǒng)可以用來創(chuàng)建各種應用程序。開發(fā)人員將平臺上各種可用的功能集中在一起,當這些功能不夠用時,他們就使用外部代碼。如今,該公司創(chuàng)建了一個深度學習系統(tǒng)來分析這些模型,考察這些模型在生產中的表現(xiàn),看看哪些模型是最管用并據此來識別各種模式。

Deloitte Cyber的應用程序安全負責人Vikram Kunchala說,IT部門依然十分抗拒這些平臺,而業(yè)務方又缺乏信心。

Kunchala說:“此刻,對平臺的采用似乎更像是好奇心使然。企業(yè)正在一點點進行對這些平臺進行試驗。又或者是他們不得不盡快落實——我們已經見過這種情況了。但我沒有看到哪個客戶將其視作我所了解的企業(yè)標準。”

軟件2.0

但最大的變化是,企業(yè)開始使用與傳統(tǒng)代碼毫無聯(lián)系的應用程序。

比如說,你想創(chuàng)建一個玩三子棋(Tic-Tac-Toe)的應用程序。你可以編寫規(guī)則和游戲策略。對手怎么做,你就怎么做。開發(fā)人員的工作是選擇正確的策略并創(chuàng)建驚艷的用戶界面。

如果以擊敗人類棋手為目的,那么這種策略適用于三子棋、跳棋、甚至是國際象棋。但是對于圍棋等更高難度的棋類競技,創(chuàng)建規(guī)則并不容易。這時深度學習和神經網絡等人工智能技術就登臺亮相了,這些技術徹底改變了軟件開發(fā)流程。

開發(fā)人員不是從制定規(guī)則開始,而是從收集數據開始——大量的棋類競技。谷歌根據人類棋手下的大量棋局來訓練系統(tǒng)。由于有了最新的AlphaGo Zero,訓練數據來自系統(tǒng)與自身對弈的棋局,始于隨機下子。

只要培訓數據清晰且充分,而且評估其好壞的標準也十分明確,那么這種方法就有可能徹底改變軟件開發(fā)。如今,開發(fā)人員必須努力管理培訓數據和評估標準并讓系統(tǒng)來編寫代碼,而不是弄懂對弈規(guī)則并編寫對弈規(guī)則。

特斯拉的人工智能主管Andrej Karpathy表示,這正是特斯拉對自動駕駛汽車所采用的方法。

Karpathy在去年的技術會議主題演講中說道:“這是一種全新的軟件設計方式。如今,我們不是毫不隱諱地編寫代碼,而是積累和優(yōu)化數據集,而這些數據集實際上就是代碼!

例如,因此,特斯拉駛經隧道時很難判斷要不要啟動雨刮器。在傳統(tǒng)的軟件開發(fā)中,程序員會查看代碼,從而發(fā)現(xiàn)邏輯錯誤出在哪里。由于有了Software 2.0,開發(fā)人員只要查看數據就可以了。

例如,在這種特殊情況下,穿越隧道的車輛缺乏訓練數據。特斯拉必須上路實測,獲得更多數據,對這些數據進行注釋,將其添加到訓練數據集并重新運行深度學習算法。

Karpathy說:“我們通過這種方法使所有問題看起來都一個樣子!

Karpathy補充說,傳統(tǒng)的發(fā)展仍有生存空間。目前,這些系統(tǒng)的用戶界面是手動創(chuàng)建的,與其他平臺的集成也仍然是手動完成的。

但隨著越來越多的公司向人工智能求助,用于那些有大量可用數據和其他低代碼平臺的應用程序,那么軟件開發(fā)的工作將在不久的將來發(fā)生巨大變化。

<上一頁  1  2  
聲明: 本文系OFweek根據授權轉載自其它媒體或授權刊載,目的在于信息傳遞,并不代表本站贊同其觀點和對其真實性負責,如有新聞稿件和圖片作品的內容、版權以及其它問題的,請聯(lián)系我們。

發(fā)表評論

0條評論,0人參與

請輸入評論內容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

    掃碼關注公眾號
    OFweek人工智能網
    獲取更多精彩內容
    文章糾錯
    x
    *文字標題:
    *糾錯內容:
    聯(lián)系郵箱:
    *驗 證 碼:

    粵公網安備 44030502002758號