基于改進遺傳算法的支持向量機特征選擇
染色體編碼和適應(yīng)度函數(shù)
所謂編碼是指將問題的解空間轉(zhuǎn)換成遺傳算法所能處理的搜索空間。在特征選擇問題中,常常使用二進制的編碼形式,使得每個二進制就是一個染色體,其位數(shù)長度等于特征的個數(shù)。每一位代表一個特征,每位上的1表示選中該特征,0則表示不選中。每一代種群都由若干個染色體組成。
適應(yīng)度函數(shù)是整個遺傳算法中極為重要的部分[6],好的適應(yīng)度函數(shù)能使染色體進化到最優(yōu)個體,它決定了在整個尋優(yōu)過程中是否能夠合理地協(xié)調(diào)好過早收斂和過慢結(jié)束這對矛盾。由于本文針對的是支持向量機的特征選擇問題,所以考慮以分類正確率和未選擇的特征個數(shù)這兩個參數(shù)作為函數(shù)的自變量,將分類正確率作為主要衡量標(biāo)準(zhǔn),未選擇的特征個數(shù)為次要標(biāo)準(zhǔn)。由此建立以下的適應(yīng)度函數(shù):
式中C為分類正確率,為未選擇的特征個數(shù),a是調(diào)節(jié)系數(shù),用來平衡分類正確率和未選擇的特征個數(shù)對適應(yīng)度函數(shù)的影響程度,同時該系數(shù)也體現(xiàn)了用最少的特征得到較大分類正確率的原則,在本文中a取0.00077。由上式可知,分類正確率越高,未選的特征個數(shù)越多,染色體的適應(yīng)度就越大。
選擇操作
選擇操作需要按照一定的規(guī)則從原有的種群中選擇部分優(yōu)秀個體用來交叉和變異。選擇原則建立在對個體適應(yīng)度進行評價的基礎(chǔ)上,目的是避免基因損失,提高全局收斂性和計算效率。本文首先將整個種群中最優(yōu)的前40%的個體保留下來,以確保有足夠的優(yōu)良個體進入下一代,對剩下的60%的個體采用輪盤算法進行選擇,這樣做可以彌補保留前40%個體而帶來的局部最優(yōu)解不易被淘汰的不利影響,有利于保持種群的多樣性。
評論