99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁大數(shù)據(jù)時代人工智能與大數(shù)據(jù)開發(fā)的12個關(guān)鍵點,你注意到了嗎?
人工智能與大數(shù)據(jù)開發(fā)的12個關(guān)鍵點,你注意到了嗎?
2018-06-14
收藏



人工智能是近年來科技發(fā)展的重要方向,在大數(shù)據(jù)時代,對數(shù)據(jù)采集、挖掘、應(yīng)用的技術(shù)越來越受到矚目。在人工智能和大數(shù)據(jù)的開發(fā)過程中,有哪些特別需要注意的要點?


人工智能領(lǐng)域的算法大師、華盛頓大學(xué)教授Pedro Domingos對此進行了深入思考。


65.jpg



       大數(shù)據(jù)


  在我們新近翻譯的《智能Web算法》(第2版)中,對Pedro Domingos教授的觀點進行了高度的概括,提煉出12個注意點,為行業(yè)開發(fā)實踐提供了重要參考:


  注意點1:你的數(shù)據(jù)未必可靠


  在實際應(yīng)用中,有很多各種各樣的原因會導(dǎo)致你的數(shù)據(jù)是不可靠的。因此,當你將數(shù)據(jù)用于解決問題前,必須經(jīng)常留心來檢查數(shù)據(jù)是否值得信賴。如果基于糟糕的數(shù)據(jù)來挖掘,無論多么聰明的人也永遠只會獲得糟糕的結(jié)果。下面列舉了一些常見的可導(dǎo)致數(shù)據(jù)可靠性問題的因素:


  ? 用于開發(fā)的數(shù)據(jù),往往和實際情況下的數(shù)據(jù)分布不同。例如也許你想把用戶按照身高劃分為“高”、“中等”、“矮”三檔,但如果系統(tǒng)開發(fā)時使用的數(shù)據(jù)集里最低用戶的身高是6英尺(184cm),那么很有可能你開發(fā)出來的系統(tǒng)里會把一個“僅有6英尺”的用戶稱為“矮”用戶


  ? 你的數(shù)據(jù)集中存在很多缺失數(shù)據(jù)。事實上,除非是人為構(gòu)造的數(shù)據(jù)集合,否則很難避免缺失數(shù)據(jù)問題的發(fā)生,如何處理數(shù)據(jù)缺失的問題是很有技巧的事情。實踐中我們要么是干脆丟棄一部分殘缺的數(shù)據(jù),要么就是想辦法計算一些數(shù)值去填補這些缺失值。無論哪種方法都可能導(dǎo)致應(yīng)用結(jié)果的不穩(wěn)定


  ? 你的數(shù)據(jù)可能隨時在變化。數(shù)據(jù)庫的表結(jié)構(gòu)可能會變,數(shù)據(jù)定義也可能會變


  ? 你的數(shù)據(jù)可能沒有被歸一化。假設(shè)你可能在觀察一組用戶的體重,為了能夠獲得有效的結(jié)論,首先需要對每個體重的衡量單位進行歸一化,是英鎊還是公斤,不能混淆著用


  ? 你的數(shù)據(jù)可能并不適用于相應(yīng)的算法。數(shù)據(jù)存在著各種各樣的形式和規(guī)范,或者叫數(shù)據(jù)類型(data types),有些是數(shù)值化的數(shù)據(jù),有些則不是。有些數(shù)據(jù)集合能被有序排列,有些則做不到。有些是離散化的數(shù)據(jù)(例如房間里的人數(shù)),另一些則是連續(xù)化的(例如氣溫或者氣壓等數(shù)據(jù))


  注意點2:計算難以瞬間完成


  完成任何一個人工智能解決方案的計算,都需要一定的時間,方案的響應(yīng)速度,對商業(yè)應(yīng)用的成功與否起到十分關(guān)鍵的作用。不能總是盲目假設(shè)任何算法在所有數(shù)據(jù)集上都一定能在規(guī)定時間內(nèi)完成,你需要測試下算法的性能是否在可接受的應(yīng)用范圍內(nèi)。


  以搜索引擎為例,用戶對結(jié)果返回的時長是有忍耐的限度的。如果用戶等待的時間超過10秒,50%的用戶會流失,如果等待時間超過1分鐘,90%以上的用戶會流失。在開發(fā)智能應(yīng)用系統(tǒng)時,不能為了達到更好的算法精度而忽略系統(tǒng)運算和等待的時間,否則會導(dǎo)致整個產(chǎn)品的失敗。


