<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          一文讀懂數(shù)據(jù)挖掘建模預(yù)測

          共 4449字,需瀏覽 9分鐘

           ·

          2022-05-28 16:49

          什么是數(shù)據(jù)挖掘

          數(shù)據(jù)挖掘就是從大量的、不完全的、有噪聲的、模糊的、隨機的實際應(yīng)用數(shù)據(jù)中,提取隱含在其中的、人們事先不知道的、但又是潛在有用的信息和知識的過程。
          聽起來比較抽象,我們舉個例子。
          傍晚小街路面上沁出微雨后的濕潤,和煦的細風(fēng)吹來,抬頭看看天邊的晚霞,嗯,明天又是一個好天氣。走到水果攤旁,挑了個根蒂蜷縮、敲起來聲音濁響的青綠西瓜,心里期待著享受這個好瓜。
          由路面微濕、微風(fēng)、晚霞得出明天是個好天氣。根蒂蜷縮、敲聲濁響、色澤青綠推斷出這是個好瓜,顯然,我們是根據(jù)以往的經(jīng)驗來對未來或未知的事物做出預(yù)測。
          人可以根據(jù)經(jīng)驗對未來進行預(yù)測,那么機器能幫我們做這些嗎?
          能,這就是數(shù)據(jù)挖掘。
          “經(jīng)驗”通常以“數(shù)據(jù)”的形式存在,數(shù)據(jù)挖掘的任務(wù)就是從歷史數(shù)據(jù)(之前挑瓜的經(jīng)歷,注意是經(jīng)歷還不是經(jīng)驗)中挖掘出有用的“知識”,也就是所謂“模型”(現(xiàn)在就形成經(jīng)驗了),在面對新情況時(未拋開的瓜)模型就可以用來預(yù)測(是不是好瓜)。
          用高中生能理解的數(shù)學(xué)語言來講,數(shù)據(jù)挖掘建模任務(wù)的本質(zhì)就是,根據(jù)一些歷史已有的、從輸入空間 X(如 {[色澤青綠;根蒂蜷縮;敲聲濁響],[色澤烏黑;根蒂蜷縮;敲聲沉悶],[色澤淺白;根蒂硬挺;敲聲清脆]} )到輸出空間 Y(如 {好瓜,壞瓜,壞瓜})的對應(yīng),找出一個函數(shù) f,來描述這個對應(yīng)關(guān)系,這個函數(shù)就是我們要的模型。
          有了模型之后再做預(yù)測就簡單了,也就是拿一套新 x,用這個函數(shù)算一個 y 出來就完了。
          那么,模型又是怎么建立出來,也就是這個函數(shù)是怎么找出來的呢?
          想想如何讓一個人擁有判斷瓜好壞的能力呢?
          需要用一批瓜來練習(xí),獲取剖開前的特征(色澤、根蒂、敲聲等),然后再剖開它看好壞。久而久之,這個人就能學(xué)會用剖開前瓜的特征來判斷瓜的好壞了。樸素地想,用來練習(xí)的瓜越多,能夠獲得的經(jīng)驗也就越豐富,以后的判斷也就會越準確。
          用機器做數(shù)據(jù)挖掘是一樣的道理,我們需要使用歷史數(shù)據(jù)(用來練習(xí)的瓜)來建立模型,而建模過程也被稱為訓(xùn)練或?qū)W習(xí),這些歷史數(shù)據(jù)稱為訓(xùn)練數(shù)據(jù)集。訓(xùn)練好了模型后,好像發(fā)現(xiàn)了數(shù)據(jù)的某種規(guī)律,就可以拿來做預(yù)測了。
          也就是說,數(shù)據(jù)挖掘是用來做預(yù)測的,而要做到這種預(yù)測,需要有足夠多已經(jīng)有結(jié)果的歷史數(shù)據(jù)為基礎(chǔ)。

          數(shù)據(jù)挖掘能干什么

          那么,這種預(yù)測技術(shù)如何應(yīng)用在我們的生產(chǎn)銷售過程中呢?
          以貸款業(yè)務(wù)為例,金融機構(gòu)要做風(fēng)險控制,防止壞帳,就要在放貸前知道這個貸款人將來不能按時還款的風(fēng)險,從而決定是否放貸以及貸款利率。
          要做到這件事,我們要有一定數(shù)量的歷史數(shù)據(jù),也就是以前貸款人及貸款業(yè)務(wù)的各種信息,比如貸款人的收入水平、受教育程度、居住地區(qū)、信用歷史、負債率等等可能會影響違約率的因素,還有貸款本身的金額、期限、利率等等。
          然后就可以使用數(shù)據(jù)挖掘技術(shù)建立模型來尋找用戶及貸款的各種信息 X 和是否會發(fā)生違約 Y 之間的關(guān)系。
          建好的模型可以用來預(yù)測,及時發(fā)現(xiàn)高風(fēng)險用戶。
          需要說明的,數(shù)據(jù)挖掘模型的預(yù)測并不能保證 100% 準確(比如再有經(jīng)驗的瓜農(nóng)也有選錯瓜的時候),如果只有一例目標(比如只有一筆貸款)需要預(yù)測時,那就沒有意義了。但通常,我們都會需要預(yù)測很多例目標,這樣即使不是每一例都能預(yù)測正確,但能保證一定的準確率,這仍然是很有意義的。
          對于貸款業(yè)務(wù),模型找出來的高風(fēng)險客戶未必都是真的,但準確率只要足夠高,仍然能夠有效的防范風(fēng)險。
          數(shù)據(jù)挖掘技術(shù)的應(yīng)用非常廣泛,比如工業(yè)領(lǐng)域中可以根據(jù)歷史生產(chǎn)數(shù)據(jù)來預(yù)測良品情況,從而改進工藝參數(shù)降低不良率;畜牧業(yè)可以使用數(shù)據(jù)挖掘技術(shù)根據(jù)測量牲畜體溫來預(yù)測牲畜是否生病,從而提前防治;醫(yī)院也可以使用歷史醫(yī)療記錄基于數(shù)據(jù)挖掘技術(shù)找出關(guān)聯(lián)規(guī)律,幫助醫(yī)生更好地診斷疾病。
          總之,只要是有數(shù)據(jù)有場景幾乎都會考慮用數(shù)據(jù)挖掘解決某些問題。

          數(shù)據(jù)挖掘需要哪些流程

          通常一個完整的數(shù)據(jù)挖掘項目包含業(yè)務(wù)理解、數(shù)據(jù)理解、數(shù)據(jù)準備、數(shù)據(jù)預(yù)處理和建模、模型評估、模型部署應(yīng)用。
          業(yè)務(wù)理解的主要工作有需求調(diào)研,了解商務(wù)背景;明確業(yè)務(wù)目標和成功的標準。數(shù)據(jù)理解和業(yè)務(wù)理解一般是同時進行的,主要內(nèi)容包括確定建模所需要的數(shù)據(jù),描述數(shù)據(jù),探索數(shù)據(jù),檢驗數(shù)據(jù)質(zhì)量,明確數(shù)據(jù)挖掘目標和成功標準。這兩個階段的主要任務(wù)就是明確挖掘目標和建模數(shù)據(jù),目標和數(shù)據(jù)都明確以后就可以開始著手準備數(shù)據(jù)。
          數(shù)據(jù)準備的主要工作包括選擇數(shù)據(jù)、清洗數(shù)據(jù)、構(gòu)造數(shù)據(jù)、整合數(shù)據(jù)、格式化數(shù)據(jù)等等。如果企業(yè)的數(shù)據(jù)倉庫建設(shè)比較完善,那么這個步驟的工作就非常簡單,只需要做一些數(shù)據(jù)篩選,表間關(guān)聯(lián)工作即可。反之,如果數(shù)據(jù)都是一些非常原始的數(shù)據(jù)比如日志數(shù)據(jù)、流水數(shù)據(jù),數(shù)據(jù)準備這部分就比較耗費時間和精力了,需要做很多數(shù)據(jù)匯總,特征提取的工作。
          數(shù)據(jù)預(yù)處理和建模,這個環(huán)節(jié)是整個項目中技術(shù)難度最大的部分,通常必須由專業(yè)的挖掘工程師來完成。雖然,通俗地看,建模就是我們前面說過的在挑瓜過程中積累經(jīng)驗的事情,但實際上針對大量數(shù)據(jù)時仍然非常復(fù)雜。不同類型的數(shù)據(jù)和不同的預(yù)測目標會有不同的積累經(jīng)驗方案,也就是不同的算法。業(yè)界有數(shù)十種數(shù)據(jù)挖掘的算法,各有各的適應(yīng)場景和數(shù)據(jù)要求以及參數(shù),都需要根據(jù)實際情況來選擇使用和準備數(shù)據(jù)并調(diào)整參數(shù)。這個階段的主要工作有:樣本選取,確定訓(xùn)練樣本和測試樣本、數(shù)據(jù)預(yù)處理、模型算法技術(shù)選型、篩選變量、模型訓(xùn)練、模型測試等。
          需要理解的是:(1)數(shù)據(jù)預(yù)處理是非常有必要的,好的預(yù)處理往往比單純的調(diào)參更能提高模型性能;(2)預(yù)處理和建模過程并非一次性執(zhí)行完畢就大功告成了,需要不斷的迭代優(yōu)化,才能獲得比較理想的結(jié)果。
          模型評估,是對模型進行較為全面的評價的過程,計算模型的各種指標,比如 AUC,Gini,KS,Lift,模型穩(wěn)定性等等,這樣才能判斷出建出來的模型是不是足夠好。然后再進行模型的業(yè)務(wù)應(yīng)用測試,判斷是否能實現(xiàn)商業(yè)目標。模型合格后,就可以部署應(yīng)用,即把數(shù)據(jù)挖掘的成果部署到商業(yè)環(huán)境,應(yīng)用于生產(chǎn)活動。

          普通人能用數(shù)據(jù)挖掘做預(yù)測嗎?

          既然,數(shù)據(jù)挖掘是一項很實用的技能,那么普通人能學(xué)會嗎?
          從數(shù)據(jù)挖掘的流程來看,最難掌握的就是數(shù)據(jù)預(yù)處理和建模部分,而其他部分看起來專業(yè)術(shù)語也不少,但只要稍加學(xué)習(xí)都能掌握,沒什么技術(shù)難度。
          為什么說預(yù)處理和建模部分難學(xué)。因為這部分對數(shù)學(xué)能力的要求較高,一般只有統(tǒng)計學(xué)或數(shù)學(xué)相關(guān)專業(yè)的人士才具備相關(guān)的能力,普通人要想掌握,需要學(xué)習(xí)很多數(shù)學(xué)相關(guān)的課程,比如,概率論,數(shù)理統(tǒng)計,線性代數(shù),隨機過程……,這些知識是難以速成的。
          雖然在 Python 里有很多現(xiàn)成的算法包,通過調(diào)包也能建出模型,但不懂得數(shù)學(xué)原理模型效果又如何保證呢?比如精確度不好,或者不穩(wěn)定。如果沒有充分的數(shù)學(xué)知識就不知道如何改進,只能無方向的隨機嘗試,如同大海撈針。
          例如,5% 的顧客沒有指定年齡,是整體忽略該變量,還是忽略這部分有缺失的樣本,又或者是將缺失值補充完整(使用平均值填充還是中位數(shù)填充又或者更復(fù)雜的方法的填充),或者是訓(xùn)練一個帶這個特征的模型,再訓(xùn)練一個不帶這個特征的模型。同樣是缺失值處理,當缺失率為 90% 時,是否還采用相同的處理方法呢。
          再例如,高基數(shù)變量如何處理,數(shù)據(jù)噪音如何處理,不平衡樣本,高偏數(shù)據(jù),各種模型參數(shù)……
          這些都需要建模師結(jié)合自己的知識和經(jīng)驗反復(fù)的去調(diào)試。要知道,有專業(yè)知識的選手其實也會用這些現(xiàn)成的函數(shù)包,但建一個好模型通常仍然要幾天甚至數(shù)周時間,其中大部分時間都是在不斷地調(diào)整優(yōu)化。并不是把數(shù)據(jù)往算法里一丟就完事的。
          雖然有了封裝好的算法,要學(xué)會數(shù)據(jù)挖掘,也還是要學(xué)數(shù)學(xué),學(xué)算法。這事在培訓(xùn)班中速成是沒有戲的。
          那么,對于普通人來說還有沒有什么辦法不學(xué)這些晦澀難懂的知識也能做數(shù)據(jù)挖掘呢?
          答案是,有的。那就是利用工具,自動數(shù)據(jù)挖掘工具。自動數(shù)據(jù)挖掘工具將建模所需要知識和流程整合起來,這樣就可以利用前人的知識自動建模和預(yù)測了。借助自動建模工具,我們只需要完成業(yè)務(wù)理解,數(shù)據(jù)準備過程,剩下的難度較大,并且需要反復(fù)迭代進行的建模過程盡可交給工具來完成。
          這樣解決掉最難的部分,剩下的環(huán)節(jié)就容易多了,只要熟悉業(yè)務(wù),了解一些基本概念,就能夠用數(shù)據(jù)挖掘做預(yù)測了。

          有哪些簡單易用的數(shù)據(jù)挖掘工具?

          既然工具可以幫助我們解決技術(shù)難度最大的部分,那么有哪些好用的自動建模工具可以供大家使用呢?
          實際上市面上已經(jīng)有不少很受歡迎數(shù)據(jù)挖掘工具,比如 weka,rapidminer,knime 等,不過大部分的工具還是比較沉重,安裝使用都比較復(fù)雜。這里向大家推薦一款無基礎(chǔ)人士也能用的簡單工具:由國內(nèi)著名數(shù)據(jù)軟件公司潤乾出品的易明建模
          易明建模采用的是全自動化的建模流程,只需一鍵式的操作就能夠自動進行預(yù)處理和模型搭建。什么缺失值,異常值,高基數(shù)變量,時間特征……統(tǒng)統(tǒng)不用擔心,還有算法選擇,參數(shù)尋優(yōu)等,易明建模都會自動幫你搞定。
          在算法種類方面易明建模涵蓋了常用的機器學(xué)習(xí)算法,比如線性回歸,邏輯回歸,樹類算法,集成算法,pca 等,能夠解決分類問題,回歸問題和時間序列問題,大部分的商業(yè)場景問題都能用。
          在模型質(zhì)量方面,易明建模擁有頂級科學(xué)家的經(jīng)驗和理論,并且經(jīng)過了大量的實踐驗證。遠超培訓(xùn)班選手,能夠達到中上等數(shù)據(jù)挖掘師的水平。當然作為一個通用的數(shù)據(jù)挖掘軟件,和苦讀 N 年的專業(yè)選手精心調(diào)出來的模型可能還會稍差一些,但對于大多數(shù)的場合已經(jīng)足夠用了。
          易明建模還有一大亮點,就是耗費資源少,建模速度快。百萬級的樣本量,PC 機也能跑,萬級的樣本量,更是幾分鐘就搞定。當然巧婦難為無米之炊,如果數(shù)據(jù)量太少也是不行的。
          借助易明自動建模,普通人也能做數(shù)據(jù)挖掘,重要的是,這么好用的軟件竟然還是免費的,免費的羊毛不薅白不薅。直接到潤乾的官網(wǎng)上就可以下載。
          雖然借助自動建模可以省去學(xué)習(xí)算法原理的過程,但是數(shù)據(jù)挖掘流程的其它部分也還是需要了解一些基本的知識,起碼要學(xué)會評估模型,知道我們建出的模型到底好不好。
          比如模型質(zhì)量,因為是用于預(yù)測,我們很容易簡單地想像可以用準確率來評估,然而并不是。數(shù)據(jù)挖掘模型的質(zhì)量通常會用一個叫做 AUC 的指標來評估,比單純一個準確率復(fù)雜得多。不同的場景側(cè)重的指標也不相同,比如還有查全率,提升度等。如果是回歸問題則需要用 mse, rmse, ……來評估。如果這些都不懂,那樣就算能建出模型也是一頭霧水。
          好在,這些東西雖然聽起來有點復(fù)雜,但其實學(xué)起來并不難,只要有高中數(shù)學(xué)基礎(chǔ),花一兩周時間就能理解學(xué)會了,這屬于可速成的知識。和學(xué)數(shù)學(xué),學(xué)算法相比,相當于打了一個粉碎性折扣。
          這里有一套課程可以看http://www.raqsoft.com.cn/wx/course-data-mining.html,從零開始,深入淺出講解數(shù)據(jù)挖掘的基礎(chǔ)概念和實用知識,特別偏重從應(yīng)用的角度教大家如何做數(shù)據(jù)挖掘,課程中的一些案例也來源于真實業(yè)務(wù)場景,很適合沒什么基礎(chǔ)的人看。

          ?乾學(xué)院

          ?數(shù)據(jù)技術(shù)與產(chǎn)品的知識分享平臺

          ?識別左側(cè)二維碼關(guān)注乾學(xué)院?

          ?微信搜一搜 : 乾學(xué)院

          請來【乾學(xué)院】的原文中留言,發(fā)表您的觀點!
          瀏覽 42
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  操B免费| 青青超碰在线观看2012 | 一区二区13p | 五月丁香婷婷五月 | 欧美日韩三级片免费观看 |