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

熱線(xiàn)電話(huà):13121318867

登錄
首頁(yè)精彩閱讀淺談數(shù)據(jù)處理中的相關(guān)分析
淺談數(shù)據(jù)處理中的相關(guān)分析
2015-11-17
收藏

淺談數(shù)據(jù)處理中的相關(guān)分析



大數(shù)據(jù)的發(fā)展經(jīng)歷了從因果分析到相關(guān)分析的轉(zhuǎn)變。宏觀上來(lái)講,如果兩個(gè)事務(wù)存在某種統(tǒng)計(jì)學(xué)意義上的依賴(lài)性就稱(chēng)兩者具有相關(guān)性。這里我們就簡(jiǎn)單聊聊各種相關(guān)分析的方法。
 

1、 先以電商中的商品推薦為例,來(lái)看看最基本的相關(guān)分析方法:

我們經(jīng)常會(huì)用到的比如計(jì)算兩個(gè)商品的相似度,或計(jì)算兩個(gè)用戶(hù)之間的相似度,如下圖所示,是基于商品的購(gòu)買(mǎi)行為,來(lái)計(jì)算兩個(gè)商品之間的相似程度。我們先基于此例來(lái)說(shuō)明。這里每個(gè)商品可以表示成用戶(hù)購(gòu)買(mǎi)行為的特征向量,其中1表示此用戶(hù)購(gòu)買(mǎi),0表示此用戶(hù)未購(gòu)買(mǎi)。

設(shè)商品a的特征向量為向量A, 商品b的特征向量為向量B,那么常用的計(jì)算相關(guān)性的方法有以下:

Jaccard相關(guān)是基于計(jì)算集合之間的相似度方法,而Cosine和Pearson都屬于積差相關(guān)的范疇。通過(guò)簡(jiǎn)單對(duì)比,我們看得出A和B的Pearson相關(guān)系數(shù)就是向量A和B歸一化后再計(jì)算Cosine相關(guān)系數(shù)的結(jié)果。
 

2、 等級(jí)相關(guān)分析

如果在某些情況下,我們不需要顧及計(jì)算向量中值的相對(duì)大小,那么還可以計(jì)算等級(jí)相關(guān)性系數(shù),如Spearman等級(jí)相關(guān)和Kendall等級(jí)相關(guān)等。等級(jí)相關(guān)沒(méi)有積差相關(guān)要求那樣嚴(yán)格,相同的情況下,等級(jí)相關(guān)的精確度要低于積差相關(guān)。
 

3 、偏相關(guān)分析

如果我們想除去共同噪聲的影響,可以選擇偏相關(guān)分析的方法(在頻域上叫偏相干)。其結(jié)果與先回歸掉噪聲再計(jì)算相關(guān)的結(jié)果是一樣的。
 

4、 頻域上的相關(guān)分析

如果我們的處理對(duì)象是時(shí)間序列,除了以上談到的方法外,我們還可以度量頻域上的相關(guān)性,如使用相干譜分析的方法,如小波相干等。即您可以得到不同時(shí)間點(diǎn)不同頻率上的線(xiàn)性相關(guān)性系數(shù),同時(shí)還可以平衡時(shí)間和空間上的分辨率。
 

但是在什么情況下,要選用哪個(gè)的相關(guān)性系數(shù)呢?

如果有時(shí)間建議大家不妨多做些實(shí)驗(yàn),而且要定期做,因?yàn)閿?shù)據(jù)集的變化(稀疏度、噪聲等因素)可能導(dǎo)致相似度指標(biāo)效果的變化。比如對(duì)于一個(gè)電商平臺(tái)的商品推薦系統(tǒng),初期時(shí)可能使用方法x效果最好,當(dāng)用戶(hù)數(shù)逐漸增加,商品越來(lái)越豐富,可能方法y效果最好,直到系統(tǒng)越來(lái)越復(fù)雜,可能這時(shí)方法z是最好的了。所以建議定期做些離線(xiàn)試驗(yàn)來(lái)選擇此時(shí)效果最好的方法。

我們常用的如Jaccard相關(guān), Cosine相關(guān),Pearson 相關(guān)都是屬于線(xiàn)性相關(guān)的范疇,復(fù)雜的還有非線(xiàn)性相關(guān)的方法,如多譜分析,互信息等。但這些在我們電商的場(chǎng)景中很少用到。


數(shù)據(jù)分析咨詢(xún)請(qǐng)掃描二維碼

若不方便掃碼,搜微信號(hào):CDAshujufenxi

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

OK
客服在線(xiàn)
立即咨詢(xún)
客服在線(xiàn)
立即咨詢(xún)
') } 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)的第一個(gè)參數(shù)驗(yàn)證碼對(duì)象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶(hù)后臺(tái)檢測(cè)極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說(shuō)明請(qǐng)參見(jiàn):http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".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 = '請(qǐng)輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請(qǐng)輸入正確的'+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); }