① 誰有金融數據挖掘,關聯規則分析與挖掘的一些介紹啊
雨林演算法的數據結構:
AVC-set:節點n包含的所有紀錄在某個屬性上的投影,其中該AVC-set包括了屬性的不同值在每個類別上的計數。
AVC-group:一個節點n上所有的AVC -set的集合
AVC-set的所佔內存的大小正比於對應屬性的不同值個數,AVC-group並不是資料庫信息的簡單的壓縮,它只是提供了建立決策樹需要的信息, AVC-group所佔用的內存空間遠遠小於資料庫所實際佔用的空間。
一般設計方案:
AVC_set
{
//存儲屬性的各個值
DistinctValue[]
//存儲屬性各個值在某個類上對應的計數
DistinctValueCountForClassA[]
DistinctValueCountForClassB[]
… …
}
AVC_group
{
//節點n中的每個屬性的avc_set
AVC_set[]
}
自頂向下決策樹演算法
BuildTree(Node m,datapatition D,algorithm decisionTree)
對D使用決策樹演算法decisionTree得到分裂指標crit(n)
令k為節點n的子節點個數
if(k>0)
建立n的k個子節點c1,…,ck
使用最佳分割將D分裂為D1,…,Dk
for(i=1;i<=k;i++)
BuildTree(ci,Di)
endfor
endif
RainForest 演算法框架重新定義的部分:
1a) for 每一個屬性的謂詞p,尋找最佳的分割
1b) decisionTree.find_best_partitioning(AVC-set of p)
1c) endfor
2a) k= decisionTree.decide_splitting_criterion();//決定最終的分割
雨林演算法的常規過程:
建立節點的AVC-group
(通過讀取整個原始資料庫或者某個分支的資料庫表或文件)
選擇分裂屬性和分裂標准:取決於使用雨林演算法框架的具體演算法,通過逐一檢查AVC-set來選擇。
將數據分解到各個子節點:必須讀取整個數據集(資料庫或文件),將各條數據分解到各個子節點中,此時如果有足夠的內存,我們將建立一個或多個子節點的AVC-group
參考資料:李岱 rainforest.ppt 什麼是數據挖掘
數據挖掘(Data Mining),又稱為資料庫中的知識發現(Knowledge Discovery in Database, KDD),就是從大量數據中獲取有效的、新穎的、潛在有用的、最終可理解的模式的非平凡過程,簡單的說,數據挖掘就是從大量數據中提取或「挖掘」知識。
並非所有的信息發現任務都被視為數據挖掘。例如,使用資料庫管理系統查找個別的記錄,或通過網際網路的搜索引擎查找特定的Web頁面,則是信息檢索(information retrieval)領域的任務。雖然這些任務是重要的,可能涉及使用復雜的演算法和數據結構,但是它們主要依賴傳統的計算機科學技術和數據的明顯特徵來創建索引結構,從而有效地組織和檢索信息。盡管如此,數據挖掘技術也已用來增強信息檢索系統的能力。
編輯本段數據挖掘的起源
為迎接前一節中的這些挑戰,來自不同學科的研究者匯集到一起,開始著手開發可以處理不同數據類型的更有效的、可伸縮的工具。這些工作建立在研究者先前使用的方法學和演算法之上,在數據挖掘領域達到高潮。特別地是,數據挖掘利用了來自如下一些領域的思想:(1) 來自統計學的抽樣、估計和假設檢驗,(2) 人工智慧、模式識別和機器學習的搜索演算法、建模技術和學習理論。數據挖掘也迅速地接納了來自其他領域的思想,這些領域包括最優化、進化計算、資訊理論、信號處理、可視化和信息檢索。
一些其他領域也起到重要的支撐作用。特別地,需要資料庫系統提供有效的存儲、索引和查詢處理支持。源於高性能(並行)計算的技術在處理海量數據集方面常常是重要的。分布式技術也能幫助處理海量數據,並且當數據不能集中到一起處理時更是至關重要。
編輯本段數據挖掘能做什麼
1)數據挖掘能做以下六種不同事情(分析方法):
· 分類 (Classification)
· 估值(Estimation)
· 預言(Prediction)
· 相關性分組或關聯規則(Affinity grouping or association rules)
· 聚集(Clustering)
· 描述和可視化(Des cription and Visualization)
· 復雜數據類型挖掘(Text, Web ,圖形圖像,視頻,音頻等)
2)數據挖掘分類
以上六種數據挖掘的分析方法可以分為兩類:直接數據挖掘;間接數據挖掘
· 直接數據挖掘
目標是利用可用的數據建立一個模型,這個模型對剩餘的數據,對一個特定的變數(可以理解成資料庫中表的屬性,即列)進行描述。
· 間接數據挖掘
目標中沒有選出某一具體的變數,用模型進行描述;而是在所有的變數中建立起某種關系 。
· 分類、估值、預言屬於直接數據挖掘;後三種屬於間接數據挖掘
3)各種分析方法的簡介
· 分類 (Classification)
首先從數據中選出已經分好類的訓練集,在該訓練集上運用數據挖掘分類的技術,建立分類模型,對於沒有分類的數據進行分類。
例子:
a. 信用卡申請者,分類為低、中、高風險
b. 分配客戶到預先定義的客戶分片
注意: 類的個數是確定的,預先定義好的
· 估值(Estimation)
估值與分類類似,不同之處在於,分類描述的是離散型變數的輸出,而估值處理連續值的輸出;分類的類別是確定數目的,估值的量是不確定的。
例子:
a. 根據購買模式,估計一個家庭的孩子個數
b. 根據購買模式,估計一個家庭的收入
c. 估計real estate的價值
一般來說,估值可以作為分類的前一步工作。給定一些輸入數據,通過估值,得到未知的連續變數的值,然後,根據預先設定的閾值,進行分類。例如:銀行對家庭貸款業務,運用估值,給各個客戶記分(Score 0~1)。然後,根據閾值,將貸款級別分類。
· 預言(Prediction)
通常,預言是通過分類或估值起作用的,也就是說,通過分類或估值得出模型,該模型用於對未知變數的預言。從這種意義上說,預言其實沒有必要分為一個單獨的類。預言其目的是對未來未知變數的預測,這種預測是需要時間來驗證的,即必須經過一定時間後,才知道預言准確性是多少。
· 相關性分組或關聯規則(Affinity grouping or association rules)
決定哪些事情將一起發生。
例子:
a. 超市中客戶在購買A的同時,經常會購買B,即A => B(關聯規則)
b. 客戶在購買A後,隔一段時間,會購買B (序列分析)
· 聚集(Clustering)
聚集是對記錄分組,把相似的記錄在一個聚集里。聚集和分類的區別是聚集不依賴於預先定義好的類,不需要訓練集。
例子:
a. 一些特定症狀的聚集可能預示了一個特定的疾病
b. 租VCD類型不相似的客戶聚集,可能暗示成員屬於不同的亞文化群
聚集通常作為數據挖掘的第一步。例如,"哪一種類的促銷對客戶響應最好?",對於這一 類問題,首先對整個客戶做聚集,將客戶分組在各自的聚集里,然後對每個不同的聚集,回答問題,可能效果更好。
· 描述和可視化(Des cription and Visualization)
是對數據挖掘結果的表示方式。
編輯本段數據挖掘中的關聯規則上面演算法講的很清楚了,我來舉個例子:
Training data:
Id age income class
1 young 65 G
2 young 15 B
3 young 75 G
4 senior 40 B
5 senior 100 G
6 senior 60 G
AVC set „age「 for N1:
value class count
young B 1
young G 2
senior B 1
senior G 2
AVC set „income「 for N1:
value class count
15 B 1
40 B 1
60 G 1
65 G 1
75 G 1
100 G 1
AVC set „income「 for N2:
value class count
15 B 1
65 G 1
75 G 1
AVC set „age「 for N2:
value class count
young B 1
young G 2
最後推出雨林: N1
age=young / \ age=senior
/ \
N2 N3
最後提醒一點,對於雨林演算法,訓練樣本集不要大於3百萬。否則改用SPRINT。
1.什麼是關聯規則
在描述有關關聯規則的一些細節之前,我們先來看一個有趣的故事: "尿布與啤酒"的故事。
在一家超市裡,有一個有趣的現象:尿布和啤酒赫然擺在一起出售。但是這個奇怪的舉措卻使尿布和啤酒的銷量雙雙增加了。這不是一個笑話,而是發生在美國沃爾瑪連鎖店超市的真實案例,並一直為商家所津津樂道。沃爾瑪擁有世界上最大的數據倉庫系統,為了能夠准確了解顧客在其門店的購買習慣,沃爾瑪對其顧客的購物行為進行購物籃分析,想知道顧客經常一起購買的商品有哪些。沃爾瑪數據倉庫里集中了其各門店的詳細原始交易數據。在這些原始交易數據的基礎上,沃爾瑪利用數據挖掘方法對這些數據進行分析和挖掘。一個意外的發現是:"跟尿布一起購買最多的商品竟是啤酒!經過大量實際調查和分析,揭示了一個隱藏在"尿布與啤酒"背後的美國人的一種行為模式:在美國,一些年輕的父親下班後經常要到超市去買嬰兒尿布,而他們中有30%~40%的人同時也為自己買一些啤酒。產生這一現象的原因是:美國的太太們常叮囑她們的丈夫下班後為小孩買尿布,而丈夫們在買尿布後又隨手帶回了他們喜歡的啤酒。
按常規思維,尿布與啤酒風馬牛不相及,若不是藉助數據挖掘技術對大量交易數據進行挖掘分析,沃爾瑪是不可能發現數據內在這一有價值的規律的。
數據關聯是資料庫中存在的一類重要的可被發現的知識。若兩個或多個變數的取值之間存在某種規律性,就稱為關聯。關聯可分為簡單關聯、時序關聯、因果關聯。關聯分析的目的是找出資料庫中隱藏的關聯網。有時並不知道資料庫中數據的關聯函數,即使知道也是不確定的,因此關聯分析生成的規則帶有可信度。關聯規則挖掘發現大量數據中項集之間有趣的關聯或相關聯系。Agrawal等於1993年首先提出了挖掘顧客交易資料庫中項集間的關聯規則問題,以後諸多的研究人員對關聯規則的挖掘問題進行了大量的研究。他們的工作包括對原有的演算法進行優化,如引入隨機采樣、並行的思想等,以提高演算法挖掘規則的效率;對關聯規則的應用進行推廣。關聯規則挖掘在數據挖掘中是一個重要的課題,最近幾年已被業界所廣泛研究。
2.關聯規則挖掘過程、分類及其相關演算法
2.1關聯規則挖掘的過程
關聯規則挖掘過程主要包含兩個階段:第一階段必須先從資料集合中找出所有的高頻項目組(Frequent Itemsets),第二階段再由這些高頻項目組中產生關聯規則(Association Rules)。
關聯規則挖掘的第一階段必須從原始資料集合中,找出所有高頻項目組(Large Itemsets)。高頻的意思是指某一項目組出現的頻率相對於所有記錄而言,必須達到某一水平。一項目組出現的頻率稱為支持度(Support),以一個包含A與B兩個項目的2-itemset為例,我們可以經由公式(1)求得包含{A,B}項目組的支持度,若支持度大於等於所設定的最小支持度(Minimum Support)門檻值時,則{A,B}稱為高頻項目組。一個滿足最小支持度的k-itemset,則稱為高頻k-項目組(Frequent k-itemset),一般表示為Large k或Frequent k。演算法並從Large k的項目組中再產生Large k+1,直到無法再找到更長的高頻項目組為止。
關聯規則挖掘的第二階段是要產生關聯規則(Association Rules)。從高頻項目組產生關聯規則,是利用前一步驟的高頻k-項目組來產生規則,在最小信賴度(Minimum Confidence)的條件門檻下,若一規則所求得的信賴度滿足最小信賴度,稱此規則為關聯規則。例如:經由高頻k-項目組{A,B}所產生的規則AB,其信賴度可經由公式(2)求得,若信賴度大於等於最小信賴度,則稱AB為關聯規則。
就沃爾馬案例而言,使用關聯規則挖掘技術,對交易資料庫中的紀錄進行資料挖掘,首先必須要設定最小支持度與最小信賴度兩個門檻值,在此假設最小支持度min_support=5% 且最小信賴度min_confidence=70%。因此符合此該超市需求的關聯規則將必須同時滿足以上兩個條件。若經過挖掘過程所找到的關聯規則「尿布,啤酒」,滿足下列條件,將可接受「尿布,啤酒」的關聯規則。用公式可以描述Support(尿布,啤酒)>=5%且Confidence(尿布,啤酒)>=70%。其中,Support(尿布,啤酒)>=5%於此應用範例中的意義為:在所有的交易紀錄資料中,至少有5%的交易呈現尿布與啤酒這兩項商品被同時購買的交易行為。Confidence(尿布,啤酒)>=70%於此應用範例中的意義為:在所有包含尿布的交易紀錄資料中,至少有70%的交易會同時購買啤酒。因此,今後若有某消費者出現購買尿布的行為,超市將可推薦該消費者同時購買啤酒。這個商品推薦的行為則是根據「尿布,啤酒」關聯規則,因為就該超市過去的交易紀錄而言,支持了「大部份購買尿布的交易,會同時購買啤酒」的消費行為。
從上面的介紹還可以看出,關聯規則挖掘通常比較適用與記錄中的指標取離散值的情況。如果原始資料庫中的指標值是取連續的數據,則在關聯規則挖掘之前應該進行適當的數據離散化(實際上就是將某個區間的值對應於某個值),數據的離散化是數據挖掘前的重要環節,離散化的過程是否合理將直接影響關聯規則的挖掘結果。
2.2關聯規則的分類
按照不同情況,關聯規則可以進行分類如下:
1.基於規則中處理的變數的類別,關聯規則可以分為布爾型和數值型。
布爾型關聯規則處理的值都是離散的、種類化的,它顯示了這些變數之間的關系;而數值型關聯規則可以和多維關聯或多層關聯規則結合起來,對數值型欄位進行處理,將其進行動態的分割,或者直接對原始的數據進行處理,當然數值型關聯規則中也可以包含種類變數。例如:性別=「女」=>職業=「秘書」 ,是布爾型關聯規則;性別=「女」=>avg(收入)=2300,涉及的收入是數值類型,所以是一個數值型關聯規則。
2.基於規則中數據的抽象層次,可以分為單層關聯規則和多層關聯規則。
在單層的關聯規則中,所有的變數都沒有考慮到現實的數據是具有多個不同的層次的;而在多層的關聯規則中,對數據的多層性已經進行了充分的考慮。例如:IBM台式機=>Sony列印機,是一個細節數據上的單層關聯規則;台式機=>Sony列印機,是一個較高層次和細節層次之間的多層關聯規則。
3.基於規則中涉及到的數據的維數,關聯規則可以分為單維的和多維的。
在單維的關聯規則中,我們只涉及到數據的一個維,如用戶購買的物品;而在多維的關聯規則中,要處理的數據將會涉及多個維。換成另一句話,單維關聯規則是處理單個屬性中的一些關系;多維關聯規則是處理各個屬性之間的某些關系。例如:啤酒=>尿布,這條規則只涉及到用戶的購買的物品;性別=「女」=>職業=「秘書」,這條規則就涉及到兩個欄位的信息,是兩個維上的一條關聯規則。
2.3關聯規則挖掘的相關演算法
1.Apriori演算法:使用候選項集找頻繁項集
Apriori演算法是一種最有影響的挖掘布爾關聯規則頻繁項集的演算法。其核心是基於兩階段頻集思想的遞推演算法。該關聯規則在分類上屬於單維、單層、布爾關聯規則。在這里,所有支持度大於最小支持度的項集稱為頻繁項集,簡稱頻集。
該演算法的基本思想是:首先找出所有的頻集,這些項集出現的頻繁性至少和預定義的最小支持度一樣。然後由頻集產生強關聯規則,這些規則必須滿足最小支持度和最小可信度。然後使用第1步找到的頻集產生期望的規則,產生只包含集合的項的所有規則,其中每一條規則的右部只有一項,這里採用的是中規則的定義。一旦這些規則被生成,那麼只有那些大於用戶給定的最小可信度的規則才被留下來。為了生成所有頻集,使用了遞推的方法。
可能產生大量的候選集,以及可能需要重復掃描資料庫,是Apriori演算法的兩大缺點。
2.基於劃分的演算法
Savasere等設計了一個基於劃分的演算法。這個演算法先把資料庫從邏輯上分成幾個互不相交的塊,每次單獨考慮一個分塊並對它生成所有的頻集,然後把產生的頻集合並,用來生成所有可能的頻集,最後計算這些項集的支持度。這里分塊的大小選擇要使得每個分塊可以被放入主存,每個階段只需被掃描一次。而演算法的正確性是由每一個可能的頻集至少在某一個分塊中是頻集保證的。該演算法是可以高度並行的,可以把每一分塊分別分配給某一個處理器生成頻集。產生頻集的每一個循環結束後,處理器之間進行通信來產生全局的候選k-項集。通常這里的通信過程是演算法執行時間的主要瓶頸;而另一方面,每個獨立的處理器生成頻集的時間也是一個瓶頸。
3.FP-樹頻集演算法
針對Apriori演算法的固有缺陷,J. Han等提出了不產生候選挖掘頻繁項集的方法:FP-樹頻集演算法。採用分而治之的策略,在經過第一遍掃描之後,把資料庫中的頻集壓縮進一棵頻繁模式樹(FP-tree),同時依然保留其中的關聯信息,隨後再將FP-tree分化成一些條件庫,每個庫和一個長度為1的頻集相關,然後再對這些條件庫分別進行挖掘。當原始數據量很大的時候,也可以結合劃分的方法,使得一個FP-tree可以放入主存中。實驗表明,FP-growth對不同長度的規則都有很好的適應性,同時在效率上較之Apriori演算法有巨大的提高。
3.該領域在國內外的應用
3.1關聯規則發掘技術在國內外的應用
就目前而言,關聯規則挖掘技術已經被廣泛應用在西方金融行業企業中,它可以成功預測銀行客戶需求。一旦獲得了這些信息,銀行就可以改善自身營銷。現在銀行天天都在開發新的溝通客戶的方法。各銀行在自己的ATM機上就捆綁了顧客可能感興趣的本行產品信息,供使用本行ATM機的用戶了解。如果資料庫中顯示,某個高信用限額的客戶更換了地址,這個客戶很有可能新近購買了一棟更大的住宅,因此會有可能需要更高信用限額,更高端的新信用卡,或者需要一個住房改善貸款,這些產品都可以通過信用卡賬單郵寄給客戶。當客戶打電話咨詢的時候,資料庫可以有力地幫助電話銷售代表。銷售代表的電腦屏幕上可以顯示出客戶的特點,同時也可以顯示出顧客會對什麼產品感興趣。
同時,一些知名的電子商務站點也從強大的關聯規則挖掘中的受益。這些電子購物網站使用關聯規則中規則進行挖掘,然後設置用戶有意要一起購買的捆綁包。也有一些購物網站使用它們設置相應的交叉銷售,也就是購買某種商品的顧客會看到相關的另外一種商品的廣告。
但是目前在我國,「數據海量,信息缺乏」是商業銀行在數據大集中之後普遍所面對的尷尬。目前金融業實施的大多數資料庫只能實現數據的錄入、查詢、統計等較低層次的功能,卻無法發現數據中存在的各種有用的信息,譬如對這些數據進行分析,發現其數據模式及特徵,然後可能發現某個客戶、消費群體或組織的金融和商業興趣,並可觀察金融市場的變化趨勢。可以說,關聯規則挖掘的技術在我國的研究與應用並不是很廣泛深入。
3.2近年來關聯規則發掘技術的一些研究
由於許多應用問題往往比超市購買問題更復雜,大量研究從不同的角度對關聯規則做了擴展,將更多的因素集成到關聯規則挖掘方法之中,以此豐富關聯規則的應用領域,拓寬支持管理決策的范圍。如考慮屬性之間的類別層次關系,時態關系,多表挖掘等。近年來圍繞關聯規則的研究主要集中於兩個方面,即擴展經典關聯規則能夠解決問題的范圍,改善經典關聯規則挖掘演算法效率和規則興趣性。
編輯本段數據挖掘技術實現
在技術上可以根據它的工作過程分為:數據的抽取、數據的存儲和管理、數據的展現等關鍵技術。
·數據的抽取
數據的抽取是數據進入倉庫的入口。由於數據倉庫是一個獨立的數據環境,它需要通過抽取過程將數據從聯機事務處理系統、外部數據源、離線的數據存儲介質中導入數據倉庫。數據抽取在技術上主要涉及互連、復制、增量、轉換、調度和監控等幾個方面的處理。在數據抽取方面,未來的技術發展將集中在系統功能集成化方面,以適應數據倉庫本身或數據源的變化,使系統更便於管理和維護。
·數據的存儲和管理
數據倉庫的組織管理方式決定了它有別於傳統資料庫的特性,也決定了其對外部數據的表現形式。數據倉庫管理所涉及的數據量比傳統事務處理大得多,且隨時間的推移而快速累積。在數據倉庫的數據存儲和管理中需要解決的是如何管理大量的數據、如何並行處理大量的數據、如何優化查詢等。目前,許多資料庫廠家提供的技術解決方案是擴展關系型資料庫的功能,將普通關系資料庫改造成適合擔當數據倉庫的伺服器。
·數據的展現
在數據展現方面主要的方式有:
查詢:實現預定義查詢、動態查詢、OLAP查詢與決策支持智能查詢;報表:產生關系數據表格、復雜表格、OLAP表格、報告以及各種綜合報表;可視化:用易於理解的點線圖、直方圖、餅圖、網狀圖、互動式可視化、動態模擬、計算機動畫技術表現復雜數據及其相互關系;統計:進行平均值、最大值、最小值、期望、方差、匯總、排序等各種統計分析;挖掘:利用數據挖掘等方法,從數據中得到關於數據關系和模式的知識。
編輯本段數據挖掘與數據倉庫融合發展
數據挖掘和數據倉庫的協同工作,一方面,可以迎合和簡化數據挖掘過程中的重要步驟,提高數據挖掘的效率和能力,確保數據挖掘中數據來源的廣泛性和完整性。另一方面,數據挖掘技術已經成為數據倉庫應用中極為重要和相對獨立的方面和工具。
數據挖掘和數據倉庫是融合與互動發展的,其學術研究價值和應用研究前景將是令人振奮的。它是數據挖掘專家、數據倉庫技術人員和行業專家共同努力的成果,更是廣大渴望從資料庫「奴隸」到資料庫「主人」轉變的企業最終用戶的通途。
統計學與數據挖掘
統計學和數據挖掘有著共同的目標:發現數據中的結構。事實上,由於它們的目標相似,一些人(尤其是統計學家)認為數據挖掘是統計學的分支。這是一個不切合實際的看法。因為數據挖掘還應用了其它領域的思想、工具和方法,尤其是計算機學科,例如資料庫技術和機器學習,而且它所關注的某些領域和統計學家所關注的有很大不同。
1.統計學的性質
試圖為統計學下一個太寬泛的定義是沒有意義的。盡管可能做到,但會引來很多異議。相反,我要關注統計學不同於數據挖掘的特性。
差異之一同上節中最後一段提到的相關,即統計學是一門比較保守的學科,目前有一種趨勢是越來越精確。當然,這本身並不是壞事,只有越精確才能避免錯誤,發現真理。但是如果過度的話則是有害的。這個保守的觀點源於統計學是數學的分支這樣一個看法,我是不同意這個觀點的,盡管統計學確實以數學為基礎(正如物理和工程也以數學為基礎,但沒有被認為是數學的分支),但它同其它學科還有緊密的聯系。
數學背景和追求精確加強了這樣一個趨勢:在採用一個方法之前先要證明,而不是象計算機 這
② Arnoldi演算法的優缺點
1.優點:適合稀疏數據集。演算法原理簡單,易實現。適合事務資料庫的關聯規則挖掘。2.缺點:可能產生龐大的候選集。演算法需多次遍歷數據集,演算法效率低,耗時。
Apriori演算法是第一個關聯規則挖掘演算法,也是最經典的演算法。它利用逐層搜索的迭代方法找出資料庫中項集的關系,以形成規則,其過程由連接(類矩陣運算)與剪枝(去掉那些沒必要的中間結果)組成。該演算法中項集的概念即為項的集合。包含K個項的集合為k項集。項集出現的頻率是包含項集的事務數,稱為項集的頻率。如果某項集滿足最小支持度,則稱它為頻繁項集。
③ 最小二乘法、回歸分析法、灰色預測法、決策論、神經網路等5個演算法的使用范圍及優缺點是什麼
最小二乘法:通過最小化誤差的平方和尋找數據的最佳函數匹配。利用最小二乘法可以簡便地求得未知的數據,並使得這些求得的數據與實際數據之間誤差的平方和為最小。最小二乘法還可用於曲線擬合。其他一些優化問題也可通過最小化能量或最大化熵用最小二乘法來表達。優點:實現簡單,計算簡單。缺點:不能擬合非線性數據.
回歸分析法:指的是確定兩種或兩種以上變數間相互依賴的定量關系的一種統計分析方法。在大數據分析中,回歸分析是一種預測性的建模技術,它研究的是因變數(目標)和自變數(預測器)之間的關系。這種技術通常用於預測分析,時間序列模型以及發現變數之間的因果關系。優點:在分析多因素模型時,更加簡單和方便,不僅可以預測並求出函數,還可以自己對結果進行殘差的檢驗,檢驗模型的精度。缺點:回歸方程式只是一種推測,這影響了因子的多樣性和某些因子的不可測性,使得回歸分析在某些情況下受到限制。
灰色預測法:
色預測法是一種對含有不確定因素的系統進行預測的方法 。它通過鑒別系統因素之間發展趨勢的相異程度,即進行關聯分析,並對原始數據進行生成處理來尋找系統變動的規律,生成有較強規律性的數據序列,然後建立相應的微分方程模型,從而預測事物未來發展趨勢的狀況。它用等時間距離觀測到的反應預測對象特徵的一系列數量值構造灰色預測模型,預測未來某一時刻的特徵量,或者達到某一特徵量的時間。優點:對於不確定因素的復雜系統預測效果較好,且所需樣本數據較小。缺點:基於指數率的預測沒有考慮系統的隨機性,中長期預測精度較差。
決策樹:在已知各種情況發生概率的基礎上,通過構成決策樹來求取凈現值的期望值大於等於零的概率,評價項目風險,判斷其可行性的決策分析方法,是直觀運用概率分析的一種圖解法。由於這種決策分支畫成圖形很像一棵樹的枝幹,故稱決策樹。在機器學習中,決策樹是一個預測模型,他代表的是對象屬性與對象值之間的一種映射關系。優點:能夠處理不相關的特徵;在相對短的時間內能夠對大型數據源做出可行且效果良好的分析;計算簡單,易於理解,可解釋性強;比較適合處理有缺失屬性的樣本。缺點:忽略了數據之間的相關性;容易發生過擬合(隨機森林可以很大程度上減少過擬合);在決策樹當中,對於各類別樣本數量不一致的數據,信息增益的結果偏向於那些具有更多數值的特徵。
神經網路:優點:分類的准確度高;並行分布處理能力強,分布存儲及學習能力強,對雜訊神經有較強的魯棒性和容錯能力,能充分逼近復雜的非線性關系;具備聯想記憶的功能。缺點:神經網路需要大量的參數,如網路拓撲結構、權值和閾值的初始值;不能觀察之間的學習過程,輸出結果難以解釋,會影響到結果的可信度和可接受程度;學習時間過長,甚至可能達不到學習的目的。
④ 基於規則的分詞系統和基於統計的分詞系統各有哪些優缺點
眾所周知,英文是以詞為單位的,詞和詞之間是靠空格隔開,而中文是以字為單位,句子中所有的字連起來才能描述一個意思。例如,英文句子I am a student,用中文則為:「我是一個學生」。計算機可以很簡單通過空格知道student是一個單詞,但是不能很容易明白「學」、「生」兩個字合起來才表示一個詞。把中文的漢字序列切分成有意義的詞,就是中文分詞,有些人也稱為切詞。我是一個學生,分詞的結果是:我 是 一個 學生。
中文分詞技術屬於自然語言處理技術范疇,對於一句話,人可以通過自己的知識來明白哪些是詞,哪些不是詞,但如何讓計算機也能理解?其處理過程就是分詞演算法。
現有的分詞演算法可分為三大類:基於字元串匹配的分詞方法、基於理解的分詞方法和基於統計的分詞方法。
1、基於字元串匹配的分詞方法
這種方法又叫做機械分詞方法,它是按照一定的策略將待分析的漢字串與一個「充分大的」機器詞典中的詞條進行配,若在詞典中找到某個字元串,則匹配成功(識別出一個詞)。按照掃描方向的不同,串匹配分詞方法可以分為正向匹配和逆向匹配;按照不同長度優先匹配的情況,可以分為最大(最長)匹配和最小(最短)匹配;按照是否與詞性標注過程相結合,又可以分為單純分詞方法和分詞與標注相結合的一體化方法。常用的幾種機械分詞方法如下:
1)正向最大匹配法(由左到右的方向);
2)逆向最大匹配法(由右到左的方向);
3)最少切分(使每一句中切出的詞數最小)。
還可以將上述各種方法相互組合,例如,可以將正向最大匹配方法和逆向最大匹配方法結合起來構成雙向匹配法。由於漢語單字成詞的特點,正向最小匹配和逆向最小匹配一般很少使用。一般說來,逆向匹配的切分精度略高於正向匹配,遇到的歧義現象也較少。統計結果表明,單純使用正向最大匹配的錯誤率為1/169,單純使用逆向最大匹配的錯誤率為1/245。但這種精度還遠遠不能滿足實際的需要。實際使用的分詞系統,都是把機械分詞作為一種初分手段,還需通過利用各種其它的語言信息來進一步提高切分的准確率。
一種方法是改進掃描方式,稱為特徵掃描或標志切分,優先在待分析字元串中識別和切分出一些帶有明顯特徵的詞,以這些詞作為斷點,可將原字元串分為較小的串再來進機械分詞,從而減少匹配的錯誤率。另一種方法是將分詞和詞類標注結合起來,利用豐富的詞類信息對分詞決策提供幫助,並且在標注過程中又反過來對分詞結果進行檢驗、調整,從而極大地提高切分的准確率。
對於機械分詞方法,可以建立一個一般的模型,在這方面有專業的學術論文,這里不做詳細論述。
2、基於理解的分詞方法
這種分詞方法是通過讓計算機模擬人對句子的理解,達到識別詞的效果。其基本思想就是在分詞的同時進行句法、語義分析,利用句法信息和語義信息來處理歧義現象。它通常包括三個部分:分詞子系統、句法語義子系統、總控部分。在總控部分的協調下,分詞子系統可以獲得有關詞、句子等的句法和語義信息來對分詞歧義進行判斷,即它模擬了人對句子的理解過程。這種分詞方法需要使用大量的語言知識和信息。由於漢語語言知識的籠統、復雜性,難以將各種語言信息組織成機器可直接讀取的形式,因此目前基於理解的分詞系統還處在試驗階段。
3、基於統計的分詞方法
從形式上看,詞是穩定的字的組合,因此在上下文中,相鄰的字同時出現的次數越多,就越有可能構成一個詞。因此字與字相鄰共現的頻率或概率能夠較好的反映成詞的可信度。可以對語料中相鄰共現的各個字的組合的頻度進行統計,計算它們的互現信息。定義兩個字的互現信息,計算兩個漢字X、Y的相鄰共現概率。互現信息體現了漢字之間結合關系的緊密程度。當緊密程度高於某一個閾值時,便可認為此字組可能構成了一個詞。這種方法只需對語料中的字組頻度進行統計,不需要切分詞典,因而又叫做無詞典分詞法或統計取詞方法。但這種方法也有一定的局限性,會經常抽出一些共現頻度高、但並不是詞的常用字組,例如「這一」、「之一」、「有的」、「我的」、「許多的」等,並且對常用詞的識別精度差,時空開銷大。實際應用的統計分詞系統都要使用一部基本的分詞詞典(常用詞詞典)進行串匹配分詞,同時使用統計方法識別一些新的詞,即將串頻統計和串匹配結合起來,既發揮匹配分詞切分速度快、效率高的特點,又利用了無詞典分詞結合上下文識別生詞、自動消除歧義的優點。
到底哪種分詞演算法的准確度更高,目前並無定論。對於任何一個成熟的分詞系統來說,不可能單獨依靠某一種演算法來實現,都需要綜合不同的演算法。筆者了解,海量科技的分詞演算法就採用「復方分詞法」,所謂復方,相當於用中葯中的復方概念,即用不同的葯才綜合起來去醫治疾病,同樣,對於中文詞的識別,需要多種演算法來處理不同的問題。
⑤ 關聯規則的經典演算法有哪些,各自的優缺點
決策樹 貝葉斯 人工神經網路 k-近鄰 支持向量機 基於關聯規則的分類 集成學習
⑥ 推薦系統的主要推薦方法
基於內容的推薦(Content-based Recommendation)是信息過濾技術的延續與發展,它是建立在項目的內容信息上作出推薦的,而不需要依據用戶對項目的評價意見,更多地需要用機 器學習的方法從關於內容的特徵描述的事例中得到用戶的興趣資料。在基於內容的推薦系統中,項目或對象是通過相關的特徵的屬性來定義,系統基於用戶評價對象 的特徵,學慣用戶的興趣,考察用戶資料與待預測項目的相匹配程度。用戶的資料模型取決於所用學習方法,常用的有決策樹、神經網路和基於向量的表示方法等。 基於內容的用戶資料是需要有用戶的歷史數據,用戶資料模型可能隨著用戶的偏好改變而發生變化。
基於內容推薦方法的優點是:1)不需要其它用戶的數據,沒有冷開始問題和稀疏問題。2)能為具有特殊興趣愛好的用戶進行推薦。3)能推薦新的或不是很流行的項目,沒有新項目問題。4)通過列出推薦項目的內容特徵,可以解釋為什麼推薦那些項目。5)已有比較好的技術,如關於分類學習方面的技術已相當成熟。
缺點是要求內容能容易抽取成有意義的特徵,要求特徵內容有良好的結構性,並且用戶的口味必須能夠用內容特徵形式來表達,不能顯式地得到其它用戶的判斷情況。 協同過濾推薦 (Collaborative Filtering Recommendation)技術是推薦系統中應用最早和最為成功的技術之一。它一般採用最近鄰技術,利用用戶的歷史喜好信息計算用戶之間的距離,然後 利用目標用戶的最近鄰居用戶對商品評價的加權評價值來預測目標用戶對特定商品的喜好程度,系統從而根據這一喜好程度來對目標用戶進行推薦。協同過濾最大優 點是對推薦對象沒有特殊的要求,能處理非結構化的復雜對象,如音樂、電影。
協同過濾是基於這樣的假設:為一用戶找到他真正感興趣的內容的好方法是首先找到與此用戶有相似興趣的其他用戶,然後將他們感興趣的內容推薦給此用 戶。其基本思想非常易於理解,在日常生活中,我們往往會利用好朋友的推薦來進行一些選擇。協同過濾正是把這一思想運用到電子商務推薦系統中來,基於其他用 戶對某一內容的評價來向目標用戶進行推薦。
基於協同過濾的推薦系統可以說是從用戶的角度來進行相應推薦的,而且是自動的即用戶獲得的推薦是系統從購買模式或瀏覽行為等隱式獲得的,不需要用戶努力地找到適合自己興趣的推薦信息,如填寫一些調查表格等。
和基於內容的過濾方法相比,協同過濾具有如下的優點:1) 能夠過濾難以進行機器自動內容分析的信息,如藝術品,音樂等。2) 共享其他人的經驗,避免了內容分析的不完全和不精確,並且能夠基於一些復雜的,難以表述的概念(如信息質量、個人品味)進行過濾。3) 有推薦新信息的能力。可以發現內容上完全不相似的信息,用戶對推薦信息的內容事先是預料不到的。這也是協同過濾和基於內容的過濾一個較大的差別,基於內容的過濾推薦很多都是用戶本來就熟悉的內容,而協同過濾可以發現用戶潛在的但自己尚未發現的興趣偏好。4) 能夠有效的使用其他相似用戶的反饋信息,較少用戶的反饋量,加快個性化學習的速度。
雖然協同過濾作為一種典型的推薦技術有其相當的應用,但協同過濾仍有許多的問題需要解決。最典型的問題有稀疏問題(Sparsity)和可擴展問題(Scalability)。 基於關聯規則的推薦 (Association Rule-based Recommendation)是以關聯規則為基礎,把已購商品作為規則頭,規則體為推薦對象。關聯規則挖掘可以發現不同商品在銷售過程中的相關性,在零 售業中已經得到了成功的應用。管理規則就是在一個交易資料庫中統計購買了商品集X的交易中有多大比例的交易同時購買了商品集Y,其直觀的意義就是用戶在購 買某些商品的時候有多大傾向去購買另外一些商品。比如購買牛奶的同時很多人會同時購買麵包。
演算法的第一步關聯規則的發現最為關鍵且最耗時,是演算法的瓶頸,但可以離線進行。其次,商品名稱的同義性問題也是關聯規則的一個難點。 由於各種推薦方法都有優缺點,所以在實際中,組合推薦(Hybrid Recommendation)經常被採用。研究和應用最多的是內容推薦和協同過濾推薦的組合。最簡單的做法就是分別用基於內容的方法和協同過濾推薦方法 去產生一個推薦預測結果,然後用某方法組合其結果。盡管從理論上有很多種推薦組合方法,但在某一具體問題中並不見得都有效,組合推薦一個最重要原則就是通 過組合後要能避免或彌補各自推薦技術的弱點。
在組合方式上,有研究人員提出了七種組合思路:1)加權(Weight):加權多種推薦技術結果。2)變換(Switch):根據問題背景和實際情況或要求決定變換採用不同的推薦技術。3)混合(Mixed):同時採用多種推薦技術給出多種推薦結果為用戶提供參考。4)特徵組合(Feature combination):組合來自不同推薦數據源的特徵被另一種推薦演算法所採用。5)層疊(Cascade):先用一種推薦技術產生一種粗糙的推薦結果,第二種推薦技術在此推薦結果的基礎上進一步作出更精確的推薦。6)特徵擴充(Feature augmentation):一種技術產生附加的特徵信息嵌入到另一種推薦技術的特徵輸入中。7)元級別(Meta-level):用一種推薦方法產生的模型作為另一種推薦方法的輸入。
⑦ 3分鍾輕鬆了解個性化推薦演算法
推薦這種體驗除了電商網站,還有新聞推薦、電台音樂推薦、搜索相關內容及廣告推薦,基於數據的個性化推薦也越來越普遍了。今天就針對場景來說說這些不同的個性化推薦演算法吧。
說個性化之前,先提一下非個性化。 非個性化的推薦也是很常見的,畢竟人嘛都有從眾心理,總想知道大家都在看什麼。非個性化推薦的方式主要就是以比較單一的維度加上半衰期去看全局排名,比如,30天內點擊排名,一周熱門排名。
但是只靠非個性化推薦有個弊端,就是馬太效應,點的人越多的,經過推薦點得人有更多。。。強者越強,弱者機會越少就越弱,可能導致兩級分化嚴重,一些比較優質素材就被埋沒了。
所以,為了解決一部分馬太效應的問題,也主要是順應數據化和自動化的模式,就需要增加個性化的推薦(可算說到正題了。。。)個性化的優點是不僅體驗好,而且也大大增加了效率,讓你更快找到你感興趣的東西。YouTube也曾做過實驗測試個性化和非個性化的效果,最終結果顯示個性化推薦的點擊率是同期熱門視頻的兩倍。
1.新聞、視頻、資訊和電台(基於內容推薦)
一般來說,如果是推薦資訊類的都會採用基於內容的推薦,甚至早期的郵件過濾也採用這種方式。
基於內容的推薦方法就是根據用戶過去的行為記錄來向用戶推薦相似額推薦品。簡單來說就是你常常瀏覽科技新聞,那就更多的給你推薦科技類的新聞。
復雜來說,根據行為設計權重,根據不同維度屬性區分推薦品都是麻煩的事,常用的判斷用戶可能會喜歡推薦品程度的餘弦向量公式長這樣,我就不解釋了(已經勾起了我關於高數不好的回憶)。。。
但是,這種演算法缺點是由於內容高度匹配,導致推薦結果的驚喜度較差,而且有冷啟動的問題,對新用戶不能提供可靠的推薦結果。並且,只有維度增加才能增加推薦的精度,但是維度一旦增加計算量也成指數型增長。如果是非實體的推薦品,定義風格也不是一件容易的事,同一個作者的文風和曲風也會發生改變。
2.電商零售類(協同過濾推薦和關聯規則推薦)
說電商推薦那不可能不講到亞馬遜,傳言亞馬遜有三成的銷售額都來自個性化的商品推薦系統。實際上,我自己也常常在這里找到喜歡的書,也願意主動的去看他到底給我推薦了什麼。
一般,電商主流推薦演算法是基於一個這樣的假設,「跟你喜好相似的人喜歡的東西你也很有可能喜歡。」即協同過濾過濾演算法。主要的任務就是找出和你品味最相近的用戶,從而根據最近他的喜好預測你也可能喜歡什麼。
這種方法可以推薦一些內容上差異較大但是又是用戶感興趣的物品,很好的支持用戶發現潛在的興趣偏好。也不需要領域知識,並且隨著時間推移性能提高。但是也存在無法向新用戶推薦的問題,系統剛剛開始時推薦質可能較量差。
電商行業也常常會使用到基於關聯規則的推薦。即以關聯規則為基礎,把已購商品作為規則頭,規則體為推薦對象。比如,你購買了羽毛球拍,那我相應的會向你推薦羽毛球周邊用品。關聯規則挖掘可以發現不同商品在銷售過程中的相關性,在零售業中已經得到了成功的應用。
3.廣告行業(基於知識推薦)
自從可以瀏覽器讀取cookies,甚至獲得年齡屬性等信息,廣告的個性化投放就也可以根據不同場景使用了。
當用戶的行為數據較少時,基於知識的推薦可以幫助我們解決這類問題。用戶必須指定需求,然後系統設法給出解決方式。假設,你的廣告需要指定某地區某年齡段的投放,系統就根據這條規則進行計算。基於知識的推薦在某種程度是可以看成是一種推理技術。這種方法不需要用戶行為數據就能推薦,所以不存在冷啟動問題。推薦結果主要依賴兩種形式,基於約束推薦和基於實例推薦。
4.組合推薦
由於各種推薦方法都有優缺點,所以在實際中,並不像上文講的那樣採用單一的方法進行建模和推薦(我真的只是為了解釋清楚演算法)。。。
在組合方式上,也有多種思路:加權、變換、混合、特徵組合、層疊、特徵擴充、元級別。 並且,為了解決冷啟動的問題,還會相應的增加補足策略,比如根據用戶模型的數據,結合挖掘的各種榜單進行補足,如全局熱門、分類熱門等。 還有一些開放性的問題,比如,需不需要幫助用戶有品味的提升,引導人去更好的生活。
最後,我總想,最好的推薦效果是像一個了解你的朋友一樣跟你推薦,因為他知道你喜歡什麼,最近對什麼感興趣,也總能發現一些有趣的新東西。這讓我想到有一些朋友總會興致勃勃的過來說,嘿,給你推薦個東西,你肯定喜歡,光是聽到這句話我好像就開心起來,也許這就是我喜歡這個功能的原因。
⑧ 個性化推薦系統的基本框架
個性化推薦是一種功能,它會通過用戶的個性化需求給他推薦符合其需求的內容, 如果選配助聽器可以去專業的助聽器驗配中心,結合自己的聽力和聽力需求來驗配,找到合適自己聽力參數的助聽器。
⑨ 機器學習中常見的演算法的優缺點之決策樹
決策樹在機器學習中是一個十分優秀的演算法,在很多技術中都需要用到決策樹這一演算法,由此可見,決策樹是一個經典的演算法,在這篇文章中我們給大家介紹決策樹演算法的優缺點,希望這篇文章能夠更好的幫助大家理解決策樹演算法。
其實決策樹倍受大家歡迎的原因就是其中的一個優勢,那就是易於解釋。同時決策樹可以毫無壓力地處理特徵間的交互關系並且是非參數化的,因此你不必擔心異常值或者數據是否線性可分。但是決策樹的有一個缺點就是不支持在線學習,於是在新樣本到來後,決策樹需要全部重建。另一個缺點就是容易出現過擬合,但這也就是諸如隨機森林RF之類的集成方法的切入點。另外,隨機森林經常是很多分類問題的贏家,決策樹訓練快速並且可調,同時大家無須擔心要像支持向量機那樣調一大堆參數,所以在以前都一直很受歡迎。
那麼決策樹自身的優點都有什麼呢,總結下來就是有六點,第一就是決策樹易於理解和解釋,可以可視化分析,容易提取出規則。第二就是可以同時處理標稱型和數值型數據。第三就是比較適合處理有缺失屬性的樣本。第四就是能夠處理不相關的特徵。第五就是測試數據集時,運行速度比較快。第六就是在相對短的時間內能夠對大型數據源做出可行且效果良好的結果。
那麼決策樹的缺點是什麼呢?總結下來有三點,第一就是決策樹容易發生過擬合,但是隨機森林可以很大程度上減少過擬合。第二就是決策樹容易忽略數據集中屬性的相互關聯。第三就是對於那些各類別樣本數量不一致的數據,在決策樹中,進行屬性劃分時,不同的判定準則會帶來不同的屬性選擇傾向;信息增益准則對可取數目較多的屬性有所偏好,而增益率准則CART則對可取數目較少的屬性有所偏好,但CART進行屬性劃分時候不再簡單地直接利用增益率盡心劃分,而是採用一種啟發式規則。
通過上述的內容相信大家已經知道了決策樹的優點和缺點了吧,大家在學習或者使用決策樹演算法的時候可以更好的幫助大家理解決策樹的具體情況,只有了解了這些演算法,我們才能夠更好的使用決策樹演算法。