郭雨絲
(首都體育學院 北京 100191)
隨著社會經濟發展,休閑體育活動和體育賽事逐漸受到越來越多人的青睞,但是由于產業處于發展初期,各項體育賽事發展參差不齊。隨著高速發展而帶來的風險與問題層出不窮。2021 年,甘肅白銀百公里越野賽21人遇難,更是將賽事運營的專業性和各類比賽體驗差別的討論推向了輿論高峰。通過賽后問卷中參賽者的評分和評價內容,對文本信息進行挖掘,從而可以制作一個用戶的情感分析器,該系統經過長時間的數據積累和分析校正,可以用于監控相關賬戶社交媒體、微信群中的用戶情感狀態,可以在數據初篩和監測方面起到重要作用。
現階段,對于數據的收集、整理、分析多通過人工進行,在數據量較小、賽事分布不夠密集的時候尚可進行,而在未來產業的高速發展中,機器學習和文本挖掘在體育賽事用戶情感信息的反饋和監控中將發揮巨大效用。
以“體育賽事”和“文本挖掘”為檢索詞,在中國知網(CNKI)、萬方、維普三大平臺內進行搜索,僅有1 篇相關文章,通過對微博相關內容進行文本挖掘,研究東京奧運會的網民情感情況,以期對北京冬奧會的輿情管理提供建議。以大眾體育賽事為研究對象,關注賽事運營本身的質量和參賽者體驗的研究尚未出現。
研究方法方面,沈昕怡等[1]在對東京奧運會的網絡輿情研究中,選擇使用Python 對微博平臺的熱搜話題數據及對應推文進行爬取,通過詞頻統計、感情分析等方法,了解社交網絡媒體中網民所關注的奧運會主題及感情傾向,而對具體使用的算法并未提及;王瑾璟[2]在對五星級酒店在線外賣評價的研究中,使用八爪魚采集器對餓了么和美團外賣平臺的相關點評進行數據爬取,并使用Python中的jieba工具進行分詞,人工標注1 000 條情感傾向評論數據(有效數據共1 595條),通過樸素貝葉斯模型進行情感分析,使用算法工具包sklearn 中的feature_extraction.text.CountVectorizer工具實現詞向量的標記,并通過native_bayes 工具包構建模型,最終模型的測試準確率為0.835;郭凌云等[3]在對民宿用戶滿意度的研究中,使用Python爬取途家網、攜程網、Airbnb和繽客網的民宿用戶評論數據,并使用LDA 主題聚類模型進行聚類分析,從而得出中美兩國影響民宿用戶滿意度的因素及程度;邱冬陽等[4]在對雙十一活動消費者滿意度的研究中,使用Python 爬蟲程序對不同時期美妝品類的消費者評論進行獲取、清洗,利用jieba 分詞工具將句子進行切分,并引入SnowNlp 情感分析,通過情感詞庫匹配法實現情感分類,建立LDA(latent dirichlet allocation)主題模型,進一步分析滿意度的影響因素及形成因子。
此次實驗以斯巴達勇士賽中國賽區的比賽為例。斯巴達勇士賽(Spartan Race)是一項風靡全球的系列障礙賽,自2009年起源于美國以來,已有來自美洲、歐洲、亞洲、大洋洲、非洲的20 個國家和地區被授權舉辦這項頂級賽事,2016 年,斯巴達勇士賽正式登陸中國,并在3年內高速發展為13座城市36場的大型系列賽事。斯巴達勇士賽與其他障礙路跑有些許不同,其擁有完善的競賽體系、進階體系和榮譽體系[5]。在同一套的賽事體系、賽事規則、執行標準和運營團隊指導的前提下,其數據量和用戶數量快速增長,已經基本可以達到引入機器學習和數據挖掘的需求。
2016年,第一場斯巴達勇士賽中國賽舉辦后,舉辦方即開始了賽后問卷的收集工作,問卷內容不斷更新修改,于2018年開始基本確定整體框架,主要分為區域滿意度評分、賽事信息服務評分、整體意見、歷史參賽情況、本次參賽相關信息、運動習慣等個人信息,共計6大部分,70余項內容。
此次實驗選用2018 年的6 場賽后數據作為訓練組,2019年的5場賽后數據作為實驗組,賽事級別和賽事規模相對接近,舉辦城市、參與人群均存在部分的重疊。通過整理和篩選,此次實驗僅使用凈推薦值(NPS)、綜合評分、文字形容、賽后意見4 項內容,詳見表1。

