一種微博文本情緒識別方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及自然語言處理和社交網(wǎng)絡(luò)技術(shù)領(lǐng)域,更具體地說,涉及一種微博文本 情緒識別方法及系統(tǒng)。
【背景技術(shù)】
[0002] 隨著Web2. 0的興起和發(fā)展,網(wǎng)絡(luò)信息的規(guī)模也隨之快速增長,互聯(lián)網(wǎng)已經(jīng)成為各 種信息的重要載體。論壇、博客、微博等社交媒體成為大眾分享信息和情感的重要途徑。其 中微博給予用戶更自由、更快捷的方式來表達(dá)觀點(diǎn)、記錄心情,已成為國內(nèi)最為熱門的互聯(lián) 網(wǎng)應(yīng)用之一。情緒分析有助于完善互聯(lián)網(wǎng)輿情監(jiān)控系統(tǒng),幫助企業(yè)制定精準(zhǔn)的廣告投放,為 突發(fā)事件提供預(yù)警等;此外,情緒分析研宄還可以幫忙其他領(lǐng)域,如心理學(xué)、社會學(xué)、金融學(xué) 等領(lǐng)域的研宄。在此背景下越來越多的研宄工作開始關(guān)注微博,其中重要的一類研宄是微 博文本情緒識別。但目前仍未提出一種可行的微博文本情緒識別方法。
[0003] 綜上所述,如何提供一種微博文本情緒識別方法及系統(tǒng),是目前本領(lǐng)域技術(shù)人員 亟待解決的問題。
【發(fā)明內(nèi)容】
[0004] 有鑒于此,本發(fā)明的目的是提供一種微博文本情緒識別方法及系統(tǒng),用以獲得待 分類微博文本是否含有情緒。
[0005] 為了實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
[0006] -方面,本發(fā)明提供了一種微博文本情緒識別方法,包括:
[0007] 獲取第一微博文本信息;所述第一微博文本信息為微博用戶發(fā)表的原創(chuàng)微博文本 信息;
[0008] 標(biāo)注所述第一微博文本信息的情緒類別,并對標(biāo)注后的所述第一微博文本信息進(jìn) 行分詞操作,以獲取相應(yīng)的所有所述第一微博文本信息的分詞集合,并依據(jù)所述分詞集合 獲取各所述第一微博文本信息相應(yīng)的特征向量;
[0009] 依據(jù)所述第一微博文本信息的情緒類別及相應(yīng)的所述特征向量獲取最大熵分類 器;
[0010] 采用所述最大熵分類器對測試語料進(jìn)行情緒識別。
[0011] 優(yōu)選的,在獲取第一微博文本信息前還包括:
[0012] 收集第二微博文本信息;所述第二微博文本信息為所述微博用戶發(fā)表的所有微博 文本信息。
[0013] 優(yōu)選的,所述收集第二微博文本信息包括:
[0014] 構(gòu)建用戶隊(duì)列,并對所述用戶隊(duì)列進(jìn)行初始化操作;
[0015] 選取任意一個(gè)微博用戶作為種子用戶,并將所述種子用戶以及所述種子用戶的關(guān) 注用戶和粉絲用戶添加到所述用戶隊(duì)列中;
[0016] 從所述用戶隊(duì)列中任意選取一個(gè)微博用戶,并通過微博提供的應(yīng)用程序編程接口 抓取所述微博用戶發(fā)表的所述第二微博文本信息,并將所述微博用戶的關(guān)注用戶及粉絲用 戶添加到所述用戶隊(duì)列;
[0017] 判斷抓取的所述微博用戶的數(shù)量是否達(dá)到預(yù)設(shè)值;
[0018] 當(dāng)抓取的所述微博用戶數(shù)量達(dá)到預(yù)設(shè)值時(shí),則停止收集所述第二微博文本信息。
[0019] 優(yōu)選的,所述獲取第一微博文本信息包括:
[0020] 獲取所述微博提供的所述應(yīng)用程序編程接口中的Type字段值;
[0021] 當(dāng)獲取的所述Type字段值等于1時(shí),則篩選出與所述應(yīng)用程序編程接口中Type 字段值等于1相對應(yīng)的所述第二微博文本信息,并將所述第二微博文本信息標(biāo)記為所述第 一微博文本信息。
[0022] 優(yōu)選的,所述采用所述最大熵分類器對測試語料進(jìn)行情緒識別包括:
[0023] 采用所述最大熵分類器對所述測試語料進(jìn)行分類,并獲取相應(yīng)的分類結(jié)果;
[0024] 對所述分類結(jié)果進(jìn)行統(tǒng)計(jì),并獲取相應(yīng)的統(tǒng)計(jì)結(jié)果;
[0025] 依據(jù)所述統(tǒng)計(jì)結(jié)果判斷所述測試語料是否含有情緒。
[0026] 另一方面,本發(fā)明還提供了一種微博文本情緒識別系統(tǒng),包括:
[0027] 第一獲取模塊,用于獲取第一微博文本信息;所述第一微博文本信息為微博用戶 發(fā)表的原創(chuàng)微博文本信息;
[0028] 第二獲取模塊,用于標(biāo)注所述第一微博文本信息的情緒類別,并對標(biāo)注后的所述 第一微博文本信息進(jìn)行分詞操作,以獲取相應(yīng)的所有所述第一微博文本信息的分詞集合, 并依據(jù)所述分詞集合獲取各所述第一微博文本信息相應(yīng)的特征向量;
[0029] 第三獲取模塊,用于依據(jù)所述第一微博文本信息的情緒類別及相應(yīng)的所述特征向 量獲取最大熵分類器;
[0030] 識別模塊,用于采用所述最大熵分類器對測試語料進(jìn)行情緒識別。
[0031] 優(yōu)選的,所述系統(tǒng)還包括:
[0032] 收集模塊,用于收集第二微博文本信息;所述第二微博文本信息為所述微博用戶 發(fā)表的所有微博文本信息。
[0033] 優(yōu)選的,所述收集模塊包括:
[0034] 構(gòu)建單元,用于構(gòu)建用戶隊(duì)列,并對所述用戶隊(duì)列進(jìn)行初始化操作;
[0035] 選取單元,用于選取任意一個(gè)微博用戶作為種子用戶,并將所述種子用戶以及所 述種子用戶的關(guān)注用戶和粉絲用戶添加到所述用戶隊(duì)列中;
[0036] 抓取單元,用于從所述用戶隊(duì)列中任意選取一個(gè)微博用戶,并通過微博提供的應(yīng) 用程序編程接口抓取所述微博用戶發(fā)表的所述第二微博文本信息,并將所述微博用戶的關(guān) 注用戶及粉絲用戶添加到所述用戶隊(duì)列;
[0037] 判斷單元,用于判斷抓取的所述微博用戶的數(shù)量是否達(dá)到預(yù)設(shè)值;
[0038] 收集單元,用于當(dāng)抓取的所述微博用戶數(shù)量達(dá)到預(yù)設(shè)值時(shí),則停止收集所述第二 微博文本信息。
[0039] 優(yōu)選的,所述第一獲取模塊包括:
[0040] 獲取單元,用于獲取所述微博提供的所述應(yīng)用程序編程接口中的Type字段值;
[0041] 篩選單元,用于當(dāng)獲取的所述Type字段值等于1時(shí),則篩選出與所述應(yīng)用程序編 程接口中Type字段值等于1相對應(yīng)的所述第二微博文本信息,并將所述第二微博文本信息 標(biāo)記為所述第一微博文本信息。
[0042] 優(yōu)選的,所述識別模塊包括:
[0043] 分類單元,用于采用所述最大熵分類器對所述測試語料進(jìn)行分類,并獲取相應(yīng)的 分類結(jié)果;
[0044] 統(tǒng)計(jì)單元,用于對所述分類結(jié)果進(jìn)行統(tǒng)計(jì),并獲取相應(yīng)的統(tǒng)計(jì)結(jié)果;
[0045] 判斷單元,用于依據(jù)所述統(tǒng)計(jì)結(jié)果判斷所述測試語料是否含有情緒。
[0046] 與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)如下:
[0047] 本發(fā)明提供了一種微博文本情緒識別方法及系統(tǒng),首先獲取第一微博文本信息, 即微博用戶發(fā)表的原創(chuàng)微博文本信息,同時(shí)標(biāo)注第一微博文本信息的情緒類別,并對標(biāo)注 后的第一微博文本信息進(jìn)行分詞操作,以獲取相應(yīng)的所有第一微博文本信息的分詞集合, 并依據(jù)分詞集合獲取各第一微博文本信息相應(yīng)的特征向量;并依據(jù)第一微博文本信息的情 緒類別及相應(yīng)的特征向量獲取最大熵分類器;以便于采用最大熵分類器對測試語料進(jìn)行情 緒識別,本發(fā)明提供的一種微博文本情緒識別方法及系統(tǒng),實(shí)現(xiàn)了對微博文本中是否包含 有情緒信息的判斷。
【附圖說明】
[0048] 為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù) 提供的附圖獲得其他的附圖。
[0049] 圖1為本發(fā)明實(shí)施例提供的一種微博文本情緒識別方法的一種流程圖;
[0050] 圖2為本發(fā)明實(shí)施例提供的一種微博文本情緒識別方法的另一種流程圖;
[0051] 圖3為本發(fā)明實(shí)施例提供的一種微博文本情緒識別的一種子流程圖;
[0052] 圖4為本發(fā)明實(shí)施例提供的一種微博文本情緒識別系統(tǒng)的一種結(jié)構(gòu)示意圖;
[0053] 圖5為本發(fā)明實(shí)施例提供的一種微博文本情緒識別系統(tǒng)的另一種結(jié)構(gòu)示意圖;
[0054] 圖6為本發(fā)明實(shí)施例提供的一種微博文本情緒識別系統(tǒng)的一種子結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0055] 下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;?本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0056] 所謂微博文本情緒識別,就是借助計(jì)算機(jī)幫助用戶快速獲取、整理和分析相關(guān)微 博文本情緒信息,并進(jìn)行相應(yīng)的歸納和推理等過程,進(jìn)而識別出微博文本是否含有情緒。其 中。本發(fā)明實(shí)施例提供的微博文本情緒識別方法及系統(tǒng)是基于騰訊微博的,但其并不僅僅 適用于微博文本信息,還可以應(yīng)用于其他的文本信息識別中。
[0057] 請參考圖1,其示出了本發(fā)明實(shí)施例提供的一種微博文本情緒識別方法的一種流 程圖,可以包括以下步驟:
[0058] 步驟101 :獲取第一微博文本信息。
[0059] 其中,第一微博文本信息為微博用戶發(fā)表的原創(chuàng)微博文本信息。
[0060] 步驟102 :標(biāo)注第一微博文本信息的情緒類別,并對標(biāo)注后的第一微博文本信息 進(jìn)行分詞操作,以獲取相應(yīng)的所有第一微博文本信息的分詞集合,并依據(jù)分詞集合獲取各 第一微博文本信息相應(yīng)的特征向量。
[0061] 需要說明的是,在本發(fā)明實(shí)施例中對第一微博文本進(jìn)行標(biāo)注的過程即是對第一微 博文本信息的情緒類別進(jìn)行分類的過程。其中,第一微博文本信息的情緒類別可以分為兩 大類:一是有情緒的第一微博文本信息,一是無情緒的第一微博文本信息。最后將標(biāo)注好 的有情緒的第一微博文本信息和無情緒的第一微博文本信息分開存放,如一行存放一條微 博。
[0062] 一般情況下,可以采用人工標(biāo)注的方式對第一微博文本信息的情緒類別進(jìn)行標(biāo) 注,同時(shí)為了提高人工標(biāo)注的準(zhǔn)確度,一般可以選擇2個(gè)或3個(gè)標(biāo)注人員進(jìn)行該操作,同時(shí) 也可以采用更多的標(biāo)注人員,即采用的標(biāo)注人員越多,標(biāo)注的準(zhǔn)確度就會越高。
[0063] 同時(shí),在本發(fā)明實(shí)施例中采用Stanford工具對第一微博文本信息進(jìn)行分詞處理, 同時(shí)將分詞后的所有詞語建立成相應(yīng)的一個(gè)分詞集合,需要說明的是,對于分詞結(jié)果中重 復(fù)出現(xiàn)的詞語,只需將第一次出現(xiàn)的詞語添加到分詞集