基于微博大數據獲取網絡服務狀態的方法
【技術領域】
[0001]本發明涉及大數據和SVM(Support Vector Machine,支持向量機)分類器領域,具體涉及基于微博大數據獲取網絡服務狀態的方法。
【背景技術】
[0002]隨著電信網絡的不斷發展和普及,網絡的復雜度不斷增加,產生了驚人的數據量,基于DDN(Data Driven Network,數據驅動網絡)利用大數據技術來分析網絡大數據并發現其中所暗含的線索和規律,幫助人們感知和預測網絡服務狀態。
[0003]網絡大數據按照數據類型可分為自媒體數據、日志數據和富媒體數據三類,微博作為一種自媒體數據,其發布內容簡潔,表達信息明確,具有及時性,近年來成為了最熱門的新型社交媒體和信息交流平臺,產生了海量的數據。新浪微博數據中心發布的2014年用戶發展報告顯示,截止2014年9月30日,新浪微博MAU (monthly active users,月活躍用戶數)已經達到1.67億人,日活躍用戶也已經達到7660人,每秒鐘數以千計的新微博發布數量,是人們交流信息的一種重要體現。
[0004]然而,這三種類型的網絡大數據規模巨大、分布廣泛、動態演變、模態多樣、關聯復雜、真偽難辨等一系列特性為將其應用于網絡服務狀態的獲取帶來了數據復雜性的挑戰。
[0005]因此,急需一種縮小網絡大數據規模、降低網絡大數據復雜度的獲取網絡服務狀態的方法。
【發明內容】
[0006]本發明所要解決的技術問題是現有的網絡大數據規模巨大,應用于獲取網絡服務狀態時復雜度較高的問題。
[0007]為了解決上述技術問題,本發明所采用的技術方案是提供一種基于微博大數據獲取網絡服務狀態的方法,包括以下步驟:
[0008]步驟Al:獲取微博數據集中的一部分微博數據作為訓練數據集,獲取微博數據集中的剩余微博數據作為測試數據集,對訓練數據集和測試數據集分別進行預處理;
[0009]步驟A2:對訓練數據集中的訓練數據進行分類標記、初始化操作、分詞處理和停詞處理,對訓練數據集進行特征選擇并獲得特征詞項字典,由特征詞項字典生成訓練數據的特征向量,并獲得訓練數據集的特征向量集,對特征向量集進行訓練獲得SVM分類器;
[0010]步驟A3:對測試數據集中的測試數據進行預分類以及對預分類失敗的測試數據進行初始化操作、分詞處理和停詞處理,根據上述特征詞項字典生成預分類失敗的測試數據的特征向量,并獲得預分類失敗的測試數據的特征向量集,通過上述SVM分類器對預分類失敗的測試數據進行分類得到分類結果,并將分類結果與預分類的結果綜合,得到最終的分類結果。
[0011]在上述技術方案中,步驟A2具體包括以下步驟:
[0012]步驟A21:對預處理后的所述訓練數據集中的所述訓練數據進行分類標記;
[0013]步驟A22:對經過分類標記的所述訓練數據進行初始化操作;
[0014]步驟A23:使用分詞工具對經過初始化操作的所述訓練數據進行分詞處理,得到所述訓練數據集的微博文本詞項集;
[0015]步驟A24:使用停用詞典,對所述訓練數據集的微博文本詞項集進行停詞處理,得到所述訓練數據集的微博文本原始特征詞項集;
[0016]步驟A25:對所述微博文本原始特征詞項集進行特征選擇,得到所述訓練數據集的特征詞項字典;
[0017]步驟A26:根據所述特征詞項字典生成所述訓練數據的特征向量,得到所述訓練數據集的特征向量集;
[0018]步驟A27:使用Libsvm構建分類器,輸入所述特征向量集,通過對所述特征向量集的訓練,得到所述SVM分類器。
[0019]在上述技術方案中,步驟A3具體包括以下步驟:
[0020]步驟A31:由所述訓練數據集獲取預置關鍵詞庫;
[0021]步驟A32:使用所述預置關鍵詞庫對所述測試數據集中的所述測試數據進行預分類,得到預分類結果;
[0022]步驟A33:對所述預分類失敗的測試數據進行初始化操作;
[0023]步驟A34:使用分詞工具對所述預分類失敗的測試數據進行分詞處理,得到所述預分類失敗的測試數據的微博文本詞項集;
[0024]步驟A35:使用停用詞典,對所述預分類失敗的測試數據的微博文本詞項集進行停詞處理,得到所述預分類失敗的測試數據的微博文本原始特征詞項集;
[0025]步驟A36:根據所述特征詞項字典生成所述預分類失敗的測試數據的特征向量,并得到其特征向量集;
[0026]步驟A37:通過所述SVM分類器對所述預分類失敗的測試數據進行分類,將分類結果與所述預分類結果綜合,得到最終的分類結果。
[0027]在上述技術方案中,在步驟A21中,將所述訓練數據標記為網絡服務狀態類或非網絡服務狀態類。
[0028]在上述技術方案中,步驟A25主要包括以下步驟:
[0029]根據所述微博文本原始特征詞項集中每個微博文本原始特征詞項在所述訓練數據的各類別中出現的頻率對所述微博文本原始特征詞項進行排序,保留出現頻率高的前N個所述微博文本原始特征詞項作為所述特征詞項字典,所述特征詞項字典按照所述微博文本原始特征詞項的出現頻率由高到低排序,其中N = 1000。
[0030]在上述技術方案中,步驟A31具體包括以下步驟:
[0031]步驟A311:按照所述訓練數據的類別提取所述訓練數據集中的每兩個符號之間的文本內容,并對所述文本內容進行分詞處理,然后分別統計分詞處理所得微博文本原始特征詞項的詞頻,并將微博文本原始特征詞項按詞頻降序排列;
[0032]步驟A312:從所述訓練數據的類別中詞頻最高的微博文本原始特征詞項開始,依次檢查微博文本原始特征詞項是否在其它類別中出現過,若該微博文本原始特征詞項在其它類別中出現的次數占所述訓練數據集的比例小于等于1%,則將該微博文本原始特征詞項選取為該類別的預置關鍵詞,統計完后,得到預置關鍵詞庫。
[0033]在上述技術方案中,步驟A32具體包括以下步驟:
[0034]步驟A321:提取所述測試數據集中的所述測試數據中每兩個“#”符號之間的文本內容,并對文本內容進行分詞處理,將分詞處理所得微博文本原始特征詞項與所述預置關鍵詞庫相比較,判斷各微博文本原始特征詞項所屬類別,統計各微博文本原始特征詞項在各類別中出現的頻度;
[0035]步驟A322:若屬于某個類別的微博文本原始特征詞項頻度最大,則認為該微博文本原始特征詞項所屬的測試數據屬于該類別,其它情況則通過所述SVM分類器對所述測試數據進行分類。
[0036]在上述技術方案中,步驟A26具體包括以下步驟:
[0037]步驟A261:將所述微博文本原始特征詞項集中的每個微博文本原始特征詞項與所述特征詞項字典進行比較;
[0038]步驟A262:若所述微博文本原始特征詞項在所述特征詞項字典中,則采用TF-1DF算法計算所述微博文本原始特征詞項在所述訓練數據中的特征值;若所述微博文本原始特征詞項不在所述特征詞項字典中,則忽略所述微博文本原始特征詞項;若所述特征詞項字典中的詞項沒有出現在所述微博文本原始特征詞項集中,則所述詞項的特征值為零。
[0039]在上述技術方案中,所述預處理即刪除無意義微博,所述無意義微博包括垃圾微博文本和廣告營銷微博文本。
[0040]在上述技術方案中