118.jpg


  注意點3: 數(shù)據(jù)的規(guī)模非常重要


  當我們考慮智能應(yīng)用時,數(shù)據(jù)規(guī)模是很重要的因素。數(shù)據(jù)規(guī)模的影響可以分為兩點來考察:第一點是規(guī)模會影響應(yīng)用系統(tǒng)的響應(yīng)速度,上一節(jié)我們剛提過;第二點是在很大的數(shù)據(jù)集上的挖掘出有價值結(jié)果的能力會受到考驗。例如為100個用戶開發(fā)的電影或音樂推薦系統(tǒng)可能效果很好,但是同樣的算法移植到有著100000個用戶的環(huán)境里,效果可能就不盡如人意了。


  其次,使用更多的數(shù)據(jù)來訓(xùn)練的簡單算法,比受制于維度詛咒(Dimension Curse)的復(fù)雜算法往往有好得多的效果。類似Google這樣擁有海量數(shù)據(jù)的大型企業(yè),優(yōu)秀的應(yīng)用效果不僅來自于精妙復(fù)雜的算法,也來自于其對海量訓(xùn)練數(shù)據(jù)的大規(guī)模分析挖掘。


  注意點4: 不同的算法具有不同的擴展能力


  我們不能假設(shè)智能應(yīng)用系統(tǒng)都可以通過簡單增加服務(wù)器的方法來擴展性能。有些算法是有擴展性的,而另一些則不行。


  例如如果我們要從數(shù)億的文章標題里,找出標題相似的各個組的文章,注意并不是所有的聚類算法此時都能并行化運行的,你應(yīng)該在設(shè)計系統(tǒng)的同時就考慮可擴展性。有些情況下你需要將數(shù)據(jù)切分成較小的集合,并能夠讓智能算法在各個集合上并行運行。設(shè)計系統(tǒng)時所選擇的算法,往往需要有并行化的版本,而在一開始就需要將其納入考慮,因為通常圍繞著算法還會有很多相關(guān)聯(lián)的商業(yè)邏輯和體系結(jié)構(gòu)需要一并考慮。


  注意點5:并不存在萬能的方法


  你可能聽說過一句諺語“當你有了把榔頭的時候,看什么東西都像釘子”,這里想表達的意思是:并不存在能夠解決所有智能應(yīng)用問題的萬能算法。


  智能應(yīng)用軟件和其他所有軟件類似——具有其特定的應(yīng)用領(lǐng)域和局限性。當面對新的應(yīng)用領(lǐng)域時,一定要充分的驗證原有方法的可行性,而且你最好能嘗試用全新的視角來考察問題,因為不同的算法在解決特定的問題時才會更有效和得當。


