本發(fā)明涉及一種人際關系畫像方法,屬于社會計算領域的一個重點研究問題。該方法利用人際間的會話信息對人際關系進行自動化畫像。
背景技術:
識別和了解人們之間的人際關系是社會計算中一個非常必要的問題,它是許多相關研究如社區(qū)發(fā)現(xiàn)、影響力分析、鏈接預測、個性化推薦等的基礎。要對一個關系進行畫像,可以有兩個基本層次,分別是關系的特性和關系的內涵。其中,關系的特性指的是關系較為簡單和易于量化的基本屬性;而關系的內涵則指的是兩個人之間的關系的內容。
在當前研究中,關系的內涵建模主要表現(xiàn)為關系的類型識別。多數情況,這些類型是已知的,例如敵友、師生、論文合作等。在更一般的情況,多數研究將關系類型抽象為簡單的正負二元化類別。在這種思路下,關系的內涵分析,轉化為關系的類型識別,進而轉化為經典的分類問題。
但是,這種基于已知類型和分類方法的關系內涵分析不能夠充分滿足關系內涵分析的需要。一方面,已知的關系類型是十分有限的,人們之間的關系內涵往往十分復雜,在實際經驗中,往往很難用一個簡單的類型名稱來準確刻畫兩個人之間的關系,而需要用一系列具體的描述來更為準確的刻畫一個關系的內涵。另一方面,即使是已知的關系類型,往往也可以具有不同的內涵。例如同樣是朋友關系,即可能是工作伙伴,也可能是具有相同的興趣愛好。
由此可見,需要一種信息量更加豐富的方法,來實現(xiàn)關系的內涵的語義化的刻畫。要實現(xiàn)這一點,人際之間的會話信息是一個非常好的資源。
在社會語言學中,語言代碼不僅具有單純語言學上的符號意義,而且蘊含著復雜的社會因素和深刻的文化意義,語言的符號體系既實現(xiàn)又控制著社會關系的結構。社會語言學認為社會結構與語言結構互相影響。薩丕爾-沃爾夫假設認為語言結構決定著人們對世界的看法,即語言影響思維,進而思維決定行為與社會關系。
技術實現(xiàn)要素:
在本發(fā)明中,將嘗試通過提取會話信息中的頻繁項集,進而挖掘頻繁項集中的主題來反映關系內涵,來建立一種基于會話信息的人際關系自動化畫像方法。
為了解決上述技術問題,本發(fā)明提出的一種基于人際間會話信息的人際關系自動化畫像方法,包括以下步驟:
步驟一、定義會話雙方之間的會話信息集合:
P={P1,P2,...,Pn},P是指會話雙方之間的會話信息集合;其中,Pi是指會話信息集合中的某一條會話信息;當Wi.sup>=min_sup時,將會話信息集合P中的一個單詞集合Wi稱為一個頻繁項;其中,Wi.sup表示會話信息集合P中一個單詞集合Wi的支持度,支持度為n表示在會話信息集合P中有n條信息包含單詞集合Wi;min_sup用來表示會話信息集合P中一個頻繁項的最小支持度;
步驟二、頻繁項集的挖掘:
采用FP-Growth算法在會話信息集合P中挖掘出一個頻繁項集。設會話信息集合P的大小為size,單位是kb,且會話集中共包含m條會話信息,則最小支持度的取值按照如下公式計算可得:
其中公式中的p可根據具體操作數據取0.2-0.5之間的值。除此之外,本發(fā)明還限制所述頻繁項集中頻繁項的長度為2到10。因為長度為1或者太長的頻繁項難以說明頻繁項的含義。
步驟三、提取會話信息中的主題,有下述兩種方法之一:
方法一是將步驟二挖掘出的頻繁項集中的頻繁項按照頻繁項的支持度進行降序排列,然后提取前3-5個頻繁項作為主題,這些主題組合后即為會話信息中的主題;
方法二包括以下兩步驟:
步驟2-1、頻繁項集聚類:
首先,進行相似頻繁項的過濾,過濾掉所述頻繁項集中的所有子集和頻繁項集中相似度很高的交叉項得到重要頻繁項集;其中,交叉項指的是頻繁項集中有相同單詞的頻繁項;F={F1,F2,...,Fm}為過濾前的頻繁項集,將重要頻繁項集初始化為Key_F=Φ,重要頻繁項集記為Key_F;對于進行下述處理過程:
對于如果Fi是Fj的一個子集,將Fi從F移除;如果Fi是Fj的交叉項,F(xiàn)i與Fj之間的Jacard相似度J(Fi,Fj)用以下公式計算:
J(Fi,Fj)=|Fi∩Fj|/|Fi∪Fj|
當Fi與Fj之間的相似度大于0.5時,將Fi從F中移除;如果對于J(Fi,Fj)均小于等于0.5時,則將Fi添加至Key_F;
重復上述處理過程直至F=Key_F;此時Key_F中的項集即為過濾后的重要頻繁項集;
然后,計算過濾后的重要頻繁項集Key_F中包含的全部單詞在會話雙方會話信息集合P中的逆向文本頻率即idf值;利用所述idf值計算重要頻繁項集Key_F中任意兩個頻繁項之間的相似度,兩個頻繁項之間的相似度等于兩個頻繁項的相關文本集之間的相似度;其中,相關文本集用以下方法求得:
通過計算過濾前的頻繁項集中的Fi與會話信息集合P中的某一條會話信息Pi之間的相似度,如果Fi與Pi之間的相似度大于c,c的取值范圍為0.05-0.2;則將Pi添加至Fi的相關文本集當中,最終,F(xiàn)i的相關文本集用Ri進行表示,F(xiàn)i與Pi之間的相似度由如下公式求得:
其中,tfij指的是Fi中的第j個單詞在Pi中出現(xiàn)的頻率,idfij指的Fi中的第j個單詞的逆向文本頻率,得到每個頻繁項的相關文本集之后,利用相關文本集計算頻繁項之間的相似度,計算公式如下:
得到任意兩個頻繁項之間的相似度之后,進行聚類個數的估計。
設定有一頻繁項集簇,并將該頻繁項集簇初始化為C={C1},C1={F1},F(xiàn)1是從Key_F中隨機選擇的一個頻繁項;
對于比較Fi和C中當前所有的簇之間的相似度,頻繁項Fi和簇Ck之間的相似度計算如下:
如果Csim是與Fi相似度最高的那個簇而且sim(Fi,Csim)>b,b=0.2,則將Fi添加至Csim;如果sim(Fi,Csim)<=b,則創(chuàng)建一個新的簇并把Fi添加至新簇;
然后,把C中的簇按照簇的大小進行降序排列,即Csort={C(1),C(2),...,C(n)};依次累加C(i)中的頻繁項個數直至累加和超過Key_F中總的頻繁項個數的80%;如果k是最后一個在Csort中累加的下標,則k就是最終的預估聚類個數;得到預估的聚類個數,使用K-means算法對Key_F中的所有頻繁項進行聚類;
步驟2-2、提取聚類后的主題:
通過抽取聚類之后的每個類中的主題詞,將這些主題詞組合作為該類的主題,抽取主題詞時,考慮的因素包括詞的tf值、簇內支持度和簇間區(qū)分度;
對于每個類中的所有單詞,按照如下公式計算每一個詞的重要程度:
在此公式中,第一項、第二項、第三項分別表示詞的tf值、簇內支持度和簇間區(qū)分度。其中,Wki指的是第k個類中的第i個單詞,tfki指的是第k個類中的第i個單詞的的tf值;|Fki|指的是在第k個類中包含單詞wki的頻繁項個數;|Fk|指的是第k個類中總的頻繁項個數;|Fi|指的是在Key_F中包含單詞Wki的頻繁項個數;|F|指的是Key_F中總的頻繁項個數;|Ci|指的是包含單詞Wki的類的個數;|C|指的是類的總數;
得到每個單詞的重要程度之后,把每個類中的單詞按照其重要程度進行降序排列,然后選擇前3~6個的單詞作為主題詞,這些主題詞的組合即為該類中的主題;
步驟四、確定會話雙方的關系內涵:
在本發(fā)明中,關系內涵即定義為主題,通過對主題即關系內涵的理解可以幫助理解會話雙方的關系。
附圖說明
圖1是本發(fā)明方法流程圖。
具體實施方式
下面結合附圖和具體實施例對本發(fā)明技術方案作進一步詳細描述,所描述的具體實施例僅對本發(fā)明進行解釋說明,并不用以限制本發(fā)明。
本發(fā)明一種基于人際間會話信息的人際關系自動化畫像方法,主要是通過提取會話雙方會話信息中的頻繁項集,進而挖掘頻繁項集中的主題來反映關系內涵,具體步驟如下:
步驟一、定義會話雙方之間的會話信息集合:
P={P1,P2,...,Pn},P是指會話雙方之間的會話信息集合;其中,Pi是指會話信息集合中的某一條會話信息;當Wi.sup>=min_sup時,將會話信息集合P中的一個單詞集合Wi稱為一個頻繁項;其中,Wi.sup表示會話信息集合P中一個單詞集合Wi的支持度,支持度為n表示在會話信息集合P中有n條信息包含單詞集合Wi;min_sup用來表示會話信息集合P中一個頻繁項的最小支持度;
步驟二、頻繁項集的挖掘:
采用FP-Growth算法在會話信息集合P中挖掘出一個頻繁項集。設會話信息集合P的大小為size,單位是kb,且會話集中共包含m條會話信息,則最小支持度的取值按照如下公式計算可得:
其中公式中的p可根據具體操作數據取0.2-0.5之間的值。除此之外,本發(fā)明還限制所述頻繁項集中頻繁項的長度為2到10。因為長度為1或者太長的頻繁項難以說明頻繁項的含義。
步驟三、提取會話信息中的主題,有下述兩種方法之一:
方法一是將步驟二挖掘出的頻繁項集中的頻繁項按照頻繁項的支持度進行降序排列,然后提取前3-5個頻繁項作為主題,這些主題組合后即為會話信息中的主題;
方法二包括以下兩步驟:
步驟2-1、頻繁項集聚類:
首先,進行相似頻繁項的過濾,過濾掉所述頻繁項集中的所有子集和頻繁項集中相似度很高的交叉項得到重要頻繁項集;其中,交叉項指的是頻繁項集中有相同單詞的頻繁項;F={F1,F2,...,Fm}為過濾前的頻繁項集,將重要頻繁項集初始化為Key_F=Φ,重要頻繁項集記為Key_F;對于進行下述處理過程:
對于如果Fi是Fj的一個子集,將Fi從F移除;如果Fi是Fj的交叉項,F(xiàn)i與Fj之間的Jacard相似度J(Fi,Fj)用以下公式計算:
J(Fi,Fj)=|Fi∩Fj|/|Fi∪Fj|
當Fi與Fj之間的相似度大于0.5時,將Fi從F中移除;如果對于J(Fi,Fj)均小于等于0.5時,則將Fi添加至Key_F;
重復上述處理過程直至F=Key_F;此時Key_F中的項集即為過濾后的重要頻繁項集;
然后,計算過濾后的重要頻繁項集Key_F中包含的全部單詞在會話雙方會話信息集合P中的逆向文本頻率即idf值;利用所述idf值計算重要頻繁項集Key_F中任意兩個頻繁項之間的相似度,兩個頻繁項之間的相似度等于兩個頻繁項的相關文本集之間的相似度;其中,相關文本集用以下方法求得:
通過計算過濾前的頻繁項集中的Fi與會話信息集合P中的某一條會話信息Pi之間的相似度,如果Fi與Pi之間的相似度大于c,c的取值范圍為0.05-0.2;則將Pi添加至Fi的相關文本集當中,最終,F(xiàn)i的相關文本集用Ri進行表示,F(xiàn)i與Pi之間的相似度由如下公式求得:
其中,tfij指的是Fi中的第j個單詞在Pi中出現(xiàn)的頻率,idfij指的Fi中的第j個單詞的逆向文本頻率,得到每個頻繁項的相關文本集之后,利用相關文本集計算頻繁項之間的相似度,計算公式如下:
得到任意兩個頻繁項之間的相似度之后,進行聚類個數的估計。
設定有一頻繁項集簇,并將該頻繁項集簇初始化為C={C1},C1={F1},F(xiàn)1是從Key_F中隨機選擇的一個頻繁項;
對于比較Fi和C中當前所有的簇之間的相似度,頻繁項Fi和簇Ck之間的相似度計算如下:
如果Csim是與Fi相似度最高的那個簇而且sim(Fi,Csim)>b,b=0.2,則將Fi添加至Csim;如果sim(Fi,Csim)<=b,則創(chuàng)建一個新的簇并把Fi添加至新簇;
然后,把C中的簇按照簇的大小進行降序排列,即Csort={C(1),C(2),...,C(n)};依次累加C(i)中的頻繁項個數直至累加和超過Key_F中總的頻繁項個數的80%;如果k是最后一個在Csort中累加的下標,則k就是最終的預估聚類個數;得到預估的聚類個數,使用K-means算法對Key_F中的所有頻繁項進行聚類;
步驟2-2、提取聚類后的主題:
通過抽取聚類之后的每個類中的主題詞,將這些主題詞組合作為該類的主題,抽取主題詞時,考慮的因素包括詞的tf值、簇內支持度和簇間區(qū)分度;
對于每個類中的所有單詞,按照如下公式計算每一個詞的重要程度:
在此公式中,第一項、第二項、第三項分別表示詞的tf值、簇內支持度和簇間區(qū)分度。其中,Wki指的是第k個類中的第i個單詞,tfki指的是第k個類中的第i個單詞的的tf值;|Fki|指的是在第k個類中包含單詞wki的頻繁項個數;|Fk|指的是第k個類中總的頻繁項個數;|Fi|指的是在Key_F中包含單詞Wki的頻繁項個數;|F|指的是Key_F中總的頻繁項個數;|Ci|指的是包含單詞Wki的類的個數;|C|指的是類的總數;
得到每個單詞的重要程度之后,把每個類中的單詞按照其重要程度進行降序排列,然后選擇前3~6個的單詞作為主題詞,這些主題詞的組合即為該類中的主題;
步驟四、確定會話雙方的關系內涵:
在本發(fā)明中,關系內涵即定義為主題,通過對主題即關系內涵的理解可以幫助理解會話雙方的關系。
本發(fā)明實驗材料1:安然郵件數據集實驗
首先采集了安然公司的郵件數據,共得到1078對用戶之間的郵件集合。該數據集的特點是:規(guī)范度較強、會話信息較長。
利用主題反映關系內涵,利用本發(fā)明方法在用戶對的郵件集合中抽取主題,一些主題示例如下表1所示:
表1、利用安然數據集的交互郵件內容主題進行人際關系畫像
由于沒有關系內涵的明確標準答案,因此,通過人工閱讀用戶對之間完整的郵件序列來理解他們的關系,進而考察自動抽取的主題是否與人的理解相符。比如,根據閱讀和理解第一對用戶對的郵件信息,推測他們是關于IT和網絡的工作關系,其中一個人是首席技術官。由實驗結果可知,提取的主題基本上可以反應這一關系內涵。根據表格中的例子顯示,這個數據集上的人物關系大都是有一些特定區(qū)別的工作關系,本發(fā)明方法可以得到更多關于用戶關系內涵的細節(jié)。然而,有一些主題詞是無意義的,比如‘cc’、‘Enron’。許多關系內涵隱藏在互動語言的深層語義中,不容易從主題詞中刻畫。為了描述更為豐富的社會關系,在微博數據集上再次做了實驗。
本發(fā)明實驗材料2:微博數據集實驗
從新浪微博上爬取了2015.7.1-2016.7.15間的來自4296個用戶之間的2263對關系的互相評論和轉發(fā)內容,并爬取了這4296個用戶的用戶屬性。將用戶對之間的互相評論和轉發(fā)內容作為它們的交互語言集合并抽取了集合內容多余15條的用戶對來做實驗,共得到105對用戶對。該數據集的特點是:會話信息較短、關系類型豐富。
利用主題反映關系內涵,利用本發(fā)明方法在用戶對的交互語言集合中抽取主題,一些主題示例如下表2所示:
表2、利用微博數據集的互相評論和轉發(fā)內容主題進行人際關系畫像
由于沒有關系內涵的明確標準答案,因此通過人工閱讀用戶對之間完整的互評和轉發(fā)內容來理解他們的關系,進而考察自動抽取的主題是否與人的理解相符。比如,根據閱讀和理解第二對用戶對的郵件信息,推測他們是有著同樣興趣的朋友關系,他們都是表的愛好者。由實驗結果可知,提取的主題基本上可以反應這一關系內涵。根據表格中的例子顯示,本發(fā)明方法可以幫助得到更多關于用戶關系內涵的細節(jié)。然而,有一些主題是有歧義的,比如第5對用戶,很難通過主題來分辨她們是剛生完孩子的母親和于嫂的關系還是兩位剛生完孩子的母親關系。
綜上,基于主題的人際關系畫像方法適合于作為人際關系畫像的輔助手段。盡管上面結合附圖對本發(fā)明進行了描述,但是本發(fā)明并不局限于上述的具體實施方式,上述的具體實施方式僅僅是示意性的,而不是限制性的,本領域的普通技術人員在本發(fā)明的啟示下,在不脫離本發(fā)明宗旨的情況下,還可以做出很多變形,這些均屬于本發(fā)明的保護之內。