崔晴洋 梁小峰 倪靜 李帥 張生 仲梁維
摘? 要:為了實現(xiàn)機械手對衛(wèi)星的自動裝配,保證在裝配過程中機械手能明確每一步的操作類型。本文主要基于對人工作業(yè)的衛(wèi)星裝配工藝規(guī)程文件進行文本挖掘,以裝配工步內容作為短文本進行操作類型的分類。利用自然語言處理中常用的TF-IDF算法與TextRank算法提取關鍵字,結合基于裝配工藝術語的分級加權方法,構建三種不同的詞向量模型與詞袋空間。最后使用K-means聚類算法,分別對上述三種方案下的聚類結果進行比較與評估。結果表明,基于裝配技術術語的分級加權方案表現(xiàn)最好,平均準確率、召回率、F值分別為88.67%、88.71%、88.66%。基于裝配技術術語的短文本聚類方法不僅能自動對復雜的操作類型進行自動分類,大大減少了人工干預,而且極大地提升了分類的準確率。
關鍵詞:操作類型;TF-IDF;TextRank;分級加權;K-means
中圖分類號:TP391.1? ? ?文獻標識碼:A
Abstract:In order to realize the automatic assembly of the manipulator to the satellite,the manipulator can specify the operation type of each step in the assembly process.This paper is mainly based on the text mining of manual satellite assembly process documents and classifies the operation types with the assembly step content as the short text.Keywords were extracted by TF-IDF and TextRank algorithms commonly used in natural language processing.Three different word vector models and word pocket spaces were constructed by combining the hierarchical weighting method based on assembly technology terms.Finally,the K-means clustering algorithm is used to compare and evaluate the clustering results under the above three schemes.The results showed that the grade-weighted scheme based on assembly technical terms had the best performance,with average accuracy,recall rate,and F value of 88.67%,88.71%,and 88.66%,respectively.The method based on assembly technical terms can automatically classify complex operation types,reducing manual intervention,and significantly improve the classification accuracy.
Keywords:operation type;TF-IDF;textrank;hierarchical weighting;K–means
1? ?引言(Introduction)
隨著計算機技術與物聯(lián)網(wǎng)的飛速發(fā)展,人工智能在每個領域的地位也顯得越來越有分量,各行各業(yè)的人士對人工智能的探索也在不斷加深[1]。自然語言處理作為人工智能的一個分支,也正在很多的地方發(fā)光發(fā)熱。它主要是以電子計算機,編程語言作為工具對人類特有的書面和口頭形式的自然語言信息進行各種類型的處理和加工的技術,是一門涉及語言學、計算機科學和數(shù)學的交叉性學科。
衛(wèi)星的零部件裝配都是在狹小空間中進行,裝配存在著視野受限、目標位置不可見等問題,因此采用一種基于雙目視覺定位的機器人輔助裝配路徑規(guī)劃方法,通過機械手實現(xiàn)自動裝配。機械手需要在原有的裝配工藝規(guī)程文件中獲取工藝信息來完成不同的裝配動作,因此基于對原工藝規(guī)程文件的裝配工步操作類型的劃分至關重要。
2? ?文本預處理(Text preprocessing)
針對原有的衛(wèi)星工藝規(guī)程文件,由于其文件格式復雜,內容繁多,而我們只需要對其工步內容進行分類,因此選擇對工步內容進行單獨提取,并將提取得到的工步內容分行存儲進文本中,此時的工步內容雜亂無序,很難進行歸類,此時需要進行文本預處理,這里的操作包括了對文本的分詞,去除停用詞,利用TF-IDF算法與TextRank算法提取關鍵詞。
2.1? ?分詞處理
對于存儲進文本中的工步內容進行分詞處理,由于屬于中文短文本,這里選用了Python中的jieba分詞組件對文本內容進行分詞。該組之間具有三種分詞模式:精確模式、全模式和搜索引擎模式,這里由于做的是對裝配操作的分類,只需要對已有的內容進行最精準的切分,不需要擴充詞語,因此選用精確模式來切詞。
2.2? ?去除停用詞
在分詞完成之后,所有的工步內容都被劃分為一個個的詞組,詞組是可以表達中文文本語義的最好的形式。但在每一條由詞組組成的工步中,存在著很多對語義的表達沒有任何代表性的詞,如“!”“,”“【】”這一類的符號,又如“的”“了”“啊”之類的助詞,還有一些連詞,這都屬于停用詞,這里引用了中文停用詞詞典,去除了分詞完的文本中存在于停用詞詞典中的詞,重新儲存為文本格式,這樣就使得每一個工步中的詞組更加具有代表性,之后就需要提取關鍵詞賦予一定的權值。
2.3? ?TF-IDF提取關鍵詞
TF-IDF算法是關鍵詞提取算法中的一種十分有效且簡單的算法,并且效果較為顯著,它的主要原理是用,即給定的詞語i在第j文檔中出現(xiàn)的頻率乘以,即詞語i的逆文檔頻率,用總文檔數(shù)目除以包含指定詞語的文檔數(shù)目,再將得到的商取對數(shù)實現(xiàn)[2],計算公式如式(1):
2.4? ?TextRank提取關鍵詞
TextRank是一種基于圖排序的算法,主要是通過把文本分割成若干詞組并建立圖模型,利用投票機制對文本中的重要成分進行排序,僅僅利用單篇文檔本身的信息就可以實現(xiàn)關鍵詞的提取,做文摘[3]。由于這里估計的是工步中每個詞組的重要性,因此我們假設每個詞的連接權重都為1,則可得如公式(2):
其中,表示阻尼系數(shù),一般為0.85,表示圖中的任一節(jié)點,表示指向頂點的所有頂點集合。表示由頂點連接出去的所有頂點的集合個數(shù)。表示頂點的最終排序權重。
通過TextRank算法提取關鍵詞權值最大的前五個,詳見表2。
3? ?構建向量空間(Construct vector space)
在利用TF-IDF和TextRank分別取得所有裝配工步內的前30個關鍵詞和權重值之后,我們就需要將文本進行向量化了,向量化的每一個工步內容所組合而成的向量空間就可以作為文本聚類算法的輸入項參與到分類的工作中。
3.1? ?文本向量化
對于每一條工步內容,可以視作一個由若干個具有語義代表性的詞組組合而成的短文本,這里采用了基于詞頻的計數(shù)向量構造方法來初始化這一個文本向量,簡而言之,對于一個工藝短文本,例如:“1.檢查設備表及熱敏電阻表面狀態(tài)是否完好?!?,通過分詞與去除停用詞的處理之后產(chǎn)生的詞組包括了“檢查/設備/ 表面/熱敏電阻/表面/狀態(tài)/完好”,此時就可以構建該文本向量的初始化狀態(tài),詳見表3。
3.2? ?生成詞袋模型
根據(jù)上述生成計數(shù)向量的方法,將所有的向量累積起來,創(chuàng)建一個包含了以所有計數(shù)向量的詞組作為特征值的初始化詞袋空間模型[4],如式(3):
在該模型中,代表了特征,即劃分出來的詞組,而代表的是在語料庫中,第i個短文本第j個位置的詞組的頻次,如果不存在這個詞組,則為0。這樣構造出的詞袋模型沒有增加權值,因此存在的問題是每個詞相較于其他詞都具有一樣的代表性。這時我們就需要發(fā)揮TF-IDF和TextRank提取的關鍵詞的作用,對前30個關鍵詞進行加權處理,全面提升這30個關鍵詞在空間向量中所占有的地位,構建加權矩陣,將詞袋模型VSM乘以加權后矩陣W,所得到的加權后的詞袋模型VSMend就是最終聚類的輸入項,如下式:
3.3? ?分級加權法
上述通過兩種關鍵詞提取的方法來對詞袋模型進行加權,但其實都存在缺陷。對TF-IDF來講,短文本的詞頻通常來講不會太高,并且文檔數(shù)目較少,這會導致大多數(shù)情況下提取關鍵詞的表現(xiàn)不是很好[5]。TextRank則會對文本中多次出現(xiàn)的詞賦予更大的權重,這會導致一些可能沒有被停用詞去除的連詞具有較大的權值,如果無法做到非常準確的詞性過濾。也會導致該算法的表現(xiàn)力下降[6]。
這里探究一種新的加權方法,既可以將關鍵詞的代表性突顯出來,又可以不讓大頻次的無用詞出現(xiàn)。結合機械工藝裝配的專業(yè)知識,了解到關于機械裝配方面和其他專業(yè)一樣存在專業(yè)術語,在工藝規(guī)程文件中,往往裝配工藝術語可以最好地代表短文本的內容。進一步按照研究的目的將術語分為動詞,名詞兩種。顯然由于要對操作類型進行分類,動詞的權重肯定大于名詞。
按照上述思路,從網(wǎng)上下載機械裝配工藝術語,并將其分成動詞術語庫、名詞術語庫,將加權矩陣分為三級,若特征屬于動詞術語庫則賦予一級因子權值,若特征屬于名詞術語庫則賦予第二級因子權值,其他則賦予三級因子權值[7]。例如:“緊固”,為一級因子,賦予最大權值,“螺釘”為二級因子,賦予第二權值,“人員”為三級因子,賦予最小權值,此時加權矩陣W由三級因子權值組成,如圖1所示。
在規(guī)劃完分級加權大致的流程之后,下一步需要考慮加權規(guī)則等細節(jié)問題,由于初始化的詞袋模型為每一個計數(shù)向量累加而得到的,對于一些代表性不強的而在每一個文本中出現(xiàn)次數(shù)頻繁的詞組,即三級因子,可能會導致它的權值在一開始就可能是一級因子或二級因子的n倍,如果直接進行加權,可能會導致一級因子與二級因子的加權效果變得不夠顯著甚至小于三級因子,從而無法達到突出關鍵詞的效果。在這里,我們引入了一個約束來限制三級因子權值可能過大的問題。每一級因子的權重系數(shù)原理如式(6):
這里的是加權矩陣W上的第m行n列的權重系數(shù),代表的是每一行計數(shù)向量對應該特征值的頻次,w1、w2、w3則是通過名詞裝配術語庫,動詞裝配術語庫篩選所得因子的權重值,這里從一級到三級賦值5、3、1,該系數(shù)主要是先將計數(shù)向量中的頻次乘以倒數(shù)從而抹除所有向量受頻次影響的權重比例,之后乘以重新提升頻次的影響力,但由于在短文本的環(huán)境下,不會出現(xiàn)頻次大的出奇的情況,因此相對于w1、w2、w3的權值而言,大大減小了頻次的影響力,這也大大提高了分級加權的影響力。此時,加權矩陣W不再是一個對角矩陣,構建詞袋模型也由原來的矩陣相乘變?yōu)榫仃圏c乘的形式,如式(7):
4? ?文本聚類(Text clustering)
4.1? ?K-means聚類分析
K-means聚類算法是劃分法中比較經(jīng)典的算法,可以高效準確地對龐大的數(shù)據(jù)進行聚類。K-means算法的邏輯主要是確定k各初始的點作為質心,然后將數(shù)據(jù)集中的每個點分配到一個簇中,為每個點找距離最近的質心,并將其分配給該質心對應的簇。完成之后,每個簇的質心更新為該簇所有點的平均值[8]。迭代上述過程至質心不再發(fā)生變動。
將上述TF-IDF算法、TextRank算法,以及分級加權法加權得到的詞袋模型分別輸入到K-means聚類算法中進行聚類。這里K值得選擇根據(jù)兩種方法獲取。①基于平均離差得肘部方法選擇,②基于輪廓系數(shù)的分數(shù)評價[9],如圖2所示。
根據(jù)工藝規(guī)程文件內容,K的選取應該在3到8種,即存在3到8種的操作類型,分類太少肯定達不到分類的效果,分類太多可能效果顯著,但很多相同的操作類型可能會因為主內容不相似而被分成了幾類,也不符合實情。如圖2所示,當K值為8時,三種方法的輪廓系數(shù)最高同時平均離差最小,所以我們選擇K值為8。在這之后,通過人工分類的方法將裝配工藝內容正確分出八類。這樣就可以用這三種K-means的聚類結果與實際結果進行比較。
4.2? ?K-means聚類評估
對于通過三種不同的加權方式聚類得到的八個類別,我們分別使用準確率、召回率、F值來來進行對比評價,在這里準確率即為每一類中預測正確的操作類型數(shù)量與全部文本數(shù)量的比值[10],如式(8):
由圖4可以明顯地看出基于分級加權法的K-means聚類大體上相較于其他兩種關鍵詞提取方法,在準確率、召回率上面都有所提升,分別為88.67%、88.71%,同時在綜合評定的F值上也有較大的提高,為88.66%。這意味著通過這種方法可以更好地對裝配工藝的操作類型進行自動分類,提升了分類的精確度,為后續(xù)自動裝配的工作做出了貢獻。
5? ?結論(Conclusion)
本文基于衛(wèi)星裝配工藝規(guī)程文件,按照常規(guī)的短文本聚類步驟,采用TF-IDF、TextRank關鍵詞提取加權和基于機械裝配術語庫的分級加權法,三種方法確定特征的權重系數(shù),生成詞袋模型[11],之后采用K-means聚類進行對機械手操作類型的分類,評估結果發(fā)現(xiàn)基于專業(yè)術語庫的加權方法對于這種專業(yè)性較強的短文本聚類效果更佳。本研究著力在加權方法上進行研究,目的就是增強關鍵詞的代表性,實現(xiàn)高效聚類。
參考文獻(References)
[1] 張國鋒,吳國文.基于核函數(shù)的改進k-means文本聚類[J].計算機應用與軟件,2019,36(9):281-284;301.
[2] 王露瑤,張濤,陳才,等.基于卡方統(tǒng)計改進的TF-IDF的文本分類的研究[J].電子世界,2019,(6):24-25;28.
[3] 周錦章,崔曉暉.基于詞向量與TextRank的關鍵詞提取方法[J].計算機應用研究,2019,36(4):1051-1054.
[4] 薛蘇琴,牛永潔.基于向量空間模型的中文文本相似度的研究[J].電子設計工程,2016,24(10):28-31.
[5] 張莉婧,李業(yè)麗,曾慶濤,等.基于改進TextRank的關鍵詞抽取算法[J].北京印刷學院學報,2016,24(4):51-55.
[6] 徐馨韜,柴小麗,謝彬,等.基于改進TextRank算法的中文文本摘要提取[J].計算機工程,2019,45(3):273-277.
[7] 蔡志川,李運懷.基于分級加權法的城鎮(zhèn)垃圾填埋場選址評價[J].地質學刊,2019,43(2):341-348.
[8] (美)哈林頓(Harington,P.).李銳,譯.機器學習實戰(zhàn)[M].北京:人民郵電出版社,2013.
[9] (美)加文·海克(Gavin Hackeling).scikit-learn機器學習[M].張浩然,譯.北京:人民郵電出版社,2019.
[10] 曹曉.文本聚類研究綜述[J].情報探索,2016(01):131-134.
[11] (美)愛麗絲·鄭(Alice Zheng).陳光欣,譯.精通特征工程[M].北京:人民郵電出版社,2019.
作者簡介:
崔晴洋(1996-),男,碩士生.研究領域:計算機輔助設計與智能制造.
梁小峰(1981-),男,碩士,高級工程師.研究領域:機械設計.
倪? ?靜(1972-),女,博士,副教授.研究領域:信息系統(tǒng).
李? ?帥(1985-),男,博士,工程師.研究領域:機械工程.
張? 生(1968-),男,學士,高級工程師.研究領域:計算機應用.
仲梁維(1962-),男,碩士,教授.研究領域:計算機輔助設計,企業(yè)信息化.本文通訊作者.