• 沒有找到結果。

第五章 系統與感測器實作

5.5. 文本感測器

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

41

推文者留言檢測項目為 0.91,RT/@mention 的原文檢測項目為 0.95,整體平均則 為 0.94。複合信度方面,如表 4 所示,整段推文檢測項目達到 0.99,推文者留言 檢測為 0.97,RT/@mention 的原文檢測為 0.98,整體信度更達到了 0.98,顯示本 研究所提出之語系檢測分析方法確實相當準確。

表 3、語系感測器分析方法準確率之平均相互同意度 平均相互同意度(Average Intercoder Agreement)

整段推文檢測 0.96

推文者留言檢測 0.91

RT/@mention 的原文檢測 0.95

整體平均

0.94

表 4、語系感測器分析方法準確率之複合信度 複合信度(Composite Reliability)

整段推文檢測 0.99

推文者留言檢測 0.97

RT/@mention 的原文檢測 0.98

整體信度

0.98

5.5. 文本感測器

在感測器(Sensor)的設計上,可拆解為資料預處理、資料分析、資料視覺化三 個階段,當分析運算啟動時,程式主體結構上會依序進行這三個階段的運算。而 在文本感測器的設計中,將經過斷詞分析、詞頻統計、共現矩陣,三道工法的處 理。以下將依此三階段來分別進行語系感測器的實作說明。

5.4.1 資料預處理

以下將依據斷詞分析、詞頻統計、共現矩陣三種方法的資料預處理方式進行說明。

斷詞分析預處理中,先取出選定資料集中的推文內容(data_text)欄位資料,將

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

42

裡面的每一筆資料取出後,再送至斷詞分析內。斷詞分析完成後,會接續詞頻統 計的資料預處理,由斷詞資料表(ss_analysis_seg)將每一則推文的斷詞結果取出 後,如圖 20 所示,每一則推文斷詞後的結果,會以「|」作為分隔符號,程式再 以「|」切割字詞後,先過濾掉字詞長度為 1 之字詞,再送入詞頻統計分析中。共 現矩陣則是抓取詞頻統計分析後所儲存的詞頻統計表(ss_analysis_words_count)

資料,取出α個詞頻統計計數最高之字詞,以及斷詞資料表(ss_analysis_seg)後,

送入共現矩陣分析中。

推文內容斷詞結果 馬英九|兩岸|和平|發展|http|t|co|x1ckmkho

馬英九|吳敦義|除夕|佛光山|祈福|gt|gt|http|t|co|axtrjcuf 蔡英文|宣布|辞去|民进党|党主席|live|at|http|t|co|ejq6llpn 台灣|大選|蔡英文|承認|落敗

台灣|選舉|http|t|co|ufqeexrf

圖 20、推文內容斷詞結果範例

5.4.1 資料分析

資料分析主要會依序進行斷詞分析、詞頻統計、共現矩陣方法分析。以下將這三 種方法分別進行敘述。

(1) 斷詞分析:

此方法使用中文斷詞工具 mmseg4j作為分析主要工具。中文斷詞工具 mmseg4j 為Google Code 上的一個Open Source 專案,目前版本已經發展到mmseg4j-1.8.5。

mmseg4j 是採用蔡志浩老師於2000年發表的一個中文斷詞演算法:MMSeg[27],

這個工具使用了兩套演算法和四個模糊解析規則,在[28]文章中說明了已驗證這 個工具可以達到98.41%的中文斷詞準確率。mmseg4j使用語料庫(Libs)做為斷 詞方法的字詞來源依據,且語料庫(Libs)強制使用了UTF-8編碼,以及可以自 行建立詞庫。故在感測器設計中,感測器參數設定中的語料庫(dicId)參數會儲 存選取的語料庫代碼,並且以檔案系統的方式來儲存個別觀測個案所選擇的語料 庫檔案。感測器預設語料庫檔案中的繁體中文通用語料庫是以國內教育部於1997 年發行的「國語辭典簡編本編輯資料字詞頻統計報告」[29]網路版中的「字頻總 表」與「詞頻總表」,並重新建立mmseg4j中的單一字對應頻率詞庫檔(chars.dic)

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