表1 數據選擇及相關信息
該實驗使用Python 對數據進行處理,首先引用pandas包對相關數據表格進行閱讀,并使用切片語句,將上述提到的4列數據分別進行切片和查看。由于各場比賽的賽后問卷結構不是完全相同的,需要分別進行切片。
數據的整合過程中,由于各表格的標題內容不完全一樣,需要提前使用rename 函數將所有表格的標題分別進行修改和重命名,分別將“您會向同事或者朋友推薦斯巴達勇士賽嗎(滿分10分)?”改為“NPS”;將“您如何評價本次斯巴達勇士賽的整體體驗(滿分10分)?”改為“評分”;將“請用一個詞形容您心中的斯巴達勇士賽”改為“形容”;將“斯巴達賽事如何可以做得更好?請您留下任何可以想到的意見!”改為“意見”,從而獲得標題統一的多個數據集。
引入停用詞stopwords 詞表,包含各類標點,如“;”“.”“。”“?”“!”“-”“~”等,以及一些沒有實際意義的語氣詞,如“啊”“唉”“吧”“被”“而且”“不過”等,共768個詞組,對文本進行分割,在分割內容后插入空格。并使用jieba分詞工具將評論語句進行分詞。
引用sklearn中的TfidfVectorizer和LogisticRegression 包,對數據進行機器學習的中文語言處理,通過對詞項的IDF 值進行定義和判斷,機器實現數字與文字的對應,將每段文字賦予一個數字化的向量值(學習),再通過邏輯回歸的方式,計算文字所對應的向量值(預測),并與原標記值進行比對(測準)。
sklearn 庫全稱為Scikit-learn,是基于Python 編程語言用作機器學習的開源數據包,具有分類、回歸、聚類、數據預處理等算法,具體包括支持向量機(SVM)、隨機森林、k-Means、DBSCAN、主成分分析(PCA)等方法[6]。
此次數據采用了兩組10 分指標和兩組文字評價。凈推薦值(NPS值)是指是否愿意將賽事推薦給自己的朋友,是一種計量某個客戶將會向其他人推薦某個企業或服務可能性的指數。作為一個流行的顧客忠誠度分析指標,研究顧客口碑如何影響企業或品牌的成長,多家國際公司都用其作為評價市場口碑情況的重要數據。這個數值一定程度上表現了用戶滿意度,但是對比發現,用戶的整體體驗評分與NPS仍有一定差異,通過兩個數值與文字的匹配回歸結果來看,整體體驗評分的準確值更高。
文字內容的選擇上,由于問卷問題的設計“請用一個詞形容您心中的斯巴達勇士賽”在最初是用作“用戶第一印象”的文字云作為表達的,簡短的詞匯或詞組很難表達用戶的情緒,且單個形容詞或名詞的表述與評分數值的相關性較差;“斯巴達賽事如何可以做得更好?請您留下任何可以想到的意見!”項內容,由于提問方式的表達問題,整體文本偏負面,但相比單詞形容來講,其測算出的準確值相對高一些。
因此,在該實驗的測試集中,選用“評分”和“意見”兩組數據進行訓練與測試。
由于實驗初期對于數據的選用和數據量的劃分情況難以確定,因此做了多組對比實驗,包括不同數據內容間的對比、不同數據集的對比、不同數據量的對比、不同的訓練集與測試集的比例等之間的對比等,通過訓練集和測試集的預測精確度進行方法和數據的選擇。
在數據選擇和新數據引入中,發現文字處理和回歸的過程無法對Int格式和float格式的內容進行處理,因此,在數據預處理的部分增加了遍歷并刪除的工作。使用iterrows 函數,對dataframe 進行遍歷,搜索到格式為整數或浮點數的行進行刪除[7]。
在嘗試提高精確度的過程中,發現無論是對賽事感受較好的10 分選手還是感受較差的0~5 分選手,均存在未提意見的現象,造成同樣的文字對應不同評分,對訓練過程造成干擾。因此,在數據預處理部分增加了遍歷空值并刪除對應行的工作。
對于TfidfVectorizer 函數來講,訓練集與測試集的比例會影響TF-IDF 值的計算[8],因此,在后期計算中,將訓練集與測試集大致為1∶1的比例調整為大約5∶2,但是結果顯示精確度變化不大。
通過以上實驗過程,最終使用2018 年的6 場賽后問卷數據和2019 年的1 場賽后問卷數據作為訓練集,共計4 897 條,經過篩選處理,將不符合要求的格式內容以及空值內容刪除后,有效數據4 566 條;使用2019年的4場賽后問卷數據作為測試集,共計2 112條,經過篩選處理,將不符合要求的格式內容以及空值內容刪除后,有效數據2 031條。
訓練集的模型評估報告如圖1 所示,10 分評論占全部數據的40.87%,7~9分評論占全部數據的55.32%,0~5 分的評論數量非常少,僅為全部數據的3.81%,由此可見,對于低分評論的訓練內容非常有限。且在高分評論中,很多選手雖然整體感受滿意度較高,但是仍為賽事提出了一些建設性的意見,導致模型整體的準確率較低。

