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

熱線電話:13121318867

登錄
首頁精彩閱讀走出數(shù)據(jù)挖掘的誤區(qū)
走出數(shù)據(jù)挖掘的誤區(qū)
2016-07-10
收藏

走出數(shù)據(jù)挖掘的誤區(qū)

數(shù)據(jù)挖掘是從數(shù)據(jù)集中識別出有效的、新穎的、潛在并有用的、最終可理解的模式的非平凡過程。它綜合使用統(tǒng)計分析數(shù)據(jù)倉庫、人工智能、信息科學(xué)等多個學(xué)科的技術(shù),從海量的客戶數(shù)據(jù)中找出傳統(tǒng)經(jīng)營分析方法難以洞察的客戶行為模式,給出客戶的詳細描述,并可以有效預(yù)測客戶的行為傾向。目前,數(shù)據(jù)挖掘在電信運營企業(yè)中的應(yīng)用越來越廣。但隨著應(yīng)用的深入,偏差和誤區(qū)也頻繁出現(xiàn),包括操作、流程、思路、方法、工具等。筆者試圖從經(jīng)典的數(shù)據(jù)挖掘理論和電信企業(yè)數(shù)據(jù)挖掘實踐出發(fā),找出常見的一些技術(shù)和業(yè)務(wù)問題,并給出避免或者解決這些問題的方法。

數(shù)據(jù)挖掘萬能論:身邊的永動機

我們身邊有永動機么?沒有,但是如果這樣講:“數(shù)據(jù)挖掘是萬能的,它可以計算出你想要的任何東西,只要有數(shù)據(jù)?!薄@句話就是永動機的理論。在數(shù)據(jù)挖掘的經(jīng)典理論中,模式并非一定存在,模式不明顯到與隨機分布差不多的時候,就根本沒有模式。翻譯成電信語言就是:如果流失客戶在系統(tǒng)中的數(shù)據(jù)與未流失客戶的特征沒有任何差別,那么流失是不可預(yù)測的。避免這類錯誤的方法只有一個:了解數(shù)據(jù)挖掘的經(jīng)典理論和基本概念。

◆命中率神話:揭開效果之謎

用分類技術(shù)(決策樹神經(jīng)網(wǎng)絡(luò))作流失預(yù)測的時候,很多工程師會跟甲方承諾一個命中率。命中率的概念是工程師給出的流失客戶的名單中下個月真正流失客戶的占比。這個值好像越高越好,其實不然。這是因為數(shù)據(jù)挖掘軟件作的預(yù)測實際上是一種概率的判決,必然存在錯誤的判斷。精確的說法應(yīng)該是在一定比例內(nèi)的命中率。比如本地網(wǎng)有10萬個客戶,則3000人名單的準確率、5000人名單的準確率、1萬人名單的準確率的說法才是科學(xué)的。企業(yè)需要實事求是,根據(jù)自己的業(yè)務(wù)需求確定一個綜合考慮覆蓋率的準確率期望。

◆軟件工具必須買:造中國自己的原子彈

有些企業(yè)經(jīng)理認為,軟件工具必須購買大公司開發(fā)的,其復(fù)雜、專業(yè)、有權(quán)威的示范性。但它是否適應(yīng)企業(yè)或者適應(yīng)研究的業(yè)務(wù)并不在經(jīng)理們重點考慮的范圍內(nèi)。如果我們經(jīng)常穿梭于專業(yè)的數(shù)據(jù)挖掘工作組,就會發(fā)現(xiàn)真正的高手是不使用商業(yè)數(shù)據(jù)挖掘軟件的,即使使用,也用SASEM這樣的可以寫代碼的軟件。他們的工作方法是:探索數(shù)據(jù)、找合適的算法、簡單編碼實現(xiàn)、跑數(shù)據(jù)和寫報告,因為應(yīng)用的層次深化和效果提升才是最重要的。中國可以造自己的原子彈,運營商呢?

◆工程師的水平標桿:智慧庫與會說話的工具

企業(yè)招聘數(shù)據(jù)挖掘工程師時,應(yīng)聘者眾多,有人自稱從事數(shù)據(jù)挖掘工作已20年,但事實上,國內(nèi)人士研究數(shù)據(jù)挖掘才不過十年。很多人認為統(tǒng)計也是數(shù)據(jù)挖掘,那么,如何去衡量數(shù)據(jù)挖掘工程師的真實實力與水平呢?第一,看他理論基礎(chǔ)。第二,看他掌握方法。沒有足夠的數(shù)學(xué)模型能力、統(tǒng)計分析能力、邏輯分析能力的工程師是不合格的。第三,看他創(chuàng)新能力。一句話,好的數(shù)據(jù)挖掘工程師是可以依靠的智慧庫,不那么優(yōu)秀的數(shù)據(jù)挖掘工程師只是會說話的工具。

◆模型不用更新:流水不腐,戶樞不蠹

