張小軍+金志偉+張浩
摘 要:在當前信息化的時代背景下,數據和信息成為決定企業市場競爭力的關鍵措施,企業要想獲得良好的發展,必須從海量的數據中迅速找出有用信息,為自身的運營和生產決策提供科學合理的服務。針對這種需求,數據挖掘學科應運而生,并且迅速發展,形成了一套較為完整的理論體系。而在計算機網絡技術不斷發展的推動下,數據挖掘算法有了新的變化,需要相關科研人員的重視。文章結合現代云環境下,數據挖掘算法的并行化措施進行了分析和探討,以提高數據挖掘工作的效率和質量。
關鍵詞:現代云環境;數據挖掘算法;并行化
1 數據挖掘算法概述
數據挖掘,又稱知識發現,是計算機科學與統計學的一個交叉點,主要是指從不同的角度,對數據進行分析和整理,從海量的數據中總結出有用信息。換言之,就是從大量繁雜模糊的數據中,提取出有效信息的過程。從某種程度上講,數據挖掘屬于一種企業數據處理技術,通過對企業在商業活動中產生的業務數據進行抽取、轉換以及分析和模型化處理,提取出關鍵性的數據信息,為企業經營管理決策的制定提供科學的參考依據。
從目前的發展情況看,數據挖掘的內容可以分為以下幾個方面:
1.1 分類分析
分類分析,是指對數據信息進行分類處理,為數據信息的區分和處理提供便利,從而實現對未知數據類型的預測。分類的主要概念在于訓練集,可以結合特定的數據模型,對數據進行分類。當前應用最為廣泛的數據分類模型是樸素貝葉斯模型和決策樹模型。
1.2 關聯分析
在關聯分析中,主要是利用數據之間的相互關聯,結合已知數據對未知數據或者模糊數據進行推導和預測。在關聯分析中,應用最多的是Apriori算法,在對關聯規則進行研究時,通常也是在該算法的基礎上進行修改和擴展。但是,Apriori算法在對支持度進行計算時,需要對數據庫進行多次全面掃描,生成的候選集存在較多的冗雜項,因此存在一定的性能瓶頸,需要進行改進和解決。
1.3 聚類分析
聚類分析是一種具有良好實用性的數據挖掘技術,可以對無規律的數據進行有效分析,并從數據中找出有用的信息,在市場分析、信息檢索、衛生醫療等領域得到了廣泛的應用。聚類分析,實際上是通過觀察以及非示例性的學習,完成對于數據對象的分類,以K-means算法為常用算法,但是該算法同樣存在一定的性能瓶頸,K值的準確性受使用者自身知識水平的英系那個,可能造成算法性能的不穩定或者聚類結果的偏差,因此在利用時需要格外注意。
2 云環境下數據挖掘算法的并行化
在當前的大數據時代,面對海量的數據處理問題,絕大部分傳統數據挖掘算法其實都存在一定的性能瓶頸,很難準確高效地完成大數據環境下的數據挖掘工作。因此,在這樣的情況下,提出了將云計算技術與數據挖掘技術相互結合的方法,可以有效解決這些問題,針對算法的性能瓶頸進行改進,使其更好的適應當前的云環境,具有一定的現實意義。
云計算是隨著計算機網絡技術的發展而產生和發展起來的,是一種基于互聯網的計算方式,能夠結合用戶的實際需求,對于服務器、存儲、軟件、服務和網絡等資源進行動態分配,通過合理有效的設計和調整,使得資源的利用率達到最高。在云計算背景下,可以提供高效的并行化計算能力,從而提高數據挖掘的高效性和實用性,方便對于海量數據的處理。
這里主要針對MC-Apriori算法的并行化改進進行分析和探討。
2.1 并行關聯規則挖掘算法
在不斷的發展過程中,相關研究人員提出了多種關聯規則算法,但是從本質上來說,都是在Apriori算法的基礎上,進行改進和創新,這些算法主要是針對原有算法中存在的問題的改進,屬于一種串行算法。這些改進后的算法雖然能夠提升算法的性能,但是在當前大數據背景下,單機算法對于大數據的處理很有些力不從心,因此需要采用并行計算,對數據挖掘算法進行改進。描述如下:
設計算機集群中n臺計算機節點N1,N2…,Nn,相互之間只有網絡通信,則每個節點存放子事務數據庫Dk(1≤k≤n),包含TCk條業務,則總交替數據庫為
總事務條數為
關聯規則的并行化,主要可以分為兩種形式,即基于內存共享和基于存儲共享。關聯規則的挖掘模型如下:
基于并行計算理論,對現有的關聯規則算法進行改進,可以實行多種新的算法,這些算法的并行點多在候選集和頻繁集計算。主要包括以下幾種:
(1)CD算法:這種算法是對Apriori算法的簡單并行,主要是將事務數據庫分到n個節點,然后在單個節點,運行Apriori算法,每一個節點的候選集支持度計算,最后,進行全局同步以及共享計數。這種算法具有較高的并行性,但是數據的輸出和輸出成本高,沒有對內存進行有效利用。
(2)DD算法:DD算法是通過循環的方式,將候選集分配到多個節點,之后在單個節點上對候選集的支持度進行計算,需要使用其他節點的數據集時,可以通過網絡進行數據傳輸。因此,不需要全局同步候選集計數,但是,在實用性方面存在一定的不足,不僅網絡需求高,而且事物處理存在一定的冗余。
2.2 并行MC-Apriori算法
關聯規則并行化算法的核心,是將數據集劃分為多個數據塊,然后掃描數據塊,挖掘其中存在的關聯規則。MC-Apriori算法可以實現并行化運算,主要是在單機的情況下,結合計算項的個數,對1-頻繁集進行計算,生成相應的k-1-候選集,并通過對候選集的修剪,得到k頻繁集。在對候選集的支持度進行計算的過程中,可以并行化處理,在多個節點對本地候選集的本地支持度進行計數,之后合并成為全局候選集的支持度技術,并由此得出頻繁集。在并行關聯規則挖掘算法中,數據劃分的方式不同,則算法的挖掘效率也存在很大的差異。有效的數據劃分,最好是讓一個頻繁項集對應的事務處于最少的數據塊上,在MC-Apriori算法中,由于需要將事務數據轉化為矩陣,因此一個事務數據最好可以保存在單個數據塊中。
3 結束語
總而言之,在當前的大數據背景下,傳統數據挖掘算法無法滿足海量數據的挖掘和處理要求,因此需要對其進行改進。本文針對現代云環境下的數據挖掘算法的并行化進行了分析和探討,希望能夠為相關數據挖掘算法的研究提供一定的參考。
參考文獻
[1]胡善杰.在云環境下的數據挖掘算法的并行化研究[D].電子科技大學,2013.
[2]丁巖.基于云計算的數據挖掘平臺架構及其關鍵技術研究[J].中興通訊技術,2013,(1):77-80.
作者簡介:張小軍(1980,1-),男,籍貫:河南,研究方向(從事的什么研究)云計算,數據挖掘,通信技術,職稱:講師。endprint
摘 要:在當前信息化的時代背景下,數據和信息成為決定企業市場競爭力的關鍵措施,企業要想獲得良好的發展,必須從海量的數據中迅速找出有用信息,為自身的運營和生產決策提供科學合理的服務。針對這種需求,數據挖掘學科應運而生,并且迅速發展,形成了一套較為完整的理論體系。而在計算機網絡技術不斷發展的推動下,數據挖掘算法有了新的變化,需要相關科研人員的重視。文章結合現代云環境下,數據挖掘算法的并行化措施進行了分析和探討,以提高數據挖掘工作的效率和質量。
關鍵詞:現代云環境;數據挖掘算法;并行化
1 數據挖掘算法概述
數據挖掘,又稱知識發現,是計算機科學與統計學的一個交叉點,主要是指從不同的角度,對數據進行分析和整理,從海量的數據中總結出有用信息。換言之,就是從大量繁雜模糊的數據中,提取出有效信息的過程。從某種程度上講,數據挖掘屬于一種企業數據處理技術,通過對企業在商業活動中產生的業務數據進行抽取、轉換以及分析和模型化處理,提取出關鍵性的數據信息,為企業經營管理決策的制定提供科學的參考依據。
從目前的發展情況看,數據挖掘的內容可以分為以下幾個方面:
1.1 分類分析
分類分析,是指對數據信息進行分類處理,為數據信息的區分和處理提供便利,從而實現對未知數據類型的預測。分類的主要概念在于訓練集,可以結合特定的數據模型,對數據進行分類。當前應用最為廣泛的數據分類模型是樸素貝葉斯模型和決策樹模型。
1.2 關聯分析
在關聯分析中,主要是利用數據之間的相互關聯,結合已知數據對未知數據或者模糊數據進行推導和預測。在關聯分析中,應用最多的是Apriori算法,在對關聯規則進行研究時,通常也是在該算法的基礎上進行修改和擴展。但是,Apriori算法在對支持度進行計算時,需要對數據庫進行多次全面掃描,生成的候選集存在較多的冗雜項,因此存在一定的性能瓶頸,需要進行改進和解決。
1.3 聚類分析
聚類分析是一種具有良好實用性的數據挖掘技術,可以對無規律的數據進行有效分析,并從數據中找出有用的信息,在市場分析、信息檢索、衛生醫療等領域得到了廣泛的應用。聚類分析,實際上是通過觀察以及非示例性的學習,完成對于數據對象的分類,以K-means算法為常用算法,但是該算法同樣存在一定的性能瓶頸,K值的準確性受使用者自身知識水平的英系那個,可能造成算法性能的不穩定或者聚類結果的偏差,因此在利用時需要格外注意。
2 云環境下數據挖掘算法的并行化
在當前的大數據時代,面對海量的數據處理問題,絕大部分傳統數據挖掘算法其實都存在一定的性能瓶頸,很難準確高效地完成大數據環境下的數據挖掘工作。因此,在這樣的情況下,提出了將云計算技術與數據挖掘技術相互結合的方法,可以有效解決這些問題,針對算法的性能瓶頸進行改進,使其更好的適應當前的云環境,具有一定的現實意義。
云計算是隨著計算機網絡技術的發展而產生和發展起來的,是一種基于互聯網的計算方式,能夠結合用戶的實際需求,對于服務器、存儲、軟件、服務和網絡等資源進行動態分配,通過合理有效的設計和調整,使得資源的利用率達到最高。在云計算背景下,可以提供高效的并行化計算能力,從而提高數據挖掘的高效性和實用性,方便對于海量數據的處理。
這里主要針對MC-Apriori算法的并行化改進進行分析和探討。
2.1 并行關聯規則挖掘算法
在不斷的發展過程中,相關研究人員提出了多種關聯規則算法,但是從本質上來說,都是在Apriori算法的基礎上,進行改進和創新,這些算法主要是針對原有算法中存在的問題的改進,屬于一種串行算法。這些改進后的算法雖然能夠提升算法的性能,但是在當前大數據背景下,單機算法對于大數據的處理很有些力不從心,因此需要采用并行計算,對數據挖掘算法進行改進。描述如下:
設計算機集群中n臺計算機節點N1,N2…,Nn,相互之間只有網絡通信,則每個節點存放子事務數據庫Dk(1≤k≤n),包含TCk條業務,則總交替數據庫為
總事務條數為
關聯規則的并行化,主要可以分為兩種形式,即基于內存共享和基于存儲共享。關聯規則的挖掘模型如下:
基于并行計算理論,對現有的關聯規則算法進行改進,可以實行多種新的算法,這些算法的并行點多在候選集和頻繁集計算。主要包括以下幾種:
(1)CD算法:這種算法是對Apriori算法的簡單并行,主要是將事務數據庫分到n個節點,然后在單個節點,運行Apriori算法,每一個節點的候選集支持度計算,最后,進行全局同步以及共享計數。這種算法具有較高的并行性,但是數據的輸出和輸出成本高,沒有對內存進行有效利用。
(2)DD算法:DD算法是通過循環的方式,將候選集分配到多個節點,之后在單個節點上對候選集的支持度進行計算,需要使用其他節點的數據集時,可以通過網絡進行數據傳輸。因此,不需要全局同步候選集計數,但是,在實用性方面存在一定的不足,不僅網絡需求高,而且事物處理存在一定的冗余。
2.2 并行MC-Apriori算法
關聯規則并行化算法的核心,是將數據集劃分為多個數據塊,然后掃描數據塊,挖掘其中存在的關聯規則。MC-Apriori算法可以實現并行化運算,主要是在單機的情況下,結合計算項的個數,對1-頻繁集進行計算,生成相應的k-1-候選集,并通過對候選集的修剪,得到k頻繁集。在對候選集的支持度進行計算的過程中,可以并行化處理,在多個節點對本地候選集的本地支持度進行計數,之后合并成為全局候選集的支持度技術,并由此得出頻繁集。在并行關聯規則挖掘算法中,數據劃分的方式不同,則算法的挖掘效率也存在很大的差異。有效的數據劃分,最好是讓一個頻繁項集對應的事務處于最少的數據塊上,在MC-Apriori算法中,由于需要將事務數據轉化為矩陣,因此一個事務數據最好可以保存在單個數據塊中。
3 結束語
總而言之,在當前的大數據背景下,傳統數據挖掘算法無法滿足海量數據的挖掘和處理要求,因此需要對其進行改進。本文針對現代云環境下的數據挖掘算法的并行化進行了分析和探討,希望能夠為相關數據挖掘算法的研究提供一定的參考。
參考文獻
[1]胡善杰.在云環境下的數據挖掘算法的并行化研究[D].電子科技大學,2013.
[2]丁巖.基于云計算的數據挖掘平臺架構及其關鍵技術研究[J].中興通訊技術,2013,(1):77-80.
作者簡介:張小軍(1980,1-),男,籍貫:河南,研究方向(從事的什么研究)云計算,數據挖掘,通信技術,職稱:講師。endprint
摘 要:在當前信息化的時代背景下,數據和信息成為決定企業市場競爭力的關鍵措施,企業要想獲得良好的發展,必須從海量的數據中迅速找出有用信息,為自身的運營和生產決策提供科學合理的服務。針對這種需求,數據挖掘學科應運而生,并且迅速發展,形成了一套較為完整的理論體系。而在計算機網絡技術不斷發展的推動下,數據挖掘算法有了新的變化,需要相關科研人員的重視。文章結合現代云環境下,數據挖掘算法的并行化措施進行了分析和探討,以提高數據挖掘工作的效率和質量。
關鍵詞:現代云環境;數據挖掘算法;并行化
1 數據挖掘算法概述
數據挖掘,又稱知識發現,是計算機科學與統計學的一個交叉點,主要是指從不同的角度,對數據進行分析和整理,從海量的數據中總結出有用信息。換言之,就是從大量繁雜模糊的數據中,提取出有效信息的過程。從某種程度上講,數據挖掘屬于一種企業數據處理技術,通過對企業在商業活動中產生的業務數據進行抽取、轉換以及分析和模型化處理,提取出關鍵性的數據信息,為企業經營管理決策的制定提供科學的參考依據。
從目前的發展情況看,數據挖掘的內容可以分為以下幾個方面:
1.1 分類分析
分類分析,是指對數據信息進行分類處理,為數據信息的區分和處理提供便利,從而實現對未知數據類型的預測。分類的主要概念在于訓練集,可以結合特定的數據模型,對數據進行分類。當前應用最為廣泛的數據分類模型是樸素貝葉斯模型和決策樹模型。
1.2 關聯分析
在關聯分析中,主要是利用數據之間的相互關聯,結合已知數據對未知數據或者模糊數據進行推導和預測。在關聯分析中,應用最多的是Apriori算法,在對關聯規則進行研究時,通常也是在該算法的基礎上進行修改和擴展。但是,Apriori算法在對支持度進行計算時,需要對數據庫進行多次全面掃描,生成的候選集存在較多的冗雜項,因此存在一定的性能瓶頸,需要進行改進和解決。
1.3 聚類分析
聚類分析是一種具有良好實用性的數據挖掘技術,可以對無規律的數據進行有效分析,并從數據中找出有用的信息,在市場分析、信息檢索、衛生醫療等領域得到了廣泛的應用。聚類分析,實際上是通過觀察以及非示例性的學習,完成對于數據對象的分類,以K-means算法為常用算法,但是該算法同樣存在一定的性能瓶頸,K值的準確性受使用者自身知識水平的英系那個,可能造成算法性能的不穩定或者聚類結果的偏差,因此在利用時需要格外注意。
2 云環境下數據挖掘算法的并行化
在當前的大數據時代,面對海量的數據處理問題,絕大部分傳統數據挖掘算法其實都存在一定的性能瓶頸,很難準確高效地完成大數據環境下的數據挖掘工作。因此,在這樣的情況下,提出了將云計算技術與數據挖掘技術相互結合的方法,可以有效解決這些問題,針對算法的性能瓶頸進行改進,使其更好的適應當前的云環境,具有一定的現實意義。
云計算是隨著計算機網絡技術的發展而產生和發展起來的,是一種基于互聯網的計算方式,能夠結合用戶的實際需求,對于服務器、存儲、軟件、服務和網絡等資源進行動態分配,通過合理有效的設計和調整,使得資源的利用率達到最高。在云計算背景下,可以提供高效的并行化計算能力,從而提高數據挖掘的高效性和實用性,方便對于海量數據的處理。
這里主要針對MC-Apriori算法的并行化改進進行分析和探討。
2.1 并行關聯規則挖掘算法
在不斷的發展過程中,相關研究人員提出了多種關聯規則算法,但是從本質上來說,都是在Apriori算法的基礎上,進行改進和創新,這些算法主要是針對原有算法中存在的問題的改進,屬于一種串行算法。這些改進后的算法雖然能夠提升算法的性能,但是在當前大數據背景下,單機算法對于大數據的處理很有些力不從心,因此需要采用并行計算,對數據挖掘算法進行改進。描述如下:
設計算機集群中n臺計算機節點N1,N2…,Nn,相互之間只有網絡通信,則每個節點存放子事務數據庫Dk(1≤k≤n),包含TCk條業務,則總交替數據庫為
總事務條數為
關聯規則的并行化,主要可以分為兩種形式,即基于內存共享和基于存儲共享。關聯規則的挖掘模型如下:
基于并行計算理論,對現有的關聯規則算法進行改進,可以實行多種新的算法,這些算法的并行點多在候選集和頻繁集計算。主要包括以下幾種:
(1)CD算法:這種算法是對Apriori算法的簡單并行,主要是將事務數據庫分到n個節點,然后在單個節點,運行Apriori算法,每一個節點的候選集支持度計算,最后,進行全局同步以及共享計數。這種算法具有較高的并行性,但是數據的輸出和輸出成本高,沒有對內存進行有效利用。
(2)DD算法:DD算法是通過循環的方式,將候選集分配到多個節點,之后在單個節點上對候選集的支持度進行計算,需要使用其他節點的數據集時,可以通過網絡進行數據傳輸。因此,不需要全局同步候選集計數,但是,在實用性方面存在一定的不足,不僅網絡需求高,而且事物處理存在一定的冗余。
2.2 并行MC-Apriori算法
關聯規則并行化算法的核心,是將數據集劃分為多個數據塊,然后掃描數據塊,挖掘其中存在的關聯規則。MC-Apriori算法可以實現并行化運算,主要是在單機的情況下,結合計算項的個數,對1-頻繁集進行計算,生成相應的k-1-候選集,并通過對候選集的修剪,得到k頻繁集。在對候選集的支持度進行計算的過程中,可以并行化處理,在多個節點對本地候選集的本地支持度進行計數,之后合并成為全局候選集的支持度技術,并由此得出頻繁集。在并行關聯規則挖掘算法中,數據劃分的方式不同,則算法的挖掘效率也存在很大的差異。有效的數據劃分,最好是讓一個頻繁項集對應的事務處于最少的數據塊上,在MC-Apriori算法中,由于需要將事務數據轉化為矩陣,因此一個事務數據最好可以保存在單個數據塊中。
3 結束語
總而言之,在當前的大數據背景下,傳統數據挖掘算法無法滿足海量數據的挖掘和處理要求,因此需要對其進行改進。本文針對現代云環境下的數據挖掘算法的并行化進行了分析和探討,希望能夠為相關數據挖掘算法的研究提供一定的參考。
參考文獻
[1]胡善杰.在云環境下的數據挖掘算法的并行化研究[D].電子科技大學,2013.
[2]丁巖.基于云計算的數據挖掘平臺架構及其關鍵技術研究[J].中興通訊技術,2013,(1):77-80.
作者簡介:張小軍(1980,1-),男,籍貫:河南,研究方向(從事的什么研究)云計算,數據挖掘,通信技術,職稱:講師。endprint