本發(fā)明屬于大數(shù)據(jù)聚類(lèi)優(yōu)化技術(shù)領(lǐng)域,更進(jìn)一步涉及大規(guī)模數(shù)值查詢(xún)分析和優(yōu)化技術(shù)領(lǐng)域中的基于降維分組的大數(shù)據(jù)聚類(lèi)優(yōu)化方法。本發(fā)明可用于大數(shù)據(jù)聚類(lèi),大數(shù)據(jù)壓縮存儲(chǔ),分類(lèi)器構(gòu)造,大規(guī)模任務(wù)調(diào)度中通過(guò)對(duì)任務(wù)進(jìn)行分組來(lái)優(yōu)化調(diào)度過(guò)程,人工神經(jīng)網(wǎng)絡(luò)分類(lèi)訓(xùn)練,工程設(shè)計(jì)問(wèn)題中對(duì)各項(xiàng)系統(tǒng)參數(shù)進(jìn)行分類(lèi)優(yōu)化等領(lǐng)域。
背景技術(shù):
大數(shù)據(jù)聚類(lèi)優(yōu)化技術(shù)指的是對(duì)大規(guī)模問(wèn)題,即問(wèn)題的維度或變量個(gè)數(shù)超過(guò)1000的問(wèn)題,通過(guò)降維分組的方法降低問(wèn)題的維度,從而更容易對(duì)大規(guī)模問(wèn)題進(jìn)行處理或優(yōu)化。大規(guī)模問(wèn)題因?yàn)榫S度高,搜索空間大,各維度之間存在關(guān)聯(lián)性等特點(diǎn),目前仍然是一類(lèi)很難的,有待解決的問(wèn)題。維度相關(guān)指的是各個(gè)維度之間相互影響,因此在分解大規(guī)模問(wèn)題時(shí),這些相關(guān)的維度必須被分到同一組(同一個(gè)子問(wèn)題)中,不能分開(kāi)。如果將相關(guān)維度錯(cuò)誤的分到不同的子問(wèn)題中,則得到的結(jié)果往往會(huì)非常差。目前針對(duì)此類(lèi)大規(guī)模問(wèn)題,主流的解決方案是采用“分而治之”的思想:把大規(guī)模問(wèn)題分解成多個(gè)小規(guī)模的子問(wèn)題分別加以解決,最后再合并小規(guī)模子問(wèn)題從而得到大規(guī)模問(wèn)題的解。但是如何分解子問(wèn)題,如何正確識(shí)別和檢測(cè)相關(guān)和不相關(guān)的維度,并將相關(guān)維度分到同一個(gè)組里,保證組內(nèi)維度相關(guān),組與組之間的維度不相關(guān),是目前研究的熱點(diǎn)及難點(diǎn)問(wèn)題。2008年以來(lái)學(xué)術(shù)界陸續(xù)發(fā)表了很多關(guān)于分組方法研究的文章,如:隨機(jī)分組(將各維度隨機(jī)分為若干組),CCVIL分組(引入維度相關(guān)性的學(xué)習(xí)機(jī)制來(lái)判斷維度的相關(guān)性),差分分組(通過(guò)計(jì)算各維度之間的差值來(lái)分析維度的相關(guān)性)等。
南京弘數(shù)信息科技有限公司在其申請(qǐng)的專(zhuān)利文獻(xiàn)“一種針對(duì)大數(shù)據(jù)的分解組合聚類(lèi)方法”(專(zhuān)利申請(qǐng)?zhí)朇N201410334542.2,公開(kāi)號(hào)CN104063518A)中公開(kāi)了一種基于分解組合的大數(shù)據(jù)聚類(lèi)方法。該方法將數(shù)據(jù)集進(jìn)行橫向切分,獲得若干數(shù)據(jù)子集;再將橫向數(shù)據(jù)子集進(jìn)行縱向切分,獲得若干縱向數(shù)據(jù)子集;然后使用基礎(chǔ)聚類(lèi)算法,獲得經(jīng)過(guò)橫向和縱向切分后數(shù)據(jù)子集的類(lèi)別標(biāo)簽。將若干個(gè)縱向數(shù)據(jù)子集的類(lèi)別標(biāo)簽進(jìn)行組合聚類(lèi)獲得橫向數(shù)據(jù)子集的類(lèi)別標(biāo)簽;再將若干個(gè)橫向數(shù)據(jù)子集的類(lèi)別標(biāo)簽再次進(jìn)行組合聚類(lèi)得到完整數(shù)據(jù)集的類(lèi)別標(biāo)簽。該方法將大數(shù)據(jù)聚類(lèi)問(wèn)題轉(zhuǎn)化為組合聚類(lèi)問(wèn)題,具有高效性,魯棒性和可并行化等優(yōu)點(diǎn)。但是,該方法仍然存在的不足之處是,該方法沒(méi)有充分利用各維度的關(guān)聯(lián)來(lái)劃分子維度,而且參數(shù)的設(shè)定可能因問(wèn)題而異,不容易設(shè)定。
M.Omidvar,X.Li,Y.Mei,and X.Yao在其發(fā)表的論文“Cooperative Co-Evolution With Differential Grouping for Large Scale Optimization”(IEEE Transactions on Evolutionary Computation,vol.18,no.3,378–393,2014)中提出了一種通過(guò)計(jì)算各維度的差值來(lái)分析維度的相關(guān)性的方法。在該論文中,檢測(cè)第i個(gè)維度和第j個(gè)維度是否相關(guān)的方法是:首先將第j個(gè)維度固定為一個(gè)特定的值,給第i個(gè)維度一個(gè)增量之后求得結(jié)果f1,然后再將第j個(gè)維度固定為另外一個(gè)值,仍然給第i個(gè)維度一個(gè)同樣的增量之后求得結(jié)果f2,如果f1和f2的值的差小于一個(gè)預(yù)先設(shè)定的閾值,則認(rèn)為第i個(gè)維度和第j個(gè)維度是不相關(guān)的,否則認(rèn)為第i個(gè)維度和第j個(gè)維度是相關(guān)的。該方法存在的不足之處是:該方法無(wú)法識(shí)別具有傳遞性的維度的相關(guān)性,因此這種方法得到的分組結(jié)果往往存在較大偏差;
Y.Mei,M.N.Omidvar,X.Li,and X.Yao在其發(fā)表的論文“Competitive divide-and-conquer algorithm for unconstrained large scale black-box optimization”(ACM Transactions on Mathematical Software,vol.V,no.N,2015)中提出了一種改進(jìn)的差分分組的方法。該方法改進(jìn)了上述問(wèn)題,使得具有傳遞性的相關(guān)維度可以被識(shí)別,但是仍然存在的不足之處是:該方法對(duì)大規(guī)模問(wèn)題中每個(gè)維度,都需要一一測(cè)試其與其他維度之間的相關(guān)性,消耗了過(guò)多的計(jì)算資源;而且因?yàn)殚撝翟O(shè)定因問(wèn)題而異,導(dǎo)致分組結(jié)果仍然存在偏差。
本發(fā)明通過(guò)分析引起各個(gè)維度相關(guān)的表達(dá)式特征,找出了相關(guān)維度的判斷方法,通過(guò)掃描大數(shù)據(jù)聚類(lèi)優(yōu)化問(wèn)題的相似度表達(dá)式來(lái)判斷維度的相關(guān)性,占用的計(jì)算資源少,并且得到的分組結(jié)果是完全正確的
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是針對(duì)現(xiàn)有大數(shù)據(jù)聚類(lèi)優(yōu)化問(wèn)題解決方法計(jì)算量大和準(zhǔn)確度低的缺點(diǎn),提出一種基于降維分組的大數(shù)據(jù)聚類(lèi)優(yōu)化方法,包括以下具體步驟:
(1)初始化:
(1a)創(chuàng)建一個(gè)全局相關(guān)維度Non-Set集合,并將其初始化為空;
(1b)創(chuàng)建一個(gè)臨時(shí)集合Temp-Set,并將其初始化為空;
(2)掃描大數(shù)據(jù)聚類(lèi)優(yōu)化問(wèn)題對(duì)應(yīng)的相似度表達(dá)式,判斷其中是否含有相關(guān)性符號(hào),若是,則執(zhí)行步驟(3),否則,執(zhí)行步驟(4);
(3)存儲(chǔ)相關(guān)維度:
將相似度表達(dá)式中含有的相關(guān)量,作為一個(gè)子維度,存到全局相關(guān)維度Non-Set集合中;
(4)判斷相似度表達(dá)式中是否含有由括號(hào)分隔的相似度子表達(dá)式,若是,則執(zhí)行步驟(5),否則,執(zhí)行步驟(12);
(5)存儲(chǔ)臨時(shí)數(shù)據(jù):
將相似度子表達(dá)式中包含的每個(gè)維度作為臨時(shí)數(shù)據(jù),存入到臨時(shí)集合Temp-Set中;
(6)依次向右掃描相似度子表達(dá)式,判斷相似度子表達(dá)式中是否含有相關(guān)性符號(hào),若是,則執(zhí)行步驟(7),否則,執(zhí)行步驟(8);
(7)存儲(chǔ)相關(guān)子維度:
將相關(guān)性符號(hào)對(duì)應(yīng)的子維度存放到全局相關(guān)維度Non-Set集合中;
(8)判斷相似度子表達(dá)式是否掃描完畢,若是,則執(zhí)行步驟(9),否則,執(zhí)行步驟(6);
(9)讀入相似度子表達(dá)式后的第一個(gè)符號(hào),判斷該符號(hào)是否是相關(guān)性符號(hào),若是,則執(zhí)行步驟(10),否則,執(zhí)行步驟(11);
(10)合并相關(guān)維度:
合并臨時(shí)集合Temp-Set中的相關(guān)維度,并作為一個(gè)整體存放到全局相關(guān)維度Non-Set集合中;
(11)釋放臨時(shí)數(shù)據(jù):
清空Temp-Set集合,釋放臨時(shí)數(shù)據(jù);
(12)判斷相似度表達(dá)式是否掃描完畢,若是,則執(zhí)行步驟(13),否則,執(zhí)行步驟(2);
(13)合并帶有公共元素的子維度:
合并全局相關(guān)維度Non-Set集合含有公共元素的子維度,得到原大數(shù)據(jù)聚類(lèi)優(yōu)化問(wèn)題降維分組后的結(jié)果。
本發(fā)明與現(xiàn)有技術(shù)相比有以下優(yōu)點(diǎn):
第一,由于本發(fā)明通過(guò)深入分析大數(shù)據(jù)聚類(lèi)優(yōu)化問(wèn)題的相似度函數(shù)的性質(zhì),得出了影響維度相關(guān)性的普遍規(guī)律,克服了現(xiàn)有技術(shù)沒(méi)有充分利用各維度間關(guān)聯(lián)信息來(lái)劃分子維度,并且參數(shù)的設(shè)定因問(wèn)題而異的缺點(diǎn),使得本發(fā)明具有更廣泛的適應(yīng)性,可以得到準(zhǔn)確度更高的分組結(jié)果。
第二,本發(fā)明通過(guò)掃描大數(shù)據(jù)聚類(lèi)的相似度函數(shù)表達(dá)式來(lái)實(shí)現(xiàn)對(duì)大數(shù)據(jù)聚類(lèi)問(wèn)題進(jìn)行降維分組,克服了現(xiàn)有技術(shù)消耗過(guò)多的計(jì)算資源,分組結(jié)果存在偏差的問(wèn)題,使得本發(fā)明具有速度快,占用的計(jì)算資源更少的優(yōu)點(diǎn);
附圖說(shuō)明
圖1為本發(fā)明的流程圖。
具體實(shí)施方式
下面結(jié)合附圖1對(duì)本發(fā)明做進(jìn)一步描述。
步驟1,初始化。
創(chuàng)建一個(gè)全局相關(guān)維度Non-Set集合,并將其初始化為空。
創(chuàng)建一個(gè)臨時(shí)集合Temp-Set,并將其初始化為空。
步驟2,掃描大數(shù)據(jù)聚類(lèi)優(yōu)化問(wèn)題對(duì)應(yīng)的相似度表達(dá)式,判斷其中是否含有相關(guān)性符號(hào),若是,則執(zhí)行步驟3,否則,執(zhí)行步驟4。
步驟3,存儲(chǔ)相關(guān)維度。
將相似度表達(dá)式中含有的相關(guān)量,作為一個(gè)子維度,存到全局相關(guān)維度Non-Set集合中。
步驟4,判斷相似度表達(dá)式中是否含有由括號(hào)分隔的相似度子表達(dá)式,若是,則執(zhí)行步驟5,否則,執(zhí)行步驟12。
步驟5,存儲(chǔ)臨時(shí)數(shù)據(jù)。
將相似度子表達(dá)式中包含的每個(gè)維度作為臨時(shí)數(shù)據(jù),存入到臨時(shí)集合Temp-Set中。
步驟6,依次向右掃描相似度子表達(dá)式,判斷相似度子表達(dá)式中是否含有相關(guān)性符號(hào),若是,則執(zhí)行步驟7,否則,執(zhí)行步驟8。
步驟7,存儲(chǔ)相關(guān)子維度。
將相關(guān)性符號(hào)對(duì)應(yīng)的子維度存放到全局相關(guān)維度Non-Set集合中。
步驟8,判斷相似度子表達(dá)式是否掃描完畢,若是,則執(zhí)行步驟9,否則,執(zhí)行步驟6。
步驟9,讀入相似度子表達(dá)式后的第一個(gè)符號(hào),判斷該符號(hào)是否是相關(guān)性符號(hào),若是,則執(zhí)行步驟10,否則,執(zhí)行步驟11。
步驟10,合并相關(guān)維度。
合并臨時(shí)集合Temp-Set中的相關(guān)維度,并作為一個(gè)整體存放到全局相關(guān)維度Non-Set集合中。
步驟11,釋放臨時(shí)數(shù)據(jù)。
清空Temp-Set集合,釋放臨時(shí)數(shù)據(jù)。
步驟12,判斷相似度表達(dá)式是否掃描完畢,若是,則執(zhí)行步驟13,否則,執(zhí)行步驟2。
步驟13,合并帶有公共元素的子維度。
合并全局相關(guān)維度Non-Set集合含有公共元素的子維度,得到原大數(shù)據(jù)聚類(lèi)優(yōu)化問(wèn)題降維分組后的結(jié)果。