本發明涉及用戶分組,更具體而言,涉及基于網絡環境中的信息對用戶進行分組的方法和裝置。
背景技術:隨著互聯網的發展和功能的豐富,越來越多的人希望通過網絡分享自己的經歷和意見。這些人可能具有不同的教育背景、不同的文化、不同的經歷和不同的偏好,然而他們都可以基于同樣的平臺-互聯網-來表達自己的觀點和意見。面對數量日益龐大的網絡用戶,在許多網絡應用場景中,為了提供更有針對性的網絡相關產品或服務,都希望對用戶進行分組或分類。例如,在一個電子購物網站中,用戶A可能會通過瀏覽其他用戶對銷售產品的評論來決定是否購買該產品。然而,對于同一產品的評論可能數量很多,并且不同背景和需求的用戶可能會對于同一產品給出完全不同的評論。這時,用戶A可能非常希望能夠找到跟自己背景和需求相似的用戶給出的評價,因為這樣的評價對于用戶A來說更有針對性和參考價值。另一方面,產品的生產或制造商也很希望了解,不同類型的用戶對于自己產品的評價和意見如何,從而更好地改進自己的產品。而互聯網購物網站也希望了解用戶A的背景和需求,從而更好地為用戶A推薦適合的產品。在以上的例子中,基于互聯網的電子購物網站的各個參與方都希望能夠對不同背景和需求的用戶分別進行分析。因此,如果能夠基于用戶的背景和需求對用戶進行分組,那么將極大地幫助各個參與方獲得感興趣的信息。在現有的網絡相關技術中,已經提供了一些方法來對網絡用戶進行初步和簡單的分組。例如,用戶在互聯網上進行注冊時,往往會填寫一些個人檔案信息,包括年齡、性別、地址(位置)、家庭狀況(家庭成員,收入)、教育背景、工作經歷、業余愛好等等。基于這樣的信息,可以容易地對用戶進行大致的分組。然而,并不是每個用戶都會在網絡上輸入自己的個人信息。并且,在許多情況下,用戶填寫的信息并不一定真實和全面。因此,獲得每個用戶的真實檔案信息是非常困難的。在另一種方法中,通過社交網絡的信息來對用戶進行分組。例如,社交網絡信息會提供一些關于社區、愛好群、朋友群之類的信息。在這些信息中,用戶之間的關系是固定的,例如,兩個用戶屬于同一朋友群,然而同一朋友群中的兩個用戶的背景和需求仍然可能是不同的。因此,僅僅基于用戶之間的固定關系仍然無法實現有針對性的用戶分組。在另一種方法中,關注用戶在互聯網上的行為,例如,哪些用戶共同瀏覽了同一網頁,哪些用戶共同購買了同一產品等。然而,如前所述,即使是購買同一產品的用戶,他們的購買動機也可能是不同的,因此這樣的共同行為并不能準確地關聯到用戶的背景和需求。因此,希望能有一種方案,能夠更準確地基于用戶的背景和需求來對用戶進行分組,從而便于后續針對不同組的用戶進行更有針對性的分析和服務。
技術實現要素:鑒于以上提出的問題,提出本發明,旨在提供一種方案,能夠有效地對網絡用戶進行分組,使得分組結果準確地反映用戶的角色特性。根據本發明一個實施例,提供一種對網絡上的用戶進行分組的方法,包括:獲取用戶在網絡上發布的評論;從所述評論中提取三元組集合,所述三元組集合包括至少一個由用戶關注的方面、用戶對上述方面給出的評價,以及給出所述評價的原因所構成的三元組;基于所述三元組集合,構建所述評論的特征表示;以及基于所述特征表示,將所述用戶歸入特定的用戶群組。根據本發明另一實施例,提供一種處理用戶的分組信息的方法,包括:獲取通過以上實施例的方法對網絡上的多個用戶進行分組的分組信息;對所述分組信息進行處理,獲取與用戶群組相關聯的相關信息;以及與所述用戶群組相關聯地顯示所述相關信息。根據本發明另一實施例,提供一種對網絡上的用戶進行分組的裝置,包括:評論獲取單元,配置為獲取用戶在網絡上發布的評論;三元組集合提取單元,配置為從所述評論中提取三元組集合,所述三元組集合包括至少一個由用戶關注的方面、用戶對上述方面給出的評價,以及給出所述評價的原因所構成的三元組;特征表示構建單元,配置為基于所述三元組集合,構建所述評論的特征表示;以及分組單元,配置為基于所述特征表示,將所述用戶歸入特定的用戶群組。根據本發明另一實施例,提供一種處理用戶的分組信息的裝置,包括:分組信息獲取單元,配置為獲取通過上述實施例的裝置對網絡上的多個用戶進行分組的分組信息;相關信息獲取單元,配置為對所述分組信息進行處理,獲取與用戶群組相關聯的相關信息;以及顯示單元,配置為與所述用戶群組相關聯地顯示所述相關信息。利用本發明實施例的方法和裝置,可以基于用戶在網絡上發布的評論中所體現出的用戶關注的方面、給出的評價、給出評價的原因來對用戶進行分組。由此獲得的用戶群組能夠更好地反映用戶的背景和需求,更準確地表現用戶的角色特性。并且,本發明的實施例還可以更好地處理和利用以上獲得的用戶分組信息。附圖說明通過結合附圖對本公開示例性實施方式進行更詳細的描述,本公開的上述以及其它目的、特征和優勢將變得更加明顯,其中,在本公開示例性實施方式中,相同的參考標號通常代表相同部件。圖1示出了適于用來實現本發明實施方式的示例性計算系統100的框圖;圖2示出根據本發明一個實施例的對用戶進行分組的方法的流程圖;圖3示出根據本發明一個實施例的構建特征表示的步驟;圖4示出根據本發明一個實施例的處理用戶的分組信息的方法;圖5示出根據本發明一個實施例所顯示的相關信息的示意圖;。圖6示出根據本發明一個實施例的對用戶進行分組的裝置的框圖;圖7示出根據一個實施例的用于處理用戶的分組信息的裝置的框圖。具體實施方式下面將參照附圖更詳細地描述本公開的優選實施方式。雖然附圖中顯示了本公開的優選實施方式,然而應該理解,可以以各種形式實現本公開而不應被這里闡述的實施方式所限制。相反,提供這些實施方式是為了使本公開更加透徹和完整,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。圖1示出了適于用來實現本發明實施方式的示例性計算系統100的框圖。如圖1所示,計算機系統100可以包括:CPU(中央處理單元)101、RAM(隨機存取存儲器)102、ROM(只讀存儲器)103、系統總線104、硬盤控制器105、鍵盤控制器106、串行接口控制器107、并行接口控制器108、顯示控制器109、硬盤110、鍵盤111、串行外部設備112、并行外部設備113和顯示器114。在這些設備中,與系統總線104耦合的有CPU101、RAM102、ROM103、硬盤控制器105、鍵盤控制器106、串行控制器107、并行控制器108和顯示控制器109。硬盤110與硬盤控制器105耦合,鍵盤111與鍵盤控制器106耦合,串行外部設備112與串行接口控制器107耦合,并行外部設備113與并行接口控制器108耦合,以及顯示器114與顯示控制器109耦合。應當理解,圖1所述的結構框圖僅僅是為了示例的目的,而不是對本發明范圍的限制。在某些情況下,可以根據具體情況增加或減少某些設備。所屬技術領域的技術人員知道,本發明可以實現為系統、方法或計算機程序產品。因此,本公開可以具體實現為以下形式,即:可以是完全的硬件、也可以是完全的軟件(包括固件、駐留軟件、微代碼等),還可以是硬件和軟件結合的形式,本文一般稱為“電路”、“模塊”或“系統”。此外,在一些實施例中,本發明還可以實現為在一個或多個計算機可讀介質中的計算機程序產品的形式,該計算機可讀介質中包含計算機可讀的程序代碼。可以采用一個或多個計算機可讀的介質的任意組合。計算機可讀介質可以是計算機可讀信號介質或者計算機可讀存儲介質。計算機可讀存儲介質例如可以是——但不限于——電、磁、光、電磁、紅外線、或半導體的系統、裝置或器件,或者任意以上的組合。計算機可讀存儲介質的更具體的例子(非窮舉的列表)包括:具有一個或多個導線的電連接、便攜式計算機磁盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPROM或閃存)、光纖、便攜式緊湊磁盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計算機可讀存儲介質可以是任何包含或存儲程序的有形介質,該程序可以被指令執行系統、裝置或者器件使用或者與其結合使用。計算機可讀的信號介質可以包括在基帶中或者作為載波一部分傳播的數據信號,其中承載了計算機可讀的程序代碼。這種傳播的數據信號可以采用多種形式,包括——但不限于——電磁信號、光信號或上述的任意合適的組合。計算機可讀的信號介質還可以是計算機可讀存儲介質以外的任何計算機可讀介質,該計算機可讀介質可以發送、傳播或者傳輸用于由指令執行系統、裝置或者器件使用或者與其結合使用的程序。計算機可讀介質上包含的程序代碼可以用任何適當的介質傳輸,包括——但不限于——無線、電線、光纜、RF等等,或者上述的任意合適的組合。可以以一種或多種程序設計語言或其組合來編寫用于執行本發明操作的計算機程序代碼,所述程序設計語言包括面向對象的程序設計語言—諸如Java、Smalltalk、C++,還包括常規的過程式程序設計語言—諸如”C”語言或類似的程序設計語言。程序代碼可以完全地在用戶計算機上執行、部分地在用戶計算機上執行、作為一個獨立的軟件包執行、部分在用戶計算機上部分在遠程計算機上執行、或者完全在遠程計算機或服務器上執行。在涉及遠程計算機的情形中,遠程計算機可以通過任意種類的網絡——包括局域網(LAN)或廣域網(WAN)—連接到用戶計算機,或者,可以連接到外部計算機(例如利用因特網服務提供商來通過因特網連接)。下面將參照本發明實施例的方法、裝置(系統)和計算機程序產品的流程圖和/或框圖描述本發明。應當理解,流程圖和/或框圖的每個方框以及流程圖和/或框圖中各方框的組合,都可以由計算機程序指令實現。這些計算機程序指令可以提供給通用計算機、專用計算機或其它可編程數據處理裝置的處理器,從而生產出一種機器,這些計算機程序指令通過計算機或其它可編程數據處理裝置執行,產生了實現流程圖和/或框圖中的方框中規定的功能/操作的裝置。也可以把這些計算機程序指令存儲在能使得計算機或其它可編程數據處理裝置以特定方式工作的計算機可讀介質中,這樣,存儲在計算機可讀介質中的指令就產生出一個包括實現流程圖和/或框圖中的方框中規定的功能/操作的指令裝置(instructionmeans)的制造品(manufacture)。也可以把計算機程序指令加載到計算機、其它可編程數據處理裝置、或其它設備上,使得在計算機、其它可編程數據處理裝置或其它設備上執行一系列操作步驟,以產生計算機實現的過程,從而使得在計算機或其它可編程裝置上執行的指令能夠提供實現流程圖和/或框圖中的方框中規定的功能/操作的過程。現在具體描述本發明的各個實施方案。為了更有效地對網絡用戶進行分組,本發明的發明人對用戶在網絡上的各種行為進行了研究和分析,由此發現,用戶在網絡上針對某產品或服務發布的評論提供了有關用戶的角色特性的線索,因此可以作為對用戶進行分組的基礎。例如,某用戶可能針對某個酒店發布了這樣的評論:“作為一個商務人士,這個酒店真的是這個城市中的最佳選擇”。基于這樣的評論,可以直接獲得該用戶的角色特性-商務人士,從而將該用戶定位到商務人士的群組中。然而,在多數情況下,用戶的評論并沒有這么直接。通過對用戶評論的進一步分析,發明人發現,針對同一產品或服務,不同背景和需求的用戶所關注的方面是不同的。例如,對于酒店來說,商務人士可能會關注網絡、電話、辦公環境等,旅行中的夫婦可能更關注床是否舒適、環境是否優美、服務是否貼心等,而對單身人士來說,豐富的娛樂活動和電視節目可能更有吸引力。并且,針對同一關注方面,不同背景和需求的用戶給出的評價可能完全不同。例如,針對同一款手機的同一方面-外觀,潮流人士可能認為這個外觀非常時尚,但是保守人士可能覺得難以接受。進一步地,即使針對同一方面給出了同樣的評價,所基于的原因也可能是不同的。例如,商務人士需要一個較大的房間是因為便于開會,而一個家庭需要一個較大的房間可能是因為便于孩子玩耍。根據以上的例子可以發現,用戶關注的方面、針對該方面的評價以及給出該評價的原因都可以為準確地定位用戶角色特性提供信息。因此,在本發明的實施例中,基于用戶在網絡上發布的評論,更具體地,基于評論中反映的以上三個方面的信息來對用戶進行分組。現在參看圖2,其示出在上述發明構思指導下根據本發明一個實施例的對用戶進行分組的方法的流程圖。如圖2所示,該實施例的方法可以包括以下步驟:在步驟21,獲取用戶在網絡上發布的評論;在步驟22,從所述評論中提取三元組集合,所述三元組集合包括至少一個由用戶關注的方面、用戶對上述方面給出的評價,以及給出所述評價的原因所構成的三元組;在步驟23,基于所述三元組集合,構建所述評論的特征表示;以及在步驟24,基于所述特征表示,將所述用戶歸入特定的用戶群組。以下結合具體例子描述上述各個步驟的執行。首先,在步驟21,獲取用戶在網絡上發布的針對特定產品或服務給出的評論。在現有技術中,許多用于通過網絡提供產品或服務的應用,例如電子購物網站、點評網站等,都允許用戶發表自己的點評意見。這樣的點評意見可以以多種形式提供。在一個具體例子中,針對某個酒店的服務,多個用戶在網絡上進行了點評。點評中包含有用戶針對設定項目給出的分數評價(例如,舒適度5分,性價比3分,位置4分等),還包含有用戶輸入的文本形式的評論。由于這樣的文本形式的評論更能反映出用戶獨有的角色特性,因此,在步驟21中,捕獲用戶發布的文本形式的評論信息。由于這些評論發布在網絡上,因此可以通過簡單的數據讀取來獲取上述評論信息。或者,在另一例子中,用戶點評意見會存儲在提供點評服務的應用的服務器中。此時,也可以從上述服務器中直接讀取用戶發布的評論信息。接著,在步驟22,基于獲取到的用戶評論,提取三元組集合,其中至少一個三元組包括用戶關注的方面,用戶對上述方面給出的評價,以及給出評價的原因。具體地,在一個實施例中,針對步驟21中獲取的評論文本,進行自然語言處理和語義分析,由此獲得三元組的集合。典型的三元組包含以下三個要素:關注的方面,對該方面的評價,以及原因。然而,對于某些方面,有可能用戶僅給出了評價,而沒有給出具體原因。這種情況下,對應的三元組可能僅包含兩個有意義的要素,第三個元素為空。這樣的三元組可以稱為不完全三元組。為了更好地分析用戶的角色特性,在一個實施例中,獲得的三元組集合包括至少一個典型三元組。現在結合幾條具體的網絡評論描述該步驟的執行。假定在步驟21中,獲取到了如下的兩條評論文本:來自用戶A的評論A:“酒店不錯,提供wifi,免費網絡,速度很快…房間挺大的,即使好幾個人在房間里面開會也不覺得擁擠;酒店還有游泳池,工作之余可以休息放松一下…”來自用戶B的評論B:“酒店環境很不錯,旁邊就有花園,免費的,走過去很快就到,花園旁邊有游泳池,很適合一家人在一起玩…空間很大,適合喜歡在房間里跑跑跳跳的小朋友…”對于以上的評論文本,進行自然語言處理和語義分析。現有技術中已經提供了多種自然語言處理的方法和語義分析的方法,這些方法都可以應用到本發明實施例的步驟中。由于自然語言處理和語義分析本身不是本發明實施例的要點,在此不對其進行詳細描述。通過對以上評論文本進行自然語言處理,可以從中提取出多個關鍵詞。例如,對于評論A,可以提取出下列關鍵詞:<酒店,不錯,wifi,免費,網絡,快,房間,大,開會,(不)擁擠,游泳池,工作,放松…>。結合對關鍵詞的上下文的語義分析,可以獲得與用戶體驗相關的多個三元組的集合A:<(酒店,不錯,N/A),(wifi,提供,N/A),(網絡,免費,N/A),(網絡,快,N/A),(房間,大,N/A),(房間,(不,擁擠),(幾個人,開會)),(游泳池,有,(工作,放松)),…>在以上的集合A中,每一行示出了一個三元組。三元組的形式為(關注方面,評價,原因)。但是,部分三元組中最后一個元素為空(即不可用,以N/A表示),也就是不完全三元組。在以上示出的三元組集合A中,最后兩個三元組為典型三元組,其他三元組為不完全三元組。類似地,對于評論B,可以通過自然語言處理和語義分析,從評論文本中提取出以下的三元組集合B:<(酒店環境,不錯,N/A),(花園,有,N/A),(花園,免費,N/A),(走,快,N/A),(游泳池,有,(一家人,玩)),(房間,大,(跑跑跳跳,小朋友)),…>對于其他的評論文本,可以類似地獲得反映用戶角色特性的三元組集合。接著,在步驟23,基于以上獲得的三元組集合,構建評論的特征表示。在一個實施例中,將獲得的三元組集合整理為矩陣形式,將此矩陣作為對應評論的特征矩陣(即,特征表示的一種)。具體地,在一個例子中,可以將以上的三元組集合整理為3*m的矩陣,其中m為集合中三元組的個數。在其他例子中,也可以將三元組集合整理為其他格式的矩陣。可以理解,在以上的特征矩陣中,大部分元素都是由各種術語或詞匯構成。這為特征矩陣的進一步計算帶來了一些困難。為了簡化矩陣計算,根據一個實施例中,在步驟23中,首先通過簡單的基本語義處理對三元組集合進行歸納,從而簡化三元組集合,然后基于簡化的三元組集合構建出簡化的特征矩陣。具體地,可以將三元組的第一元素中語義相似的多個詞匯歸納為同一術語,并將三元組中的第二元素,用戶評價,歸納為正面評價或負面評價。例如,在一個例子中,針對三元組集合A,可以將“wifi”、“網絡”都歸納為“網絡”,將“不錯”、“提供”、“免費”,“快”等評價都歸納為正面評價。這樣,之前描述的集合A就可以簡化為如下的集合A’的形式:<(酒店,正面,N/A),(網絡,正面,N/A),(網絡,正面,N/A),(網絡,正面,N/A),(空間,正面,N/A),(空間,正面,(幾個人,開會)),(游泳池,正面,(工作,放松)),…>對于集合B,也可以進行類似的歸納和簡化。相比于原始的三元組集合,簡化的集合極大地減少了需要處理的不同元素的數目。在簡化的三元組集合的基礎上形成的簡化的特征矩陣更加有利于后續的計算和處理。為了進一步優化特征表示的構建和比較,在一個實施例中,通過兩個層次的歸納和簡化構建出矢量形式的特征表示,也就是,基于...