① 關聯分析 分析在哪些情況下,一種演算法比其他演算法好
灰色關聯度分析法是一種多因素統計分析方法,它是以各因素的樣本數據為依據用灰色關聯度來描述因素間關系的強弱、大小和次序,若樣本數據反映出的兩因素變化的態勢(方向、大小和速度等)基本一致,則它們之間的關聯度較大
② 關聯分析的關聯分析的方法
Apriori演算法是挖掘產生布爾關聯規則所需頻繁項集的基本演算法,也是最著名的關聯規則挖掘演算法之一。Apriori演算法就是根據有關頻繁項集特性的先驗知識而命名的。它使用一種稱作逐層搜索的迭代方法,k—項集用於探索(k+1)—項集。首先,找出頻繁1—項集的集合.記做L1,L1用於找出頻繁2—項集的集合L2,再用於找出L3,如此下去,直到不能找到頻繁k—項集。找每個Lk需要掃描一次資料庫。
為提高按層次搜索並產生相應頻繁項集的處理效率,Apriori演算法利用了一個重要性質,並應用Apriori性質來幫助有效縮小頻繁項集的搜索空間。
Apriori性質:一個頻繁項集的任一子集也應該是頻繁項集。證明根據定義,若一個項集I不滿足最小支持度閾值min_sup,則I不是頻繁的,即P(I)<min_sup。若增加一個項A到項集I中,則結果新項集(I∪A)也不是頻繁的,在整個事務資料庫中所出現的次數也不可能多於原項集I出現的次數,因此P(I∪A)<min_sup,即(I∪A)也不是頻繁的。這樣就可以根據逆反公理很容易地確定Apriori性質成立。
針對Apriori演算法的不足,對其進行優化:
1)基於劃分的方法。該演算法先把資料庫從邏輯上分成幾個互不相交的塊,每次單獨考慮一個分塊並對它生成所有的頻繁項集,然後把產生的頻繁項集合並,用來生成所有可能的頻繁項集,最後計算這些項集的支持度。這里分塊的大小選擇要使得每個分塊可以被放入主存,每個階段只需被掃描一次。而演算法的正確性是由每一個可能的頻繁項集至少在某一個分塊中是頻繁項集保證的。
上面所討論的演算法是可以高度並行的。可以把每一分塊分別分配給某一個處理器生成頻繁項集。產生頻繁項集的每一個循環結束後.處理器之間進行通信來產生全局的候選是一項集。通常這里的通信過程是演算法執行時間的主要瓶頸。而另一方面,每個獨立的處理器生成頻繁項集的時間也是一個瓶頸。其他的方法還有在多處理器之間共享一個雜湊樹來產生頻繁項集,更多關於生成頻繁項集的並行化方法可以在其中找到。
2)基於Hash的方法。Park等人提出了一個高效地產生頻繁項集的基於雜湊(Hash)的演算法。通過實驗可以發現,尋找頻繁項集的主要計算是在生成頻繁2—項集Lk上,Park等就是利用這個性質引入雜湊技術來改進產生頻繁2—項集的方法。
3)基於采樣的方法。基於前一遍掃描得到的信息,對它詳細地做組合分析,可以得到一個改進的演算法,其基本思想是:先使用從資料庫中抽取出來的采樣得到一些在整個資料庫中可能成立的規則,然後對資料庫的剩餘部分驗證這個結果。這個演算法相當簡單並顯著地減少了FO代價,但是一個很大的缺點就是產生的結果不精確,即存在所謂的數據扭曲(Dataskew)。分布在同一頁面上的數據時常是高度相關的,不能表示整個資料庫中模式的分布,由此而導致的是采樣5%的交易數據所花費的代價同掃描一遍資料庫相近。
4)減少交易個數。減少用於未來掃描事務集的大小,基本原理就是當一個事務不包含長度為志的大項集時,則必然不包含長度為走k+1的大項集。從而可以將這些事務刪除,在下一遍掃描中就可以減少要進行掃描的事務集的個數。這就是AprioriTid的基本思想。 由於Apriori方法的固有缺陷.即使進行了優化,其效率也仍然不能令人滿意。2000年,Han Jiawei等人提出了基於頻繁模式樹(Frequent Pattern Tree,簡稱為FP-tree)的發現頻繁模式的演算法FP-growth。在FP-growth演算法中,通過兩次掃描事務資料庫,把每個事務所包含的頻繁項目按其支持度降序壓縮存儲到FP—tree中。在以後發現頻繁模式的過程中,不需要再掃描事務資料庫,而僅在FP-Tree中進行查找即可,並通過遞歸調用FP-growth的方法來直接產生頻繁模式,因此在整個發現過程中也不需產生候選模式。該演算法克服了Apriori演算法中存在的問顥.在執行效率上也明顯好於Apriori演算法。
③ 遺傳演算法的優缺點
優點:
1、遺傳演算法是以決策變數的編碼作為運算對象,可以直接對集合、序列、矩陣、樹、圖等結構對象進行操作。這樣的方式一方面有助於模擬生物的基因、染色體和遺傳進化的過程,方便遺傳操作運算元的運用。
另一方面也使得遺傳演算法具有廣泛的應用領域,如函數優化、生產調度、自動控制、圖像處理、機器學習、數據挖掘等領域。
2、遺傳演算法直接以目標函數值作為搜索信息。它僅僅使用適應度函數值來度量個體的優良程度,不涉及目標函數值求導求微分的過程。因為在現實中很多目標函數是很難求導的,甚至是不存在導數的,所以這一點也使得遺傳演算法顯示出高度的優越性。
3、遺傳演算法具有群體搜索的特性。它的搜索過程是從一個具有多個個體的初始群體P(0)開始的,一方面可以有效地避免搜索一些不必搜索的點。
另一方面由於傳統的單點搜索方法在對多峰分布的搜索空間進行搜索時很容易陷入局部某個單峰的極值點,而遺傳演算法的群體搜索特性卻可以避免這樣的問題,因而可以體現出遺傳演算法的並行化和較好的全局搜索性。
4、遺傳演算法基於概率規則,而不是確定性規則。這使得搜索更為靈活,參數對其搜索效果的影響也盡可能的小。
5、遺傳演算法具有可擴展性,易於與其他技術混合使用。以上幾點便是遺傳演算法作為優化演算法所具備的優點。
缺點:
1、遺傳演算法在進行編碼時容易出現不規范不準確的問題。
2、由於單一的遺傳演算法編碼不能全面將優化問題的約束表示出來,因此需要考慮對不可行解採用閾值,進而增加了工作量和求解時間。
3、遺傳演算法效率通常低於其他傳統的優化方法。
4、遺傳演算法容易出現過早收斂的問題。
(3)演算法的優點關聯分析擴展閱讀
遺傳演算法的機理相對復雜,在Matlab中已經由封裝好的工具箱命令,通過調用就能夠十分方便的使用遺傳演算法。
函數ga:[x, fval,reason]= ga(@fitnessfun, nvars, options)x是最優解,fval是最優值,@fitnessness是目標函數,nvars是自變數個數,options是其他屬性設置。系統默認求最小值,所以在求最大值時應在寫函數文檔時加負號。
為了設置options,需要用到下面這個函數:options=gaoptimset('PropertyName1', 'PropertyValue1', 'PropertyName2', 'PropertyValue2','PropertyName3', 'PropertyValue3', ...)通過這個函數就能夠實現對部分遺傳演算法的參數的設置。
④ 關聯演算法
關聯, 指的是關聯分析, 這里引用網路的定義.
通過關聯分析, 可以挖掘出"由於某些事件的發生而引起另外一些事件的發生"之類的規則, 比如說"麵包=>牛奶", 其中麵包被稱為規則的前項, 而牛奶則被稱為規則的後項.
常用於關聯分析的演算法有Apriori演算法, FP-growth演算法, Eclat演算法, 灰色關聯法等, 下面將著重介紹Apriori演算法.
在介紹Apriori演算法之前, 我們先來了解幾個概念:
1.事務: 一條交易記錄稱為一個事務
2.項: 交易中的每一個物品稱為一個項
3.項集: 包含0個或多個項的集合
4.支持度計數: 項集在所有事務中出現的次數.
5.支持度: 支持度計數除於總的事務數.
6.頻繁項集: 支持度大於等於某個閥值的項集.
關聯規則的挖掘通常分為兩步: 第一步, 找出所有的頻繁項集; 第二步, 由頻繁項集產沒判答生強關聯規則. 而Apriori演算法則是挖掘頻繁項集的基本演算法.
可以看到以上每個過程均需要掃描一次數據, 為了提高頻繁項集逐層迭代產生的效率, 需要利用一條重要性質, 其稱為先驗性質:
當然, 非頻繁項集的所有超集也一定是非頻繁的.
將先驗性質應用到Apriori演算法中就是將之枯慧前的過程分為兩大部分, 連接步和剪枝步.
連接步: 連接步的目的是產生候選項集.
剪枝步: 應用先驗性質對候選項集進行篩選, 將不滿足先驗性質的候選項集剔除, 再進而根據最小支持度找出頻繁項集, 這樣可以有效縮短計算量.
關聯分析的目標是找出強關聯規則, 因此這里的關聯規則是指強關聯規則, 我們把滿足最小支持度和最小置信度的規則稱為強關聯規則.
對於規則A=>沖敏B, 置信度的計算公式就是項集{A, B}的支持度計數除於項集{A}的支持度計數.
優點: 簡單, 易理解, 對數據要求低
缺點: 容易產生過多的候選項集, I/O負載大.
⑤ 數據挖掘- 關聯分析演算法
關聯分析,顧名思義就是找出哪幾項之間是有關聯關系的,舉個例子:
以上是五個購物記錄,從中我們可以發現,購買了尿布的人其中有3個購買了啤酒,那麼久我們可以推測,尿布和啤酒之間有較強的關聯關系,盡管他們之間看起來並沒有什麼聯系,也就是能得到規則:
因為購物分析能較好地描述關聯分析,所以又被叫做 購物籃分析 。
為了較好的描述這個分析的各種名詞,我們把上面的表格重新設計一下:
把每一個購物訂單中,涉及到的商品都變成1,沒涉及到的變成0,也就是將各個商品的購買記錄 二元化 。
當然肯定也有多個分類的情況。
那麼麵包,牛奶這些就叫數據集的 項 ,而他們組合起來的子集就叫做 項集 。可以為空,空集是不包含任何項的項集,如果一個項集包含k個子項,就叫做k-項集。
訂單12345叫做 事務 ,某個項集在所有事務中出現多少次,叫做項集的 支持度計數 。
在上面的表格中,項集{啤酒、尿布、牛奶}的支持度計數為2,因為有兩個事務(3、4)包含這一項集。
用 支持度 和 置信度 來衡量,假定存在規則 ,其中X和Y是 不相交 的項集,則支持度為:
其中N是數據集中的事務個數,相當於表示該規則在數據集中出現了多少次。
置信度為:
置信度的意思就是,在出現X的情況下,有多少次同時出現了Y,代表這個關聯規則的頻繁程度。
注意置信度的分母是 ,因此這個評價可能會存在一定的問題。
關聯分析的核心目標就是找出支持度大於等於某個閾值, 同時 置信度大於等於某個閾值的所有規則,這兩個閾值記為 和 。
為了更有效率的完成這個過程,通常把關聯規則演算法分為兩步:
可以看出來,櫻備首先要求得頻繁項集,這步驟的開銷很大,但是只需要考慮支持度就可以了,第二步只考慮置信度就可以了。
下面就可以分兩步來解析演算法:
首先我們可以把項集聯想成一個樹形結構,每層代表著不同的k-項集,依層遞增,非葉子節點來自於他的幾個父節點的並集,如圖:
我們肯定不能通過傳統的方式,遍歷這些節點,算出支持度,然後篩選掉不滿足最小支持度的那些,這樣開銷太大,因此我們引入先驗原理,來輔助剪枝。
這個原理不難想像,假如一個項集{a,b}是非頻繁項集,那麼{a,b,c}肯定也是,因為ab是,在{a,b,c}中與之關聯的c必須在ab出現之後才存在,因此他的支持度肯定不會大於{a,b}。
頻繁的就是支持度大於等於最小支持度的項集,非頻繁就是小於的。
我們可以利用這一定理,把非頻繁項集的超集一並從樹中減去,這樣就能大大的降低計算次數,如圖:
虛線圈上的,就是在{a,b}確定是非頻繁項集之後,剪掉的超集,這些是不用計算的。
根據這個原理,可以說一下Apriori演算法。
根據上面說的先驗原理,Apriori演算法先從項集寬度最低的1開始,遍歷所有的項集支持度,找出頻繁項集(因為第一層在找出支持度之前),之後根據先驗原理,挑選任意兩個頻繁項集組成2-頻繁項集(很簡單,如果挑非頻繁的,那組成的項集就不是頻繁項集了),再用2-項集挑選3-項集,直到挑選不出更高層次的項集為止,把這些項集作為 候選項集 ,如圖:
圖中1-項集中,啤酒,麵包,尿布,牛奶的支持度大於等於3(設 為3),則由他們組成2-項集,繼續篩選滿足支持度不小於3的項集,再由2-項集生成3-項集,這就是 Apriori 演算法篩選頻繁項集的基本步驟。總結如下:
上面提到了用k-1項集生成k-項脊稿毀集,那麼如何才能最有效率的產生k-項集呢,這里用了 的方法,也就是找到一對(k-1)-項集,當他們的前(k-2)項都相同時,進行合並,合並之後的結果就是{ },因為前k-2項是相同的。
舉個例子:
上面說了如何產生候選項集,接下來就是如何更敬塵有效率的確定支持度計數了,同樣,如果遍歷一個一個查的話效率是很低的,我們可以用枚舉的方法遍歷每個事務包含的項集,以查找3-項集為例,如圖:
因為我們要查3-項集,因此樹狀結構就分到3-項集為止。
因為3-項集的開頭第一個項肯定在1,2,3之間,我們就設定這三個數為三個分支,無論到哪個節點,都嚴格按照這個來分(1在左,2在中,3在右),在下面的層次中如何碰到比123更大的,則再向右分,就可以得到圖中的關於事務t的所有3-項集。
有了所有項集的列表,我們可以用候選項集去匹配這些項集,從而看t中是否包含候選項集,如果包含,則支持度+1。
可以使用Hash樹來進行匹配,從而實現支持度計數。
如下圖,就是一個Hash樹的例子,每個內部節點都使用Hash函數 來確定應當沿著當前節點的哪個分支向下,所以1,4,7就到了同一分支。
我們對於單個事務,可以遍歷Hash樹,設事務為t,則保證所有包含屬於事務t的候選3-項集的葉節點至少訪問一次。
由於我們之前已經通過樹的方式枚舉出了t中所有的3-項集,那麼我們跟這個Hash一走分支,找到對應3-項集的就+1支持度,即可算出每個候選項集的支持度。
提取規則相應的比較簡單,設有 頻繁項集Y ,我們忽略前件為空和後件為空的規則,每個頻繁項集能產生 個關聯規則,提取方法就是將Y劃分為兩個 非空 的子集X和Y-X,使得 滿足 置信度閾值 也就是最小置信度。
同樣的,提取規則也有一個原理:
參考頻繁項集的尋找過程,我們可以利用樹形結構對規則進行剪枝。
樹的每層對應規則後件中的項數,如圖:
假設規則{ } { }不滿足置信度閾值的要求,那麼可以丟棄後件包含{a}的所有規則,如上圖所示。
至此我們經歷了尋找頻繁項集和提取規則的過程,基本Apriori演算法就算完成了,不過還有一些需要考慮的細節。
在實際應用過程中,往往頻繁項集產生的數量可能很大,所以很難表示,我們需要尋找一種方法,找到一些有代表性的頻繁項集,以保證其描述性。
通常有如下兩種方法:
如圖:
這種表示很明顯降低了需要表示項集的個數,我們需要別的候選項集,直接取極大頻繁項集的子集就行,任意一個肯定都是。
但是這么做,表示不出他們子集的支持度,所以就需要再遍歷數據集,確定非極大頻繁項集的支持度,不是很方便。
所以我們還可以用閉頻繁項集來表示。
先來看閉項集的概念:
那麼閉頻繁項集的概念就很好理解了:
如圖,我們假設 是40%。
這種做法可以保證支持度和描述性。
之前舉的例子都是二元分類的,要麼1要麼0,下面看多分類的,我們很容易想到可以用獨熱編碼解決這個問題,把所有分類二元化,但是這樣就存在一個問題,有的屬性值可能會不夠頻繁,沒辦法成為頻繁項集。
所以最好是把多分類的項根據實際情況進行分類化,不要針對每個屬性都設置獨熱編碼。
或者將不太頻繁的屬性值合並為一個稱作其他的類別。
所以面對多分類屬性,我們要做的就是:
獨熱編碼二元化-針對這些值進行一定的合並,或者分類或者並為其他 - 刪除冗餘的項 - 避免包含多個來自同一屬性的項的候選集(例如{ },被寫到了一個候選集中,但是實際上這種情況不可能發生,由於獨熱編碼進行的二元化而產生了這種情況,需要避免。)
我們也會遇到一些連續屬性,可以通過以下幾種方式處理:
這種做法有一個問題就是分類的效果取決於區間的個數和跨度,如果取不好很難得到理想的結果。
如果要驗證統計出的值是否具有統計意義,可以參考假設檢驗中針對不同比較的不同公式,這里不再舉例。
把mini-Apriori演算法中的支持度代入到Apriori演算法的支持度中即可。
舉個例子:
想要衡量模型的好與壞,肯定要有一個評估指標,我們可以根據業務實際去評價,這是主管評價,叫做 主觀興趣度度量 ,這個顯然要結合業務,所以我們要看看一些客觀指標。
指標的評價往往依賴於相依表,這個相依表有點類似於混淆矩陣:
其中A,B代表在事務中出現,!A,!B代表沒有在事務中出現,空列空行例如 代表A的支持度計數, 表示包含B但是不包含A的事務的個數。
最基本的就是置信度和支持度了,但是這兩種指標都很難做到客觀評價模型,會受到多種因素的影響。
我們可以用 興趣因子 來衡量模型:
首先我們引入 提升度 的概念,它用於計算規則置信度和 規則後件 中項集的支持度之間的比率,
對於二元變數,提升度等價於另一種稱作興趣因子的客觀度量,定義為:
其中N是事務個數。
如果
但是興趣因子有一定局限性,看上圖,{p,q}和{r,s}的興趣因子分別為1.02和4.08,雖然p和q同時出現在88%的文檔中,但是他們的興趣因子接近於1,表明他們相互獨立,另一方面,{r,s}的興趣因子閉{p,q}的高,但是r和s很少出現在一個文檔中,這種情況下,置信度要比興趣因子更可信,置信度表明p和q之間的聯系94.6%遠高於r和s之間。
另外還可以引入 相關系數 ,邏輯類似於向量的相關系數:
相關度的值從-1到1,如果變數相互獨立,則Φ=0。
他的局限性在於在食物中把同時出現和同時不出現視為同等重要,這往往不符合實際規律,同時對於傾斜的變數很難度量。
IS度量 可以用於處理非對稱二元變數,定義如下:
IS數學上等價於二元變數的餘弦度量。
但是IS取決於A和B的支持度,所以存在與置信度度量類似的問題——即使是不相關或者負相關的模式,度量值也可能相當大。
支持度,全置信度,可以應用於較大的項集,興趣因子,IS、PS、Jaccard系數等使用多維相依表中的頻率,可以擴展到多個變數。
針對大多數項具有較低或中等的頻率,但是少數項具有很高頻率的數據集。
交叉支持模式是一個項集 ,他的支持度比率是:
小於用戶指定的閾值 。
需要保證全置信度小於上面的支持度比率,而全置信度是:
其中 .
全置信度能夠確保項集中的項之間是強關聯的,例如,假定一個項集X的全置信度是80%,如果X中的一個項出現在某個事物中,則X中其他的項至少也有80%的幾率屬於同一個事務,這種強關聯模式又稱 超團模式 。
⑥ 舉例說明何謂演算法,特點是什麼評價一個演算法的優劣,主要從哪些因素分析
評價演算法優劣的四個分析因素:
1.正確性
能正確地實現預定的功能,滿足具體問題的需要。處理數據使用的演算法是否得當,能不能得到預想的結果。
2.易讀性
易於閱讀、理解和交流,便於調試、修改和擴充。寫出的演算法,能不能讓別人看明白,能不能讓別人明白演算法的邏輯?如果通俗易懂,在系統調試和修改或者功能擴充的時候,使系統維護更為便捷。
3.健壯性
輸入非法數據,演算法也能適當地做出反應後進行處理,不會產生預料不到的運行結果。數據的形式多種多樣,演算法可能面臨著接受各種各樣的數據,當演算法接收到不適合演算法處理的數據,演算法本身該如何處理呢?如果演算法能夠處理異常數據,處理能力越強,健壯性越好。
4.時空性
演算法的時空性是該演算法的時間性能和空間性能。主要是說演算法在執行過程中的時間長短和空間佔用多少問題。
演算法處理數據過程中,不同的演算法耗費的時間和內存空間是不同的。
(6)演算法的優點關聯分析擴展閱讀:
演算法是對特定問題求解步驟的一種描述,它是指令的有限序列,其中每一條指令表示一個或多個操作。此外,一個演算法還具有下列5個重要的特性。
(1)、有窮性
一個演算法必須總是(對任何合法的輸入值)在執行有窮步之後結束,且每一步都可在有窮時間內完成。
(2)、確定性
演算法中每一條指令必須有明確的含義,讀者理解時不會產生二義性。即對於相同的輸入只能得到相同的輸出。
(3)、可行性
一個演算法是可行的,即演算法中描述的操作都是可以通過已經實現的基本運算執行有限次來實現的。
(4)、輸入
一個演算法有零個或多個的輸入,這些輸入取自於某個特定的對象的集合。
(5)、輸出
一個演算法有一個或多個的輸出,這些輸出是同輸入有著某種特定關系的量。
⑦ 最小二乘法、回歸分析法、灰色預測法、決策論、神經網路等5個演算法的使用范圍及優缺點是什麼
最小二乘法:通過最小化誤差的平方和尋找數據的最佳函數匹配。利用最小二乘法可以簡便地求得未知的數據,並使得這些求得的數據與實際數據之間誤差的平方和為最小。最小二乘法還可用於曲線擬合。其他一些優化問題也可通過最小化能量或最大化熵用最小二乘法來表達。優點:實現簡單,計算簡單。缺點:不能擬合非線性數據.
回歸分析法:指的是確定兩種或兩種以上變數間相互依賴的定量關系的一種統計分析方法。在大數據分析中,回歸分析是一種預測性的建模技術,它研究的是因變數(目標)和自變數(預測器)之間的關系。這種技術通常用於預測分析,時間序列模型以及發現變數之間的因果關系。優點:在分析多因素模型時,更加簡單和方便,不僅可以預測並求出函數,還可以自己對結果進行殘差的檢驗,檢驗模型的精度。缺點:回歸方程式只是一種推測,這影響了因子的多樣性和某些因子的不可測性,使得回歸分析在某些情況下受到限制。
灰色預測法:
色預測法是一種對含有不確定因素的系統進行預測的方法 。它通過鑒別系統因素之間發展趨勢的相異程度,即進行關聯分析,並對原始數據進行生成處理來尋找系統變動的規律,生成有較強規律性的數據序列,然後建立相應的微分方程模型,從而預測事物未來發展趨勢的狀況。它用等時間距離觀測到的反應預測對象特徵的一系列數量值構造灰色預測模型,預測未來某一時刻的特徵量,或者達到某一特徵量的時間。優點:對於不確定因素的復雜系統預測效果較好,且所需樣本數據較小。缺點:基於指數率的預測沒有考慮系統的隨機性,中長期預測精度較差。
決策樹:在已知各種情況發生概率的基礎上,通過構成決策樹來求取凈現值的期望值大於等於零的概率,評價項目風險,判斷其可行性的決策分析方法,是直觀運用概率分析的一種圖解法。由於這種決策分支畫成圖形很像一棵樹的枝幹,故稱決策樹。在機器學習中,決策樹是一個預測模型,他代表的是對象屬性與對象值之間的一種映射關系。優點:能夠處理不相關的特徵;在相對短的時間內能夠對大型數據源做出可行且效果良好的分析;計算簡單,易於理解,可解釋性強;比較適合處理有缺失屬性的樣本。缺點:忽略了數據之間的相關性;容易發生過擬合(隨機森林可以很大程度上減少過擬合);在決策樹當中,對於各類別樣本數量不一致的數據,信息增益的結果偏向於那些具有更多數值的特徵。
神經網路:優點:分類的准確度高;並行分布處理能力強,分布存儲及學習能力強,對雜訊神經有較強的魯棒性和容錯能力,能充分逼近復雜的非線性關系;具備聯想記憶的功能。缺點:神經網路需要大量的參數,如網路拓撲結構、權值和閾值的初始值;不能觀察之間的學習過程,輸出結果難以解釋,會影響到結果的可信度和可接受程度;學習時間過長,甚至可能達不到學習的目的。
⑧ 最大最小距離演算法的優缺點
該演算法的優缺點如下:
1、最大最小距離演算法的優點是演算法實現簡單,處理大數據集的能力較強。
2、缺點是最大最小御鋒攔距離演算法對噪音數據敏感,在存在噪音數據的情況下,聚類中基圓心可能偏移真正的類別中心較遠。
最大最小距離又稱基於路徑的距離,由Fischer首先應用於聚類中。由於簇是由它們的凝聚性定義的,所以人們更關注穿過高密度區域數據對象的路徑。因此,路徑中密度最低的部分應該決定該路徑的總體成本。換句話說,沿著一條路徑的最大不同決定了它的代價。最大最小距離是鎮胡一種度量,它包含了一個數據集的基礎全局幾何。
⑨ Arnoldi演算法的優缺點
1.優點:適合稀疏數據集。演算法原理簡單,易實現。適合事務資料庫的關聯規則挖掘。2.缺點:可能產生龐大的候選集。演算法需多次遍歷數據集,演算法效率低,耗時。
Apriori演算法是第一個關聯規則挖掘演算法,也是最經典的演算法。它利用逐層搜索的迭代方法找出資料庫中項集的關系,以形成規則,其過程由連接(類矩陣運算)與剪枝(去掉那些沒必要的中間結果)組成。該演算法中項集的概念即為項的集合。包含K個項的集合為k項集。項集出現的頻率是包含項集的事務數,稱為項集的頻率。如果某項集滿足最小支持度,則稱它為頻繁項集。
⑩ 第九章 數據關聯規則分析演算法——基於Apriori演算法的關聯項分析
9.1 基於Apriori演算法的關聯分析
Aprior演算法是關聯規則分析中較為經典的頻繁項集演算法。關聯規則反映的是兩個或多個事物相互之間的依存性和關聯性。如果兩個或者多個事物相互之間存在一定的關聯關系,則它們之間存在一種關聯規則使得它們之間可以進行搭配。
9.1.1 基本概要
Apriori演算法利用頻繁項集的先驗知識,不斷地按照層次進行迭代,計算數據集中的所有可能的頻繁項集,它的分析主要包括兩個核心部分。
1、根據支持度找出頻繁項集;
2、根據置信度產生關聯規則。
9.1.2 Apriori演算法原理
基本流程:
1、掃描歷史數據,並對每項數據進行頻率次數統計。
2、構建候選集 ,並計算其支持度,即數據出現頻率次數與總數的比。
3、對候選項集進行篩選,篩選的數據項支持度應當不小於最小支持度,從而形成頻繁項集 .
4、對頻繁項集 進行連接生成候選集 ,重復上述步驟,最終形成頻繁K項集或者最大頻繁項集。
Apriori演算法存在兩大定理:
1、如果一個集合是頻繁項集,那麼它的所有子集都是頻繁集合。
2、如果一個集合它不是頻繁集合,那麼它的所有超集都不是頻繁項集。
9.1.3 Apriori演算法優缺點
優:運算過程非常簡單,理論方法也比較容易理解,對數據特徵的要求也相對較低。
缺:
1、產生候選集是產生較多的組合,沒有考慮將一些無關的元素排除後再進行組合。
2、每次計算項集的過程中都會掃描元素的數據表。
針對不足推出不斷改進的Apriori演算法:
1、將數據表(事務表)進行壓縮。
2、利用哈希表的快速查找特性對項集進行計數統計。
3、合理選樣。