有人說,模型做好了就不用更新了。中國古諺“流水不腐,戶樞不蠹”,用在數(shù)據(jù)挖掘上再合適不過。客戶是流動的、業(yè)務(wù)是變化的、政策是滾動的、對手是狡猾的、經(jīng)濟是波動的,那么模型是固定的嗎?不是,一系列的變化使得客戶的行為模式發(fā)生變化,模型也要適時更新,否則商機若失,必成庸碌之輩。

◆算法都一樣:西裝穿球鞋

有不少僅僅懂得數(shù)據(jù)挖掘技術(shù)皮毛的人會大手一揮:算法都是一樣的,不就是聚個類、預(yù)個測嗎?我們都知道穿西裝是不可以穿球鞋的,因為不匹配,在數(shù)據(jù)挖掘實踐中,算法是死板的,沒有一種算法可以一統(tǒng)江湖,算法的適用性非常重要,對噪聲點多而且多為奇異點的數(shù)據(jù),最好不用K-means這樣的算法,而要采用DBSCAN;反之遇到數(shù)據(jù)為球狀簇分布而且呈啞鈴狀的粘連簇,K-means的表現(xiàn)要遠好于DBSCAN。

數(shù)據(jù)挖掘就是軟件:腦指揮手還是手指揮腦

有人可能說,數(shù)據(jù)挖掘不就是一個軟件嗎?管理科學(xué)一直是先進技術(shù)與理念的最佳試驗場,從ERP、MRPII、OLAP、CRM(客戶關(guān)系管理)到DM(數(shù)據(jù)挖掘),我們都會有這樣一個經(jīng)驗,管理不是一個軟件,系統(tǒng)更不僅僅是一個軟件。上了CRM軟件不見得就搞好了客戶關(guān)系,數(shù)據(jù)挖掘軟件一裝,模型一跑,也并不是一個真正的數(shù)據(jù)挖掘系統(tǒng)。軟件工具是手,而工程師是大腦,我們需要的是智慧的人腦指揮能干的手,而不是不動腦地動手或者手指揮腦。數(shù)據(jù)挖掘軟件的戰(zhàn)斗力體現(xiàn)在使用者的智慧上。

◆會統(tǒng)計就會挖掘:老虎不會上樹

有人說,統(tǒng)計很牛,挖掘就很牛。首先,我們承認統(tǒng)計學(xué)與數(shù)據(jù)挖掘存在較為密切的關(guān)系。但是兩者并無特別聯(lián)系,在數(shù)據(jù)挖掘的各個發(fā)展階段,只有一個子方向的開拓可以算在統(tǒng)計學(xué)的功勞上,那就是貝葉斯網(wǎng)絡(luò)。我們希望統(tǒng)計回歸本位,既不托得太高,也不能看得太低:數(shù)據(jù)挖掘工程師都是具有統(tǒng)計分析能力的,統(tǒng)計分析數(shù)據(jù)挖掘的基礎(chǔ)能力和基本步驟之一。貓和老虎長得真像,可是老虎不會上樹啊。

◆業(yè)務(wù)重于挖掘結(jié)果:用人莫疑,疑人莫用

有這樣的本地網(wǎng),挖掘結(jié)果出來以后,與業(yè)務(wù)經(jīng)驗有些偏差,比如在模式的理解上有矛盾,業(yè)務(wù)人員認為結(jié)果不對,仍然按照業(yè)務(wù)經(jīng)驗修訂結(jié)果。

俗語云:用人莫疑,疑人莫用。既然花了成本做了數(shù)據(jù)挖掘,就要尊重客觀的挖掘結(jié)果,如果與業(yè)務(wù)經(jīng)驗矛盾,需要檢查挖掘的各個步驟,找出問題在哪里;如果沒有問題,那么就是過去的業(yè)務(wù)理解錯了,敢于面對現(xiàn)實,糾正以往的偏差,不失為一種風(fēng)度和智慧。

數(shù)據(jù)挖掘沒有用:淮南淮北,橘枳相異

有的本地網(wǎng)做完了數(shù)據(jù)挖掘項目,發(fā)現(xiàn)效果不好,于是得出結(jié)論:數(shù)據(jù)挖掘沒有用。其實,橘生淮南則為橘,生淮北則為枳。一水之隔,本質(zhì)區(qū)別,如同考試的時候59分與60分就差1分,但是兩種結(jié)果。數(shù)據(jù)挖掘的成功需要很多條件,缺一不可:第一,良好的數(shù)據(jù)環(huán)境;第二,優(yōu)秀的工程師;第三,適應(yīng)目標數(shù)據(jù)集的軟件工具;第四,分析目標數(shù)據(jù)集存在可被挖掘的非隨機的模式信息。解決數(shù)據(jù)挖掘有效性問題的方法就是檢查數(shù)據(jù)挖掘的各個步驟。


數(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); }