一種數(shù)據(jù)挖掘方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明實(shí)施例涉及數(shù)據(jù)處理技術(shù),尤其涉及一種數(shù)據(jù)挖掘方法及裝置。
【背景技術(shù)】
[0002] 數(shù)據(jù)挖掘(DataMining,簡(jiǎn)稱(chēng)DM)是指從數(shù)據(jù)庫(kù)的大量數(shù)據(jù)中揭示出隱含的、先 前未知的并有潛在價(jià)值的信息的非平凡過(guò)程。它主要基于人工智能、機(jī)器學(xué)習(xí)、模式識(shí)別、 統(tǒng)計(jì)學(xué)、數(shù)據(jù)庫(kù)、可視化技術(shù)等,高度自動(dòng)化地分析企業(yè)的數(shù)據(jù),做出歸納性的推理,從中挖 掘出潛在的模式,幫助決策者調(diào)整市場(chǎng)策略,減少風(fēng)險(xiǎn),做出正確的決策。
[0003] 然而,隨著大數(shù)據(jù)時(shí)代的到來(lái),數(shù)據(jù)挖掘的對(duì)象的來(lái)源越來(lái)越廣泛,使得數(shù)據(jù)集中 的樣本數(shù),和/或是特征列的數(shù)目,都達(dá)到了一個(gè)非常大的規(guī)模,現(xiàn)有技術(shù)在步驟(2)進(jìn)行 特征列選擇之后,如果選擇的特征列數(shù)量過(guò)大,在步驟(3)中,會(huì)出現(xiàn)內(nèi)存不足等資源不夠 的問(wèn)題,使得數(shù)據(jù)挖掘流程執(zhí)行失敗。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明實(shí)施例提供一種數(shù)據(jù)挖掘方法及裝置,以克服數(shù)據(jù)挖掘過(guò)程中,物理資源 不足導(dǎo)致的數(shù)據(jù)挖掘流程執(zhí)行失敗。
[0005] -方面,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)挖掘方法,所述方法應(yīng)用于分布式系統(tǒng),所 述分布式系統(tǒng)包括至少一個(gè)節(jié)點(diǎn),所述方法包括:
[0006] 確定數(shù)據(jù)挖掘流程的多個(gè)執(zhí)行步驟;獲取所述各執(zhí)行步驟在運(yùn)行過(guò)程中所需的物 理資源與所述數(shù)據(jù)挖掘流程的輸入數(shù)據(jù)所占的物理資源之間的對(duì)應(yīng)關(guān)系;確定執(zhí)行所述各 執(zhí)行步驟的節(jié)點(diǎn),所述節(jié)點(diǎn)為所述各執(zhí)行步驟提供物理資源的節(jié)點(diǎn);根據(jù)所述對(duì)應(yīng)關(guān)系和 用于執(zhí)行相應(yīng)執(zhí)行步驟的節(jié)點(diǎn)所擁有的物理資源,確定執(zhí)行各個(gè)步驟的節(jié)點(diǎn)所能處理的所 述輸入數(shù)據(jù)的最大數(shù)據(jù)量;根據(jù)所述執(zhí)行各個(gè)步驟的節(jié)點(diǎn)所能處理的輸入數(shù)據(jù)的最大數(shù)據(jù) 量,確定所述分布式系統(tǒng)所能處理的輸入數(shù)據(jù)的最大數(shù)據(jù)量;根據(jù)所述分布式系統(tǒng)所能處 理的輸入數(shù)據(jù)的最大數(shù)據(jù)量,對(duì)準(zhǔn)備挖掘的數(shù)據(jù)按照所述數(shù)據(jù)挖掘流程進(jìn)行處理。
[0007] 另一方面,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)挖掘裝置,所述裝置包括:收發(fā)器、處理 器和存儲(chǔ)器;
[0008] 所述收發(fā)器,用于接收原始數(shù)據(jù)集,并將抽取得到的準(zhǔn)備處理的輸入數(shù)據(jù)發(fā)送給 各節(jié)點(diǎn)處理;所述存儲(chǔ)器,用于存儲(chǔ)原始數(shù)據(jù)集;所述處理器,用于確定數(shù)據(jù)挖掘流程的多 個(gè)執(zhí)行步驟;獲取所述各執(zhí)行步驟在運(yùn)行過(guò)程中所需的物理資源與所述數(shù)據(jù)挖掘流程的輸 入數(shù)據(jù)所占的物理資源之間的對(duì)應(yīng)關(guān)系;確定執(zhí)行所述各執(zhí)行步驟的節(jié)點(diǎn),所述節(jié)點(diǎn)為所 述各執(zhí)行步驟提供物理資源的節(jié)點(diǎn);根據(jù)所述對(duì)應(yīng)關(guān)系和用于執(zhí)行相應(yīng)執(zhí)行步驟的節(jié)點(diǎn)所 擁有的物理資源,確定執(zhí)行各個(gè)步驟的節(jié)點(diǎn)所能處理的所述輸入數(shù)據(jù)的最大數(shù)據(jù)量;根據(jù) 所述執(zhí)行各個(gè)步驟的節(jié)點(diǎn)所能處理的輸入數(shù)據(jù)的最大數(shù)據(jù)量,確定所述分布式系統(tǒng)所能處 理的輸入數(shù)據(jù)的最大數(shù)據(jù)量;根據(jù)所述分布式系統(tǒng)所能處理的輸入數(shù)據(jù)的最大數(shù)據(jù)量,對(duì) 準(zhǔn)備挖掘的數(shù)據(jù)按照所述數(shù)據(jù)挖掘流程進(jìn)行處理。
[0009] 本發(fā)明實(shí)施例通過(guò)綜合評(píng)估數(shù)據(jù)挖掘流程的特性以及數(shù)據(jù)挖掘流程和分布式網(wǎng) 絡(luò)系統(tǒng)中網(wǎng)絡(luò)節(jié)點(diǎn)自身?yè)碛形锢碣Y源間的關(guān)系,從而得出了在該分部是網(wǎng)絡(luò)系統(tǒng)中運(yùn)行該 數(shù)據(jù)挖掘流程所能支持的最大數(shù)據(jù)量,對(duì)于輸入的數(shù)據(jù)做了準(zhǔn)確而有效的限定,從而保證 系統(tǒng)正常運(yùn)行。
【附圖說(shuō)明】
[0010] 為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹。
[0011] 圖1為本發(fā)明數(shù)據(jù)挖掘方法實(shí)施例一的流程圖;
[0012] 圖2為本發(fā)明所舉例的一個(gè)數(shù)據(jù)挖掘流程示意圖;
[0013] 圖3為本發(fā)明數(shù)據(jù)挖掘方法實(shí)施例二的流程圖;
[0014] 圖4為本發(fā)明數(shù)據(jù)挖掘方法實(shí)施例三的流程圖;
[0015] 圖5為本發(fā)明數(shù)據(jù)挖掘裝置實(shí)施例一的裝置結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0016] 為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例 中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是 本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員 在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0017] 圖1為本發(fā)明數(shù)據(jù)挖掘方法實(shí)施例一的流程圖。本實(shí)施例的執(zhí)行主體可以為通用 的數(shù)據(jù)挖掘裝置,該數(shù)據(jù)挖掘裝置可由通用的軟件和/或硬件實(shí)現(xiàn)。本實(shí)施例的數(shù)據(jù)挖掘 方法應(yīng)用于分布式架構(gòu),該分布式架構(gòu)包括至少一個(gè)節(jié)點(diǎn),所述節(jié)點(diǎn)可以是普通的PC機(jī)、 云架構(gòu)中服務(wù)器中的虛擬機(jī)或者其他能夠運(yùn)用到所述分布式架構(gòu)中的計(jì)算資源。如圖1所 示,本實(shí)施例的方法可以包括 :
[0018] 步驟101、確定數(shù)據(jù)挖掘流程的多個(gè)執(zhí)行步驟。
[0019] 其中,確定數(shù)據(jù)挖掘流程的多個(gè)執(zhí)行步驟的方式可以由數(shù)據(jù)挖掘裝置通過(guò)解析數(shù) 據(jù)挖掘流程獲得,或者由數(shù)據(jù)挖掘裝置到存儲(chǔ)有所述數(shù)據(jù)挖掘流程各執(zhí)行步驟的存儲(chǔ)裝置 上獲取。
[0020] 其中,解析數(shù)據(jù)挖掘流程獲得的方式可以是依據(jù)數(shù)據(jù)挖掘流程中不同階段采用的 不同算法原理來(lái)劃分;也可以是依據(jù)數(shù)據(jù)挖掘流程中取得的各階段性的處理結(jié)果作為劃分 依據(jù);還可以是依據(jù)該數(shù)據(jù)挖掘流程的邏輯步驟來(lái)劃分,所述邏輯步驟通常在研究設(shè)計(jì)該 數(shù)據(jù)挖掘流程時(shí)設(shè)定,通常跟處理階段強(qiáng)相關(guān)。上述解析方法是對(duì)本發(fā)明所能覆蓋方式的 簡(jiǎn)單列舉,并不對(duì)其所能包含的范圍做特俗限定。
[0021] 步驟102、獲取所述各執(zhí)行步驟在運(yùn)行過(guò)程中所需的物理資源與所述數(shù)據(jù)挖掘流 程的輸入數(shù)據(jù)所占的物理資源之間的對(duì)應(yīng)關(guān)系。
[0022] 其中,所述對(duì)應(yīng)關(guān)系優(yōu)選的是采用各執(zhí)行步驟在運(yùn)行過(guò)程中所需的物理資源與所 述數(shù)據(jù)挖掘流程的輸入數(shù)據(jù)所占的物理資源之間的比值參數(shù)。
[0023] 步驟103、確定執(zhí)行所述各執(zhí)行步驟的節(jié)點(diǎn),所述節(jié)點(diǎn)為所述各執(zhí)行步驟提供物理 資源。
[0024]為各執(zhí)行步驟提供物理資源的節(jié)點(diǎn)的關(guān)系包括:同一個(gè)節(jié)點(diǎn)為多個(gè)執(zhí)行步驟提供 物理資源;多個(gè)節(jié)點(diǎn)共同為一個(gè)執(zhí)行步驟提供物理資源;多個(gè)節(jié)點(diǎn)為多個(gè)執(zhí)行步驟提供物 理資源等等。
[0025] 本步驟中,優(yōu)選的,數(shù)據(jù)挖掘裝置事先獲取分布式系統(tǒng)中擁有的所有節(jié)點(diǎn)或可用 節(jié)點(diǎn)情況,例如:哪些節(jié)點(diǎn)是空閑的、那些節(jié)點(diǎn)是可以組合使用的、甚至于執(zhí)行步驟在節(jié)點(diǎn) 上運(yùn)行的歷史記錄等等。通常情況下各節(jié)點(diǎn)的運(yùn)行情況都會(huì)由分布式系統(tǒng)中的管理裝置進(jìn) 行管理,而所述數(shù)據(jù)挖掘裝置可以直接從所述管理裝置中獲取各節(jié)點(diǎn)的分布情況和能力屬 性。
[0026] 步驟104、根據(jù)所述對(duì)應(yīng)關(guān)系和用于執(zhí)行相應(yīng)執(zhí)行步驟的節(jié)點(diǎn)所擁有的物理資源, 確定執(zhí)行各個(gè)步驟的節(jié)點(diǎn)所能處理的所述輸入數(shù)據(jù)的最大數(shù)據(jù)量。
[0027] 其中,在步驟102中已經(jīng)得到各執(zhí)行步驟在運(yùn)行過(guò)程中所需的物理資源與所述 數(shù)據(jù)挖掘流程的輸入數(shù)據(jù)所占的物理資源之間的對(duì)應(yīng)關(guān)系,因此,進(jìn)一步在步驟103中確 定為所述各執(zhí)行步驟提供物理資源的節(jié)點(diǎn)后,每一個(gè)執(zhí)行步驟根據(jù)相應(yīng)節(jié)點(diǎn)擁有的物理資 源,計(jì)算得到相應(yīng)的單個(gè)執(zhí)行步驟允許所述數(shù)據(jù)挖掘流程輸入的最大數(shù)據(jù)量。
[0028] 步驟105、根據(jù)所述執(zhí)行各個(gè)步驟的節(jié)點(diǎn)所能處理的輸入數(shù)據(jù)的最大數(shù)據(jù)量,確定 所述分布式系統(tǒng)所能處理的輸入數(shù)據(jù)的最大數(shù)據(jù)量。
[0029] 在步驟104中,得到的是各個(gè)執(zhí)行步驟分別允許數(shù)據(jù)挖掘流程輸入的多個(gè)最大數(shù) 據(jù)量,那么所述分布式系統(tǒng)所能允許輸入的最大數(shù)據(jù)量,便是所述多個(gè)最大輸入數(shù)據(jù)量中 的最小值。其原理類(lèi)似于短板原理,只有滿(mǎn)足輸入的數(shù)據(jù)量小于各執(zhí)行步驟所能處理的最 大數(shù)據(jù)量中的最小值,分布式系統(tǒng)才能正常的運(yùn)行。
[0030] 步驟106、根據(jù)所述分布式系統(tǒng)所能處理的輸入數(shù)據(jù)的所述最大數(shù)據(jù)量,對(duì)準(zhǔn)備挖 掘的數(shù)據(jù)按照所述數(shù)據(jù)挖掘流程進(jìn)行處理。
[0031] 本發(fā)明實(shí)施例通過(guò)綜合評(píng)估數(shù)據(jù)挖掘流程的特性(包括:數(shù)據(jù)挖掘流程包含的執(zhí) 行步驟,以及各執(zhí)行步驟和運(yùn)行該執(zhí)行步驟節(jié)點(diǎn)間關(guān)系)以及分布式網(wǎng)絡(luò)系統(tǒng)中網(wǎng)絡(luò)節(jié)點(diǎn) 自身?yè)碛形锢碣Y源間的關(guān)系,從而得出了在該分布式網(wǎng)絡(luò)系統(tǒng)中運(yùn)行該數(shù)據(jù)挖掘流程所能 支持的最大數(shù)據(jù)量,對(duì)于輸入數(shù)據(jù)做了準(zhǔn)確而有效的限定,從而保證系統(tǒng)正常運(yùn)行。
[0032] 本領(lǐng)域技術(shù)人員可以理解,該給定的數(shù)據(jù)挖掘流程可以是任意的公知的數(shù)據(jù)挖掘 流程,本發(fā)明所要做的是如何對(duì)數(shù)據(jù)挖掘流程進(jìn)行分析,并結(jié)合分布式系統(tǒng)各節(jié)點(diǎn)擁有的 物理資源,從而對(duì)輸入的數(shù)據(jù)做相應(yīng)的限定和優(yōu)化。對(duì)于所述數(shù)據(jù)挖掘流程,本實(shí)施例此處 不做特別限制。
[0033] 在步驟101的解釋中,公開(kāi)了確定數(shù)據(jù)挖掘流程的多個(gè)執(zhí)行步驟相關(guān)方法。下面 將結(jié)合具體的數(shù)據(jù)挖掘流程,詳細(xì)說(shuō)明確定數(shù)據(jù)挖掘流程的過(guò)程。
[0034] 請(qǐng)參照?qǐng)D2,圖2為本發(fā)明所舉例的一個(gè)數(shù)據(jù)挖掘流程示意圖。本實(shí)施例的數(shù)據(jù)挖 掘流程僅為示意性的,對(duì)于其它數(shù)據(jù)挖掘流程也可以在本實(shí)施例公開(kāi)內(nèi)容的基礎(chǔ)上應(yīng)用本 發(fā)明的方法完成執(zhí)行步驟的獲取。如圖2所示,該數(shù)據(jù)挖掘流程包括以下執(zhí)行步驟:
[0035] 步驟①特征列選擇。該步驟是指從輸入數(shù)據(jù)中選擇特征列,后續(xù)流程只在選擇的 特征列上運(yùn)行,其余特征列將不再參與到后續(xù)步驟中的分析。本領(lǐng)域技術(shù)人員可以理解, 各特征列中存在一個(gè)目標(biāo)列,該目標(biāo)列要求是進(jìn)行該數(shù)據(jù)挖掘所要解決問(wèn)題最相關(guān)的數(shù)據(jù) 列。
[0036] 此處的特征選擇是所舉例的數(shù)據(jù)挖掘流程中的操作步驟,其目