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

熱線電話:13121318867

登錄
首頁精彩閱讀大數(shù)據(jù)之基于模型的復(fù)雜數(shù)據(jù)多維聚類析(二)?
大數(shù)據(jù)之基于模型的復(fù)雜數(shù)據(jù)多維聚類析(二)?
2016-02-21
收藏

大數(shù)據(jù)之基于模型的復(fù)雜數(shù)據(jù)多維聚類析(二)

在隱樹模型中,一個隱變量對應(yīng)一種數(shù)據(jù)聚類的方法。隱樹模型允許模型中有多個隱變量,所以自然地可以多維同時聚類。在例子模型中,可以按照分析能力或者語言能力對學(xué)生聚類,也可以按照智力對學(xué)生聚類。在隱樹模型中,聚類分析可以通過計算給定學(xué)生成績的后驗概率進(jìn)行判斷。所以,利用隱樹模型進(jìn)行多維聚類分析的技術(shù)重點就在如何通過觀測數(shù)據(jù)學(xué)習(xí)一個最優(yōu)的模型。抽象地說,就是找到能夠最好地解釋數(shù)據(jù)的一個生成隱樹模型(Generative Latent tree model)。

隱樹模型的學(xué)習(xí)

  隱樹模型的學(xué)習(xí)是一個對模型逐步優(yōu)化的過程,優(yōu)化的目標(biāo)函數(shù)是一個稱為貝葉斯信息準(zhǔn)則(Bayes information criterion, 簡稱BIC) 的函數(shù):

  BIC(m|D) = max θ log P(D|m, θ) – d(m)logN/2

  BIC準(zhǔn)則要求模型與數(shù)據(jù)盡量緊密地擬合,但其復(fù)雜不能過高。所以式中第一項表示擬合程度,而第二項是對于模型復(fù)雜度的一個懲罰項。我們的優(yōu)化過程是一個基于搜索的爬山算法(Hill-Climbing)。以只包含一個隱變量的簡單的隱樹模型作為搜索的起始模型,在搜索的過程中,逐步引入新的隱變量、增加隱變量的取值個數(shù)、或者調(diào)整變量之間的連接。這是一個逐步修改模型的過程,在這個過程中,模型與數(shù)據(jù)的擬合程度不斷改進(jìn),從而BIC分逐步增加。當(dāng)模型就變得太復(fù)雜時,BIC會不升反降,于是搜索過程停止。

  隱樹模型的學(xué)習(xí)是一個非常耗時的過程,主要原因在于對于BIC分?jǐn)?shù)的計算。BIC函數(shù)的第一項叫做最大似然函數(shù),在模型包含缺失值或者隱變量時,計算最大似然函數(shù)需要調(diào)用EM(Expectation-Maximization)算法。盡管我們已經(jīng)對于限制了模型結(jié)構(gòu)為簡單的樹狀結(jié)構(gòu),但是在這樣的模型上進(jìn)行EM的計算依然是非常困難。圍繞隱樹模型的很多工作都是在研究如何對模型學(xué)習(xí)進(jìn)行加速的,這兒就不贅述了。

  基于隱樹模型的多維聚類分析實例

隱樹模型的學(xué)習(xí)及多維聚類分析實例

隱樹模型的學(xué)習(xí)及多維聚類分析實例

  我們以一個真實的數(shù)據(jù)分析實例來展現(xiàn)多維聚類分析。數(shù)據(jù)來自某地區(qū)的關(guān)于貪污的社會調(diào)查問卷。通過一些數(shù)據(jù)預(yù)處理,我們的數(shù)據(jù)(如圖所示)包含了1200份的問卷,以及31個問題。比如說C_City表示被訪問者對于該地區(qū)的貪污普遍性的看法,可以有4個選項,分別是非常普遍,普遍,不普遍,以及非常不普遍。C_Gov和C_Bus分別表示受訪者對于該地區(qū)政府部門或商業(yè)部門的貪污普遍性的看法,同樣也有四個選項。Tolerance_C_Gov和Tolerance_C_Bus則分別表示受訪者對于該地區(qū)的政府部門以及商業(yè)部門的貪污的容忍程度,可以選擇完全不能容忍,不能容忍,能容忍,完全能容忍。數(shù)據(jù)表里面的-1表示受訪者對該問題的回答缺失。

  利用隱樹的學(xué)習(xí)算法,我們從這個數(shù)據(jù)得到了一個如圖所示的模型。葉節(jié)點對應(yīng)問卷問題,即顯變量。中間結(jié)點,Y0-Y8是從數(shù)據(jù)中發(fā)現(xiàn)的隱變量,括號里面的數(shù)字表示這個變量所取的狀態(tài)個數(shù)。我們發(fā)現(xiàn)這些隱變量都有一定的意義,比如,Y2和問卷中的Sex,Age,Income,Education這些問題緊密連接,說明Y2應(yīng)該是表示受訪人的人口統(tǒng)計信息。Y3和問卷中的Tolerance_C_Gov和Tolerance_C_Bus緊密聯(lián)系,說明Y3是反映受訪者總體對于貪污的看法。

  模型中的每個隱變量表示數(shù)據(jù)聚類的一種方式。比如,變量Y2有4個值,說明Y2提示數(shù)據(jù)可以分成四個類。這種聚類主要基于Sex,Age,Income,Education這些人口統(tǒng)計信息相關(guān)變量的,所以可以說當(dāng)我們關(guān)注人群的人口統(tǒng)計信息這個側(cè)面時,我們可以根據(jù)Y2把人群分成四類。具體地研究這四類的類條件概率(Class-Conditional ProbabilityDistribution)特性,我們進(jìn)一步發(fā)現(xiàn)它們分別代表:低收入的年輕人群,低收入的女性人群,受過高等教育的高收入人群,以及只接受初等教育的一般收入人群。同時,我們看到Y(jié)3有3個取值,這說明從人群對于貪污總體看法這個側(cè)面出發(fā),可以把人群分成三類,分別是對于貪污完全不能容忍的人群,對于貪污比較不能容忍的人群,對于貪污可以容忍的人群。同樣地,我們的聚類也可以基于其他隱變量所代表的側(cè)面。這樣從模型中我們得到了9種聚類的方法,達(dá)到了多維同時聚類的效果。

數(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(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(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ù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時表示是新驗證碼的宕機(jī) 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); }