• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    基于FPGA的FP?Growth算法的改進方法及裝置制造方法及圖紙

    技術編號:15691072 閱讀:212 留言:0更新日期:2017-06-24 03:59
    本發明專利技術涉及一種FP?Growth算法,特別涉及一種基于FPGA的FP?Growth算法的改進方法及裝置,屬于機器學習算法處理領域,首先掃描Spark集群中的數據庫,獲取頻繁項集;將頻繁項集進行分組;為Spark集群中的每個節點加配一塊FPGA板卡;在FPGA板卡上對每一組頻繁項集建FP樹;對每一組建的FP樹進行遞歸挖掘;將每一組遞歸挖掘的結果進行合并。本發明專利技術提高了FP?Growth算法的效率,通過在集群節點上加配FPGA板卡來提高Spark集群單節點的計算能力,同時保留了Spark集群自身的并行計算框架,有效提高了大數據環境下FP?Growth算法的整體性能。

    Method and device for improved FP Growth algorithm based on FPGA

    The present invention relates to a FP Growth algorithm, particularly relates to a method and device for improved FP Growth algorithm based on FPGA algorithm, belonging to the field of learning machine, the first scan in Spark cluster database, obtaining frequent itemsets; the frequent itemsets are grouped into Spark clusters; in each node with a FPGA boards; set to build FP tree for each frequent item in the FPGA board; recursive mining for each set of FP tree; merging results each group of recursive mining. The invention improves the efficiency of FP Growth algorithm, to improve the computing ability of single node Spark cluster by adding FPGA in cluster nodes, while retaining its parallel Spark cluster computing framework, effectively improve the overall performance of the FP Growth algorithm under the big data environment.

    【技術實現步驟摘要】
    基于FPGA的FP-Growth算法的改進方法及裝置
    本專利技術涉及機器學習算法處理領域,尤其涉及基于FPGA的FP-Growth算法的改進方法及裝置。
    技術介紹
    基于Spark平臺的FP-Growth算法采用MapReduce分布式計算模型、立足于內存計算,實現了該算法的并行化,在一定程度上提升了該算法的挖掘效率;然而隨著大數據時代的到來,科學和工程計算領域的數據量急劇增長,計算復雜度不斷增加,給基于Spark平臺的FP-Growth算法的計算性能帶來了極大挑戰。由于單節點處理能力有限,Spark通過擴展集群節點規模來實現算法性能的提升;而這種集群擴展不僅使得系統成本和能耗快速增加,而且使得集群網絡復雜度和節點間的數據傳輸開銷急劇上升,降低了集群擴展帶來的計算性能增益。如何才能解決上述問題,增強單節點處理能力、進而減少計算集群快速擴張帶來的網絡傳輸開銷,最終實現FP-Growth算法的性能提升成為亟待解決的熱點問題。
    技術實現思路
    本專利技術提供的基于FPGA的FP-Growth算法的改進方法及裝置,克服了現有技術中存在的不足,顯著的提升了FP-Growth算法的計算性能。為了達到上述目的,本專利技術是通過以下技術方案實現的:本專利技術提供一種基于FPGA的FP-Growth算法的改進方法,包括以下步驟:掃描Spark集群中的數據庫,獲取頻繁項集;將頻繁項集進行分組;為Spark集群中的每個節點加配一塊FPGA板卡;在FPGA板卡上對每一組的頻繁項集建FP樹;在FPGA板卡上對每一組建的FP樹進行遞歸挖掘;將每一組遞歸挖掘的結果進行合并。進一步地,將頻繁項集進行分組,包括:將其按頻繁1-項集順序遞減排列;根據數據庫的大小確定分組個數,按照預先設定的分組規則將其分為若干組。進一步地,在FPGA板卡對每一組建FP樹,包括:建立一個根節點為NULL的FP樹和一個存儲節點信息的Tab表;將頻繁項表中的每條處理好的事務中的數據項按降序依次插入到FP樹中,構建出FP樹的一條路徑;在上述的插入過程中,同時用Tab的指針指向對應項的節點,并將每個節點的計數增加1。進一步地,在FPGA板卡對每一組建的FP樹進行遞歸挖掘,包括:A:從Tab表的尾部的項開始向上遍歷FP樹,每次遍歷得到該項的條件模式基;B:將其條件模式基轉化為條件FP樹;C:迭代重復步驟A步驟B,直到FP樹包含一個元素項為止。進一步地,將每一組遞歸挖掘的結果進行合并,包括:將每一棵條件FP樹生成所有的從根節點到葉子節點的路徑,由路徑中的集合生成其所有的非空子集。基于上述的任一項一種基于FPGA的FP-Growth算法的改進方法的一種基于FPGA的FP-Growth算法的改進裝置,包括:獲取模塊,用于掃描Spark集群中的數據庫,獲取頻繁項集;分組模塊,用于將頻繁項集進行分組;板卡模塊,用于為Spark集群中的每個節點加配一塊FPGA板卡;建樹模塊,用于在FPGA板卡上對每一組的頻繁項集建FP樹;挖掘樹模塊,用于在FPGA板卡上對每一組建的FP樹進行遞歸挖掘;結果模塊,用于將每一組遞歸挖掘的結果進行合并。本專利技術所提供的一種基于FPGA的FP-Growth算法的改進方法,具有如下優點:1.本專利技術通過在原有Spark集群的基礎上加配FPGA,為每個集群節點增加一塊FPGA板卡,由于FPGA板卡具有高性能、低功耗、易編程、動態可重構等突出優勢,是一種新型的異構計算加速器件,將FPGA板卡與原有節點組成新的Spark集群節點服務于整個Spark集群,來提高集群單節點的計算能力,同時保留了Spark集群自身的并行計算框架,有效提高了大數據環境下FP-Growth算法的整體性能,且FPGA作為加速設備與CPU相配合形成異構計算平臺,能夠有效的提升Spark集群的綜合性能;2.本專利技術將FPGA與Spark相結合,將算法中最耗時、計算量最大的建樹與挖掘樹部分從Spark源碼中抽離并在FPGA上開發實現并優化,而算法的其他部分如數據分組、挖掘結果綜合等計算量較小的部分仍按照Spark原有機制運行,充分發揮二者優勢,并在此基礎上對FP-Growth算法進行優化改進,有效的提升FP-Growth算法的計算性能。附圖說明為了更清楚地說明本專利技術實施例的技術方案,下面將對實施例描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本專利技術的一些實施例。圖1為本專利技術實施例1基于FPGA的FP-Growth算法的改進方法的流程示意圖之一。圖2為本專利技術實施例2基于FPGA的FP-Growth算法的改進方法的流程示意圖之二。圖3為本專利技術實施例3基于FPGA的FP-Growth算法的改進裝置的結構示意圖。具體實施方式下面對本專利技術中涉及到的一些技術詞語進行解釋:頻繁項:在多個集合中,頻繁出現的元素/項。頻繁項集:一系列集合,這些集合有些相同的元素,集合中同時出現頻率高的元素形成一個子集,滿足一定閾值條件的項集。條件模式基:同一個頻繁項在FP樹中的所有節點的祖先路徑的集合。Spark:是通用并行框架,啟用了內存分布數據集,除了能夠提供交互式查詢外,它還可以優化迭代工作負載,擁有HadoopMapReduce所具有的優點;但不同于MapReduce的是Job中間輸出結果可以保存在內存中,從而不再需要讀寫HDFS。FPGA:英文全稱為Field-ProgrammableGateArray,即現場可編程門陣列,它是一種邏輯器件,是在PAL、GAL、CPLD等可編程器件的基礎上進一步發展的產物。為使本專利技術實施例的目的、技術方案和優點更加清楚,下面將結合本專利技術實施例中的附圖,對本專利技術實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本專利技術一部分實施例,而不是全部的實施例。基于本專利技術中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本專利技術保護的范圍。下面結合附圖和實施例對本專利技術進行詳細的描述。實施例1參考圖1,本專利技術的一種基于FPGA的FP-Growth算法的改進方法,包括以下步驟:S101:掃描Spark集群中的數據庫,獲取頻繁項集;S102:將頻繁項集進行分組;S103:為Spark集群中的每個節點加配一塊FPGA板卡;S104:在FPGA板卡上對每一組的頻繁項集建FP樹;S105:在FPGA板卡上對每一組建的FP樹進行遞歸挖掘;S106:將每一組遞歸挖掘的結果進行合并。實施例2參考圖2,本專利技術的一種基于FPGA的FP-Growth算法的改進方法,包括以下步驟:S201:掃描Spark集群中的數據庫,獲取頻繁項集;S202:將其按頻繁1-項集順序遞減排列;S203:根據數據庫的大小確定分組個數,按照預先設定的分組規則將其分為若干組;S204:為Spark集群中的每個節點加配一塊FPGA板卡;S205:建立一個根節點為NULL的FP樹和一個存儲節點信息的Tab表;S206:將頻繁項表中的每條處理好的事務中的數據項按降序依次插入到FP樹中,構建出FP樹的一條路徑;S207:在上述的插入過程中,同時用Tab的指針指向對應項的節點,并將每個節點的計數增加1;S208:從Tab表的尾部的項開始向上遍歷FP樹,每次遍歷得到該項的條件模式基;S209:將其條件模式基本文檔來自技高網...
    <a  title="基于FPGA的FP?Growth算法的改進方法及裝置原文來自X技術">基于FPGA的FP?Growth算法的改進方法及裝置</a>

    【技術保護點】
    一種基于FPGA的FP?Growth算法的改進方法,其特征在于,包括以下步驟:掃描Spark集群中的數據庫,獲取頻繁項集;將頻繁項集進行分組;為Spark集群中的每個節點加配一塊FPGA板卡;在FPGA板卡上對每一組的頻繁項集建FP樹;在FPGA板卡上對每一組建的FP樹進行遞歸挖掘;將每一組遞歸挖掘的結果進行合并。

    【技術特征摘要】
    1.一種基于FPGA的FP-Growth算法的改進方法,其特征在于,包括以下步驟:掃描Spark集群中的數據庫,獲取頻繁項集;將頻繁項集進行分組;為Spark集群中的每個節點加配一塊FPGA板卡;在FPGA板卡上對每一組的頻繁項集建FP樹;在FPGA板卡上對每一組建的FP樹進行遞歸挖掘;將每一組遞歸挖掘的結果進行合并。2.根據權利要求1所述的基于FPGA的FP-Growth算法的改進方法,其特征在于,將頻繁項集進行分組,包括:將其按頻繁1-項集順序遞減排列;根據數據庫的大小確定分組個數,按照預先設定的分組規則將其分為若干組。3.根據權利要求1所述的基于FPGA的FP-Growth算法的改進方法,其特征在于,在FPGA板卡對每一組建FP樹,包括:建立一個根節點為NULL的FP樹和一個存儲節點信息的Tab表;將頻繁項表中的每條處理好的事務中的數據項按降序依次插入到FP樹中,構建出FP樹的一條路徑;在上述的插入過程中,同時用Tab的指針指向對應項的節點,并將每個節點的計數增加1。4.根據權利要求3所述的基于FPGA的FP-Gro...

    【專利技術屬性】
    技術研發人員:曹芳陳繼承王洪偉
    申請(專利權)人:鄭州云海信息技術有限公司
    類型:發明
    國別省市:河南,41

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: AV无码免费永久在线观看| 狠狠精品久久久无码中文字幕| 在线看片福利无码网址| 国产亚洲精品a在线无码| 久久精品国产亚洲AV无码偷窥| 无码一区二区三区爆白浆| 狼人无码精华AV午夜精品| 亚洲国产精品无码专区在线观看| 岛国av无码免费无禁网站| 亚洲精品无码成人片久久| 性色av极品无码专区亚洲| 东京热av人妻无码专区| 国产丝袜无码一区二区视频| 日韩精品专区AV无码| 日韩精品无码免费专区午夜不卡 | 少妇久久久久久人妻无码| 日韩av无码中文无码电影| 韩国无码AV片在线观看网站| 老子午夜精品无码| AV无码小缝喷白浆在线观看| 人妻精品无码一区二区三区| 久久成人无码国产免费播放| 无码AV一区二区三区无码| 亚洲Av永久无码精品黑人| 精品无码人妻夜人多侵犯18| 国产精品无码av在线播放| 无码人妻久久一区二区三区蜜桃 | 小12箩利洗澡无码视频网站| 熟妇无码乱子成人精品| 亚洲精品无码久久久久久久| 国产成A人亚洲精V品无码性色 | 丰满爆乳无码一区二区三区| 老子午夜精品无码| 亚洲爆乳精品无码一区二区| 亚洲AV无码一区二区三区人| 中文字幕AV无码一区二区三区| 精品无码国产污污污免费网站| 日韩人妻无码一区二区三区99| 无码精品久久久天天影视| 亚洲日韩国产精品无码av| 无码丰满熟妇juliaann与黑人|