超市事務(wù)數(shù)據(jù)庫規(guī)則探討論文

時(shí)間:2022-09-10 09:21:00

導(dǎo)語:超市事務(wù)數(shù)據(jù)庫規(guī)則探討論文一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

超市事務(wù)數(shù)據(jù)庫規(guī)則探討論文

摘要:現(xiàn)在全球經(jīng)濟(jì)發(fā)展正在進(jìn)入信息經(jīng)濟(jì)時(shí)代,各種形式的信息大量地產(chǎn)生和收集導(dǎo)致了信息爆炸,如何采用基于關(guān)聯(lián)規(guī)則的數(shù)據(jù)挖掘技術(shù)發(fā)現(xiàn)超市事務(wù)數(shù)據(jù)庫中的關(guān)聯(lián)規(guī)則是本文所研究和探討的重點(diǎn)。

關(guān)鍵詞:數(shù)據(jù)挖掘電子商務(wù)關(guān)聯(lián)規(guī)則

1引言

目前,在需要處理大數(shù)據(jù)量的科研領(lǐng)域中,數(shù)據(jù)挖掘受到越來越多的關(guān)注。我們可以利用數(shù)據(jù)挖掘技術(shù)從海量數(shù)據(jù)中發(fā)現(xiàn)有用信息,幫助商家了解客戶以往的需求趨勢,并預(yù)測未來,從而給商家?guī)砭薮蟮睦麧櫋T跀?shù)據(jù)挖掘領(lǐng)域,采用關(guān)聯(lián)規(guī)則在大型事務(wù)數(shù)據(jù)庫中進(jìn)行數(shù)據(jù)挖掘是一個(gè)重要的研究內(nèi)容。關(guān)聯(lián)規(guī)則是美國IBMAlmadenResearchCenter的RabeshAgrawal等人于1993年首先提出的KDD研究中的一個(gè)重要課題。關(guān)聯(lián)規(guī)則挖掘的一般對象是事務(wù)數(shù)據(jù)庫,這種數(shù)據(jù)庫的主要應(yīng)用在零售業(yè),比如超級市場的銷售管理。關(guān)聯(lián)規(guī)則就是發(fā)現(xiàn)事務(wù)數(shù)據(jù)庫中不同商品(項(xiàng))(Item,指事務(wù)中的內(nèi)容,比如,面包、牛奶等都是項(xiàng)目)之間是否存在某種關(guān)聯(lián)關(guān)系。通過這些規(guī)則找出顧客購買行為模式,如購買了某一商品對購買其他商品的影響。發(fā)現(xiàn)這樣的規(guī)則可以應(yīng)用于商品貨架設(shè)計(jì)、貨存安排以及根據(jù)購買模式對用戶進(jìn)行分類。

2關(guān)聯(lián)規(guī)則描述

目前關(guān)聯(lián)規(guī)則挖掘主要考慮支持度和置信度兩個(gè)閾值。設(shè)X是項(xiàng)集,T是數(shù)據(jù)庫DB中的任意一個(gè)記錄。X的支持度是指支持X的記錄數(shù)與全體記錄數(shù)的比,Support(X)=|{T|TX,T∈DB}|/|DB|。蘊(yùn)涵關(guān)系X==>Y在數(shù)據(jù)庫DB中的置信度是指同時(shí)支持X和Y的記錄數(shù)與支持X的記錄數(shù)之比,即:Confidence(X==>Y)=|{T|TXY,T∈DB}|/|{T|TX,T∈DB}|支持度可理解為在DB中隨機(jī)抽取一個(gè)記錄,該記錄同時(shí)支持X和Y的概率。置信度可理解為在支持X的記錄全體中隨機(jī)取一個(gè)記錄,該記錄支持Y的概率。

3發(fā)現(xiàn)關(guān)聯(lián)規(guī)則的操作步驟

目前,由于條碼技術(shù)的發(fā)展,顧客在超市中購買商品的信息可以很方便的被存放在數(shù)據(jù)庫中,針對數(shù)據(jù)庫中大量的數(shù)據(jù),我們?nèi)绾伟l(fā)現(xiàn)它們之間存在的關(guān)聯(lián)是本文主要討論的問題。關(guān)聯(lián)規(guī)則的挖掘問題就是在超市事務(wù)數(shù)據(jù)庫DB中找出具有用戶給定的最小支持度和最小置信度的關(guān)聯(lián)規(guī)則。關(guān)聯(lián)規(guī)則的挖掘?qū)κ袌稣{(diào)節(jié)和爭取顧客方面的應(yīng)用是極有價(jià)值的。因此,有必要采用快速算法從超市事務(wù)數(shù)據(jù)庫中挖掘關(guān)聯(lián)規(guī)則。由超市事務(wù)數(shù)據(jù)庫發(fā)現(xiàn)關(guān)聯(lián)規(guī)則挖掘可以分以下兩步完成:

1)找出超市事務(wù)數(shù)據(jù)庫DB中所有大于等于用戶指定最小支持度的項(xiàng)目集,具有最小支持度的項(xiàng)目集稱為頻繁項(xiàng)集。

