基于MapReduce的并行關聯規則挖掘算法
數據挖掘( data mining)又稱做知識發現(knowledge disco-ver in database,KDD),其目的在于發現大量數據集中有價值的隱含信息。常見的數據挖掘任務有關聯規則挖掘、分類、聚集、離群點檢測等。關聯規則挖掘是最重要的數據挖掘任務之一,由Agrawal等人提出,其目的是發現事務(項)之間存在的隱含關聯。關聯規則挖掘一般分為兩個階段,即發現頻繁項集和根據頻繁項集產生關聯規則。由于根據頻繁項集產生關聯規則相對容易實現,所以關聯規則挖掘研究主要關注的是如何在數據集中找到頻繁出現的項集,這個過程也稱為頻繁項集挖掘( frequent itemsets mining)或頻繁模式挖掘(frequent patterns mining)。傳統的關聯規則挖掘算法主要可以分為三類:a)產生測試方法,通過迭代產生候選頻繁項集并進行分別計數,統計得到頻繁項集,典型的算法是Agrawal等人心1提出的算法及其一系列的改進算法,如DHP、DIC等;b)模式增長方法,它不用產生候選項集,而是將所有頻繁項壓縮成一種特殊的數據結構(一般為樹結構),通過在數據結構上進行遍歷直接產生頻蘩項集,典型的算法有FP-Growth、LP-tree、FIUT、IFP、FPUTPLElol等;c)垂直格式方法,是將水平格式的數據集轉換成垂直格式,通過交運算來得到頻繁項集,典型的算法有Eclat等。
隨著信息技術的快速發展,需要存儲和分析的數據量呈爆炸性增長,人類已經進入了大數據時代,傳統的關聯規則挖掘算法已經不能適應大數據挖掘的要求,主要困難是:單一計算機無法存儲所需要挖掘的所有數據及挖掘過程中產生的中間結果;挖掘過程所需要的內存遠遠超過單一機器的存儲量;計算時間太長無法忍受等。需要開發分布式、并行關聯規則挖掘算法解決上述問題。
MapReduce是一種由Google于2004年提出的一種易用且功能強大的并行編程模型,具有使用簡單、自動容錯、負載均衡、伸縮性好等優點,其開源實現Hadoop已經廣泛應用于很多大數據分析領域,已經有了很多將傳統關聯規則挖掘算法向MapReduce模型進行遷移的研究,很大程度上解決了大數據關聯規則挖掘的問題。這些算法的主要思想都是利用Ha-doop中的分布式文件系統(HDFS)來解決海量數據存儲和分片的問題,利用MapReduce未實現挖掘算法的并行執行。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%
下載地址
基于MapReduce的并行關聯規則挖掘算法下載
相關電子資料下載
- 一文弄懂數據挖掘的十大算法,數據挖掘算法原理講解 706
- 用Python進行線性回歸 用Python中的mlxtend包實現關聯規則挖掘 1080
- MapReduce和Spark概要介紹 1297
- Apache Storm的安裝部署 777
- 人工智能的八大類算法你知道多少 2949
- Apriori關聯規則算法(Python代碼) 3295
- 數據分析的4個目的3個意義 新手小白一定要看! 3259
- 谷歌大腦和DeepMind聯合發布堪稱AI界的MapReduce 4342
- MapReduce實現與自定義詞典文件基于hanLP的中文分詞詳解 221
- 數據挖掘算法:決策樹算法如何學習及分裂剪枝 5546