本文摘要:數(shù)據(jù)正在迅速取代代碼成為軟件開發(fā)的基礎。在開發(fā)人員應對這種范式轉變時,領先的企業(yè)期望流程和工具轉換方式如下。隨著企業(yè)開始尋求利用人工智能來推動數(shù)字化轉型,軟件開發(fā)也將發(fā)生巨大變化。 企業(yè)已做好了開發(fā)人員必須加快機器學習算法和神經(jīng)網(wǎng)絡速度的準
數(shù)據(jù)正在迅速取代代碼成為軟件開發(fā)的基礎。在開發(fā)人員應對這種范式轉變時,領先的企業(yè)期望流程和工具轉換方式如下。隨著企業(yè)開始尋求利用人工智能來推動數(shù)字化轉型,軟件開發(fā)也將發(fā)生巨大變化。
企業(yè)已做好了開發(fā)人員必須加快機器學習算法和神經(jīng)網(wǎng)絡速度的準備,他們期待看到人工智能推動許多開發(fā)和測試功能實現(xiàn)自動化。但是許多企業(yè)忽視了一件事情,那就是軟件性質本身正在發(fā)生變化。
今天,應用程序是確定性的。它們的構建圍繞的是循環(huán)和決策樹。如果應用程序無法正常工作,那么開發(fā)人員將分析代碼并使用調試工具來跟蹤邏輯流程,然后重寫代碼以修復這些錯誤。
當系統(tǒng)由人工智能和機器學習提供支持時,應用程序的開發(fā)方式就不再是上述方式了。誠然,部分企業(yè)有時確實會自己為算法編寫新代碼,但是大多數(shù)工作是以另外的方式完成的,如從開源庫中選擇標準算法或從其人工智能平臺中選擇可用的選項。然后再通過選擇正確的訓練集,告訴算法哪些數(shù)據(jù)點或特征最重要以及應加權多少,將這些算法融入到工作系統(tǒng)中。
作為軟件開發(fā)系統(tǒng)的核心,這種以數(shù)據(jù)為導向的轉變不僅正促使領先的企業(yè)重新思考他們的開發(fā)軟件方式,同時還促使他們重新思考成功應對這種范式轉變所需的各種工具和流程。
引入“軟件2.0”概念在去年的Spark+ 人工智能峰會上,特斯拉人工智能總監(jiān)Andrej Karpathy 談到了自動駕駛汽車企業(yè)如何過渡到這種新的代碼開發(fā)方式,他將這種新的開發(fā)方式稱之為軟件2.0。
人工智能驅動的優(yōu)化算法(例如神經(jīng)網(wǎng)絡)會針對一個問題嘗試與評估標準相關的各種解決方案,直到找到最佳解決方案。例如,該系統(tǒng)會瀏覽數(shù)百萬個被標記過的圖像,以學習區(qū)分汽車和行人。他說:“我們的設計工作正在減少,但是事情卻做得越來越好。”
但是如果這種方法不起作用會發(fā)生什么事情呢?例如,當特斯拉的自動駕駛汽車無法確定是否在穿越隧道時打開雨刮器時,解決方案并不是繼續(xù)深入研究機器學習算法以找出問題所在。
相反,該公司發(fā)現(xiàn)其訓練數(shù)據(jù)中關于汽車在隧道中行駛方面沒有足夠的示例。解決方案只能是從隧道中拍攝的汽車圖像中提取更多圖像,然后將其發(fā)送給人類進行分類。
Karpathy 說:“ 在讀博時,我花了很多時間在模型、算法以及如何實際訓練這些網(wǎng)絡上。但是在特斯拉,我的大部分時間都花在了處理數(shù)據(jù)集上。”
管理訓練數(shù)據(jù)并不是像人們想像的那樣讓開發(fā)人員看著一組組圖像并標記它們那樣簡單。首先,開發(fā)人員需要對數(shù)據(jù)本身有一個深刻的了解。例如,一個查看汽車變道的靜態(tài)圖像的系統(tǒng)將很難確定汽車的轉向信號燈是否閃爍。解決該問題的辦法是回到訓練圖像并對其進行不同的標記。
但是現(xiàn)在更改圖像的標記方式意味著必須重新標記許多以前已經(jīng)被分類過的圖像。
此外,人們在標記圖像時可能會犯錯誤,或者彼此標準不同,亦或是圖像本身可能就有問題。這意味著必須有一個流程來逐步升級并跟蹤問題。當特斯拉開始著手這項工作時,用于管理這種創(chuàng)建軟件新方法的流程和工具并不存在。
Karpathy 說:“ 在軟件1.0 中,我們有IDE 來幫助我們編寫代碼。但是現(xiàn)在,我們不是在進行準確意義上的代碼編寫工作,而是在累積和批量處理數(shù)據(jù)集,但它們實際上又是代碼。那么針對數(shù)據(jù)集的IDE 是什么樣子呢?”
從代碼到數(shù)據(jù)在去年跳槽成為LivePerson 的首席技術官之前,曾負責亞馬遜Alexa 項目的Alex Spinelli 親眼目睹了這一開發(fā)過程的轉變。
他說:“以前有決策樹、路徑和案例陳述。現(xiàn)在開發(fā)人員必須要知道需要有足夠的數(shù)據(jù)和正確的示例,以確保算法工具能夠保持工作。實際上,我們正在為我們支持的行業(yè)創(chuàng)建一些全新的算法。”
20 多年來,LivePerson一直在幫助Home Depot、Adobe、HSBC 和L'Oreal等公司與客戶進行溝通。2016 年,他開始使用由人工智能驅動的聊天機器人對原有范式進行轉型。
為了開發(fā)聊天機器人,公司首先從由人工標記的客戶問題示例著手。他說:“我有十多萬種表達‘我想買單’的說話方式。那就從這里開始。”
一旦有了足夠的數(shù)據(jù),下一個挑戰(zhàn)就是弄清楚哪些屬性是重要的。例如,自動化系統(tǒng)可以提取相關性,但可能無法確定因果關系。鬧鐘經(jīng)常會在日出時響起,但是并不意味著鬧鐘響起會引起太陽升起。
他說:“如何加權數(shù)據(jù)的某些屬性或特征要由人來做出。你需要能夠花費大量時間思考這些問題的專家。”
今天, 根據(jù)客戶的不同,LivePerson 可以理解65~90%的客戶問題,同時公司正在不斷嘗試利用無監(jiān)督學習和遷移學習等人工智能技術以及人工輸入來提高這一比率。
偏見成為了新漏洞當人工智能驅動的系統(tǒng)無法正常工作時,可以采用三種主要方法來解決這一問題。
首先, 問題可能出在算法本身上。但這并不意味著開發(fā)人員需要深入研究代碼。通常,問題的原因是選擇了錯誤的算法。
Spinelli 說:“ 人們必須做出一個決定,即該算法要優(yōu)于其他算法。這仍然是人類面臨的一項挑戰(zhàn)。”
其次是算法的調整。算法著眼于哪些功能,每個功能是多少權重?如果算法本身擁有自己的功能,那么這一工作將異常復雜。
預測某人是否具有良好信用的系統(tǒng)可以查看固定數(shù)量的數(shù)據(jù)點,并且其推理過程可以被提取和被分析。但是一個可以識別圖像中貓的系統(tǒng)可能會提出一個人類完全無法理解的過程。這可能導致金融服務公司的合規(guī)性問題,或者可能使人們的生命安全受到醫(yī)療保健應用和自動駕駛汽車的威脅。
數(shù)據(jù)本身也會導致一些問題。Spinelli 說:“ 在哪里收集的數(shù)據(jù),數(shù)據(jù)來自什么群體,都可能造成偏見。其有可能是針對種族群體或性別的偏見,也有可能只是針對業(yè)務結果的偏見。”
他說,弄清楚問題出在算法上、調整上還是數(shù)據(jù)上,可能是非常具有挑戰(zhàn)性的。“我認為我們并沒有真正地解決這一問題。”Spinelli補充道,當前的情況非常特殊,技術出現(xiàn)在研究實驗室里并被直接應用到了生產(chǎn)當中。
“我們看到科學家提出了很多東西,但是這些科學家沒有運行關鍵任務系統(tǒng)的豐富經(jīng)驗。目前業(yè)內也幾乎沒有什么標準和最佳實踐。這是一個大問題。也就是說目前它們還不成熟。”例如,大多數(shù)現(xiàn)成的算法都沒有能力解釋為什么會做出某個特定決策。
LivePerson 使用了百度的Ernie 和谷歌的Bert 開源自然語言處理算法。Spinelli說:“它們具有不錯的審核和可追溯性。但是從總體上看,這還不夠。”
當LivePerson 自己構建算法時,他們將這種功能列入了需求。“我們是以一種可追溯性的方式構建算法的,所以當你問算法‘為什么給出這個答案?’它們會告訴你‘這是我所看到的,這里是我的閱讀方式和評分方式。’”
人工智能的版本控制與數(shù)據(jù)密切有關
在人工智能系統(tǒng)中查找和修復問題非常困難。修復、正在進行中的改進以及模型漂移的校正等所有這些工作導致對系統(tǒng)的修改更加頻繁。
傳統(tǒng)的軟件開發(fā)流程都有版本控制,以跟蹤哪些代碼行已更改以及誰進行了更改。但是當更改不是在代碼中而是在數(shù)據(jù)或調整中時,情況會是什么樣?當系統(tǒng)內置了針對持續(xù)學習的反饋回路時,情況又是什么樣呢?
技術咨詢和系統(tǒng)集成公司Insight 的數(shù)據(jù)與人工智能首席架構師Ken Seier 表示:“你無法自行更改訓練數(shù)據(jù),因為你沒有可重復的結果。”
他說, 傳統(tǒng)的DevOps工具存在不足。“你需要在數(shù)據(jù)管道中添加其他步驟。”
構建人工智能模型新實例的開發(fā)團隊需要能夠快照使用的數(shù)據(jù)并將其存儲在存儲庫中。“然后進入測試環(huán)境。在該環(huán)境中,他們將針對已知的方案(包括審計方案和合規(guī)性方案)以及測試數(shù)據(jù)集來運行它們,以確保它們具有一定的準確性。”
大多數(shù)企業(yè)都在自行構建這些工具,雖然主要的云人工智能平臺供應商已將許多此功能部署到位,但是仍然缺少關鍵要素。
能夠用于調整模型的自動化流程也必須要開發(fā)出來,以測試各種算法并查看哪種算法在特定情況下效果更好。
理想情況下,如果算法偏離了軌道,那么自動化流程可以重新訓練模型,從而使一切重新運行。如果無法使模型再次恢復正常,那么則需要提前預備一系列后備選項。
使用傳統(tǒng)的軟件開發(fā),恢復到該軟件的先前工作版本非常簡單。但是由于環(huán)境的變化,人工智能已經(jīng)偏離了軌道,那么恢復或許已經(jīng)變成了不可能的事情。
他問道,“如果軟件無法運行并且無法重新訓練,那會發(fā)生什么?你是否淘汰它們并依靠人類操作人員?你是否擁有可以讓人類做出這些決定的業(yè)務流程?在使用自動駕駛汽車時,是否意味著它們會讓汽車熄火?”
處理漂移
訓練數(shù)據(jù)通常是即時快照。當條件改變時, 該模型的有效性就會降低。為了應對這種漂移, 企業(yè)需要針對真實數(shù)據(jù)不斷對模型進行測試, 以確保系統(tǒng)仍可正常工作。Seier 稱:“如果他們以30 天為一個窗口來訓練模型, 那么他們應該每兩周抓住一個新的30 天窗口,并確定是否出現(xiàn)了問題。”
當人工智能系統(tǒng)更改了其正在觀察的行為,那么情況很快就會變得復雜起來。舉例來說,人工智能系統(tǒng)會查看歷史數(shù)據(jù),以查看工廠設備何時最有可能損壞。如果工廠隨后使用這一預測結果來更改維修計劃,那么這一預測結果在后面將不再有效,但是在新數(shù)據(jù)上對模型進行再訓練將導致另外的問題發(fā)生,因為在沒有人工智能干預的情況下,機器將再次開始損壞。
Seier 說:“ 自動駕駛汽車面臨的挑戰(zhàn)之一是與其他自動駕駛汽車打交道。它們在人工駕駛汽車的環(huán)境中接受培訓,而自動駕駛汽車的行為方式是不一樣的。”
Fiddler Labs 的聯(lián)合創(chuàng)始人兼首席執(zhí)行官KrishnaGade 說, 他希望看到一個針對以數(shù)據(jù)為核心的人工智能和機器學習系統(tǒng)的集成開發(fā)環(huán)境。他說:“ 我們需要一個能夠輕松導入和瀏覽數(shù)據(jù)以及清理表單的IDE。
Jupyter 備忘錄有些用處,但是它們也存在其他的問題,如缺少版本控制和檢查工具。”
隨著越來越多的模型投入到生產(chǎn)中,管理各種版本變得越來越重要。他說:“Git可以在模型中重用,但是它們不能擴展到大型數(shù)據(jù)集中。”
數(shù)據(jù)安全挑戰(zhàn)
隨著企業(yè)轉向由人工智能驅動的軟件開發(fā)實踐,他們還將面臨著許多新的安全挑戰(zhàn),而這是許多人無法預料的。
例如,當系統(tǒng)由數(shù)據(jù)科學家而不是傳統(tǒng)軟件工程師創(chuàng)建時,安全性可能事后才被想起。第三方和開源人工智能算法可能有其自身的問題,包括漏洞和不安全的依賴關系。
全球公共政策企業(yè)Access Partnership 的數(shù)據(jù)和信任業(yè)務全球負責人Michael Clauser 說:“ 開發(fā)人員使用最新修補的代碼至關重要。”
第三方供應商提供的專有代碼通常是專利性的并且無法分析。
Clauser 說:“ 可以肯定的是,數(shù)據(jù)量繁重的大型互聯(lián)網(wǎng)企業(yè)和其他藍籌股企業(yè)在自己的人工智能開發(fā)和部署中正遇到了網(wǎng)絡安全麻煩。對于為資源而苦惱的初創(chuàng)企業(yè)來說,情況可能并非如此,他們更關注的是展示自己的人工智能可以做什么,可以解決什么問題,而不是擔心有一天黑客會把他們的人工智能系統(tǒng)變成問題。”
人工智能算法還必須與傳統(tǒng)系統(tǒng)進行交互,包括數(shù)據(jù)庫和用戶界面。如果安全專家沒有提前介入安全流程,那么出現(xiàn)錯誤將是非常常見的事情。
此外,人工智能系統(tǒng)通常建立在新的云人工智能平臺上。此處的安全風險尚不為人所知。盡管如此,人工智能的最大挑戰(zhàn)還是來自于數(shù)據(jù)。人工智能系統(tǒng)需要訪問操作數(shù)據(jù),訓練數(shù)據(jù)和測試數(shù)據(jù)。企業(yè)通常會忘記鎖定后兩組數(shù)據(jù)。此外,數(shù)據(jù)科學家更喜歡構建自己的人工智能模型以使用非加密的測試數(shù)據(jù),而不是使用加密或標記化的數(shù)據(jù)。這些系統(tǒng)一旦運行,缺乏加密就會成為一個嚴重的漏洞。
在線文件共享供應商Box 是一家當前正在解決其人工智能系統(tǒng)潛在安全風險的公司。該公司的首席信息安全官Lakshmi Hanspal 表示:“我們要告訴客戶,請放心地將最寶貴的內容交給我們,我們將讓這些內容給企業(yè)帶來強大的生產(chǎn)力。”
Box 現(xiàn)在正致力于使用人工智能從這些內容中提取元數(shù)據(jù),以改善搜索、分類等功能。她舉例說Box 能夠自動從合同中提取條款和價格。
對于構建新的人工智能系統(tǒng),Box 仍然非常謹慎地保留了其傳統(tǒng)級別的安全控制。她說:“對于任何產(chǎn)品,無論是人工智能還是非人工智能,我們都有一個安全開發(fā)流程。它們與ISO 安全標準保持一致。雖然Box 內部有很多條線,但是它們都遵循著一個相似的流程,并通過內置的設計實現(xiàn)安全性。”其中包括了加密、日志記錄、監(jiān)視、身份驗證和訪問控制等措施。
德勤會計師事務所首席云戰(zhàn)略官David Linthicum指出,大多數(shù)企業(yè)并未將安全性納入其人工智能開發(fā)流程當中。實際上大約有75%的企業(yè)都是在事后處理安全問題。他說:“事后再做這一工作,就像當卡車在道路上行駛時試圖更換它們的輪胎一樣。”
人工智能論文范文閱讀:人工智能與機械電子工程的相關性分析
【摘要】隨著計算機技術的迅猛發(fā)展,對人工智能技術有著很好的推動作用。在人們日常生活與工作中均有著一定的應用,諸如智能家居、自動駕駛汽車、智能機器人等,人工智能的發(fā)展對人們有著很好的現(xiàn)意義。機械電子工程作為傳統(tǒng)工業(yè)中重要組成部分,人工智能技術也逐漸應用其中,兩者發(fā)展均能推動對方實現(xiàn)可持續(xù)的健康發(fā)展。本文對人工智能和機械電子工程間的相關性進行分析,以期對兩者的發(fā)展均有推動作用。
轉載請注明來自發(fā)表學術論文網(wǎng):http:///dzlw/21049.html