本發(fā)明涉及大規(guī)模訓(xùn)練集,具體為一種基于k近鄰的優(yōu)化算法方法及系統(tǒng)。
背景技術(shù):
1、k近鄰(k-nearest?neighbors,knn)算法是機(jī)器學(xué)習(xí)領(lǐng)域中一個(gè)既直觀又強(qiáng)大的工具,它不僅能夠應(yīng)用于分類任務(wù),還能有效地處理回歸問題。knn算法的核心思想在于“近朱者赤,近墨者黑”,即一個(gè)樣本的類別(或值)應(yīng)當(dāng)與其在特征空間中最近的k個(gè)鄰居的類別(或值的平均)相同或相近。
2、在knn算法中,首先,我們需要確定一個(gè)合適的k值,這個(gè)k值代表了我們?cè)谶M(jìn)行預(yù)測(cè)時(shí)會(huì)考慮的最近鄰居的數(shù)量。接著,對(duì)于給定的測(cè)試樣本,算法會(huì)計(jì)算該樣本與訓(xùn)練集中所有樣本之間的距離(常用的距離度量包括歐氏距離、曼哈頓距離等)。然后,根據(jù)這些距離,算法會(huì)找出與測(cè)試樣本最近的k個(gè)訓(xùn)練樣本。最后,對(duì)于分類問題,這k個(gè)最近鄰居的類別會(huì)通過多數(shù)投票(mode)的方式?jīng)Q定測(cè)試樣本的類別;對(duì)于回歸問題,則通常是計(jì)算這k個(gè)鄰居的目標(biāo)值的平均或加權(quán)平均作為預(yù)測(cè)結(jié)果。
3、k近鄰算法是機(jī)器學(xué)習(xí)中可用于分類和回歸的算法之一。knn的原理是通過規(guī)定的一組測(cè)試集對(duì)訓(xùn)練樣本集進(jìn)行對(duì)比,將對(duì)比結(jié)果劃分后作為最終模型。這種算法訓(xùn)練時(shí)間快,預(yù)測(cè)效果理想。但是如果訓(xùn)練樣本存在大規(guī)模的數(shù)據(jù)集,會(huì)加大預(yù)測(cè)偏差值導(dǎo)致準(zhǔn)確率降低。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于提供一種基于k近鄰的優(yōu)化算法方法及系統(tǒng),以解決上述背景技術(shù)中提出的問題。
2、為實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:一種基于k近鄰的優(yōu)化算法方法,所述方法包括以下步驟:
3、對(duì)訓(xùn)練數(shù)據(jù)集的預(yù)處理;
4、對(duì)測(cè)試集的后處理;
5、對(duì)k值的調(diào)整。
6、優(yōu)選的,對(duì)訓(xùn)練數(shù)據(jù)集的預(yù)處理的具體操作包括:
7、在進(jìn)行訓(xùn)練前,對(duì)數(shù)據(jù)集的規(guī)模進(jìn)行劃分,超出規(guī)定規(guī)模的數(shù)據(jù)集使用kmeans法分割為多個(gè)符合規(guī)模標(biāo)準(zhǔn)的數(shù)據(jù)集;
8、在分割時(shí),根據(jù)按訓(xùn)練集規(guī)模和規(guī)定規(guī)模決定劃分?jǐn)?shù)量,確保分割后的每一個(gè)數(shù)據(jù)集規(guī)模低于規(guī)定數(shù)據(jù)集規(guī)模;對(duì)不相關(guān)的數(shù)據(jù)集進(jìn)行微處理,加入避免不相關(guān)數(shù)據(jù)集被忽視的情況。
9、優(yōu)選的,大規(guī)模數(shù)據(jù)集劃分按照kmeans準(zhǔn)則,根據(jù)數(shù)量規(guī)定每個(gè)簇的質(zhì)心,計(jì)算每個(gè)質(zhì)心與數(shù)據(jù)點(diǎn)之間的距離,取最近的k個(gè)數(shù)據(jù)作為訓(xùn)練集,knn模型的復(fù)雜性通過其對(duì)噪聲的容忍度來(lái)理解;
10、如果該模型對(duì)噪聲敏感,則該模型的復(fù)雜性很高;相反,該模型的復(fù)雜度較低;由于數(shù)據(jù)屬性對(duì)聚類結(jié)果的影響程度不同,在傳統(tǒng)歐幾里得距離的基礎(chǔ)上引入權(quán)值,增加數(shù)據(jù)不同屬性之間的區(qū)分程度,消除數(shù)據(jù)集中噪聲點(diǎn)的影響;有效地克服傳統(tǒng)k-means算法中初始聚類中心選擇的困難和噪聲點(diǎn)對(duì)聚類結(jié)果的影響,提高聚類性能;具體距離計(jì)算方式如下:
11、
12、優(yōu)選的,對(duì)測(cè)試集的后處理的具體操作包括:
13、如果訓(xùn)練數(shù)據(jù)集總量低,在每次對(duì)一個(gè)訓(xùn)練集訓(xùn)練后生成一個(gè)偽測(cè)試集,將偽測(cè)試集視為一個(gè)測(cè)試集對(duì)剩余訓(xùn)練集進(jìn)行訓(xùn)練;如果訓(xùn)練數(shù)據(jù)集總量高,在每次對(duì)若干個(gè)訓(xùn)練集訓(xùn)練后生成一個(gè)偽測(cè)試集;偽測(cè)試集的具體生成方法如下:
14、測(cè)試訓(xùn)練模型的準(zhǔn)確性,在模型訓(xùn)練過程中,所有參數(shù)基于現(xiàn)有訓(xùn)練集中的數(shù)據(jù)進(jìn)行修改和擬合的,因此存在過擬合的可能性,使用舍入來(lái)計(jì)算第k個(gè)源域的近似相等樣本大小。
15、優(yōu)選的,對(duì)k值的調(diào)整的具體操作包括:
16、基于生成偽測(cè)試集方法,對(duì)每項(xiàng)條件進(jìn)行平均后取值;當(dāng)k的值較小,例如k=1時(shí),僅使用來(lái)自較小域的訓(xùn)練樣本進(jìn)行預(yù)測(cè)會(huì)導(dǎo)致更強(qiáng)的模型擬合能力;
17、當(dāng)k的值大時(shí),使用交叉驗(yàn)證來(lái)評(píng)估每個(gè)超參數(shù),并選擇參數(shù)的最佳組合來(lái)建立模型,作為測(cè)試集和訓(xùn)練集的距離的計(jì)算優(yōu)選,二維劃分使用切比雪夫距離計(jì)算,加快運(yùn)算速度,
18、dab=max(∣x1-x2∣,∣y1-y2∣);作為多維距離計(jì)算優(yōu)選,使用曼哈頓距離。
19、一種基于k近鄰的優(yōu)化算法系統(tǒng),所述系統(tǒng)包括:
20、預(yù)處理模塊,用于對(duì)訓(xùn)練數(shù)據(jù)集的預(yù)處理;
21、后處理模塊,用于對(duì)測(cè)試集的后處理;
22、調(diào)整模塊,用于對(duì)k值的調(diào)整。
23、優(yōu)選的,所述預(yù)處理模塊,在進(jìn)行訓(xùn)練前,對(duì)數(shù)據(jù)集的規(guī)模進(jìn)行劃分,超出規(guī)定規(guī)模的數(shù)據(jù)集使用kmeans法分割為多個(gè)符合規(guī)模標(biāo)準(zhǔn)的數(shù)據(jù)集;在分割時(shí),根據(jù)按訓(xùn)練集規(guī)模和規(guī)定規(guī)模決定劃分?jǐn)?shù)量,確保分割后的每一個(gè)數(shù)據(jù)集規(guī)模低于規(guī)定數(shù)據(jù)集規(guī)模;對(duì)不相關(guān)的數(shù)據(jù)集進(jìn)行微處理,加入避免不相關(guān)數(shù)據(jù)集被忽視的情況。
24、優(yōu)選的,大規(guī)模數(shù)據(jù)集劃分按照kmeans準(zhǔn)則,根據(jù)數(shù)量規(guī)定每個(gè)簇的質(zhì)心,計(jì)算每個(gè)質(zhì)心與數(shù)據(jù)點(diǎn)之間的距離,取最近的k個(gè)數(shù)據(jù)作為訓(xùn)練集,knn模型的復(fù)雜性通過其對(duì)噪聲的容忍度來(lái)理解;如果該模型對(duì)噪聲敏感,則該模型的復(fù)雜性很高;相反,該模型的復(fù)雜度較低;由于數(shù)據(jù)屬性對(duì)聚類結(jié)果的影響程度不同,在傳統(tǒng)歐幾里得距離的基礎(chǔ)上引入權(quán)值,增加數(shù)據(jù)不同屬性之間的區(qū)分程度,消除數(shù)據(jù)集中噪聲點(diǎn)的影響;有效地克服傳統(tǒng)k-means算法中初始聚類中心選擇的困難和噪聲點(diǎn)對(duì)聚類結(jié)果的影響,提高聚類性能;具體距離計(jì)算方式如下:
25、
26、優(yōu)選的,如果訓(xùn)練數(shù)據(jù)集總量低,在每次對(duì)一個(gè)訓(xùn)練集訓(xùn)練后生成一個(gè)偽測(cè)試集,將偽測(cè)試集視為一個(gè)測(cè)試集對(duì)剩余訓(xùn)練集進(jìn)行訓(xùn)練;如果訓(xùn)練數(shù)據(jù)集總量高,在每次對(duì)若干個(gè)訓(xùn)練集訓(xùn)練后生成一個(gè)偽測(cè)試集;偽測(cè)試集的具體生成方法如下:測(cè)試訓(xùn)練模型的準(zhǔn)確性,在模型訓(xùn)練過程中,所有參數(shù)基于現(xiàn)有訓(xùn)練集中的數(shù)據(jù)進(jìn)行修改和擬合的,因此存在過擬合的可能性,使用舍入來(lái)計(jì)算第k個(gè)源域的近似相等樣本大小。
27、優(yōu)選的,所述調(diào)整模塊,基于生成偽測(cè)試集方法,對(duì)每項(xiàng)條件進(jìn)行平均后取值;當(dāng)k的值較小,例如k=1時(shí),僅使用來(lái)自較小域的訓(xùn)練樣本進(jìn)行預(yù)測(cè)會(huì)導(dǎo)致更強(qiáng)的模型擬合能力;當(dāng)k的值大時(shí),使用交叉驗(yàn)證來(lái)評(píng)估每個(gè)超參數(shù),并選擇參數(shù)的最佳組合來(lái)建立模型,作為測(cè)試集和訓(xùn)練集的距離的計(jì)算優(yōu)選,二維劃分使用切比雪夫距離計(jì)算,加快運(yùn)算速度,dab=max(∣x1-x2∣,∣y1-y2∣);作為多維距離計(jì)算優(yōu)選,使用曼哈頓距離。
28、與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
29、本發(fā)明提出的基于k近鄰的優(yōu)化算法方法及系統(tǒng),提高了原有k近鄰算法的可用度,對(duì)于輸入的大規(guī)模數(shù)據(jù)集,按照kmeans算法將其分解為符合規(guī)定的若干數(shù)據(jù)集并進(jìn)行訓(xùn)練,避免了因?yàn)閿?shù)據(jù)規(guī)模過大影響其他小規(guī)模訓(xùn)練集的缺點(diǎn)。
30、測(cè)試集加入了偽測(cè)試集,通過定向的拓寬條件降低后續(xù)訓(xùn)練集存在不相關(guān)數(shù)據(jù)的出現(xiàn)概率;對(duì)不相關(guān)數(shù)據(jù)使用微處理,使不相關(guān)數(shù)據(jù)會(huì)被鑒定但不會(huì)影響實(shí)驗(yàn)結(jié)果;對(duì)k值進(jìn)行調(diào)整,針對(duì)小規(guī)模訓(xùn)練集可以更精確地計(jì)算符合條件的結(jié)果。
1.一種基于k近鄰的優(yōu)化算法方法,其特征在于:所述方法包括以下步驟:
2.根據(jù)權(quán)利要求1所述的一種基于k近鄰的優(yōu)化算法方法,其特征在于:對(duì)訓(xùn)練數(shù)據(jù)集的預(yù)處理的具體操作包括:
3.根據(jù)權(quán)利要求2所述的一種基于k近鄰的優(yōu)化算法方法,其特征在于:大規(guī)模數(shù)據(jù)集劃分按照kmeans準(zhǔn)則,根據(jù)數(shù)量規(guī)定每個(gè)簇的質(zhì)心,計(jì)算每個(gè)質(zhì)心與數(shù)據(jù)點(diǎn)之間的距離,取最近的k個(gè)數(shù)據(jù)作為訓(xùn)練集,knn模型的復(fù)雜性通過其對(duì)噪聲的容忍度來(lái)理解;
4.根據(jù)權(quán)利要求1所述的一種基于k近鄰的優(yōu)化算法方法,其特征在于:對(duì)測(cè)試集的后處理的具體操作包括:
5.根據(jù)權(quán)利要求1所述的一種基于k近鄰的優(yōu)化算法方法,其特征在于:對(duì)k值的調(diào)整的具體操作包括:
6.一種根據(jù)權(quán)利要求1-5任意一項(xiàng)所述的基于k近鄰的優(yōu)化算法方法的基于k近鄰的優(yōu)化算法系統(tǒng),其特征在于:所述系統(tǒng)包括:
7.根據(jù)權(quán)利要求6所述的一種基于k近鄰的優(yōu)化算法系統(tǒng),其特征在于:所述預(yù)處理模塊,在進(jìn)行訓(xùn)練前,對(duì)數(shù)據(jù)集的規(guī)模進(jìn)行劃分,超出規(guī)定規(guī)模的數(shù)據(jù)集使用kmeans法分割為多個(gè)符合規(guī)模標(biāo)準(zhǔn)的數(shù)據(jù)集;在分割時(shí),根據(jù)按訓(xùn)練集規(guī)模和規(guī)定規(guī)模決定劃分?jǐn)?shù)量,確保分割后的每一個(gè)數(shù)據(jù)集規(guī)模低于規(guī)定數(shù)據(jù)集規(guī)模;對(duì)不相關(guān)的數(shù)據(jù)集進(jìn)行微處理,加入避免不相關(guān)數(shù)據(jù)集被忽視的情況。
8.根據(jù)權(quán)利要求7所述的一種基于k近鄰的優(yōu)化算法系統(tǒng),其特征在于:大規(guī)模數(shù)據(jù)集劃分按照kmeans準(zhǔn)則,根據(jù)數(shù)量規(guī)定每個(gè)簇的質(zhì)心,計(jì)算每個(gè)質(zhì)心與數(shù)據(jù)點(diǎn)之間的距離,取最近的k個(gè)數(shù)據(jù)作為訓(xùn)練集,knn模型的復(fù)雜性通過其對(duì)噪聲的容忍度來(lái)理解;如果該模型對(duì)噪聲敏感,則該模型的復(fù)雜性很高;相反,該模型的復(fù)雜度較低;由于數(shù)據(jù)屬性對(duì)聚類結(jié)果的影響程度不同,在傳統(tǒng)歐幾里得距離的基礎(chǔ)上引入權(quán)值,增加數(shù)據(jù)不同屬性之間的區(qū)分程度,消除數(shù)據(jù)集中噪聲點(diǎn)的影響;有效地克服傳統(tǒng)k-means算法中初始聚類中心選擇的困難和噪聲點(diǎn)對(duì)聚類結(jié)果的影響,提高聚類性能;具體距離計(jì)算方式如下:
9.根據(jù)權(quán)利要求6所述的一種基于k近鄰的優(yōu)化算法系統(tǒng),其特征在于:所述后處理模塊,如果訓(xùn)練數(shù)據(jù)集總量低,在每次對(duì)一個(gè)訓(xùn)練集訓(xùn)練后生成一個(gè)偽測(cè)試集,將偽測(cè)試集視為一個(gè)測(cè)試集對(duì)剩余訓(xùn)練集進(jìn)行訓(xùn)練;如果訓(xùn)練數(shù)據(jù)集總量高,在每次對(duì)若干個(gè)訓(xùn)練集訓(xùn)練后生成一個(gè)偽測(cè)試集;偽測(cè)試集的具體生成方法如下:測(cè)試訓(xùn)練模型的準(zhǔn)確性,在模型訓(xùn)練過程中,所有參數(shù)基于現(xiàn)有訓(xùn)練集中的數(shù)據(jù)進(jìn)行修改和擬合的,因此存在過擬合的可能性,使用舍入來(lái)計(jì)算第k個(gè)源域的近似相等樣本大小。
10.根據(jù)權(quán)利要求6所述的一種基于k近鄰的優(yōu)化算法系統(tǒng),其特征在于:所述調(diào)整模塊,基于生成偽測(cè)試集方法,對(duì)每項(xiàng)條件進(jìn)行平均后取值;