劉曦元,周忠超
(國家無線電監(jiān)測(cè)中心云南監(jiān)測(cè)站,昆明 650031)
數(shù)據(jù)挖掘的目的是把隱沒在大量看起來雜亂無章的數(shù)據(jù)中的信息集中、萃取和提煉出來,以找出所研究對(duì)象的內(nèi)在規(guī)律。隨著無線電監(jiān)測(cè)事業(yè)的發(fā)展及監(jiān)測(cè)技術(shù)的革新,無線電監(jiān)測(cè)數(shù)據(jù)被源源不斷的記錄下來,對(duì)記錄下來的數(shù)據(jù)進(jìn)行科學(xué)的分析及合理的統(tǒng)計(jì),可獲得更為準(zhǔn)確的信號(hào)發(fā)射規(guī)律,進(jìn)而深入研究監(jiān)測(cè)數(shù)據(jù)背后所蘊(yùn)含的意義,為無線電監(jiān)測(cè)提供數(shù)據(jù)輔助,探索新形勢(shì)下的短波監(jiān)測(cè)方法。
因此,本文針對(duì)短波無線電監(jiān)測(cè)數(shù)據(jù)結(jié)合軟件開發(fā)技術(shù),進(jìn)行多角度、多維度的數(shù)據(jù)挖掘應(yīng)用設(shè)計(jì),希望為短波無線電監(jiān)測(cè)提供更為強(qiáng)而有力的技術(shù)支持,為無線電短波頻譜管理提供數(shù)據(jù)保障,為今后更科學(xué)、合理的進(jìn)行短波監(jiān)測(cè)工作提供數(shù)據(jù)依據(jù)。
監(jiān)測(cè)數(shù)據(jù)的數(shù)據(jù)挖掘是一個(gè)較為復(fù)雜且繁瑣的過程,其涉及復(fù)雜算法和龐大數(shù)據(jù),同時(shí),其使用的數(shù)據(jù)可能存在敏感性,因此,本軟件設(shè)計(jì)使用了桌面客戶端的形式,提供強(qiáng)大的可移植性,并使用MVC的設(shè)計(jì)模式,即模型-視圖-控制的形式,提供簡(jiǎn)易的操作。系統(tǒng)的總體設(shè)計(jì)結(jié)構(gòu)如圖1所示。
圖1 數(shù)據(jù)挖掘軟件系統(tǒng)架構(gòu)圖
本系統(tǒng)的設(shè)計(jì)目標(biāo)如下:通過讀入外部數(shù)據(jù)(excel表格數(shù)據(jù)或xml數(shù)據(jù))進(jìn)行短波無線電監(jiān)測(cè)數(shù)據(jù)的數(shù)據(jù)建模,然后按照數(shù)據(jù)的有效性定義進(jìn)行數(shù)據(jù)清洗過濾,剩下的有效數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析,達(dá)到數(shù)據(jù)挖掘的目的。
備注:①信號(hào)分析在本文中含義為對(duì)信號(hào)的分析,即分析信號(hào)的頻率、帶寬、調(diào)制模式和發(fā)射時(shí)間等。②短波無線電監(jiān)測(cè)數(shù)據(jù)挖掘指通過對(duì)信號(hào)分析產(chǎn)生的數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析,得到有用數(shù)據(jù)的過程。③數(shù)據(jù)的有效性定義為規(guī)定目標(biāo)數(shù)據(jù)的有效屬性,例如短波信號(hào)頻率在3-3 0MHz之間,超出頻率范圍則被視為無效數(shù)據(jù)。
本設(shè)計(jì)使用短波監(jiān)測(cè)數(shù)據(jù)進(jìn)行數(shù)據(jù)挖掘,短波監(jiān)測(cè)數(shù)據(jù)包含信號(hào)的頻率、帶寬、調(diào)制模式、監(jiān)測(cè)時(shí)間等數(shù)據(jù),其每一項(xiàng)均稱為數(shù)據(jù)項(xiàng)。本設(shè)計(jì)使用的數(shù)據(jù)項(xiàng)的數(shù)據(jù)類型包含雙精度浮點(diǎn)數(shù)字類型,例如頻率和帶寬;字符串文本類型,例如調(diào)制模式;時(shí)間類型,例如監(jiān)測(cè)時(shí)間等。
備注:雙精度浮點(diǎn)數(shù)(double)是計(jì)算機(jī)使用的一種數(shù)據(jù)類型,使用64位(8字節(jié))來存儲(chǔ)一個(gè)浮點(diǎn)數(shù)。它可以表示十進(jìn)制的15或16位有效數(shù)字,其可以表示的數(shù)字的絕對(duì)值范圍大約是:
2.23*10 ^-308~1.79*10^308。
圖2 軟件流程圖
軟件啟動(dòng)后,提示人工選擇數(shù)據(jù)源,按照每條屬性逐一選擇過濾條件,之后選擇算法,選擇統(tǒng)計(jì)的數(shù)據(jù)項(xiàng),最后將由軟件給出對(duì)應(yīng)的統(tǒng)計(jì)圖,參照統(tǒng)計(jì)圖可得出本次數(shù)據(jù)挖掘的信息。
對(duì)單項(xiàng)為數(shù)字項(xiàng)的數(shù)據(jù)進(jìn)行統(tǒng)計(jì)可采用頻率分布直方圖來顯示頻率分布及正態(tài)分布曲線算法來計(jì)算和表示數(shù)據(jù)的分布規(guī)律。
頻率分布直方圖的一般畫法:
(1)先求出極差
極差公式為:
極差=組數(shù)據(jù)中的最大值-組數(shù)據(jù)中的最小值
(2)決定組數(shù)和組距
式中,N為組中數(shù)據(jù)的個(gè)數(shù),公式的值均四舍五入向上取整。組距公式為:即極差除以分組數(shù)。
(3)根據(jù)以上公式,按照組號(hào)、組坐標(biāo)、頻數(shù)統(tǒng)計(jì)出列表:
組號(hào)可從1開始依次增加,組坐標(biāo)除第一組為Xmin+ι(即組數(shù)據(jù)中的最小值加組距),其余組坐標(biāo)均為上一組坐標(biāo)加組距。頻數(shù)除第一組為開區(qū)間,其余組為左閉右開的半開半閉區(qū)間。由此可形成頻率分布直方圖,可直觀顯示頻率分布。在此基礎(chǔ)上,可增加正態(tài)分布曲線來探究數(shù)據(jù)的分布規(guī)律。
正態(tài)分布曲線的公式為:
式中,x為本組數(shù)據(jù)的頻數(shù);μ為中心值(均數(shù));σ為標(biāo)準(zhǔn)差。中心值(均數(shù))公式為:
中心值=一組數(shù)據(jù)之和/數(shù)據(jù)的個(gè)數(shù)。
標(biāo)準(zhǔn)差也被稱為標(biāo)準(zhǔn)偏差,或者實(shí)驗(yàn)標(biāo)準(zhǔn)差,公式如下所示:
標(biāo)準(zhǔn)差=方差的算術(shù)平方根(即所有數(shù)減去其均值的平方和,所得結(jié)果除以該組數(shù)之個(gè)數(shù)(或個(gè)數(shù)減一,即變異數(shù)),再把所得值開根號(hào),所得之?dāng)?shù)就是這組數(shù)據(jù)的標(biāo)準(zhǔn)差)。
正態(tài)分布曲線是一種概率分布。生產(chǎn)與科學(xué)實(shí)驗(yàn)中很多隨機(jī)變量的概率分布都可以近似地用正態(tài)分布來描述。從理論上看,正態(tài)分布具有很多良好的性質(zhì),許多概率分布可以用它來近似表示。
單項(xiàng)分析中對(duì)時(shí)間屬性進(jìn)行分析,其意義在于分析探究信號(hào)出現(xiàn)的規(guī)律,因此,可將信號(hào)出現(xiàn)的時(shí)間進(jìn)行計(jì)數(shù)統(tǒng)計(jì)。將時(shí)間信息做標(biāo)準(zhǔn)化轉(zhuǎn)換,形成如“yyyy-MM-dd-HH-mm-ss”的形式即“年-月-日-時(shí)-分-秒”的時(shí)間格式。將總數(shù)據(jù)規(guī)范化,存入鏈表中,對(duì)鏈表進(jìn)行迭代從而遍歷所有數(shù)據(jù)。在迭代中,首先檢查當(dāng)前數(shù)據(jù)的時(shí)間屬性是否為空,為空則跳過此條數(shù)據(jù),不為空則提取當(dāng)前時(shí)間,進(jìn)行標(biāo)準(zhǔn)格式轉(zhuǎn)換,然后截取所需時(shí)間的文本段,例如:
需要統(tǒng)計(jì)每年每月所產(chǎn)生多少數(shù)據(jù)則可截取“yyyy-MM”為key,將其放入一個(gè)map集合中,當(dāng)map集合中已有當(dāng)前key則key對(duì)應(yīng)的數(shù)值+1,反之則建立當(dāng)前key所對(duì)應(yīng)的數(shù)據(jù)并將計(jì)數(shù)存為1。當(dāng)?shù)Y(jié)束后,map集合中所存儲(chǔ)的數(shù)據(jù)即為每年每月所產(chǎn)生數(shù)據(jù)的二維集合,再次將map集合轉(zhuǎn)為鏈表可得到形如xxxx年xx月有xx條數(shù)據(jù)的表格信息。鏈表迭代的流程圖如圖3所示。
圖3 對(duì)數(shù)據(jù)的時(shí)間信息進(jìn)行迭代的流程圖
備注:鏈表(Linked list)是一種常見的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),是一種線性表,但是并不會(huì)按線性的順序存儲(chǔ)數(shù)據(jù),而是在每一個(gè)節(jié)點(diǎn)里存到下一個(gè)節(jié)點(diǎn)的指針(Pointer)。由于鏈表可以不按順序存儲(chǔ),鏈表在插入的時(shí)候可以達(dá)到O(1)的復(fù)雜度,比另一種線性表順序表快得多,但是查找一個(gè)節(jié)點(diǎn)或者訪問特定編號(hào)的節(jié)點(diǎn)則需要O(n)的時(shí)間,而順序表相應(yīng)的時(shí)間復(fù)雜度分別是O(logn)和O(1)。Map集合提供了key到value的映射,Map中不能包含相同的key值,每個(gè)key只能影射一個(gè)相同的value。key值還決定了存儲(chǔ)對(duì)象在映射中的存儲(chǔ)位置。但不是key對(duì)象本身決定的,而是通過散列技術(shù)進(jìn)行處理,可產(chǎn)生一個(gè)散列碼的整數(shù)值,散列碼通常用作一個(gè)偏移量,該偏移量對(duì)應(yīng)分配給映射的內(nèi)存區(qū)域的起始位置,從而確定存儲(chǔ)對(duì)象在映射中的存儲(chǔ)位置。
在多項(xiàng)分析中,對(duì)數(shù)字項(xiàng)和文本項(xiàng)的統(tǒng)計(jì)基本上是單項(xiàng)數(shù)據(jù)分析的拓展,對(duì)數(shù)字與數(shù)字項(xiàng)、數(shù)字與文本項(xiàng)的聯(lián)合分析,主要依托于對(duì)數(shù)據(jù)的分類提取,例如信號(hào)頻率與調(diào)制方式的聯(lián)合分析:將頻率數(shù)據(jù)按照解調(diào)方式分成若干組,在對(duì)每組進(jìn)行單項(xiàng)數(shù)據(jù)分析,可得到諸如FM調(diào)制模式下,信號(hào)在頻譜上的分布規(guī)律等分析結(jié)果。特別要提到的是對(duì)于數(shù)字與數(shù)字項(xiàng)進(jìn)行分析時(shí),可先計(jì)算其相關(guān)性。計(jì)算兩組數(shù)字項(xiàng)的相關(guān)性可使用皮爾遜相關(guān)系數(shù)來表示,一般情況下,相關(guān)系數(shù)R>0.9為高度相關(guān),0.75<R<0.9為顯著相關(guān),0.5<R<0.75為一般相關(guān),R<0.5為不相關(guān)。相關(guān)系數(shù)的結(jié)果小,并不一定表示不相關(guān)。相關(guān)系數(shù)計(jì)算的應(yīng)該是線性相關(guān)系數(shù),相關(guān)系數(shù)是用以反映變量之間相關(guān)關(guān)系密切程度的統(tǒng)計(jì)指標(biāo)。
相關(guān)系數(shù)的簡(jiǎn)單公式為:
式中,Cov(X,Y)為X集合與Y集合的協(xié)方差;D(x)為X集合的方差;D(y)為Y集合的方差。
協(xié)方差Cov(X,Y)公式為:
Cov(X,Y)=E(xy)-E(x)E(y)
式中,E(x)為X集合的期望;E(y)為Y集合的期望,等同于各集合的平均數(shù)。E(xy)公式為:
式中,n為數(shù)據(jù)的個(gè)數(shù)。方差公式為:
式中,x為X集合的均數(shù)。通過上述描述的公式,計(jì)算可得兩個(gè)集合的相關(guān)系數(shù)。
通過上述的軟件算法應(yīng)用,進(jìn)行短波監(jiān)測(cè)數(shù)據(jù)的數(shù)據(jù)挖掘:?jiǎn)雾?xiàng)數(shù)據(jù)分析,主要計(jì)算本項(xiàng)數(shù)據(jù)的分布概率及期望,可實(shí)際運(yùn)用于對(duì)短波數(shù)據(jù)的頻率進(jìn)行數(shù)據(jù)分析,可得出頻率分布直方圖及頻率分布的正態(tài)曲線圖,通過觀察正態(tài)曲線圖,可得出頻率的實(shí)際使用情況。多項(xiàng)數(shù)據(jù)分析在單項(xiàng)數(shù)據(jù)分析的基礎(chǔ)上加入了分類,可實(shí)際運(yùn)用于頻率與調(diào)制模式的綜合分析,例如將FM調(diào)制模式的頻率提取出來進(jìn)行單項(xiàng)數(shù)據(jù)分析可得知FM調(diào)制模式下信號(hào)的常用頻率。對(duì)以上簡(jiǎn)述的單項(xiàng)或多項(xiàng)數(shù)據(jù)統(tǒng)計(jì)按照時(shí)間分類,又可得到數(shù)據(jù)的時(shí)間變化情況,例如對(duì)頻率單項(xiàng)分析后按照時(shí)間分類則可得知某年某月的頻率使用情況。以上算法可根據(jù)需求及數(shù)據(jù)挖掘研究的深入再進(jìn)行拓展。
本文從軟件開發(fā)的角度,結(jié)合統(tǒng)計(jì)學(xué)算法對(duì)短波無線電監(jiān)測(cè)數(shù)據(jù)進(jìn)行數(shù)據(jù)挖掘應(yīng)用程序設(shè)計(jì),并簡(jiǎn)述了部分統(tǒng)計(jì)學(xué)算法在實(shí)際處理短波無線電監(jiān)測(cè)數(shù)據(jù)過程中的作用,增強(qiáng)了短波無線電監(jiān)測(cè)數(shù)據(jù)的可用性,為今后更科學(xué)、合理地進(jìn)行短波監(jiān)測(cè)工作提供數(shù)據(jù)依據(jù),為短波無線電監(jiān)測(cè)數(shù)據(jù)分析提供新的思路。