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

熱線電話:13121318867

登錄
首頁精彩閱讀點擊流數(shù)據(jù)中非結(jié)構(gòu)化數(shù)據(jù)的挖掘—文本
點擊流數(shù)據(jù)中非結(jié)構(gòu)化數(shù)據(jù)的挖掘—文本
2016-07-03
收藏

點擊流數(shù)據(jù)中非結(jié)構(gòu)化數(shù)據(jù)的挖掘—文本

非結(jié)構(gòu)化數(shù)據(jù)是大數(shù)據(jù)數(shù)據(jù)多樣化的的一個特點,而點擊流中的數(shù)據(jù)是多樣化數(shù)據(jù)的一部分。依托強大的網(wǎng)站分析工具,可以得到最細粒度的原始數(shù)據(jù)(Raw Data),如果這些原始數(shù)據(jù)僅僅用來看看報表,那意義太小。非結(jié)構(gòu)化化數(shù)據(jù)包括文本、視頻、文檔、音頻、甚至地理位置信息等等,本篇介紹的是點擊流中的非結(jié)構(gòu)化數(shù)據(jù)的文本挖掘應(yīng)用——當然,核心還是如何更好的應(yīng)用這些非結(jié)構(gòu)化數(shù)據(jù)。

一、 點擊流中的非結(jié)構(gòu)化文本數(shù)據(jù)都有哪些?

首先來定性什么是非結(jié)構(gòu)化文本數(shù)據(jù),這里指的是點擊流原始數(shù)據(jù)中以文字形式展現(xiàn)的數(shù)據(jù),包括原始LOG日志以及已經(jīng)被結(jié)構(gòu)化入庫中的部分數(shù)據(jù),比如Adobe Analytics的Data Feed,Webtrekk中的Raw Data。當然,有些數(shù)據(jù)雖然是文本或字符串的形式,但并不是真正意義上的非結(jié)構(gòu)化,比如瀏覽器的類型信息、推薦來源,雖然取值為文本,但取值都有規(guī)律,這些數(shù)據(jù)在數(shù)據(jù)庫中更多的是作為外鍵(FK)關(guān)聯(lián)到維度表,因此都不算嚴格意義上的非結(jié)構(gòu)化數(shù)據(jù)。 真正的非結(jié)構(gòu)化文本數(shù)據(jù),包括:

搜索詞:我們永遠無法準確定義用戶的搜索詞都有哪些;

完整URL地址:尤其是含有特定監(jiān)測Tag的地址;

特定監(jiān)測標簽:通常鑒于以URL Tag形式進行監(jiān)測的情形;

頁面名稱:名稱的規(guī)范性取決于系統(tǒng)配置信息;

用戶自定義標簽:比如用戶對自身的評價標簽——偉岸、高富帥等;

文章特定信息:如文章摘要、關(guān)鍵字等,跟用戶一樣,文章信息也是因文章而已;

用戶評論、咨詢內(nèi)容:絕對的非結(jié)構(gòu)化段落;

唯一設(shè)備號:如IMEI、MAC等(這部分通常會作為關(guān)聯(lián)主鍵和唯一識別標示,不會作為規(guī)則提取的字段);

這些信息的特點是:①取值通常是文本或字符串,②長度不一致,單值結(jié)果的長度可能是1個字節(jié)甚至是1000個字節(jié)不等,③無明確的值域范圍。

二、 這些數(shù)據(jù)都是從哪來的?

這些數(shù)據(jù)通常都是用戶自定義的,另外也包括由于系統(tǒng)產(chǎn)生或收集的非結(jié)構(gòu)化數(shù)據(jù)本身。

自定義非結(jié)構(gòu)化文本數(shù)據(jù)。這些信息通常都是在工具中通常都是自定義的維度獲取,比如webtrends中的metea、Adobe Analytics中自定義Prop和eVar、UA中的Dimension等,如Adobe Analytics中的Prop的字段是以varchar(100)的格式定義的,這意味著如果需要收集數(shù)據(jù)的單個結(jié)果長度超過100個字節(jié),結(jié)果將被截斷;而eVar的字段格式與Prop相同,但程度更長,是255,所以從底層數(shù)據(jù)支持的角度考慮,如果在自定義維度時,在不考慮路徑應(yīng)用的情況下盡量使用eVar來定義。

