一種基于基因表達(dá)式編程的n中心點(diǎn)分類方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種基于基因表達(dá)式編程的N中心點(diǎn)分類方法,屬于機(jī)器學(xué)習(xí)技術(shù)領(lǐng) 域。
【背景技術(shù)】
[0002] 基于距離的分類方法將每個(gè)數(shù)據(jù)表示為數(shù)值向量,為每個(gè)類構(gòu)造一個(gè)類中心。分 類時(shí),計(jì)算待分類數(shù)據(jù)與每個(gè)類中心點(diǎn)的距離,待分類數(shù)據(jù)的類別即為與之最近的類中心 點(diǎn)所表示的類。
[0003] k最近鄰分類方法是一種常用的基于距離的分類方法。它避免直接構(gòu)造類中心的 困難,通過計(jì)算找到k個(gè)與待分類數(shù)據(jù)最接近的數(shù)據(jù)點(diǎn),待分類數(shù)據(jù)的類別即為這k個(gè)數(shù)據(jù) 中個(gè)數(shù)最多的類別。k最近鄰方法是普遍采用的一種基于距離的分類方法,但是方法的準(zhǔn)確 率對(duì)k的取值和訓(xùn)練集數(shù)據(jù)的平衡性較敏感,且每測(cè)試一個(gè)待分類數(shù)據(jù)的計(jì)算量較大?;?因表達(dá)式編程具有對(duì)數(shù)據(jù)分布和輸入順序不敏感,能快速進(jìn)行全局搜索的特性,在數(shù)據(jù)挖 掘和函數(shù)優(yōu)化方面取得了很好的效果。
[0004] 因此,如何采用遺傳方法的思想,結(jié)合中心點(diǎn)分類方法降低方法的計(jì)算量,同時(shí)避 免對(duì)非平衡數(shù)據(jù)的敏感性,仍是一個(gè)未解決的技術(shù)問題。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明要克服現(xiàn)有技術(shù)的上述缺點(diǎn),提供一種基于基因表達(dá)式編程的N中心點(diǎn)分 類方法,能降低分類過程的計(jì)算量,同時(shí)避免對(duì)非平衡數(shù)據(jù)的敏感性。
[0006] 為了達(dá)到上述目的,本發(fā)明提供了一種基于基因表達(dá)式編程的N中心點(diǎn)分類方 法。包括有:步驟一、將分類訓(xùn)練數(shù)據(jù)劃分為含類標(biāo)記數(shù)據(jù)集和不含類標(biāo)記數(shù)據(jù)集;步驟 二、在不含類標(biāo)記數(shù)據(jù)集的多維空間中根據(jù)距離公式搜索類中心點(diǎn);步驟三、在含類標(biāo)記數(shù) 據(jù)集上評(píng)估搜索得到的類中心點(diǎn)的準(zhǔn)確性;步驟四、采用基因表達(dá)式編程方法表達(dá)、搜索和 更新得到新的類中心點(diǎn);步驟五、根據(jù)計(jì)算未知點(diǎn)與類中心點(diǎn)的距離,對(duì)未知點(diǎn)的類型進(jìn)行 分類。步驟六、重復(fù)步驟三、步驟四、步驟五,直到目標(biāo)函數(shù)滿足停止條件。
[0007] 本發(fā)明的技術(shù)方法如下所述:
[0008] 一種基于基因表達(dá)式編程的N中心點(diǎn)分類方法,包括如下步驟:
[0009] 步驟S1、將訓(xùn)練數(shù)據(jù)集X隨機(jī)劃分為大小相等的含類標(biāo)記數(shù)據(jù)集X1和不含類標(biāo)記 數(shù)據(jù)集Xu。
[0010] 步驟S2、對(duì)一個(gè)η類分類問題,從不含類標(biāo)記數(shù)據(jù)集Xu中隨機(jī)選擇η個(gè)數(shù)據(jù)點(diǎn)作 為初始類中心點(diǎn)Cn。
[0011] 步驟S3、計(jì)算不含類標(biāo)記數(shù)據(jù)集Xu中數(shù)據(jù)Axi與類中心點(diǎn)Cj之間的距離 d(Xi,Cj),根據(jù)距離d(Xi,(^將Xu中的每個(gè)數(shù)據(jù)點(diǎn)指派給最小距離值所對(duì)應(yīng)類中心點(diǎn)c』所 代表的類。其中1 1表示訓(xùn)練數(shù)據(jù)集X中的第i個(gè)數(shù)據(jù)點(diǎn),h表示η個(gè)中心點(diǎn)中的第j個(gè)中 心點(diǎn)。
[0012] 步驟S4、采用基于基因表達(dá)式編程方法的N中心點(diǎn)分類方法表達(dá)、搜索和更新類 中心點(diǎn)。對(duì)基因表達(dá)式編程的基因進(jìn)行必要的選擇和變異等遺傳操作。
[0013] 步驟S5、根據(jù)含類標(biāo)記數(shù)據(jù)集X1中數(shù)據(jù)點(diǎn)的實(shí)際類分布情況,計(jì)算目標(biāo)函數(shù)0。
[0014] 步驟S6、重復(fù)步驟S3,步驟S4,步驟S5直到目標(biāo)函數(shù)0滿足停止條件。
[0015] 進(jìn)一步,步驟S3中采用數(shù)據(jù)點(diǎn)與類中心點(diǎn)之間的距離來進(jìn)行指派的過程如下:
[0016] 步驟S31、對(duì)不含類標(biāo)記數(shù)據(jù)集Xu中的每個(gè)數(shù)據(jù)點(diǎn)Xi,計(jì)算其與各類中心點(diǎn)C j之 間的距離d(Xi,Cj)。其中距離d(Xi, Cj)為數(shù)據(jù)點(diǎn)\與中心點(diǎn)c」之間的歐幾里得距離。
[0017] 步驟S32、將該數(shù)據(jù)點(diǎn)Xi指派給最小距離值min{d(x i, C」)} (j e {1,…,N}所對(duì)應(yīng) 的類中心點(diǎn)Cj。
[0018] 步驟S33、指派結(jié)束后,計(jì)算最小距離總和D,并將指派結(jié)果和數(shù)據(jù)集&中數(shù)據(jù)的 實(shí)際類分布情況做比較,得出命中數(shù)H,即正確分類的數(shù)據(jù)點(diǎn)個(gè)數(shù)。
[0019] 進(jìn)一步,步驟S4中基于基因表達(dá)式編程的N中心點(diǎn)分類方法,具體是:
[0020] 基于基因表達(dá)式編程的基因分為頭部和尾部兩個(gè)部分。對(duì)一個(gè)η類分類問題,方 法從數(shù)據(jù)集X u中隨機(jī)選擇η個(gè)數(shù)據(jù)點(diǎn)作為初始類中心點(diǎn)Ix i,χ2, ...,χη}構(gòu)成基因的尾部, 根據(jù)類中心點(diǎn)在基因尾部中的位置順序,Xl,x2, ...,Xn依次表示類c i,c2,......,cn?;?頭部是兩種特殊的二元運(yùn)算符:左移運(yùn)算符< 和右移運(yùn)算符 >,這兩種運(yùn)算符統(tǒng)稱移動(dòng)運(yùn) 算符。
[0021] 進(jìn)一步,步驟S4所述的表示方法的移動(dòng)運(yùn)算符過程為:
[0022] 步驟S41、計(jì)算在左移運(yùn)算符對(duì)應(yīng)的右子樹或右移運(yùn)算符對(duì)應(yīng)的左子樹中的類中 心點(diǎn)Ix 1, x2, ...,xk}的均值點(diǎn)Xm_= (X ^ X2, .·.,Xm)。其中,k為子樹中所含類中心點(diǎn)的個(gè) 數(shù),m為屬性個(gè)數(shù)。Xmean的第i個(gè)屬性值
【主權(quán)項(xiàng)】
1. 一種基于基因表達(dá)式編程的N中心點(diǎn)分類方法,其特征在于,包括有: 步驟S1、將訓(xùn)練數(shù)據(jù)集X隨機(jī)劃分為大小相等的含類標(biāo)記數(shù)據(jù)集&和不含類標(biāo)記數(shù)據(jù) 集Xu; 步驟S2、對(duì)一個(gè)n類分類問題,從不含類標(biāo)記數(shù)據(jù)集Xu中隨機(jī)選擇n個(gè)數(shù)據(jù)點(diǎn)作為初 始類中心點(diǎn)CN; 步驟S3、計(jì)算不含類標(biāo)記數(shù)據(jù)集Xu中數(shù)據(jù)點(diǎn)xi與類中心點(diǎn)c」之間的距離d(xi,Cj),根 據(jù)距離d(Xi,Cj)將Xu中的每個(gè)數(shù)據(jù)點(diǎn)指派給最小距離值所對(duì)應(yīng)類中心點(diǎn)c』所代表的類。 其中示訓(xùn)練數(shù)據(jù)集X中的第i個(gè)數(shù)據(jù)點(diǎn),q表示n個(gè)中心點(diǎn)中的第j個(gè)中心點(diǎn); 步驟S4、采用基于基因表達(dá)式編程方法的N中心點(diǎn)分類方法表達(dá)、搜索和更新類中心 點(diǎn)。對(duì)基因表達(dá)式編程的基因進(jìn)行必要的選擇和變異等遺傳操作; 步驟S5、根據(jù)含類標(biāo)記數(shù)據(jù)集&中數(shù)據(jù)點(diǎn)的實(shí)際類分布情況,計(jì)算目標(biāo)函數(shù)0。 步驟S6、重復(fù)步驟S3,步驟S4,步驟S5直到目標(biāo)函數(shù)0滿足停止條件。
2. 根據(jù)權(quán)利要求1的所述的方法,其特征在于:所述步驟S3中采用數(shù)據(jù)點(diǎn)與類中心點(diǎn) 之間的距離來進(jìn)行指派的過程如下: 步驟S31、對(duì)不含類標(biāo)記數(shù)據(jù)集Xu中的每個(gè)數(shù)據(jù)點(diǎn)xi,計(jì)算其與各類中心點(diǎn)之間的 距離d(Xi,Cj)。其中距離d(Xi,Cj)為數(shù)據(jù)點(diǎn)\與中心點(diǎn)c」之間的歐幾里得距離; 步驟S32、將該數(shù)據(jù)點(diǎn)Xi指派給最小距離值min{d(xi,Cj)}(jG{1,…,N}所對(duì)應(yīng)的類 中心點(diǎn)cj; 步驟S33、指派結(jié)束后,計(jì)算最小距離總和D,并將指派結(jié)果和數(shù)據(jù)集&中數(shù)據(jù)的實(shí)際 類分布情況做比較,得出命中數(shù)H,即正確分類的數(shù)據(jù)點(diǎn)個(gè)數(shù)。
3. 根據(jù)權(quán)利要求1的所述的方法,其特征在于:所述步驟S4中基于基因表達(dá)式編程的 N中心點(diǎn)分類方法,具體是:基于基因表達(dá)式編程的基因分為頭部和尾部兩個(gè)部分;對(duì)一個(gè) n類分類問題,方法從數(shù)據(jù)集Xu中隨機(jī)選擇n個(gè)數(shù)據(jù)點(diǎn)作為初始類中心點(diǎn){xx2,. . .,xn} 構(gòu)成基因的尾部,根據(jù)類中心點(diǎn)在基因尾部中的位置順序,Xl,x2,...,xn依次表示類 Cl,c2,......,cn;基因頭部是兩種特殊的二元運(yùn)算符:左移運(yùn)算符<和右移運(yùn)算符>,這兩 種運(yùn)算符統(tǒng)稱移動(dòng)運(yùn)算符。
4. 根據(jù)權(quán)利要求1的所述的方法,其特征在于:所述步驟S4所述移動(dòng)運(yùn)算符過程為: 步驟S41、計(jì)算在左移運(yùn)算符對(duì)應(yīng)的右子樹或右移運(yùn)算符對(duì)應(yīng)的左子樹中的類中心點(diǎn) {xpx2,. . .,xk}的均值點(diǎn)Xm_=(XX2,. ? .,Xm);其中,k為子樹中所含類中心點(diǎn)的個(gè)數(shù),m 為屬性個(gè)數(shù)。Xm6an的第i個(gè)屬性值A(chǔ) ,Xji表示中心點(diǎn)xj的第i個(gè)屬性值; 冗j:l 步驟S42、產(chǎn)生一個(gè)隨機(jī)移動(dòng)因子RMF。RMF決定運(yùn)算符一邊子樹的每個(gè)類中心點(diǎn)相對(duì) 于另一邊子樹的所含類中心點(diǎn)的均值點(diǎn)X_n的移動(dòng)幅度;因?yàn)殡S機(jī)移動(dòng)因子每次都隨機(jī)產(chǎn) 生,使得類中心點(diǎn)每次能夠進(jìn)行不同幅度的移動(dòng),從而增加了種群多樣性;這里,隨機(jī)移動(dòng) 因子的計(jì)算公式定義為: RMF=cos(Jr*d)/i 其中,d為區(qū)間[0,1]上的隨機(jī)浮點(diǎn)數(shù),i為[l,k](k>l為整數(shù))之間的隨機(jī)整數(shù),從上 式可以看出RMF屬于區(qū)間[-1,1]; 步驟S43、根據(jù)X_dPRMF得到移動(dòng)向量Ym_=(Yi,Y2,. . .,Ym),Ym的第i個(gè)屬性值Yi=X^RMF,XiS均值點(diǎn)Xmean的第i個(gè)屬性值; 步驟S44、將左移運(yùn)算符對(duì)應(yīng)的右子樹或右移運(yùn)算符對(duì)應(yīng)的左子樹中的類中心點(diǎn)依次 加上移動(dòng)向量Y_e形成新的類中心點(diǎn)。
5. 根據(jù)權(quán)利要求1的所述的方法,其特征在于:所述根據(jù)步驟4所述的表示方法進(jìn) 一步包括:生成一個(gè)[0, 1]之間的隨機(jī)數(shù)r,當(dāng)r大于預(yù)先設(shè)定的變異概率p時(shí),進(jìn)行變異 操作;對(duì)于基因頭部,變異算子隨機(jī)將左移運(yùn)算符〈變異成右移運(yùn)算符〉,或?qū)⒂乙七\(yùn)算符 >變異成左移運(yùn)算符〈;對(duì)于基因尾部,變異算子隨機(jī)選擇數(shù)據(jù)集Xu中的數(shù)據(jù)點(diǎn)替換尾部中 的類中心點(diǎn)。
6. 根據(jù)權(quán)利要求1的所述的方法,其特征在于:所述根據(jù)步驟S5所述的表示方法具體 是:目標(biāo)函數(shù)〇為一個(gè)以命中數(shù)H和最小距離總和D為自變量的函數(shù)表達(dá)式的值,計(jì)算公式 (1): 0 =H*w+1/D (1) 其中H為命中數(shù),D為最小距離總和,w為區(qū)間(0, 1)上的一個(gè)常數(shù);該公式綜合考慮 了命中數(shù)H和最小距離總和D對(duì)劃分方案優(yōu)劣的影響。
【專利摘要】一種基于基因表達(dá)式編程的N中心點(diǎn)分類方法,包括有:步驟一、將分類訓(xùn)練數(shù)據(jù)劃分為含類標(biāo)記數(shù)據(jù)集和不含類標(biāo)記數(shù)據(jù)集;步驟二、在不含類標(biāo)記數(shù)據(jù)集的多維空間中根據(jù)距離公式搜索類中心點(diǎn);步驟三、在含類標(biāo)記數(shù)據(jù)集上評(píng)估搜索得到的類中心點(diǎn)的準(zhǔn)確性;步驟四、采用基因表達(dá)式編程方法表達(dá)、搜索和更新得到新的類中心點(diǎn);步驟五、根據(jù)計(jì)算未知點(diǎn)與類中心點(diǎn)的距離,對(duì)未知點(diǎn)的類型進(jìn)行分類。步驟六、重復(fù)步驟三、步驟四、步驟五,直到目標(biāo)函數(shù)滿足停止條件。本發(fā)明屬于機(jī)器學(xué)習(xí)技術(shù)領(lǐng)域,能降低方法的計(jì)算量,同時(shí)避免對(duì)非平衡數(shù)據(jù)的敏感性。
【IPC分類】G06F17-30
【公開號(hào)】CN104699804
【申請(qǐng)?zhí)枴緾N201510124900
【發(fā)明人】李曲
【申請(qǐng)人】浙江工業(yè)大學(xué)
【公開日】2015年6月10日
【申請(qǐng)日】2015年3月20日