一種數(shù)據(jù)清洗方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)領(lǐng)域中數(shù)據(jù)處理技術(shù),尤其涉及一種數(shù)據(jù)清洗方法及裝置。
【背景技術(shù)】
[0002]隨著科技的進(jìn)步、計(jì)算機(jī)技術(shù)的飛速發(fā)展,人們可以獲得越來越多的數(shù)字信息,同時(shí)也需要投入更多的時(shí)間對(duì)信息進(jìn)行組織和整理。而在對(duì)數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析之前,需要將數(shù)據(jù)中的臟數(shù)據(jù),即噪聲數(shù)據(jù)過濾掉,以確保統(tǒng)計(jì)的準(zhǔn)確性。數(shù)據(jù)清洗是一個(gè)檢測和消除數(shù)據(jù)庫中數(shù)據(jù)的錯(cuò)誤和不一致,改善數(shù)據(jù)質(zhì)量的過程,其原理是利用相關(guān)技術(shù)將數(shù)據(jù)轉(zhuǎn)化為滿足數(shù)據(jù)質(zhì)量要求的數(shù)據(jù)。
[0003]然而,在現(xiàn)有數(shù)據(jù)清洗的相關(guān)技術(shù)中,至少存在以下問題:1)相關(guān)技術(shù)主要針對(duì)實(shí)時(shí)歷史數(shù)據(jù)庫進(jìn)行處理,對(duì)于非實(shí)時(shí)性歷史數(shù)據(jù)適用性不高;2)相關(guān)技術(shù)對(duì)關(guān)聯(lián)性不高的數(shù)據(jù)清洗效率低;3)相關(guān)技術(shù)在清洗過程僅適用于樣本數(shù)據(jù),無法實(shí)現(xiàn)對(duì)海量數(shù)據(jù)的清洗。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明實(shí)施例期望提供一種數(shù)據(jù)清洗方法及裝置,能夠準(zhǔn)確地發(fā)現(xiàn)數(shù)據(jù)質(zhì)量問題,并有效地完成數(shù)據(jù)的清洗。
[0005]為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0006]本發(fā)明實(shí)施例提供了一種數(shù)據(jù)清洗方法,所述方法包括:
[0007]獲取待清洗數(shù)據(jù),并依據(jù)對(duì)所述待清洗數(shù)據(jù)中噪聲數(shù)據(jù)分布的分析,獲得所述待清洗數(shù)據(jù)中待清洗字段;
[0008]查找所述待清洗數(shù)據(jù)中可擴(kuò)維字段,并對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得M個(gè)張量字段集;其中,M為正整數(shù);
[0009]利用所述張量字段集中與所述待清洗字段相關(guān)的張量字段對(duì)所述待清洗字段進(jìn)行數(shù)據(jù)清洗。
[0010]上述方案中,所述獲取待清洗數(shù)據(jù)之后,所述方法還包括:將所述待清洗數(shù)據(jù)錄入建立的數(shù)據(jù)庫中,并對(duì)所述數(shù)據(jù)庫進(jìn)行優(yōu)化,得到原始數(shù)據(jù)庫。
[0011]上述方案中,所述依據(jù)對(duì)所述待清洗數(shù)據(jù)中噪聲數(shù)據(jù)分布的分析,獲得所述待清洗數(shù)據(jù)中待清洗字段包括:
[0012]獲取指定時(shí)間段內(nèi)所述待清洗數(shù)據(jù)的任一字段中噪聲數(shù)據(jù)值出現(xiàn)的概率P,P =m/n ;其中,m為所述指定時(shí)間段內(nèi)噪聲數(shù)據(jù)值出現(xiàn)的次數(shù),η為所述指定時(shí)間段內(nèi)數(shù)據(jù)記錄的總數(shù);
[0013]確定所述概率P的值大于預(yù)設(shè)閾值P。時(shí),標(biāo)記所述噪聲數(shù)據(jù)所屬字段為待清洗字段。
[0014]上述方案中,所述對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得M個(gè)張量字段集包括:
[0015]利用張量分解算法依次對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得多個(gè)張量字段,并依據(jù)字段語義相似度將所述多個(gè)張量字段分類為M個(gè)張量字段集。
[0016]上述方案中,所述利用所述張量字段集中與所述待清洗字段相關(guān)的張量字段對(duì)所述待清洗字段進(jìn)行數(shù)據(jù)清洗包括:
[0017]對(duì)所述待清洗字段進(jìn)行語義分析,依據(jù)字段類別獲取所述張量字段集中與所述待清洗字段對(duì)應(yīng)的張量字段集,并進(jìn)一步獲取所述張量字段集中與所述待清洗字段相關(guān)的張量字段,利用所述張量字段對(duì)所述待清洗字段進(jìn)行數(shù)據(jù)清洗。
[0018]本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)清洗裝置,所述裝置包括:獲取模塊、處理模塊及數(shù)據(jù)清洗模塊;其中,
[0019]所述獲取模塊,用于獲取待清洗數(shù)據(jù),并依據(jù)對(duì)所述待清洗數(shù)據(jù)中噪聲數(shù)據(jù)分布的分析,獲得所述待清洗數(shù)據(jù)中待清洗字段;
[0020]所述處理模塊,用于查找所述待清洗數(shù)據(jù)中可擴(kuò)維字段,并對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得M個(gè)張量字段集;其中,M為正整數(shù);
[0021]所述數(shù)據(jù)清洗模塊,用于利用所述張量字段集中與所述待清洗字段相關(guān)的張量字段對(duì)所述待清洗字段進(jìn)行數(shù)據(jù)清洗。
[0022]上述方案中,所述裝置還包括:錄入模塊,用于將所述待清洗數(shù)據(jù)錄入建立的數(shù)據(jù)庫中,并對(duì)所述數(shù)據(jù)庫進(jìn)行優(yōu)化,得到原始數(shù)據(jù)庫。
[0023]上述方案中,所述獲取模塊,具體用于獲取指定時(shí)間段內(nèi)所述待清洗數(shù)據(jù)的任一字段中噪聲數(shù)據(jù)值出現(xiàn)的概率P ;P = m/n ;其中,m為所述指定時(shí)間段內(nèi)噪聲數(shù)據(jù)值出現(xiàn)的次數(shù),η為所述指定時(shí)間段內(nèi)數(shù)據(jù)記錄的總數(shù);
[0024]確定所述概率P的值大于預(yù)設(shè)閾值P。時(shí),標(biāo)記所述噪聲數(shù)據(jù)所屬字段為待清洗字段。
[0025]上述方案中,所述處理模塊,具體用于利用張量分解算法依次對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得多個(gè)張量字段,并依據(jù)字段語義相似度將所述多個(gè)張量字段分類為M個(gè)張量字段集。
[0026]上述方案中,所述數(shù)據(jù)清洗模塊,具體用于對(duì)所述待清洗字段進(jìn)行語義分析,依據(jù)字段類別獲取所述張量字段集中與所述待清洗字段對(duì)應(yīng)的張量字段集,并進(jìn)一步獲取所述張量字段集中與所述待清洗字段相關(guān)的張量字段,利用所述張量字段對(duì)所述待清洗字段進(jìn)行數(shù)據(jù)清洗。
[0027]本發(fā)明實(shí)施例所提供的數(shù)據(jù)清洗方法及裝置,獲取待清洗數(shù)據(jù),并依據(jù)對(duì)所述待清洗數(shù)據(jù)中噪聲數(shù)據(jù)分布的分析,獲得所述待清洗數(shù)據(jù)中待清洗字段;查找所述待清洗數(shù)據(jù)中可擴(kuò)維字段,并對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得M個(gè)張量字段集;利用所述張量字段集中與所述待清洗字段相關(guān)的張量字段對(duì)所述待清洗字段進(jìn)行數(shù)據(jù)清洗。如此,通過對(duì)所述待清洗數(shù)據(jù)中噪聲數(shù)據(jù)分布的分析,準(zhǔn)確地獲得普通數(shù)據(jù)清洗規(guī)則和檢測方法無法發(fā)現(xiàn)的存在質(zhì)量問題的字段,并基于高階張量擴(kuò)維有效地完成對(duì)海量數(shù)據(jù)、非實(shí)時(shí)歷史數(shù)據(jù)或關(guān)聯(lián)性不高的數(shù)據(jù)的清洗。
【附圖說明】
[0028]圖1為本發(fā)明實(shí)施例一數(shù)據(jù)清洗方法流程示意圖;
[0029]圖2為本發(fā)明實(shí)施例二數(shù)據(jù)清洗方法流程示意圖;
[0030]圖3為本發(fā)明實(shí)施例數(shù)據(jù)清洗裝置組成結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0031 ] 在本發(fā)明實(shí)施例中,獲取待清洗數(shù)據(jù),并依據(jù)對(duì)所述待清洗數(shù)據(jù)中噪聲數(shù)據(jù)分布的分析,獲得所述待清洗數(shù)據(jù)中待清洗字段;查找所述待清洗數(shù)據(jù)中可擴(kuò)維字段,并對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得M個(gè)張量字段集;利用所述張量字段集中與所述待清洗字段相關(guān)的張量字段對(duì)所述待清洗字段進(jìn)行數(shù)據(jù)清洗;其中,M為正整數(shù)。
[0032]圖1為本發(fā)明實(shí)施例一數(shù)據(jù)清洗方法流程示意圖,如圖1所示,本實(shí)施例數(shù)據(jù)清洗方法流程包括:
[0033]步驟101:獲取待清洗數(shù)據(jù),并依據(jù)對(duì)所述待清洗數(shù)據(jù)中噪聲數(shù)據(jù)分布的分析,獲得所述待清洗數(shù)據(jù)中待清洗字段;
[0034]本步驟可以由服務(wù)器中的獲取模塊實(shí)現(xiàn);
[0035]本步驟之前,所述方法還包括:分析數(shù)據(jù)源,并依據(jù)數(shù)據(jù)特征建立數(shù)據(jù)庫;
[0036]這里,所述數(shù)據(jù)特征可以包括:字段數(shù)目、字段類型、字段屬性、字段語義等。
[0037]進(jìn)一步的,所述獲取待清洗數(shù)據(jù)之后,依據(jù)對(duì)所述待清洗數(shù)據(jù)中噪聲數(shù)據(jù)分布的分析,獲得所述待清洗數(shù)據(jù)中待清洗字段之前,所述方法還包括:
[0038]將所述待清洗數(shù)據(jù)錄入建立的數(shù)據(jù)庫中,并對(duì)所述數(shù)據(jù)庫進(jìn)行優(yōu)化,得到原始數(shù)據(jù)庫;
[0039]這里,所述對(duì)所述數(shù)據(jù)庫進(jìn)行優(yōu)化包括:修復(fù)將所述待清洗數(shù)據(jù)錄入所述數(shù)據(jù)庫中時(shí)產(chǎn)生的問題,比如:數(shù)據(jù)表的長度不夠等問題;
[0040]所述得到原始數(shù)據(jù)庫為:所述數(shù)據(jù)庫中已完全錄入所述待清洗數(shù)據(jù)。
[0041]進(jìn)一步的,所述獲取待清洗數(shù)據(jù)包括:利用數(shù)據(jù)庫管理工具,從所述數(shù)據(jù)源獲取待清洗數(shù)據(jù);
[0042]所述依據(jù)對(duì)所述待清洗數(shù)據(jù)中噪聲數(shù)據(jù)分布的分析,獲得所述待清洗數(shù)據(jù)中待清洗字段包括:
[0043]獲取指定時(shí)間段所述待清洗數(shù)據(jù)的任一字段中噪聲數(shù)據(jù)值出現(xiàn)的概率P,P = m/η ;其中,m為所述指定時(shí)間段內(nèi)噪聲數(shù)據(jù)值出現(xiàn)的次數(shù),η為所述指定時(shí)間段內(nèi)數(shù)據(jù)記錄的總數(shù);
[0044]確定所述概率P的值大于預(yù)設(shè)閾值P。時(shí),標(biāo)記所述噪聲數(shù)據(jù)所屬字段為待清洗字段;
[0045]其中,所述噪聲數(shù)據(jù)值可以包括:缺失值、錯(cuò)誤值及不一致值等;
[0046]所述指定時(shí)間段為依據(jù)實(shí)際需要設(shè)定的時(shí)間段,可以為一或幾天、一個(gè)或幾個(gè)月、一個(gè)或幾個(gè)季度等;如2014年9月10日至2014年9月15日;
[0047]所述預(yù)設(shè)閾值P??梢砸罁?jù)實(shí)際需要進(jìn)行設(shè)定,具體可以依據(jù)對(duì)數(shù)據(jù)清洗的目標(biāo)質(zhì)量來確定。
[0048]步驟102:查找所述待清洗數(shù)據(jù)中可擴(kuò)維字段,并對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得M個(gè)張量字段集;
[0049]本步驟可以由服務(wù)器中的處理模塊實(shí)現(xiàn);
[0050]這里,所述可擴(kuò)維字段為對(duì)所述字段擴(kuò)維后可得到更多信息的字段;如:imei號(hào)字段;
[0051]所述查找所述待清洗數(shù)據(jù)中可擴(kuò)維字段包括:
[0052]將所述待清洗數(shù)據(jù)中的字段與預(yù)設(shè)可擴(kuò)維字段庫中可擴(kuò)維字段進(jìn)行匹配,獲取所述待清洗數(shù)據(jù)中可擴(kuò)維字段;
[0053]所述對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得M個(gè)張量字段集包括:
[0054]利用張量分解算法Tucker依次對(duì)所述可擴(kuò)維字段進(jìn)行高階張量擴(kuò)維,獲得多個(gè)張量字段,并依據(jù)字段語義相似度將所述多個(gè)張量字段分類為M個(gè)張量字段集;M為正整數(shù);
[0055]其中,所述張量字段為:所述可擴(kuò)維字段經(jīng)高階張量擴(kuò)維后,分解成的多個(gè)維度上的因子矩陣;如:對(duì)imei號(hào)字段