2)利用頻繁項(xiàng)集生成所期望的關(guān)聯(lián)規(guī)則,即這些規(guī)則必須滿足最小支持度min_supp和最小置信度min_conf。

事實(shí)上,第一步的任務(wù)是迅速高效地找出超市事務(wù)數(shù)據(jù)庫DB中全部頻繁項(xiàng)集,數(shù)據(jù)挖掘所面臨的最大的挑戰(zhàn)是計(jì)算效率問題,解決這一問題的途徑是產(chǎn)生高效的數(shù)據(jù)挖掘算法,但從超市事務(wù)數(shù)據(jù)庫中產(chǎn)生頻繁項(xiàng)集即費(fèi)時(shí)又占用空間,所以說第一步是關(guān)聯(lián)規(guī)則挖掘的核心問題,是衡量關(guān)聯(lián)規(guī)則挖掘算法的標(biāo)準(zhǔn)。當(dāng)找到所有的頻繁項(xiàng)集后,相應(yīng)的關(guān)聯(lián)規(guī)則將很容易生成,目前大多數(shù)的關(guān)聯(lián)規(guī)則挖掘算法研究是針對第一步而提出的,本文重點(diǎn)討論第一個(gè)問題。

4由超市事務(wù)數(shù)據(jù)庫發(fā)現(xiàn)關(guān)聯(lián)規(guī)則的總體設(shè)計(jì)

在現(xiàn)有的不少關(guān)聯(lián)規(guī)則發(fā)現(xiàn)算法中,最著名的仍然是R.Agrawal本人在他們自己的AIS算法基礎(chǔ)上于1994年提出的Apriori算法,Apriori算法的基本思想是:利用“頻繁項(xiàng)集的所有非空子集都必須也是頻繁的”這一定理對事務(wù)數(shù)據(jù)庫進(jìn)行多遍掃描。

眾所周知,對數(shù)據(jù)庫的掃描伴隨繁重的磁盤I/O任務(wù),Apriori算法中,掃描次數(shù)較多,這樣就大大限制了挖掘算法的速度。因此,在實(shí)際的應(yīng)用中,減少對事務(wù)數(shù)據(jù)庫的掃描次數(shù),有效地減少數(shù)據(jù)的吞吐,將會(huì)有效提高算法的效率。為了高效率的由超市事務(wù)數(shù)據(jù)庫中發(fā)現(xiàn)關(guān)聯(lián)規(guī)則,本系統(tǒng)在Apriori算法的基礎(chǔ)上采用基于劃分的算法。該算法只對事務(wù)數(shù)據(jù)庫DB掃描兩次,大大減少了I/O操作,從而提高了算法的效率。

通過劃分方法進(jìn)行數(shù)據(jù)挖掘的過程如下圖所示:

本系統(tǒng)的總體設(shè)計(jì)包含三部分:

(1)在服務(wù)器端第一次掃描超市事務(wù)數(shù)據(jù)庫中的表,按照超市事務(wù)數(shù)據(jù)庫中不同項(xiàng)集的數(shù)量,以及兼顧客戶端計(jì)算機(jī)硬件配置,對其進(jìn)行數(shù)據(jù)分塊,分塊的大小選擇要使得每個(gè)分塊可以被放入主存。

(2)在各個(gè)客戶端計(jì)算機(jī)上,利用并行技術(shù)分別訪問服務(wù)器上的數(shù)據(jù)分塊,求出各數(shù)據(jù)分塊所對應(yīng)的局部頻繁項(xiàng)集,并將所求局部頻繁項(xiàng)集存入服務(wù)器的一個(gè)指定表中。

(3)在服務(wù)器端,匯總各個(gè)分塊數(shù)據(jù)生成的局部頻繁項(xiàng)集,第二次掃描超市事務(wù)數(shù)據(jù)庫中的總表,最終生成全局頻繁項(xiàng)集。

系統(tǒng)的總體設(shè)計(jì)可以如下圖2應(yīng)用程序總體設(shè)計(jì)所示。

一旦由超市事務(wù)數(shù)據(jù)庫DB中的事務(wù)找出頻繁項(xiàng)集,由它們產(chǎn)生強(qiáng)關(guān)聯(lián)規(guī)則是直截了當(dāng)?shù)摹K^的強(qiáng)關(guān)聯(lián)規(guī)則是指滿足最小支持度和最小置信度的規(guī)則。

5結(jié)論

隨著計(jì)算機(jī)硬件的降價(jià),利用并行處理的思想,劃分的數(shù)據(jù)塊分給多個(gè)處理機(jī)并行計(jì)算各數(shù)據(jù)塊的局部頻繁項(xiàng)集,然后各分塊所求的局部頻繁項(xiàng)集匯總到服務(wù)器上,再次掃描數(shù)據(jù)庫最終求出全局頻繁項(xiàng)集。這種將關(guān)聯(lián)規(guī)則挖掘算法與并行處理相結(jié)合的方式能更大的提高算法的效率。今后,如何能夠更有效的提高關(guān)聯(lián)規(guī)則算法執(zhí)行的效率,怎樣設(shè)計(jì)更有效、更實(shí)用的算法,是我們進(jìn)一步需要思考的問題。