黃海平 楊睿
【摘? 要】 線下會議往往效率不高,占用了大量的時間。文章設計了一款基于自然語言處理(Natural Language Processing,NLP)技術的線上討論工具,以實現節省時間、成本及提高效率等目標。用戶通過使用該工具能夠在線上完成類似于頭腦風暴的討論。工具主要具備以下三大功能:自動精簡用戶輸入內容,使之滿足字數限制;依據關鍵詞熱度推送參與者發言,供其他參與者參考;推薦熱門關鍵詞,以便參與者快速地參與到討論中。
【關鍵詞】 自然語言處理;線上頭腦風暴;關鍵詞提取
一、研究意義
生產生活中經常需要舉行線下的集會討論,線下會議往往效率不高,會耗費大量的時間。文章設計了一款基于自然語言處理技術的線上頭腦風暴討論工具,將“頭腦風暴”的討論模式遷移到網絡上,充分發揮其集思廣益的優勢,使參與者能夠隨時隨地進行討論,提高工作效率。
基于自然語言處理技術的頭腦風暴討論工具會提取參與者發言內容的關鍵詞,推送更有價值的內容,使當前的討論主題一目了然,進而產生更多有價值的想法。
二、應用場景分析及功能設計
(一)應用場景需求介紹
針對線上頭腦風暴討論,設想以下三類應用場景中的需求和應對方案:
1. 公司會議需求
每個公司都需要利用集體討論會議來解決各種問題,線上頭腦風暴討論工具提供線上交流環境,有利于利用碎片化時間來解決單一問題(如利用通勤時間進行團隊早會),從而避免造成時間與場地的浪費,大大地提高工作效率,滿足公司會議的各種需求。
2. 團隊集體討論需求
在工作團隊或者是學習團隊中,往往由于人情世故的親疏或成員性格原因,不能夠通過集體討論充分征集成員的意見及想法。線上頭腦風暴討論工具提供的匿名討論方式可以使用戶充分地闡釋自己的觀點和想法,形成了“暢所欲言,無所顧忌”的局面,為團隊提供了更廣泛的思維延伸的方式,能就某一問題討論得出更為全面、更具深度的解決方案。
值得一提的是,工具的智能推薦發言功能可以有效得出參與者對某個方案的真實認可程度。
3. 居民區業主需求
生活中,會出現居民區業主需要集體進行商討、決策的情況。線上頭腦風暴討論工具提供的討論方式——“匿名發問,文明發言”,既方便業主間互提意見,又不影響業主之間的關系,避免產生負能量,在提高鄰里間交流效率的同時,維持了良好的關系。線上頭腦風暴討論工具提供的記錄與智能推薦發言功能可以更好地征集業主們對物業的意見建議,可以直接導出提交給物業,從而提升溝通效率。
(二)功能設計
根據對應用場景的分析,線上頭腦風暴討論工具功能可分為四個模塊:
1. 展示全部參與者發言;
2. 推送熱門發言;
3. 推薦熱門關鍵詞;
4. 發言及內容一鍵精簡。
三、相關技術介紹
(一)核心算法選擇
為了減少人工成本和時間成本,同時可以利用更豐富的數據進行訓練,應當優先考慮無監督的關鍵詞抽取算法。當前廣泛使用的無監督抽取算法有TF-IDF(Term Frequency╞Inverse Document Frequency)算法與TextRank算法。TextRank適合較長的待處理文本,可以直接使用該文本進行關鍵詞提取,不需要相關的語料。待提取關鍵詞的文本較短時,如只有一個句子,就需要借助語料數據計算各個詞語的權重??紤]到頭腦風暴討論參與者的發言普遍比較短,所以選擇提取關鍵詞選用TF-IDF算法,實現一鍵精簡則運用TextRank算法。
(二)具體實現框架
線上頭腦風暴討論工具選擇PyTorch作為具體實現框架。PyTorch是一個基于Python語言的深度學習框架,提供靈活、高效、易于學習的方式來實現深度學習模型。PyTorch最初由Facebook開發,被廣泛應用于機器視覺、自然語言處理、語音識別等各個領域。
PyTorch的核心思想是使用張量(tensor)來表示數據,這使得PyTorch可以輕松地處理大規模的數據集,并且可以在GPU上進行加速。
四、解決方案設計
(一)文本預處理
文本預處理是指去除數字和符號則是為了減少噪聲干擾,保留有實際意義的詞語,主要包括三個步驟:
1. 分詞,即將文本的序列重新組合,分解為以詞語為基本單位的序列。較常用的方法有基于詞典匹配或者基于統計和深度學習。
2. 糾正拼寫錯誤,使用的主要算法和模型有Noisy Channel Model、貝葉斯。
3. 停用詞的過濾,在進行NLP的應用時,往往要把文本中的一些無關緊要的詞給去掉,如“啊”“了”“的”,這就是所謂的過濾停用詞。主要的方法是進行詞表匹配。
(二)關鍵詞提取
線上頭腦風暴討論工具選用TF-IDF算法完成關鍵詞的提取工作。
1. 計算TF
TF-IDF算法中的詞頻(Term Frequency,TF)是指某一個特定詞匯在實際任務句子中出現的次數。TF通常會被歸一化,一般表示為選定詞匯的數量mdt與文本總詞匯數Md的商tfdt=mdt/Md。
2. 計算IDF
文本中存在很多對文本意思表達貢獻不大的詞匯,可以使用逆向文件頻率idft計算某特定詞匯在文本中的重要程度:idft = log(N/(nt+0.1))。其中N為句子總數,nt為含有關鍵詞t的句子數,idft式所表達的意義是:當文本中每句話都包含某個特定詞匯時,N≈nt,idft計算結果接近0(nt加上0.1為防止分母為0),說明該詞匯不重要。
3. 計算詞匯權重
文本中某詞匯的TF-IDF權重可表示為:
wdt=tfdt×idft
綜上所述,權重wdt越大說明該詞匯在文本中越處于關鍵地位。
4. 提取關鍵詞
計算每個單詞的權重后,根據排序選擇關鍵詞。
(三)文本精簡
TextRank算法是將文本詞匯看作是圖的節點,利用句子間關系建立鄰接矩陣。根據目標的不同,TextRank 可以實現關鍵詞提取(Keyword Extraction)和關鍵句提取(Sentence Extraction)兩類任務。TextRank 提取關鍵句,實現文本精簡的算法流程一般分為以下步驟:
1. 構建關鍵句圖
明確任務目標,并將與任務相對應的詞匯添加為圖的節點(vertice)。將詞匯間關系添加為圖中連接節點的邊(edge),可以是有向邊或無向邊,帶權重邊或無權重邊,完成鄰接矩陣的建立。
2. 計算節點權重
根據迭代公式,迭代計算各節點的權重,直至權重收斂。
3. 提取關鍵句子
根據最終得分對節點進行排序,根據排序結果提取top-k作為關鍵句。
關鍵句提取任務中,鄰接矩陣考慮的是句子間的相似度。
五、驗證實驗
為驗證線上頭腦風暴討論工具性能,設計如下實驗并進行結果分析:
(一)準備處理對象文本
為測試前文所設計的文本關鍵詞提取、計數及精簡的效果,文章隨機選擇了如下新聞資訊作為處理對象文本:
綠美廣東公共服務平臺上線發布會暨綠美廣東定向越野體驗賽活動在梅州舉辦。活動將體育與綠美廣東建設相融合,傳承弘揚“岳山造林”精神,認真落實省委“1310”具體部署和實施“百千萬工程”的有關要求,正式上線綠美廣東公共服務平臺,發布了“6.30助力綠美廣東生態建設”公益募捐項目,進一步凝聚綠美廣東生態建設的強大力量?,F場600多名綠美廣東定向越野活動參與者紛紛響應號召,積極參與“6.30助力綠美廣東生態建設——我為家鄉添片綠”活動,積極認捐認養,踐行愛綠植綠護綠,共建共享綠美廣東生態建設成果。
活動由省農業農村廳、南方報業傳媒集團主辦,梅州市人民政府、省體育局、省林業局指導,南方農村報社、廣東省戶外運動協會承辦。
活動舉辦地梅州客天下,曾經是一處廢棄的采石場,通過堅持不懈的綠色改造,走出了一條綠水青山就是金山銀山的路子,如今的世界客都,青山環抱、綠水長流。
(二)提取文本關鍵詞
使用Python的jieba庫實現TF-IDF算法,提取文本中的關鍵詞。
將對象文本賦值給text變量,之后調用extract_tags()函數,函數代碼主要分為中文分詞、計算詞頻TF、計算IDF,以及將所有詞的值進行排序得到關鍵詞集合等四部分。將函數的topK參數設置為5,即表示提取關鍵詞數為5個。
對其排名前五的關鍵詞進行提取,可以得到了以下五個詞:綠美、廣東、生態建設、活動、梅州??梢钥吹綄嶒灲Y果符合預期。
1. 詞頻統計
構造Python模塊進行文本處理,統計各個詞出現的次數。統計詞頻所需的文本數據比較龐大,可以選擇網上下載的垃圾短信數據集進行實驗,首先進行分詞處理并且去除停用詞,不同的是,在分詞之前先去除一些該數據集特有的干擾項,如呼叫號碼、日期以及url標簽。使用Collection模型的Counter類來進行詞頻統計,最后會返回一個字典類型。用items()將其轉換為列表,然后用sort方法進行排序,最終進行詞頻統計,部分結果如下:“元”1255次,“中國移動”1199次,“助手”1020次,“流量”829次,“沖浪”819次。
2. 文本精簡
基于jieba庫構造Python模塊實現對關鍵句的抽取,實現對鄰接矩陣的構建,并且通過迭代計算各個節點的權重值。對節點的權值進行排序,抽取權重值排在前兩位的句子作為文本精簡結果。
最后,抽取權值排名前二的句子作為文本摘要,結果如下:
綠美廣東公共服務平臺上線發布會暨綠美廣東定向越野體驗賽活動在梅州舉辦?;顒訉Ⅲw育與綠美廣東建設相融合,傳承弘揚“岳山造林”精神,認真落實省委“1310”具體部署和實施“百千萬工程”的有關要求,正式上線綠美廣東公共服務平臺。
實驗結果符合預期。
六、結語
在生產生活節奏不斷加快的背景下,文章對一款基于自然語言處理技術的線上討論工具開展研究,將頭腦風暴的討論模式搬到線上,能夠有效避免頻繁召開線下會議造成的時間浪費,提高了工作效率。該網絡討論工具具有的推送關鍵詞以及精簡發言功能使用戶能夠更好地開展線上討論。
參考文獻:
[1] 李舟軍,范宇,吳賢杰. 面向自然語言處理的預訓練技術研究綜述[J]. 計算機科學,2020,47(03):162-173.
[2] 趙京勝,宋夢雪,高祥,等. 自然語言處理中的文本表示研究[J]. 軟件學報,2022,33(01):102-128.
[3] 王穎潔,朱久祺,汪祖民,等. 自然語言處理在文本情感分析領域應用綜述[J]. 計算機應用,2022,42(04):1011-1020.
[4] 李曉芬,樊靜東,韓安東,等. 綠美廣東公共服務平臺上線[N]. 南方日報,2023-10-30(A01).