系統(tǒng)獲取的非結(jié)構(gòu)化文本數(shù)據(jù)。比如通過Adobe分類規(guī)則生成器、處理規(guī)則或JS自動復(fù)制變量值的形式都會產(chǎn)生。

三、 非結(jié)構(gòu)化文本數(shù)據(jù)的應(yīng)用場景在哪?

通常情況下,非結(jié)構(gòu)化的數(shù)據(jù)可以跟結(jié)構(gòu)化的數(shù)據(jù)一樣,作為分析的維度應(yīng)用到各種報表或OLAP中;但這僅僅能發(fā)揮其一小部分作用,原因是只靠固定維度的常規(guī)分析難以挖掘非結(jié)構(gòu)化數(shù)據(jù)中隱含的知識點,因此我們需要借用數(shù)據(jù)挖掘的相關(guān)技術(shù)。 以搜索詞為例,站內(nèi)搜索詞基本上每個工具都會監(jiān)測 ,但是搜索詞的常規(guī)應(yīng)用場景大多集中在以下幾種:

對運營體系來講,看下最近用戶熱搜了哪些詞,哪些詞有什么樣的變化趨勢,并結(jié)合轉(zhuǎn)化效果來指導(dǎo)搜索詞運營;

對采銷商品體系來講,挖掘下購買某些品類的用戶通常會通過哪些詞進行搜索,以此來提高在這些展現(xiàn)結(jié)果頁的排名以獲得更好的展示和點擊,創(chuàng)造售賣機會;

對搜索產(chǎn)品開發(fā)而言,用戶搜索后的結(jié)果數(shù)、排序功能、篩選等功能怎樣,引發(fā)了用戶的哪些連環(huán)反應(yīng),為產(chǎn)品功能優(yōu)化提供參考;

對SEO和SEM來講,站內(nèi)的搜索詞可以作為站外SEM選詞、匹配規(guī)則調(diào)整和站內(nèi)頁面SEO優(yōu)化的參考…

這些場景固然有用且實用,但其中有一個問題,除了SEO和SEM對于關(guān)鍵字的選擇和拓展上,可以采用全量的方式應(yīng)用以外,其他的業(yè)務(wù)體系都無法直接拿來復(fù)用。換句話說,SEO和SEM可以把所有關(guān)鍵字拿來用,但其他業(yè)務(wù)部門只能用到其中一部分,原因是大量關(guān)鍵詞從單純從字面上無法挖掘深層價值。 舉個例子,比如家電采銷需要過濾出某段時間家電相關(guān)搜索詞,通過搜索某些關(guān)鍵詞詞根,然后用正則或模糊匹配來搜索結(jié)果并作進一步分析,但總有很大一部分次是業(yè)務(wù)無法提取的價值所在,比如:

“三星”和“note2”,沒有經(jīng)驗的人是無法知曉二者是如何關(guān)的?

搜索“三星”的,你并不知道他想找的是三星手機還是三星電視;

我在一次訪問中搜索了n多詞,到底想找什么還是隨便看看?

作為家電品類的目標客戶,通常會搜索哪些詞?

隱藏用戶搜索詞中的特定需求有哪些——比如超薄、紅色還是商務(wù)特點?

四、非結(jié)構(gòu)化文本數(shù)據(jù)的挖掘?qū)崿F(xiàn)

默認我們都是通過Data Feed或Raw Data的形式進行挖掘,因此這里講省略掉數(shù)據(jù)監(jiān)測收集和入庫的過程,只從數(shù)據(jù)挖掘的角度進行探討。

1. 基于關(guān)聯(lián)規(guī)則文本挖掘

關(guān)聯(lián)規(guī)則中最常用的是Apriori,其核心是基于兩階段頻集思想的遞推算法,該關(guān)聯(lián)規(guī)則在分類上屬于單維、單層、布爾關(guān)聯(lián)規(guī)則,常用于事務(wù)性的挖掘規(guī)則中(所謂事務(wù)性規(guī)則是事件間的關(guān)聯(lián),無事件概念),比如在一次事件中通常哪兩種事件或事物一起發(fā)生。 這種關(guān)聯(lián)規(guī)則的問題在于缺乏時間的因素,只能判斷同期內(nèi)發(fā)生事件。比如用關(guān)聯(lián)規(guī)則出現(xiàn)的問題可能是:搜索了三星的用戶還搜索了蘋果,這種結(jié)果應(yīng)用在搜索功能體驗上沒有問題,但是如果應(yīng)用在有強烈時間關(guān)系的場景下就有問題了:

A、B兩篇文章,分別是上下文兩部分,這兩部分通過關(guān)聯(lián)規(guī)則提示相關(guān)性必然非常強,但里面的推薦邏輯是看了A(上文)后才看B(下文),而不是先推薦看B,再看A;
A、B兩個商品有強烈的關(guān)聯(lián),假設(shè)A為鼠標,B為筆記本,通常是先購買筆記本,然后才是購買鼠標,如果再買了鼠標之后推薦買筆記本,顯示失去了邏輯關(guān)系。
諸如此類的應(yīng)用場景非常多,核心是要把事物發(fā)生的先后順序考慮在里面。因此關(guān)聯(lián)規(guī)則通常適用于沒有明顯時間序列的業(yè)務(wù)應(yīng)用場景,另外對于支持度和置信度的設(shè)置都要根據(jù)實際業(yè)務(wù)經(jīng)驗來調(diào)整,過低的支持度和置信度出來的規(guī)則沒有意義,過高的設(shè)置又帶來規(guī)則過少。 關(guān)聯(lián)規(guī)則相對其他數(shù)據(jù)挖掘模型簡單,更易于業(yè)務(wù)理解和應(yīng)用,通常解釋的是“干了某件事之后還會干什么事”,比如:

搜了某個關(guān)鍵字之后用戶還會搜索什么?

看了某頁面/文章/評論之后用戶還會看什么?

從某個渠道進入之后通常還會從那個渠道進入?

2. 序列模式挖掘

序列模式挖掘解釋的關(guān)系跟關(guān)聯(lián)模型相同,只不過把時間因素考慮在內(nèi),算法包括三類:

Apriori算法:典型代表GSP算法,SPADE算法;

基于劃分模式的生長算法:典型代表是FreeSpan和PrefixSpan算法;

基于序列比較的算法:代表為Disc-all;

整體來看PrefixSpan和Disc-all在算法效率和性能表現(xiàn)上會更好,同時,考慮到業(yè)務(wù)對時間上的約束條件,比如我們分析發(fā)現(xiàn),用戶的存留周期只有1年,那么我們只想對1年內(nèi)發(fā)生重復(fù)行為的用戶進行針對性動作,1年就是我們的約束條件。這也是在做基于時間序列也需要考慮的因素。

3. 文本聚類挖掘

聚類分析是業(yè)務(wù)進入數(shù)據(jù)挖掘場景最基本的需求,通常的需求如,描述某類用戶的基本特征,同時,這些特征可以作為進一步挖掘和分析的基本條件。聚類分析中最常用的算法是K-MEANS聚類和兩步聚類,由于聚類方法簡單實用,在此做分析下二者的差異點和主要應(yīng)用點:

K-MEANS聚類:客戶特征整體分群分析,大量會員或用戶進行分群,找到不同群體突出特點。特點:①噪點過濾(但是不能控制過濾程度),②分組數(shù)自動/指定皆可,③通過標準化減少極值影響。

兩步聚類:兩步聚類與K均值應(yīng)用場景一致,特點:①要求指定分組數(shù),一定經(jīng)驗要求,②受極值、噪點影響大且不能設(shè)置,③大數(shù)據(jù)量時開銷資源大,④受初始質(zhì)點選擇分類受影響大。

