石 焱,石宇強,夏世洪
(西南科技大學 制造科學與工程學院,綿陽 621010)
大數(shù)據(jù)背景下基于分布式LDA算法的生產(chǎn)模式識別
石 焱,石宇強,夏世洪
(西南科技大學 制造科學與工程學院,綿陽 621010)
結(jié)合大數(shù)據(jù)時代背景,在車間已經(jīng)實現(xiàn)信息化的基礎上,自行設計構(gòu)建出了一種基于Hadoop框架的車間系統(tǒng)架構(gòu),用于車間海量數(shù)據(jù)的存儲和分析。運用HDFS存儲車間產(chǎn)生的海量數(shù)據(jù);借鑒控制圖識別不同生產(chǎn)模式的方法,將Mapreduce編程模型與LDA算法相結(jié)合對存儲在HDFS上的數(shù)據(jù)進行分析,實現(xiàn)了對異常生產(chǎn)模式的快速識別和對生產(chǎn)過程的實時監(jiān)控,從而解決了產(chǎn)品在生產(chǎn)過程中產(chǎn)生的海量數(shù)據(jù)存儲難、分析難的問題,并為上層決策提供了支持。
混雜RFID無線傳感網(wǎng)絡;HDFS;Mapreduce;分布式線性判別(LDA)
隨著互聯(lián)網(wǎng),物聯(lián)網(wǎng)和移動互聯(lián)網(wǎng)的快速發(fā)展,數(shù)據(jù)規(guī)模呈指數(shù)增長,大數(shù)據(jù)時代已經(jīng)到來。車間現(xiàn)場數(shù)據(jù)也表現(xiàn)出了海量,復雜,多樣等特點。區(qū)別于傳統(tǒng)基于抽樣技術(shù)的生產(chǎn)過程控制[1],如何快速、及時地對車間內(nèi)產(chǎn)生的全樣本數(shù)據(jù)進行存儲和分析,識別出異常的生產(chǎn)模式,對生產(chǎn)過程進行實時監(jiān)控,保證產(chǎn)品正常生產(chǎn),避免不合格品的產(chǎn)生,實現(xiàn)基于全樣本的生產(chǎn)過程決策成為研究的關鍵問題。分布式計算的快速發(fā)展為解決這一問題指明了方向。
分布式計算作為一種新興的技術(shù),為解決大數(shù)據(jù)存儲難、分析難的問題提供了方向。Hadoop是一個分布式的數(shù)據(jù)存儲計算平臺,主要包括并行化編程模型Mapreduce和分布式文件存儲系統(tǒng)HDFS兩部分.Mapreduce負責對大規(guī)模數(shù)據(jù)進行并行化計算,HDFS則是負責大規(guī)模數(shù)據(jù)的分布式存儲[2]。本文基于Hadoop分布式框架自行設計構(gòu)建出了車間的系統(tǒng)架構(gòu),完成對車間現(xiàn)場全樣本數(shù)據(jù)及時,快速地存儲和分析,如圖1所示。
該車間系統(tǒng)架構(gòu)的層級結(jié)構(gòu)主要分為以下五個部分:
1)完成車間混雜RFID無線傳感網(wǎng)絡的覆蓋,通過混雜RFID無線傳感網(wǎng)絡完成對車間現(xiàn)場數(shù)據(jù)的全樣本采集,并在傳輸過程中完成數(shù)據(jù)清洗和數(shù)據(jù)融合。
2)將經(jīng)過初步處理過的現(xiàn)場數(shù)據(jù),通過現(xiàn)場總線進行傳輸。
圖1 車間系統(tǒng)架構(gòu)圖
3)將傳輸過來的現(xiàn)場數(shù)據(jù)存儲到關系型數(shù)據(jù)庫和非關系型數(shù)據(jù)庫中,最后統(tǒng)一存儲在HDFS分布式文件系統(tǒng)中。
4)通過Mapreduce, mathout, hive等分布式計算框架和工具,利用相關機器學習算法,對存儲在HDFS上的車間數(shù)據(jù)進行計算分析,得到需要的結(jié)論,反饋給上層進行決策。
5)上層根據(jù)分析計算的結(jié)果,從實際需求出發(fā),進行決策:既包括對現(xiàn)行方案計劃進行調(diào)整改善也包括出臺新的方案計劃等。
在實現(xiàn)上述車間系統(tǒng)架構(gòu)的基礎上,將控制圖識別異常模式的原理和機器學習算法相結(jié)合,對收集到的海量車間現(xiàn)場數(shù)據(jù)進行分析,及時有效地識別出異常生產(chǎn)模式,對生產(chǎn)過程進行實時監(jiān)控,保證產(chǎn)品的正常生產(chǎn),避免不合格品的出現(xiàn)。
2.1 控制圖識別原理
控制圖作為SPC的基本工具,以統(tǒng)計學的顯著性檢驗原理為理論基礎,一直被廣泛應用于生產(chǎn)過程中異常波動的捕捉。在加工過程中,由于受多種因素的交互影響,導致控制圖模式的基本類型分為正常模式、向上階躍異常模式、向下階躍異常模式、向上趨勢異常模式、向下趨勢異常模式以及周期模式等六種類型[3],如圖2所示。
圖2 控制圖六種基本模式
在控制圖模式識別過程中,根據(jù)規(guī)定的判別規(guī)則,判別出當前生產(chǎn)狀況屬于基本模式中的哪一種,及時完成對除正常類型以外五種異常模式的識別,并做出反饋和處理。
2.2 分布式LDA智能化控制圖模式識別
近年來以人工智能與機器學習為主的智能化控制圖模式識別日趨流行[4], Psarakis、Guh和Das等人使用了BP神經(jīng)網(wǎng)絡和支持向量機(SVM)進行控制圖基本模式的識別[5~8],都得到了不錯的識別效果,但是隨著大數(shù)據(jù)時代的到來,如何在海量數(shù)據(jù)的基礎上完成智能化控制圖模式識別,判別出異常生產(chǎn)模式成為新的問題。基于此本文完成了LDA算法的分布式實現(xiàn),為解決這一問題提供了一種有效的方法。
LDA算法又稱線性判別分析,是分類領域里面的經(jīng)典算法,基本思想是將高維的樣本數(shù)據(jù)投影到最佳鑒別矢量W上,以達到抽取分類信息和壓縮特征空間維數(shù)的效果,投影后保證樣本數(shù)據(jù)在新的子空間有最大的類間距離和最小的類內(nèi)距離,即在該空間中有最佳的可分離性。針對LDA目前主要應用的場景還是在集中式處理,對于大規(guī)模數(shù)據(jù)的處理能力還有待提升的問題,通過構(gòu)建Hadoop集群,完成了LDA算法的分布式實現(xiàn),提高了算法運行效率,解決了大規(guī)模數(shù)據(jù)環(huán)境下智能化控制圖模式識別問題。運用分布式LDA進行生產(chǎn)模式識別的流程如圖3所示。
2.2.1 算法步驟
圖3 基于分布式LDA的生產(chǎn)模式識別的流程圖
LDA算法中求解W的關鍵是計算各類別樣本的均值和各類別樣本的方差。所以轉(zhuǎn)換到Hadoop集群中樣本均值和方差的計算也是關鍵問題。如圖4所示,實現(xiàn)LDA算法的步驟為:1)使用第一個Mapreduce計算各類別的樣本均值。2)在實現(xiàn)第一個Mapreduce的基礎上使用第二個Mapreduce計算各類別樣本的方差,進一步計算出類內(nèi)的離散度矩陣和W。3)在實現(xiàn)前面兩個Mapreduce的基礎上,使用第三個Mapreduce計算出判別平面,并根據(jù)判別平面進行新樣本的類別判定。
圖4 分布式LDA實現(xiàn)流程
2.2.2 Map和Reduce函數(shù)設計
Map階段主要是從HDFS文件系統(tǒng)中按行讀取數(shù)據(jù),并對傳入的鍵值對進行初步的處理。第一個Job中的Map階段主要是對傳入的鍵值對進行一些預處理,便于后續(xù)Reduce階段的計算,包括值的拆分和類型的轉(zhuǎn)換。第二個Job中的Map階段也是對傳入的樣本數(shù)據(jù)進行預處理,與第一個Job中Map階段的不同之處在于多了Setup函數(shù)用于處理緩存數(shù)據(jù),還包括了各類別樣本方差的計算。Reduce階段是對Map階段的輸出結(jié)果進行匯總和進一步的計算。第一個Job中的Reduce階段主要是計算各類別樣本均值。第二個Job中的Reduce階段多了Setup函數(shù)用于處理緩存數(shù)據(jù),還包括了最佳鑒別矢量W的計算。分布式LDA中Map和Reduce階段對應的偽代碼如下。
第一個Job如圖5所示。
圖5 偽代碼1
第二個Job如圖6所示。
圖6 偽代碼2
3.1 實驗環(huán)境
實驗集群由四臺計算機搭建完成,配置如下:處理器為Intel(R)Core(TM)i5,CPU為M430@2.27GHz,內(nèi)存為3.8GB,硬盤容量為600GB,Hadoop版本為1.2.1。集群的配置參考Hadoop官方提供的方法進行配置。其中,隨機選取一臺主機作為Master主節(jié)點,啟動NameNode和JobTracker進程,剩余三臺主機作為DataNode和TaskTracker,為Slave從節(jié)點。
3.2 實驗數(shù)據(jù)
利用蒙特卡洛仿真法生成每種模式樣本數(shù)據(jù)4000個,即4000×6個樣本,組成樣本集S。從每種模式4000個樣本中,分別隨機抽取3000樣本,組成訓練樣本集Train進行訓練,將剩余的樣本作為測試樣本集Test進行測試。
3.3 實驗結(jié)果分析
通過對訓練樣本集進行訓練,得到訓練好的LDA分類器,根據(jù)第一判別式和第二判別式得到的分類情況如圖5所示,由于分布式的LDA和集中式的LDA的原理是相同的,只是實現(xiàn)的方式不一樣,所以選取測試集進行檢驗時,在預測的準確率上并沒有差異都是0.9898如表1所示,與控制圖顯示的情況基本相符。
圖7 分類情況
分布式和集中式的LDA算法的主要差異表現(xiàn)在其識別的速度上。為了更好地將其差異性表現(xiàn)出來,將樣本集均勻的分成4份,分別標為a、b、c、d,其中異常模式和正常模式的比例均為5:1。使用訓練好的集中式LDA分類器和分布式LDA分類器依次對樣本集a、a+b、a+b+c、a+b+c+d進行模式識別,隨著樣本集中樣本數(shù)量的增加花費的時間如圖6所示。
圖8 時間對比
對比分布式LDA算法和集中式LDA算法對生產(chǎn)過程模式的識別結(jié)果,不難發(fā)現(xiàn)在準確率相同的情況下,分布式LDA算法識別的速度更快,效率更高,總體性能要優(yōu)于集中式LDA算法,隨著生產(chǎn)過程模式數(shù)據(jù)的繼續(xù)增長整體優(yōu)勢會繼續(xù)增加。
控制圖的智能模式識別,對判斷生產(chǎn)過程是否存在異常有著至關重要的作用,隨著物聯(lián)網(wǎng)以及車間信息化的高速發(fā)展,車間現(xiàn)場數(shù)據(jù)呈指數(shù)增長,大數(shù)據(jù)時代已經(jīng)到來。本文結(jié)合當今大數(shù)據(jù)時代背景,提出了基于分布式存儲計算的智能控制圖識別方法:利用HDFS存儲車間現(xiàn)場數(shù)據(jù);利用Mapreduce模型實現(xiàn)分布式LDA算法,進行模式識別。對比集中式的LDA算法,識別速度和效率得到了提升,取得了良好的效果。同時也為如何在大數(shù)據(jù)時代進行生產(chǎn)過程控制提供了一個有效的方法。
[1] 米子川.大數(shù)據(jù)時代的三個質(zhì)量觀[J].中國質(zhì)量,2014,(3):41-43.
[2] 孟永偉,黃建強,曹騰飛,等.Hadoop集群部署實驗的設計與實現(xiàn)[J].實驗技術(shù)與管理,2015,32(1):145-149.
[3] 李太福,胡勝,魏正元,韓亞軍.基于遺傳優(yōu)化的PCA-SVM控制圖模式識別[J].計算機應用研究,2012,29(12):4538-4541.
[4] 宋李俊,趙虎.基于融合特征與支持向量機的控制圖模式識別[J].計算機應用研究,2014,31(3):937-941.
[5] Stelios Psarakis. The use of neural networks in statistical process control charts[J]. Quality & Reliability Engineering Inter national, 2011,27(5): 641-650.
[6] Guh, Ruey- Shy.A neural network based model for abnormal pattern recognition of control charts[J].Computers & Industrial Engineering,1999,36(1):97-108.
[7] Prasun Das. An hybrid detection system of control chart patterns using cascaded SVM and neural network–based detector[J]. Neural Computing and Applications,2011,20(2):287-296.
[8] 楊世元,吳德會,蘇海濤. 基于支持向量機技術(shù)的智能工序診斷研究[J].微電子學與計算機,2006,23(5):42-45.
Production pattern recognition based on the distributed LDA algorithm under the background of big data
SHI Yan, SHI Yu-qiang, XIA Shi-hong
TP301
:A
1009-0134(2017)03-0024-04
2016-12-12
石炎(1991 -),男,安徽人,碩士研究生在讀,研究方向為大數(shù)據(jù)背景下航天產(chǎn)品的質(zhì)量管理和可靠性研究。