87.jpg


  注意點6:數(shù)據(jù)并不是萬能的


  根本上看,機器學(xué)習(xí)算法并不是魔法,它需要從訓(xùn)練數(shù)據(jù)開始,逐步延伸到未知數(shù)據(jù)中去。


  例如假設(shè)你已經(jīng)對數(shù)據(jù)的分布規(guī)律有所了解,那么通過圖模型來表達這些先驗的知識會非常有效。除了數(shù)據(jù)以外,你還需要仔細的考慮,該領(lǐng)域有哪些先驗知識可以應(yīng)用,這對開發(fā)一個更有效的分類器會很有幫助。數(shù)據(jù)和行業(yè)經(jīng)驗結(jié)合往往能事半功倍。


  注意點7:模型訓(xùn)練的時間差異很大


  在特定應(yīng)用中,可能某些參數(shù)的微小變化就會讓模型的訓(xùn)練時間出現(xiàn)很大的差異。例如在深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練時就會有各種各樣的參數(shù)調(diào)節(jié)的情況發(fā)生。


  人們往往會直觀地覺得調(diào)整參數(shù)時,訓(xùn)練時間是基本穩(wěn)定不變的。例如假設(shè)有個系統(tǒng)是計算地球平面上任意兩點之間的距離的,那么任意給出兩個點的坐標時,計算時間差不多都是相同的。但在另一些系統(tǒng)里卻并非如此,有時細微的調(diào)整會帶來很明顯的時間差異,有時差異甚至可以大到數(shù)小時,而不是數(shù)秒。


  注意點8:泛化能力是目標


  機器學(xué)習(xí)實踐中最普遍存在的一個誤區(qū)是陷入處理細節(jié)中而忘了最初的目標——通過調(diào)查來獲得處理問題的普適的方法。


  測試階段是驗證某個方法是否具備泛化能力(generalization ability)的關(guān)鍵環(huán)節(jié)(通過交叉驗證、外部數(shù)據(jù)驗證等方法),但是尋找合適的驗證數(shù)據(jù)集不容易。如果在一個只有幾百個樣本的集合上去訓(xùn)練有數(shù)百萬維特征的模型,試圖想獲得優(yōu)秀的精度是很荒唐的。


  注意點9:人類的直覺未必準確


  在特征空間膨脹的時候,輸入信息間形成的組合關(guān)系會快速增加,這讓人很難像對中等數(shù)據(jù)集合那樣能夠?qū)ζ渲幸徊糠謹?shù)據(jù)進行抽樣觀察。更麻煩的是,特征數(shù)量增加時人類對數(shù)據(jù)的直覺會迅速降低。


  例如在高維空間里,多元高斯分布并不是沿著均值分布,而是像一個扇貝形狀圍繞在均值附近,這和人們的主觀感受完全不同。在低維空間中建立一個分類器并不難,但是當維度增加時,人類就很難直觀的理解了。


81.jpg


  注意點10:要考慮融入更多新特征


  你很可能聽說過諺語“進來的是垃圾,出去的也是垃圾”(garbage in, garbage out),在建立機器學(xué)習(xí)應(yīng)用中這一點尤其重要。為了避免挖掘的效果失控,關(guān)鍵是要充分掌握問題所在的領(lǐng)域,通過調(diào)查數(shù)據(jù)來生成各種各樣的特征,這樣的做法會對提升分類的準確率和泛化能力有很大的幫助。僅靠把數(shù)據(jù)扔進分類器就想獲得優(yōu)秀結(jié)果的幻想是不可能實現(xiàn)的。(達觀數(shù)據(jù) 陳運文)


  注意點11:要學(xué)習(xí)各種不同的模型


  模型的組合(Ensemble)技術(shù)正變得越來越流行了,因為組合方法,僅需要付出少許偏見(bias)的代價,就能大大的減少算法的不確定性。在著名的Netflix算法競賽中,冠軍隊以及成績優(yōu)異隊伍們?nèi)际褂昧私M合模型方法,把超過100個模型合并在一起(在模型上疊加高層的模型形成組合)以提升效果。在人工智能用于實際應(yīng)用時,從業(yè)者普遍都認為,未來的算法一定時會通過模型組合的方法來獲得更好精度,但是這也會抬高非專業(yè)人員理解系統(tǒng)機制的門檻。


  注意點12:相關(guān)關(guān)系不等同于因果關(guān)系


  這一點值得反復(fù)強調(diào),我們可以通過一句調(diào)侃的話來解釋:“地球變暖、地震、龍卷風,以及其他自然災(zāi)害,都和18世紀以來全球海盜數(shù)量的減少有直接關(guān)系”。這兩個變量的變化有相關(guān)性,但是并不能說存在因果關(guān)系,因為往往存在第三類(甚至第4、5類)未被觀察到的變量在起作用。相關(guān)關(guān)系應(yīng)該看作是潛在的因果關(guān)系的一定程度的體現(xiàn),但需要進一步研究。


  在開發(fā)人工智能與大數(shù)據(jù)應(yīng)用系統(tǒng)時,把握好以上十二個注意點,能夠有效避免實戰(zhàn)中的各種“坑”,幫助技術(shù)在走出實驗室,走向落地應(yīng)用時,能發(fā)揮更加健壯、強大的作用。



數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個參數(shù)驗證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務(wù)器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }