本發(fā)明涉及在線社交網(wǎng)絡(luò)用戶關(guān)系領(lǐng)域,特別涉及一種基于機(jī)器學(xué)習(xí)法和RFM模型的在線社交網(wǎng)絡(luò)用戶關(guān)系強(qiáng)度預(yù)測(cè)方法。
背景技術(shù):
在線社交網(wǎng)絡(luò)的廣泛使用,比如微博、微信,生成一個(gè)數(shù)據(jù)爆發(fā)式增長(zhǎng)的虛擬社交網(wǎng)絡(luò)。用戶交互和鏈接形成了網(wǎng)絡(luò)系統(tǒng),人與人之間的社會(huì)關(guān)系有了新的表現(xiàn)方式,對(duì)現(xiàn)實(shí)社會(huì)關(guān)系產(chǎn)生影響。然而,互聯(lián)網(wǎng)環(huán)境下,人們對(duì)社交網(wǎng)絡(luò)中的信息掌控能力并不充足,不能夠所產(chǎn)生信息進(jìn)行有效的過濾和屏蔽,容易導(dǎo)致個(gè)人隱私的泄露。深入研究后可知,這種信息掌控能力的缺失來自于無法有效地對(duì)用戶間關(guān)系強(qiáng)度的進(jìn)行判別預(yù)測(cè)。因此,對(duì)大量在線社交網(wǎng)絡(luò)用戶交互數(shù)據(jù)進(jìn)行研究,探索人類社會(huì)的屬性在網(wǎng)絡(luò)環(huán)境的關(guān)系,能提高用戶隱私安全保護(hù)能力,避免大量無用信息的干擾。此外,還有助于各類社交網(wǎng)絡(luò)應(yīng)用服務(wù)的開發(fā)和推廣。
關(guān)系強(qiáng)度概念是1973年格蘭諾維特首次提出,他將關(guān)系強(qiáng)度定義為一個(gè)持續(xù)性的情感強(qiáng)度、親密程度和服務(wù)交換功能,并將關(guān)系強(qiáng)度分成強(qiáng)關(guān)系和弱關(guān)系。本研究在此基礎(chǔ)上對(duì)關(guān)系廣度進(jìn)行了細(xì)分,分成了非常強(qiáng)關(guān)系、強(qiáng)關(guān)系、一般關(guān)系、弱關(guān)系、非常弱關(guān)系?,F(xiàn)有對(duì)關(guān)系強(qiáng)度的研究方法大多使用圖或者統(tǒng)計(jì)數(shù)據(jù)來對(duì)關(guān)系進(jìn)行描述,這些方法能夠表明出用戶間的信息傳遞和強(qiáng)度,但是需要進(jìn)行假設(shè),有著較強(qiáng)的主觀性,導(dǎo)致研究結(jié)果不準(zhǔn)確,并且現(xiàn)有的研究方法對(duì)關(guān)系強(qiáng)度的分類模糊不準(zhǔn)確。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種在線社交網(wǎng)絡(luò)用戶關(guān)系強(qiáng)度預(yù)測(cè)方法,目的在于解決現(xiàn)有對(duì)關(guān)系強(qiáng)度的預(yù)測(cè)需要進(jìn)行假設(shè),存在較強(qiáng)的主觀性,導(dǎo)致研究結(jié)果不準(zhǔn)確,并且現(xiàn)有研究方法對(duì)關(guān)系強(qiáng)度的分類模糊不準(zhǔn)確的問題。
為解決上述問題,本發(fā)明實(shí)施例提供一種在線社交網(wǎng)絡(luò)用戶關(guān)系強(qiáng)度預(yù)測(cè)方法,其特征在于,具體包括以下步驟:
獲取用戶狀態(tài)更新及與好友間的互動(dòng)數(shù)據(jù);
根據(jù)RFM模型對(duì)用戶和好友的互動(dòng)數(shù)據(jù)進(jìn)行目標(biāo)特征信息的提?。?/p>
獲取用戶自定義關(guān)系程度信息;
對(duì)目標(biāo)特征信息和用戶自定義關(guān)系程度信息進(jìn)行數(shù)據(jù)清理;
根據(jù)清理后的數(shù)據(jù)獲得數(shù)據(jù)集;
根據(jù)數(shù)據(jù)集創(chuàng)建初始節(jié)點(diǎn);
判斷數(shù)據(jù)集中元組是否屬于同一類;
若是,獲取節(jié)點(diǎn)并進(jìn)行標(biāo)注;
若否,根據(jù)屬性選擇度量法,確定分裂屬性和分裂點(diǎn),依據(jù)分裂屬性和分裂點(diǎn)進(jìn)行分裂以獲取節(jié)點(diǎn),對(duì)獲取的節(jié)點(diǎn)進(jìn)行標(biāo)注;
由獲得的若干標(biāo)注了的節(jié)點(diǎn)形成決策樹,并對(duì)決策樹進(jìn)行剪枝操作后判斷用戶自定義關(guān)系程度是否準(zhǔn)確。
作為一種實(shí)施方式,若在線社交網(wǎng)絡(luò)為微博時(shí),RFM模型的R值表示用戶與好友最近一次互動(dòng)時(shí)間,F(xiàn)值表示用戶和好友互動(dòng)頻率,M值表示為用戶更新狀態(tài)后是否有傳達(dá)好友。
作為一種實(shí)施方式,所述獲取用戶自定義關(guān)系程度信息步驟,包括以下步驟:
通過問卷形式對(duì)用戶與好友的關(guān)系強(qiáng)度進(jìn)行調(diào)查;
根據(jù)問卷結(jié)果將關(guān)系強(qiáng)度分為5類,分別為非常強(qiáng)關(guān)系、強(qiáng)關(guān)系、一般關(guān)系、弱關(guān)系、非常弱關(guān)系。
作為一種實(shí)施方式,還包括以下步驟:
依據(jù)目標(biāo)特征信息對(duì)互動(dòng)數(shù)據(jù)進(jìn)行量化說明;
量化說明的方式通過對(duì)用戶狀態(tài)更新數(shù)據(jù)進(jìn)行文本分析,提取文本中的相關(guān)信息,相關(guān)信息包括含有傳達(dá)好友的信息、三個(gè)月內(nèi)與好友的互動(dòng)頻率、三個(gè)月內(nèi)與好友的互動(dòng)頻率的平均值以及與好友的最近一次互動(dòng)的時(shí)間。
作為一種實(shí)施方式,所述對(duì)決策樹進(jìn)行剪枝操作步驟,具體包括以下步驟:
計(jì)算每個(gè)標(biāo)注節(jié)點(diǎn)剪枝前和剪枝后的代價(jià)復(fù)雜度;
比較兩者代價(jià)復(fù)雜度的大??;
選擇較小的代價(jià)復(fù)雜度的方案判斷用戶自定義關(guān)系程度是否準(zhǔn)確。
作為一種實(shí)施方式,所述代價(jià)復(fù)雜度為樹葉節(jié)點(diǎn)的個(gè)數(shù)和數(shù)誤分類的元組所占比。
作為一種實(shí)施方式,所述根據(jù)屬性選擇度量法,確定分裂屬性和分裂點(diǎn)步驟,具體包括以下步驟:
用D1代表數(shù)據(jù)集中特征元組及對(duì)應(yīng)類標(biāo)號(hào)的合集;
計(jì)算數(shù)據(jù)集中元組的所有類所需的平均信息量,計(jì)算公式為:其中,Info(D1)表示數(shù)據(jù)集中元組的所有類所需的平均信息量,pi表示元組屬于某一類特征的概率,m表示數(shù)據(jù)集內(nèi)類的個(gè)數(shù);
提取特征值,獲取數(shù)據(jù)集按某屬性特征劃分后的需求信息量,若該屬性特征為A屬性特征,則數(shù)據(jù)集按A屬性特征劃分后的需求信息量表示為SplitInfoA(D1);
根據(jù)平均信息量和按某屬性特征劃分后的需求信息量計(jì)算信息增益,若該屬性特征為A屬性特征,則信息增益的計(jì)算公式為:
Gain(A)=Info(D1)-SplitInfo(D1);
根據(jù)信息增益和按某屬性特征劃分后的需求信息量計(jì)算信息增益率,選擇信息增益率最大的屬性特征作為分裂屬性,若該屬性特征為A屬性特征,則信息增益率的
計(jì)算公式如下:
根據(jù)分裂屬性和分裂點(diǎn)進(jìn)行分裂以獲取節(jié)點(diǎn)。
作為一種實(shí)施方式,所述提取特征值,獲取數(shù)據(jù)集按某屬性特征劃分后的需求信息量步驟,具體包括以下步驟:
將提取的特征值按某屬性特征的值以遞增順序排列;
若該屬性特征為A屬性特征時(shí),選取相鄰值的中點(diǎn)作為可能的分裂點(diǎn),計(jì)算在該分裂點(diǎn)時(shí)數(shù)據(jù)集中按A屬性特征劃分后的需求信息量,SplitInfoA(D1)的計(jì)算公式為:
其中,D1j是D1的A屬性特征的第j個(gè)值,j∈[1,v];
若該屬性特征有v個(gè)值,則計(jì)算v-1個(gè)可能的分裂點(diǎn)相對(duì)應(yīng)的需求信息量的值,選擇最小的值作為真實(shí)數(shù)據(jù)集中按A屬性特征劃分后的需求信息量,該值對(duì)應(yīng)的分裂點(diǎn)為A屬性特征的真實(shí)分裂點(diǎn)。
作為一種實(shí)施方式,還包括以下步驟:
若循環(huán)獲取節(jié)點(diǎn)過程中沒有剩余屬性特性可以進(jìn)一步分類或者給定的分支沒有元組,則停止該循環(huán)獲取節(jié)點(diǎn)過程。
本發(fā)明相比于現(xiàn)有技術(shù)的有益效果在于:基于在線社交網(wǎng)絡(luò)的真實(shí)數(shù)據(jù)所得到的結(jié)果,無需提出假設(shè),具有很強(qiáng)的真實(shí)性和客觀性,對(duì)爬取的數(shù)據(jù)進(jìn)行目標(biāo)特征信息提取和學(xué)習(xí)分類,能夠有效的對(duì)用戶關(guān)系進(jìn)行關(guān)系強(qiáng)度估測(cè),具有很強(qiáng)的精確性,此外,RFM模型在社交網(wǎng)絡(luò)中的應(yīng)用,能動(dòng)態(tài)描繪出在線社交網(wǎng)絡(luò)用戶的互動(dòng)強(qiáng)度和價(jià)值。
附圖說明
圖1為本發(fā)明的在線社交網(wǎng)絡(luò)用戶關(guān)系強(qiáng)度預(yù)測(cè)方法的流程圖。
具體實(shí)施方式
以下結(jié)合附圖,對(duì)本發(fā)明上述的和另外的技術(shù)特征和優(yōu)點(diǎn)進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明的部分實(shí)施例,而不是全部實(shí)施例。
如圖1所示,一種在線社交網(wǎng)絡(luò)用戶關(guān)系強(qiáng)度預(yù)測(cè)方法,具體包括以下步驟:
S100:獲取用戶狀態(tài)更新及與好友間的互動(dòng)數(shù)據(jù)、用戶自定義關(guān)系程度信息;
步驟S100的具體內(nèi)容為:獲取用戶自定義關(guān)系程度信息包括以下步驟,首先通過問卷形式對(duì)用戶與好友的關(guān)系強(qiáng)度進(jìn)行調(diào)查,然后根據(jù)問卷結(jié)果將關(guān)系強(qiáng)度分為5類,分別為非常強(qiáng)關(guān)系、強(qiáng)關(guān)系、一般關(guān)系、弱關(guān)系、非常弱關(guān)系;獲取用戶狀態(tài)更新及與好友間的互動(dòng)數(shù)據(jù)是通過利用相關(guān)爬蟲技術(shù)。
S200:根據(jù)RFM模型對(duì)用戶和好友的互動(dòng)數(shù)據(jù)進(jìn)行目標(biāo)特征信息的提??;
步驟S200的具體內(nèi)容為:若在線社交網(wǎng)絡(luò)為微博時(shí),RFM模型的R值表示用戶與好友最近一次互動(dòng)時(shí)間,F(xiàn)值表示用戶和好友互動(dòng)頻率,M值表示為用戶更新狀態(tài)后是否有傳達(dá)好友,傳達(dá)方式為@好友方式。
步驟S200除了上述內(nèi)容外,還包括以下步驟:
S201:依據(jù)目標(biāo)特征信息對(duì)互動(dòng)數(shù)據(jù)進(jìn)行量化說明;
S202:量化說明的方式通過對(duì)用戶狀態(tài)更新數(shù)據(jù)進(jìn)行文本分析,提取文本中的相關(guān)信息,相關(guān)信息包括含有傳達(dá)好友的信息、三個(gè)月內(nèi)與好友的互動(dòng)頻率、三個(gè)月內(nèi)與好友的互動(dòng)頻率的平均值以及與好友的最近一次互動(dòng)的時(shí)間。
S300:對(duì)目標(biāo)特征信息和用戶自定義關(guān)系程度信息進(jìn)行數(shù)據(jù)清理;
步驟S300旨在減少數(shù)據(jù)缺失值和消除屬性的冗余,為分類器的構(gòu)建做好數(shù)據(jù)準(zhǔn)備。
S400:根據(jù)清理后的數(shù)據(jù)獲得數(shù)據(jù)集;
S500:根據(jù)數(shù)據(jù)集創(chuàng)建初始節(jié)點(diǎn);
S600:判斷數(shù)據(jù)集中元組是否屬于同一類;
步驟S600的具體內(nèi)容為:判斷數(shù)據(jù)集中元組是否屬于同一類或者是否存在可以分裂的屬性。
S700:若數(shù)據(jù)集中元組屬于同一類,獲取節(jié)點(diǎn)并進(jìn)行標(biāo)注;
步驟S700的具體內(nèi)容為:若數(shù)據(jù)集中元組屬于同一類或不存在可以分裂的屬性,獲取節(jié)點(diǎn)并進(jìn)行標(biāo)注。
S800:若數(shù)據(jù)集中元組不屬于同一類,根據(jù)屬性選擇度量法,確定分裂屬性和分裂點(diǎn),依據(jù)分裂屬性和分裂點(diǎn)進(jìn)行分裂以獲取節(jié)點(diǎn),對(duì)獲取的節(jié)點(diǎn)進(jìn)行標(biāo)注;
步驟S800的具體內(nèi)容為:若數(shù)據(jù)集中元組不屬于同一類或存在可以分裂的屬性,根據(jù)屬性選擇度量法,確定分裂屬性和分裂點(diǎn)依據(jù)分裂屬性和分裂點(diǎn)進(jìn)行分裂以獲取節(jié)點(diǎn),對(duì)獲取的節(jié)點(diǎn)進(jìn)行標(biāo)注。
其中,根據(jù)屬性選擇度量法,確定分裂屬性和分裂點(diǎn)具體包括以下步驟:
S801:計(jì)算數(shù)據(jù)集中元組的所有類所需的平均信息量,計(jì)算公式為:其中,Info(D1)表示數(shù)據(jù)集中元組的所有類所需的平均信息量,pi表示元組屬于某一類特征的概率,m表示數(shù)據(jù)集內(nèi)類的個(gè)數(shù);
S802:提取特征值,獲取數(shù)據(jù)集按某屬性特征劃分后的需求信息量,若該屬性特征為A屬性特征,則數(shù)據(jù)集按A屬性特征劃分后的需求信息量表示為SplitInfoA(D1),由于此處所提取的特征值為連續(xù)值,先將提取的特征值按某屬性特征的值以遞增順序排列,選取相鄰值的中點(diǎn)作為可能的分裂點(diǎn),計(jì)算在該分裂點(diǎn)時(shí)數(shù)據(jù)集中按A屬性特征劃分后的需求信息量,SplitInfoA(D1)的計(jì)算公式為:
其中,D1j是D1的A屬性特征的第j個(gè)值,j∈[1,v],若A屬性特征有v個(gè)值,則計(jì)算v-1個(gè)可能的分裂點(diǎn)相對(duì)應(yīng)的需求信息量的值,選擇最小的值作為真實(shí)數(shù)據(jù)集中按A屬性特征劃分后的需求信息量,該值對(duì)應(yīng)的分裂點(diǎn)為A屬性特征的真實(shí)分裂點(diǎn);
S803:根據(jù)平均信息量和按A屬性特征劃分后的需求信息量計(jì)算信息增益,則信息增益的計(jì)算公式為:
Gain(A)=Info(D1)-SplitInfo(D1);
S804:根據(jù)信息增益和按某屬性特征劃分后的需求信息量計(jì)算信息增益率,選擇
信息增益率最大的屬性特征作為分裂屬性,則信息增益率的計(jì)算公式如下:
S805:根據(jù)分裂屬性和分裂點(diǎn)進(jìn)行分裂以獲取節(jié)點(diǎn)。
步驟S800除了上述內(nèi)容外,還包括以下步驟:
S806:若循環(huán)獲取節(jié)點(diǎn)過程中沒有剩余屬性特性可以進(jìn)一步分類或者給定的分支沒有元組,則停止該循環(huán)獲取節(jié)點(diǎn)過程。
S900:由獲得的若干標(biāo)注了的節(jié)點(diǎn)形成決策樹,并對(duì)決策樹進(jìn)行剪枝操作后判斷用戶自定義關(guān)系程度是否準(zhǔn)確。
其中,對(duì)決策樹進(jìn)行剪枝操作具體包括以下步驟:
S901:計(jì)算每個(gè)標(biāo)注節(jié)點(diǎn)剪枝前和剪枝后的代價(jià)復(fù)雜度,代價(jià)復(fù)雜度為樹葉節(jié)點(diǎn)的個(gè)數(shù)和數(shù)誤分類的元組所占比;
S902:比較兩者代價(jià)復(fù)雜度的大??;
S903:選擇較小的代價(jià)復(fù)雜度的方案判斷用戶自定義關(guān)系程度是否準(zhǔn)確。
本發(fā)明相比于現(xiàn)有技術(shù)的有益效果在于:基于在線社交網(wǎng)絡(luò)的真實(shí)數(shù)據(jù)所得到的結(jié)果,無需提出假設(shè),具有很強(qiáng)的真實(shí)性和客觀性,對(duì)爬取的數(shù)據(jù)進(jìn)行目標(biāo)特征信息提取和學(xué)習(xí)分類,能夠有效的對(duì)用戶關(guān)系進(jìn)行關(guān)系強(qiáng)度估測(cè),具有很強(qiáng)的精確性,此外,RFM模型在社交網(wǎng)絡(luò)中的應(yīng)用,能動(dòng)態(tài)描繪出在線社交網(wǎng)絡(luò)用戶的互動(dòng)強(qiáng)度和價(jià)值。
以上所述的具體實(shí)施例,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步的詳細(xì)說明,應(yīng)當(dāng)理解,以上所述僅為本發(fā)明的具體實(shí)施例而已,并不用于限定本發(fā)明的保護(hù)范圍。特別指出,對(duì)于本領(lǐng)域技術(shù)人員來說,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。