第三章 實例問題定義
3.3. 總統大選分析個案流程
國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
15
3.3. 總統大選分析個案流程
在該主題研究中,希望能夠透過鉅量資料(big data)的分析取徑,收集人們在社 群媒體中分散的資訊使用行為資料,並透過軟體工具來協助進行分析,以展現其 鉅觀形貌。如圖 3 所示,本研究對水火計畫團隊在以資料科學方法進行分析時,
將分析流程進行歸納,並將流程拆解成數個環節項目,其依序包括了:事件發生、
關鍵字收集、資料儲存與管理、等待收割、資料預處理、資料分析、資料視覺化、
結果觀察與闡釋。以下將依序對各個環節項目進行說明。
圖 3、水火計畫團隊社群媒體鉅量資料分析流程
3.3.1 事件發生
挑選事件是一個主題研究發展的起點,而在社群媒體的鉅量資料下,是不太可能 對所有的資料進行分析,也會讓分析的標的太過發散。所以在對社群媒體的分析 中,則傾向採用挑選當下發生的重大議題或是研究者感興趣的主題。例如,陳光 誠事件、服貿事件屬於前者,這些事件是因為當下不管是在社群媒體中被熱烈的 討論或是因為具有高度的媒體曝光度而被擇定。而後者則如同總統大選的分析個 案,因社群媒體所連結的社群並沒有一定的界線,訊息可以在龐大的全球社群媒 體中流動,使得傳統的國家、種族、地域等認同界線變得更加模糊,也因為這些 特質挑戰了過去在傳播領域中所認定的母體、樣本、研究場域等概念,研究者希 望能探討在全球社群媒體中不同社群的討論意見與傳播模式差異下所選定的題 材。所以事件的發生包含了當下所發生的重大事件或是已經設定好的事件。
‧
群媒體資料來源為 Twitter。在 Twitter 的資料收集方式中,共有以下四種的撈取 方式(如表 1 所示):表 1、Twitter 資料撈取方式
方式 內容 優點 缺點
1 標籤
撈取特定#hastag 的所有討論貼文
#hashtag 的習慣,因此該資料集較無代表性,然後第三種方法,在以事件為主題 的情況下,研究者無法預知會有那些使用者參與討論,故無法選擇此方式,而第 四種方法,計算特定時間內所發送的所有推文,除會消耗龐大儲存資源與計算資 源外,在資料預處理中,將會有大量雜訊資料需要先預做篩選的處理。因此採取 了第二種作法,以關鍵字收集方式進行。以此方法除了較符合事件式的主題研究 外,在進行資料預處理前,也較能聚焦在有關的討論內容上面,節省了不必要消
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
17
耗的儲存空間與計算資源。在此研究個案中,該方法欲收集之關鍵字以三個主要 政黨及其總統參選人共六組中文關鍵字為主,這六組關鍵字包括了:馬英九、蔡 英文、宋楚瑜、國民黨、民進黨、親民黨。以關鍵詞的方式來進行資料收集作業。
再來便是使用 Twitter API 以上述的關鍵字進行收集。Twitter API13 是一種 RESTful(Represental State Transfer)API,目前許多網路應用服務皆採用這種結 合了 HTTP 與 URL 兩種協定的網路軟體設計架構,高效率且高靈活性。Twitter API 回傳的資料 JSON(Javascript Object Notation)格式,JSON 為一種輕量級的 資料交換語言,是獨立於語言之外的文本格式。該個案則收集了 2012 年 1 月 4 號至 2012 年 1 月 23 號期間的資料,而其中 2012 年 1 月 14 日為 2012 年台灣總 統大選日。
3.3.3 資料儲存與管理
在資料儲存與管理部分,如圖 4 所示,會先以個別且分散的方式,使用資料爬抓
(Data Crawling)的方法將資料取回,大量且未經處理過的原始資料,先以 NoSQL 的方式存入 MongoDB。MongoDB 是一種非結構化檔案導向的資料庫管理系統,
由 C++撰寫而成,以此資料庫來解決社群中大量資料快速存取的問題。之後經過 資料清洗(Data Cleaning)作業,先去除資料欄位中重複推文編號的資料,推文 編號為每一則推文(tweet)的獨立識別編碼,具有不可重複性,可用來區別是否 為同一則推文。完成清洗後,再將原始資料存入關聯式資料庫 MySQL 中。MySQL 為一結構化的資料庫,結構化資料庫是將資料間的關聯以資料表的形式加以表達,
並將資料存儲在表格中,以便用於查詢與管理。
13 “Twitter Developers” in https://dev.twitter.com/
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
18
圖 4、總統大選個案分析資料儲存與管理模式
3.3.4 等待收割
在事件的挑選上,不論是抓取當下發生的重大事件或是設定好事件主題的資料,
都會有事件的起點與最後落幕的終點,起點與終點的時間是可以被選擇與設定的。
以該個案而言,起點與終點被設定為總統大選日期的前後兩週,由 2012 年 1 月 4 日至 2012 年 1 月 23 日,這一段時間即為等待收割期,經常是放任已經完成的 程式自動化系統進行資料抓取與儲存的動作,必須等待事件結束,再開始檢視資 料與著手進行分析。在收集的事件過多與等待收割期較長的情況下,便有可能出 現後面的資料分析速度趕不上收集速度的情況。
3.3.5 資料預處理
資料預處理過程中,如圖 5 所示,首先先將 MySQL 資料庫中總統大選的資料集 中,取出不重複推文編號,使用者編號的欄位資料,並將其匯出成 CSV 格式的 資料檔案,再將該格式資料檔案匯入至 Microsoft Office Excel 中,以 Excel 檔案 的方式作為資料儲存與管理和資料預處理間的接口,保存資料並以人工傳遞方式 進行資料轉換。其後便分別根據不同的資料分析模型進行不同的資料預處理動作,
以下以語系分析處理模式作為範例說明:
在個案探索研究中,原嘗試透過使用者個人檔案(user profiles)的自我標示 或依照每則推文中附加的地理位置資訊做為分類推文與使用者的方式,但這二種 方式皆不適用。原因在於使用者個人檔案(user profiles)的自我標示無法反映使 用者所在的真實地理位置與使用語言,而且並非每一則推文都附加地理位置資訊,
加上許多中國大陸的使用者用「翻牆」方式繞過中國境內的網路防火長城,造成 他們的登入位置顯示為世界其他地區等「虛假位置」,因此使用推文的地理位置
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
19
並非有效的資訊過濾方式。因此在該研究中改採依照推文內容所使用的文字作為 的主要語言區分。於是在進行資料預處理的時候,從資料集中先取出了:推文編 號、推文內容、時間等進行語言檢測所需欄位,再交由資料分析層進行語言檢測 動作。而其中時間資料也從原本的 UTC 時間轉為 Taipei 時間。
圖 5、總統大選個案分析資料預處理模式
3.3.6 資料分析
進到資料分析程序後,針對個案來設計不同的資料分析方法加以探索,不同的分 析方法所使用到的演算法、分析流程或是理論基礎皆有所不同。本節接續資料預 處理小節,以語系分析方法為例:
在本個案中,取出了每一則推文內容,透過一個語言檢測網站14來源所提供 的語言檢測(Language Detection API)來進行語系的判定,回傳結果以 JSON(Ja-vascript Object Notation)格式提供,如圖 6 所示。而在獲得每一則推文的語系判 定後,將語系判定分為繁體中文(zh-TW)、簡體中文(zh)、日文(ja)、英文
(en)與其他語系(other)。並將語系判定結果、推文編號、推文內容、時間等 欄位進行輸出,並匯出為 CSV 檔案格式以及匯入成 Excel 檔案格式,作為下一 次轉交給資料視覺化工具處理的接口。
14 “Language Detection API” in http://detectlanguage.com/
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
20
{
"data":{
"detections":[
{
"isReliable":false,
"confidence":0.45171339563862928,
"language":"en"
} ] } }
圖 6、語言檢測網站回傳結果範例
3.3.7 資料視覺化
資料視覺化部分可使用之圖像化工具種類繁多,且各自有各自的特色,如 Gephi、
NODEXL15、Excel 等。而在語系分析的視覺化部分,使用了 Excel 工具,圖形上 以圓餅圖(Pei Chart)、折線圖(Line Chart)、直方圖(Bar Chart)、混合圖
(Combination Chart)等進行繪製。主題上以總體、分語系社群來分別進行探討。
而資料面的使用上則使用了語系比率、推文量、參與討論人數與時間週期做為參 數。繪製結果如圖 7、台灣總統大選個案分析資料視覺化圖表所示:
15 “NODEXL” in http://nodexl.codeplex.com/
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
21
圖 7、台灣總統大選個案分析資料視覺化圖表
3.3.8 結果觀察與闡釋
接續資料視覺化的部分,再來便是對結果進行觀察或闡釋,以圖形與分析結果資 料進行解釋,進而提出觀察結果、建議、下一步的深入分析或是再分析的修正方 案等。以該個案在語系社群分析中,在探討不同語言社群的每日發文量及發言人 數變化趨勢時,便將整體 tweets(如圖 8、總統大選個案分析每日推文量及參與 討論人數圖表所示),分成了三階段進行解讀。其研究者解讀的分析內容如下:
圖 8、總統大選個案分析每日推文量及參與討論人數圖表
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
22
I. 選前階段(1/7-1/13):參與討論的人數在選前一直維持穩定的數量,但 tweets 量卻有緩慢增加的趨勢,這個趨勢變化意謂在選前討論選舉等政治事務,僅限於 整體社群當中的一小部分人,但這一小群熱衷討論政治的人卻會產生愈來愈多的 tweets,也許是政治爭辯或呼籲親友投票,可是這些討論未必會吸引更多人加入 討論(每日參與發言的使用者人數並未隨 tweets 同步增加)。
II. 選舉當天(1/14):在選舉當天參與討論的人數是選前一天的數倍,所產生的 相關 tweets 也大幅暴增,這意謂許多平日不在 Twitter 上討論政治或選舉事務的 使用者,在選舉當天結果出爐後,也會在 Twitter 上發言討論或轉貼相關訊息。
III. 選後階段(1/15-21):除了選後第一天因為媒體報導效應,有較多人在 Twitter 上轉發媒體報導或評論文章,讓參與討論的人數與 tweets 仍維持在一定的量之 外,之後參與討論的人數與 tweets 就很快的下滑到平日的水準。
在這個水火計畫團隊的研究個案中,我們歸納並拆解個案研究流程後發現,
分析步驟相當獨立且每個步驟幾乎是以專人的方式來進行處理。每個專人可能負
分析步驟相當獨立且每個步驟幾乎是以專人的方式來進行處理。每個專人可能負