通常我們會把文本中的字段作為聚類的變量,以此來挖掘某類用戶的具體特征。文本聚類常用的業(yè)務(wù)場景是:把用戶分類,然后查看某類用戶中哪些特征較為明顯,然后針對性的做進一步細分和挖掘,比如: 把購買的用戶分成3類(既可以指定,也可以系統(tǒng)自動分類),然后找到每類用戶中的突出特點,如A類用戶對優(yōu)惠券、折扣的敏感度高,那么可以結(jié)合其他特征定義為價格主導(dǎo)型客戶;B類用戶對產(chǎn)品需求集中度高,但受價格波動和其他因素影響較小,屬于產(chǎn)品導(dǎo)向型;C類用戶對評論、咨詢、分享的參與率高,并且明顯影響其購買決策,那么這類用戶屬于輿論導(dǎo)向型。將這些用戶簡單分類之后,再深挖其中每類用戶受其中每個變量的影響程度,比如結(jié)合決策列表和決策樹深挖其購買決策影響因素,找到某類用戶影響決策的最終因素。

4. 文本規(guī)則提取

所謂的文本規(guī)則提取,指的是把文本作為用戶提取規(guī)則的一個變量,通常用決策樹SVM、SLRM來提取業(yè)務(wù)規(guī)則,比如要找到購買家電類的用戶,他們對產(chǎn)品有哪些需求點,可以通過以下幾種方式提取規(guī)則:

決策樹決策樹挖掘模式通常使用C 5.0、C&RT、CHAID、QUEST等,決策樹模型的特點是以樹狀展現(xiàn)規(guī)則,并按照規(guī)則對目標的影響程度分支,非常利于業(yè)務(wù)理解和規(guī)則提取。

文本規(guī)則提取通常也叫做分類,意思是把具備某類目標的用戶中影響因素最大的幾個規(guī)則提取出來。這是業(yè)務(wù)應(yīng)用最常用的一種數(shù)據(jù)挖掘模型,常用于:

在已經(jīng)找到的目標用戶群體中,發(fā)現(xiàn)流失用戶的集中特點,比如最后一次購買間隔超過6個月,此時可以對超過6個月的用戶做流失前的挽回;

要針對A類商品促銷,可以針對購買了A類商品的用戶進行規(guī)則挖掘,可能找到的是上次購買的是C商品,同時收入高于1000,地域是北京的用戶,此時直接提取出具備該規(guī)則的用戶進行精準營銷;

比如現(xiàn)在有一批新品需要推廣,需要找到目標人群,可以針對已知人群進行挖掘,最終出來的結(jié)果可能是搜索搜索了黑色、篩選了“新品上架”、年齡是25歲以下的女性用戶,針對具備這些規(guī)則的用戶的精準營銷必然具有很好的效果和拉升作用;

把客戶進行A/B/C分級之后,找到A類客戶評論、標簽和關(guān)鍵字中的關(guān)鍵字段,找到各類用戶的典型情感標簽。

以上四類是文本數(shù)據(jù)挖掘中最常用的場景,由于文本的限制,文本不能參與到數(shù)據(jù)挖掘中對變量類型要求是數(shù)據(jù)值相關(guān)的字符集的建模中。但文本經(jīng)過處理后可以作為建模的重要變量,并且該變量由于非結(jié)構(gòu)化的屬性,具有更多的色彩。

文本挖掘中,充滿挑戰(zhàn)的是對文本段落的挖掘和關(guān)鍵字的提取,比如用戶在一段評論中,如何提取大段文字中的關(guān)鍵字標簽是關(guān)鍵,當然欣喜的是國內(nèi)已經(jīng)有些公司有實力做文本關(guān)鍵字的提取,同時結(jié)合SEO的方法基本能有效提煉大段文字中的關(guān)鍵字。

但另一個挑戰(zhàn)是文本的“語意”。由于文本在漢語中的豐富的色彩,對文本的感情屬性的判斷需要根據(jù)語境,比如“很好”這個詞,普通情況下是贊美的語意,但如果上文說到是負面,再結(jié)合這個詞,則明顯是諷刺的意思。文本語意挖掘在用戶輿論風向標、用戶評價積極性、用戶滿意度和好感度中的應(yīng)用及其重要,目前尚沒有有效的機器解決方案,當前更多的是結(jié)合機器算法以及人工識別是主流解決方法。

當然,隨著機器學(xué)習算法的深入研究以及CPU性能的提高,機器很有可能達到或超過人腦的能力,屆時可能會實現(xiàn)對語言的判斷,另外通過人工干預(yù)預(yù)設(shè)固定場景和學(xué)習路徑,也許會解決中國語言中語境的問題。


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