天天看點

《Python資料挖掘:概念、方法與實踐》——1.3節在資料挖掘中使用哪些技術

本節書摘來自華章社群《python資料挖掘:概念、方法與實踐》一書中的第1章,第1.3節在資料挖掘中使用哪些技術,作者[美] 梅甘·斯誇爾(megan squire),更多章節内容可以通路雲栖社群“華章社群”公衆号檢視

1.3 在資料挖掘中使用哪些技術

現在我們對資料挖掘在整個kdd或者資料科學過程中的位置有了了解,下面就可以開始讨論完成這一任務的細節了。

從試圖定義資料挖掘的早期起,幾類相關的問題就一再出現。fayyad等人在1996年的另一篇重要論文“from data mining to knowledge discovery in databases”中提出了6類問題,我們将其總結如下:

分類問題。這裡,有需要根據某些特征分成預定義類别的資料。我們需要一種算法,使用過去已經分類的資料,學習如何将未知資料置于正确的類别下。

聚類問題。這類問題是,我們需要根據資料點的特征将其分為不同類别,但是事先不知道這些類别。我們需要一種能夠計量資料點之間相似性并自動根據這些相似性分割資料的算法。

回歸問題。我們的資料必須根據某個預測變量進行映射,是以必須學習進行這種映射的函數。

摘要問題。假定我們的資料需要以某種方式縮短或者總結。這可能很簡單,隻是從資料計算基本統計數字;也可能很複雜,需要學習如何總結文本,或者為文本找出一個主題模型。

依賴性模組化問題。對于這些問題,我們的資料之間可能有某種聯系,我們需要開發一個算法,計算這種聯系的機率,或者描述互相聯系的資料的結構。

變化和偏差檢測問題。在另一種情況下,我們的資料已經有了顯著的變化,或者資料的一些子集偏離了正常值。為了解決這些問題,我們需要一種能夠自動發現這些問題的算法。

在同年撰寫的另一篇論文中,這些作者還加入了其他幾種類别:

連結分析問題。我們有一些相關的資料點,必須發現它們之間的關系,并以資料集的支援程度和關系置信度的方式描述它們。

序列分析問題。想象我們的資料點遵循某種順序,如時間序列或者基因組,我們必須發現序列中的趨勢或者偏差,或者發現導緻序列的原因,以及序列的演化方式。

韓家炜、kamber和裴健在前面提及的教科書中描述了資料挖掘所能解決的4類問題,并進一步将其分為描述性和預測性兩大類。描述性資料挖掘意味着找出模式,幫助我們了解擁有的資料。預測性資料挖掘意味着找出模式,幫助我們預測尚未擁有的資料。

在描述性類别中,他們列出了如下資料挖掘問題:

資料特性描述和資料區分問題,包括資料摘要或者概念特性描述(或稱描述)。

頻率挖掘,包括找出資料中的頻繁模式、關聯規則和相關性。

在預測性類别中,他們列出了如下問題:

分類,回歸

聚類

離群值和異常檢測

很容易看出,fayyad等人和韓家炜等人的問題清單有許多相似之處,隻是項目的分組不同。确實,如果你過去曾經完成過資料挖掘項目,這兩個清單上出現的項目就是你可能已經熟悉的資料挖掘問題。分類、回歸和聚類是非常流行的基本資料挖掘技術,是以從業者們所看到的每本資料挖掘書籍幾乎都介紹過它們。

本書将使用哪些技術

由于本書是關于“精通”資料挖掘的圖書,是以我們将介紹幾種在标準書籍中不常介紹的技術。具體地說,我們将在第2章中介紹關聯規則,在第9章中介紹異常檢測。我們還将應用幾種對資料清理和資料預處理有幫助的資料挖掘技術,也就是第9章中的缺失值處理和第3章中通過實體比對進行的一些資料整合。

除了從技術上定義資料挖掘之外,有時候人們還根據所挖掘的資料類型,劃分各種資料挖掘問題。例如,你可能聽人說過文本挖掘或者社交網絡分析。這些術語指的是所挖掘的資料類型,而不是用于挖掘的具體技術。例如,文本挖掘指的是任何應用于文本文檔的資料挖掘技術,而網絡挖掘指的是從網絡圖表資料中尋找模式。在本書中,我們将在第4章中進行一些網絡挖掘,在第6、7、8章中進行不同類型的文本文檔摘要,在第5章中根據情緒(文本中的情感)進行文本分類。

如果你和我一樣,現在可能會想,“對這些背景資料我受夠了,我想要寫點代碼。”我很高興你對實際項目感興趣。本書幾乎已經做好了開始編碼的準備,但是首先要建立一個好的工作環境。