圖1 訓練集模型評估報告
在測試集中,10分評論占全部數據量的51.6%,7~9分的高分評論占全部數據的46.58%,0~5分的低分評論僅有3條,且其準確率較低,整體拉低了模型的準確程度。
4.2.1 數據集的有效性問題
即使在實驗過程中進行了多次優化,實驗數據本身仍然存在許多無效信息未被排除,此次僅對浮點、整數格式以及“(空)”值和“無”值進行刪除,但在瀏覽過程中發現,仍存在“沒有”“暫無”等信息,需要進一步進行優化,人工進行排除,提高數據集本身的質量。
4.2.2 數據集的信息來源問題
由于此次選用的數據本身存在負面性,其文字所提即為意見內容,即使是10 分評價,可能也會出現部分負面詞語,而通過與賽事運營人員的溝通,了解到問卷的回收機制本身即是自愿填寫,而其福利為“折扣復購”,因此,大量抱怨的參賽者并不會填寫這個相對內容較為冗雜的問卷內容,從而導致低分評價非常少,并不是不存在,只是未被收集。
4.2.3 評分量表分散的問題
已有研究中,大量的情感分析均只用0、1 的二級量表,僅對文字信息進行正面、負面的兩性判斷,部分進行了0、1、2 的三級量表,增加了“中立性”的內容[9-10]。而該實驗采用的10 計量表,將用戶的情緒進行了分散,且不同用戶對自己的情緒感受評價非常主觀,對于機器學習并不友好。
總體來看,此次實驗的結果雖然準確率不高,但是為未來的研究提供了一種可能,建議未來對于問卷數據的收集過程中,應盡量做到數據分層,有效對不同情緒感受的參賽者征集全面的情感信息,尤其要增加負面情緒的表達內容及相關信息;對于數據的有效性和量表的一致性問題,在數據庫建立初期,可以考慮通過人工分揀的方式,對不同信息的內容進行二級或三級的分類,以增加機器學習和監測系統的準確性;或可以考慮使用已有的“中文正面/負面評價”詞表對數據進行賦值,并人工修正。
后期可以通過自動爬取微信群、社交媒體和網絡信息中對于相關賽事的評論,預判賽事在區域的影響力和城市參與度,并在一定程度上預測報名情況,對賽事運營前期的籌備和中期的組織具有較大作用。