43

和核心詞庫檔(words.dic)。而簡體中文通用語料庫則是採用mmseg4j官方預設 使用的詞庫來源,大陸搜狗搜尋引擎(http://www.sogou.com)的詞庫,合併Ruby 的中文斷詞套件詞庫而成。因中文斷詞上需要依賴語料庫作為字詞來源依據,斷 詞系統除了基本語料庫之外,在感測器設計上也可以依據觀測個案不同的屬性,

透過感測器設定的介面,建立觀測個案專屬領域的語料庫,來強化斷詞上的準確 性。

本研究將觀測個案下所設定之語料庫,加入至mmseg4j的Dictionary物件中,

再將每一則推文內容(data_text),使用mmseg4j工具進行斷詞,最後將斷詞結果 儲存於文本感測器的斷詞資料表(ss_analysis_seg)中,斷詞資料表設計結構以及 其與觀測個案、資料集的對應如圖 21,儲存後提供給詞頻統計與共現矩陣分析 使用。

圖 21、斷詞分析資料設計結構 ER Model

(2) 詞頻統計:

詞頻統計中,將送入的字詞,以 Map<String,Integer>物件的方式儲存,Map 是一 個使用 Key-Value(鍵-值)儲存方式的物件,當物件存入時,必須給定一個唯一 的 key,而之後在搜尋時則以 Key 的方式搜尋來對應到 Value。在該物件中,Key 的部分儲存單一字詞,而在 Value 的部分則儲存計數。當有新字詞加入時,則視

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

44

為新增加物件,將新字詞加入 key,而 Value 為 1;而當檢驗到重覆字詞時,則將 對應到之物件,其 Value 計數加 1。在詞頻統計中,在總體字詞中計數前 n 高的,

稱之為高頻主題詞。可是卻經常會出現有許多的高頻主題詞,事實上是不具有分 析意義的,如:http、co 等。在該感測器的設計中,可在感測器設定功能內,設 定需去除之無用字詞,感測器儲存並維護這份無用字詞表,並在詞頻統計分析時,

先以該表過濾需計數之字詞,以去除掉不具分析意義之詞彙。當字詞計數完成後,

分析程式會再透過排序程式進行計數大小的排序,完成計數大小排序後,再儲存 進感測器中的詞頻統計表(ss_analysis_words_count)。詞頻統計表設計結構以及 其與觀測個案、資料集的對應如圖 22,儲存後提供給共現矩陣分析以及前端視 覺化分析結果查詢使用。

圖 22、詞頻統計資料設計結構 ER Model

(3) 共現矩陣:

雖然通過對高頻主題詞的詞頻統計分析,可以了解到目前某一專屬領域裡研究的 熱點。但是,僅僅對這些主題詞按照出現頻次由高到低的排列,並不足以表現出 這些高頻主題詞之間的聯繫,因此本研究採用共現分析的技術來進一步挖掘這些 主題詞之間的聯繫。共現是指詞彙在文件檔案中集中同時出現,以一個詞為中心,

可以找到一組經常與之搭配出現的詞,作為它的共現詞彙集,該集合描述了該詞 的語義上下文或語境。主題詞的共現分析則是根據主題詞在同一篇推文中共同出 現的次數來表示主題詞之間的聯繫。一般認為,如果兩個主題詞頻繁在每一則推 文中同時出現,往往表明這兩個主題詞之間具有比較密切的聯繫。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

45

在本研究中,先取出詞頻統計表(ss_analysis_words_count)中計數前 n 高的 主題詞,再取出斷詞資料表(ss_analysis_seg)中的斷詞結果。以遞迴(Recursive)

函式 Divide and Conquer 的策略,即為把一個大的問題先拆解為規模較小的幾個 問題,再透過遞迴的方式來進行。將兩兩字詞(𝑊𝑖, 𝑊𝑗)與每一則推文內容𝑆𝑛進行 比對,也因實作遞迴的關係,因(𝑊𝑖, 𝑊𝑗)與(𝑊𝑗, 𝑊𝑖)在𝑆𝑛中所得結果是相同的,當 (𝑊𝑖, 𝑊𝑗)已於𝑆𝑛中計算過後,則(𝑊𝑗, 𝑊𝑖)不會在𝑆𝑛中又重複進行計算,此設計可節 省許多計算資源。計算完成後將𝑊𝑖、𝑊𝑗與(𝑊𝑖, 𝑊𝑗)所得之結果,存入共現矩陣表

(ss_analysis_cooccurrence)中。共現矩陣表設計結構以及其與觀測個案、資料集 的對應如圖 23,其運算結果將提供前端視覺化分析結果查詢使用。

圖 23、共現矩陣資料設計結構 ER Model

5.4.1 資料視覺化

資料視覺化上,則依據分析需求進行文本分析結果顯示設計,在文本感測器中提 供了三種分析結果顯示與互動式查詢的功能。視覺化與介面設計如圖 24 所示,

在互動式查詢與視覺化設計的實作上,圖形上使用了 Highcharts 與 D3.js 來進行 實作,而在互動式查詢上則大量地使用了 JQuery 與 JavaScript 來進行前端互動 控制與 AJAX 至服務器端進行即時運算。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

46

圖 24、文本感測器互動式查詢與視覺化設計畫面

三種分析結果,提供之功能分為別:(1) 文本詞頻分析:該功能提供了將 詞頻統計次數以視覺化方式表達,除以柱狀圖表達外,也使用了文字雲(Word Cloud)作為視覺化表達。文字雲是由一組相關的標籤、依其權重所組成的集合。

其權重是以字體大小或其他視覺線索來表示。文字雲雖然在顯示上不是那麼精確,

使用柱狀圖或圓餅圖也可進行數據計數上的表示,但文字雲除可以表現較多的權 重外,在視覺化上也較能讓人快速觀察出重點。另外文字雲經常也具有互動性,

標籤往往是超連結,可以讓人們深入挖掘資訊。在互動式查詢上面,除可以表格 進行主題詞統計次數的查詢外,也將查詢項目分為:關注詞、頻繁字詞。關注詞 為該感測器之設定參數,可針對特定字詞來進行詞頻統計與顯示。頻繁字詞則為 詞頻統計後,取出統計次數前 n 高之項目作為顯示。(2) 時間序列分析:以時 間週期變化作為其顯示目的,該功能可透過調整時間參數、數據項目以及顯示方 式來做互動式的顯示查詢。數據項目分為關注詞與詞頻統計前十名字詞,顯示方 式則支援了互動式折線圖與點狀圖。該功能顯示各主題詞之在不同時間中的出現 次數。(3) 文字網絡字詞關係:以動態視覺化方式表達主題詞與主題詞之間的 關係,在視覺化表達上,節點(Node)選取了詞頻統計中,統計次數前 n 高的項 目作為顯示;邊(Edge)的粗細,是以字詞間共現次數的大小作為計算的依據;

而決定是否在主題詞與主題詞之間的視覺化顯示上建立其關係,則透過了最小關 係強度來作為計算依據,經計算後,字詞間的關係數據需大於最小關係強度才會 進行字詞關係建立並顯示。最小關係強度在本研究中分為兩類:最大共現、詞頻 關係。最大共現計算方式為主題詞與主題詞間的共現次數除以該觀測個案中最大 的共現次數,再將其百分比化,作為其關係強度。詞頻關係計算方式則是主題詞

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

47

與主題詞間的共現次數除以這兩個詞的詞頻統計次數相加,再將其百分比化,作

與主題詞間的共現次數除以這兩個詞的詞頻統計次數相加,再將其百分比化,作