資料探勘與生活

皇家救星發表於2021-06-14

資料探勘與生活

前言

寫這篇文章的目的是想給公司同事介紹一下資料探勘的入門知識,旨在增強大家對資料探勘瞭解與興趣,並將這門技術應用到工作和生活中,發揮集體智慧為公司產品增加資料探勘應用場景。另外對於我自己,以教代學,也可以更好發現自己知識盲點,讓輸出倒逼輸入。

本來是計劃寫成ppt的,但準備過程中發現ppt實在太花時間了:要找圖畫圖,要做互動,要考慮頁面佈局,要背演講稿。最終還是決定寫成文章,相對來說容易點,參考性也強一些。

市面上的資料探勘資料很多,但有些專業性很強,但講得太抽象,太深奧,有些雖然淺顯易懂,但實戰意義不強。當然,也有寫得比較好的,但相比起來比例還是比較少。

這篇文章我打算按我理解的角度來介紹資料探勘,重點介紹資料探勘在生活中的應用,以及非專業人士如何使用資料探勘解決生活問題。文章中介紹了資料探勘的一些演算法,但很多隻是羅列了名詞,因為我也沒搞清楚這些演算法或者沒精力詳細講解,只是寫出來作為關鍵字,有興趣的同學可以自行百度。

寫作過程中參考了很多資料文章,無法一一註明了,在此一併做感謝。

文章概述

本文先舉了一些生活中使用資料探勘的案例,讓讀者對資料探勘有感性認識。接著介紹了常用的資料探勘方法,並分別介紹了這些方法的定義和應用場景。

對於每種資料探勘方法,我都舉了一個生活中的小場景作為例子,說明怎麼用這個方法來解決這個場景中的問題。例如使用線性迴歸指導我們買房選房,使用關聯分析來輔助彩票選號,用決策樹輔助我們閱讀體檢資料。

另外,我將一些資料處理技巧,例如非數值資料處理方法,文字資料處理方法,演算法原理等知識穿插在文章裡面,大家在實踐時可以參考。

資料探勘案例

資料探勘技術在我們生活中隨處可見。下面給大家介紹幾個案例,讓大家對資料探勘技術有直觀感受。

沃爾瑪通過資料探勘發現啤酒與尿布銷售關係

20世紀90年代的美國沃爾瑪超市中,沃爾瑪的超市管理人員分析銷售資料時發現了一個令人難於理解的現象:在某些特定的情況下,“啤酒”與“尿布”兩件看上去毫無關係的商品會經常出現在同一個購物籃中。

為了搞清楚具體原因,沃爾瑪對這些同時購買啤酒和尿布的顧客展開了調研。最後他們發現,原來購買大部分客戶是嬰兒父親。他們在下班回家的路上為孩子買尿布,然後又會順手購買自己愛喝的啤酒。

在知道這個規律後沃爾瑪將這兩樣商品擺放在一起進行銷售、並獲得了很好的銷售收益。這種現象就是賣場中商品之間的關聯性,研究“啤酒與尿布”關聯的方法就是購物籃分析。

現在很多購物網站會有推薦商品的功能,在你把某些商品加入購物車後,系統會提示你“購買此商品的人多數會同時購買XXX”,其背後原理,也是依靠“購物籃分析”。

某叫車平臺通過大資料發現司機與乘客私下交易

某叫車平臺經過資料探勘,發現系統中存在大量司機存在相同的操作順序:“接到訂單”->"移動到乘客附近"->"取消訂單"->"重新上線"。

經過運營人員分析,這些司機是在藉助導航接到乘客後,取消訂單,繞過平臺與乘客私下交易。這種行為會給乘客出行安全帶來安全隱患。

於是該平臺新增規定,如果司機上線接單地點與前次取消的訂單目的地相近時,就判定司機與乘客私下交易,對其發出警告或者限制其接單。

某購物平臺使用資料探勘提高優惠券營銷能力

以優惠券盤活老使用者或吸引新使用者進店消費是一種重要營銷方式。然而隨機投放的優惠券對多數使用者造成無意義的干擾。對商家而言,濫發的優惠券可能降低品牌聲譽,同時難以估算營銷成本。 個性化投放是提高優惠券核銷率的重要技術,它可以讓具有一定偏好的消費者得到真正的實惠,同時賦予商家更強的營銷能力。

該購物平臺分析通過分析系統消費資料,根據得到優惠券後是否會購買商品的概率,將系統使用者劃分為幾類。針對其中獲取到優惠券後大概率會使用的顧客進行集中投放,大大提升了優惠券活動營銷效果。

某微博網友質疑天貓雙十一銷售額資料造假

2019年天貓雙十一資料公佈後,有網友指出這個數字與4月份一條微博預測的資料十分接近。該博主據此懷疑天貓每年銷售額資料是根據公式捏造的。

但其實知道資料探勘的人會知道,世界上有很多資料都是可以用資料公式預測的。小到公司的業績,大到全球航空客運量,甚至世界經濟總額,人口數量變化,都是可以預測的。

某人使用yolo3輔助自己整理照片

某人為了儲存了大量家庭成員生活照片,為了將這些照片按家庭成員分類儲存(區分自己夫妻,父母,孩子的照片),他使用labelImg工具對其中一些照片做了標記(父親,母親,自己,妻子,孩子,總共5類),並在darknet環境下用yolo3來訓練,最終訓練出一個模型用於識別照片上家人資訊。通過使用這個模型,他就可以很輕易地將照片分類儲存。

​ 圖:訓練識別王珞丹和白百何模型的圖片打標示例

資料探勘定義

資料探勘是指從大量的資料中通過演算法找出隱藏於其中有價值的資訊的過程。從巨集觀價值上來說,資料探勘的價值體現在描述預測上。

描述:以簡潔概要方式描述資料之間規律。例如從房產中介資料中分析影響各種因素對房價的影響。(如房子大小,位置,裝修情況等)

預測:是通過對所提供資料集應用特定方法分析所獲得的一個或一組資料模型,並將該模型用於預測未來新資料的有關性質。例如根據歷史房價資訊,預測房價未來幾年漲幅。

資料探勘通常與電腦科學有關,並通過統計、線上分析處理、情報檢索、機器學習、專家系統(依靠過去的經驗法則)和模式識別等諸多方法來實現上述目標。

對資料探勘的錯誤認識:

1 挖掘出的結果都是正確的

實際:挖掘演算法並不保證結果的完全正確,挖掘出的結果只具有概率上的意義,只具有參考價值。

2有資料探勘就能自動找出系統有價值的資訊

實際:資料探勘只是幫助專業人士更深入、更容易的分析資料。資料探勘技術可以提供很多模型對資料進行挖掘,但無法告知某個模型對企業的實際價值。

即使得到有用的模型,也要將其與實際生產活動結合才可以體現價值。

常用資料探勘方法簡介

資料探勘的方法非常多,不過總的來說可以將它們歸成幾大類。以下是一種歸類方法(資料探勘歸類方法有多種,不過大同小異)

綠色的就是資料探勘的方法,常見的方法共有五個:相關性分析、關聯分析、分類、聚類、時序分析

每種方法都有多種演算法,不同演算法適用於不同型別資料,實踐時我們可以多嘗試幾種演算法,看哪種演算法最適合當前場景。

相關性分析

定義與應用場景

相關性分析是指對兩個或多個具備相關性的變數元素進行分析,從而衡量兩個變數因素的相關密切程度。

常用演算法:

迴歸

迴歸分析是處理多變數間相關關係的一種數學方法。它是指研究一組隨機變數(Y1 ,Y2 ,…,Yi)和另一組(X1,X2,…,Xk)變數之間關係的統計分析方法。

通常Y1,Y2,…,Yi是因變數,X1、X2,…,Xk是自變數。一般我們會使用數學方程式來表示因變數和自變數之間的關係,用以描述自變數的變化會對因變數產生什麼樣的影響。

根據迴歸分析建立的變數間的數學表示式,稱為迴歸方程

一元線性迴歸與多元線性迴歸

線性迴歸假設輸出變數是若干變數的線性組合,並根據這一關係求解線性組合的最優係數。

一個多變數線性迴歸模型表示為以下的形式:

這種模型也稱為多元線性迴歸方程式。如果變數只有一個,那多元線性迴歸,就會退化成為一元線性迴歸,迴歸方程就是我們熟悉的中學知識:直線方程式y = b x + a

方程式中的b,即直線斜率,代表自變數x對y的影響程式。它的絕對值越高,說明x對y的影響越大。

歷史上第一個線性迴歸表示式是用於描述人類子代與父代身高的關係的:

y = 0.516x + 33.73,式中的y和x分別代表子代和父代身高,單位是英寸(一英寸= 2.54釐米)

這個式子表明父代身高比較高時,子代身高大概率會低於父代。反之父代身高較矮時,子代身高有較大可能高於父代。

從幾何圖形上理解,一元線性迴歸就是找到一條直線,使得每一個y值到直線的距離之和最小。(多元則是找到一個超平面)

線性迴歸模型簡約而不簡單,它即能體現迴歸方法的基本思想,而且又能構造出功能更強大的非線性模型。

圖:一個線性迴歸計算過程

應用

迴歸方程式,我們可以預測電影票房,計算王者排名,給法官做刑期建議。

也可以根據公式係數,研究各種變數因素對結果影響大小,例如分析載重和路徑分別對油耗影響。

或者根據公式計算結果,尋找與結果差異較大的資料做分析,例如做房地產撿漏。之前我在網上看過一個人使用百度和高德提供的資料,分析開店選址的,也是用到迴歸的方法。

非線性迴歸

假設自變數與因變數之間關係是非線性函式的迴歸分析方法稱為非線性迴歸。

例如拋物線,雙曲線,指數增長曲線。

可以使用衍生變數的方法,藉助線性迴歸的方法來計算非線性函式。

衍生變數就是對戶現有變數做組合加工,從而生成一個新的變數。通過計算出這個新變數與其它變數的線性關係,從而得出非線性函式。

常見的衍生變數構造方法有分箱、相乘、平方、開方、算比例等。

有了衍生變數後,一元二次迴歸可以看成是對因變數y與自變數x,衍生變數x*x的線性迴歸。

舉例:我們知道功率(W),電壓(U),電流(I)之間有一個關係:功率 = 電流 乘以 電壓。

現在假設我們不知道這個規律,只是拿到了一組功率,電壓,電流的資料。看一下怎麼用衍生變數和線性迴歸的方法來發現這個規律。

原始資料如下:

U I W
220 1 220
220 2 440
220 6 1320
220 6 1320
220 8 1760
220 2 440
5 1 5
5 2 10
25 0.8 20
25 0.6 15
360 34 12240
360 7 2520
360 23 8280

構造衍生變數後變數(嘗試加了電流平方,電壓平方,電壓乘以電流三個變數)如下:

U I UI I2 U2 W
220 1 220 1 48400 220
220 2 440 4 48400 440
220 6 1320 36 48400 1320
220 6 1320 36 48400 1320
220 8 1760 64 48400 1760
220 2 440 4 48400 440
5 1 5 1 25 5
5 2 10 4 25 10
25 0.8 20 0.64 625 20
25 0.6 15 0.36 625 15
360 34 12240 1156 129600 12240
360 7 2520 49 129600 2520
360 23 8280 529 129600 8280

接下來我們使用weka進行線性迴歸。

weka是一個簡易的java語言開發的資料探勘軟體,它提供了介面和API,分別方便普通使用者和java程式設計師進行資料探勘。在百度學術可以搜尋到很多使用weka進行商業資料探勘的論文(見下圖),它的使用簡介見後面附錄。

將這些資料輸入到weka,選擇“Classify”(分類)下面的線性迴歸演算法。

點選執行,程式即輸出一個公式

根據這個方程式,我們可以知道功率與衍生變數UI有線性關係。w = 1 * UI

而UI變數我們構造時是使用電壓乘以電流。

所以我們發現了功率,電壓,電流之間存在關係:功率 = 電流 乘以 電壓

知道這個關係後,我們就知道電流跟電壓分別對功率的影響。如果後面發現有一些資料,功率與電流和電壓之間關係不滿足這個方程,那很有可能是資料出了錯。

圖表相關分析

將資料轉換成圖表,方便業務人員分析。常見的方法是將資料輸出成散點圖,並且畫出趨勢線。

協方差及協方差矩陣

相關係數

相關係數是最早由統計學家卡爾·皮爾遜設計的統計指標,是研究變數之間線性相關程度的量,一般用字母 r 表示。由於研究物件的不同,相關係數有多種定義方式,較為常用的是皮爾遜相關係數。

相關係數是用以反映變數之間相關關係密切程度的統計指標。相關係數是按積差方法計算,同樣以兩變數與各自平均值的離差為基礎,通過兩個離差相乘來反映兩變數之間相關程度;著重研究線性的單相關係數。

實踐—使用weka分析影響房產價格因素

https://blog.csdn.net/Shellerine/article/details/53200500?utm_source=blogxgwz4

https://blog.csdn.net/kestory/article/details/90521981

數值資料處理技巧

標準化

資料的標準化(normalization)是將資料按比例縮放,使之落入一個小的特定區間。

歸一化

歸一化是一種簡化計算的方式,即將有量綱的表示式,經過變換,化為無量綱的表示式,成為標量。 在多種計算中都經常用到這種方法。 例如將身高和體重都歸一成比例小數資料。

缺失值

實際生產中業務資料往往有缺失,此時我們需要通過各種演算法補齊缺失值。例如取眾數,取平均值,取近鄰值等。

非數值資料處理技巧

有序類別

一些有序的類別高中低,胖瘦,可以直接使用數字代替。

無序類別(使用啞變數,即虛擬變數)

沒有大小關係的類別,例如東南西北,男人女人,可以使用啞變數處理。

文字資料

有時候模型的輸入是文字資料,例如新聞,社交媒體。我們需要把文字轉化為數值矩陣。

有時候模型的輸入是文字資料,例如新聞,社交媒體發言等,需要把文字轉化為數值矩陣。

常用處理方法有兩種:

單詞統計(word counts): 統計每個單詞出現的次數。

TF-IDF(Term Frequency-Inverse Document Frequency): 統計單詞出現的“頻率”。

網上有通過資料探勘分析紅樓夢作者的例子,有興趣的同學可以自行百度。

關聯分析

定義與應用場景

關聯分析是一種簡單、實用的分析技術,就是發現存在於大量資料集中的關聯性或相關性,從而描述了一個事物中某些屬性同時出現的規律和模式。

關聯分析是從大量資料中發現項集之間有趣的關聯和相關聯絡。

關聯分析的一個典型例子是購物籃分析。該過程通過發現顧客放入其購物籃中的不同商品之間的聯絡,分析顧客的購買習慣。通過了解哪些商品頻繁地被顧客同時購買,這種關聯的發現可以幫助零售商制定營銷策略。其他的應用還包括價目表設計、商品促銷、商品的排放和基於購買模式的顧客劃分。

可從資料庫中關聯分析出形如“由於某些事件的發生而引起另外一些事件的發生”之類的規則。如“67%的顧客在購買啤酒的同時也會購買尿布”,因此通過合理的啤酒和尿布的貨架擺放或捆綁銷售可提高超市的服務質量和效益。又如“‘C語言’課程優秀的同學,在學習‘資料結構’時為優秀的可能性達88%”,那麼就可以通過強化“C語言”的學習來提高教學效果。

常用演算法

窮舉法

窮舉法不是業務常用的演算法,只是我覺得使用窮舉的方法來解決“購物籃問題”,比較直觀,對於理解其它演算法也有幫助,所以把它列出來。

舉個例子,假設我們經營一家小超市,裡面提供了以下幾種商品:麵包,牛奶,奶粉,尿布,可樂,雞蛋。我們想分析一下顧客的購物清單,看裡面是否有高關聯度的商品。

那我們可以先對商品組合做窮舉(例如麵包和牛奶,麵包和奶粉,麵包和尿布,麵包和牛奶及雞蛋等),並分別計算出同時購買了該商品組合的清單數量。

例如我們可能會得出以下資料:

商品組合 清單數量 佔比
麵包 10 有購買麵包的清單數量/總數量
麵包和牛奶 6 6 / 10
麵包和尿布 3 3 / 10
麵包和奶粉 0 0 / 10
麵包和牛奶及雞蛋 3 3 / 6

(資料是我為說明演算法隨手造的,勿當真)

從這個表格資料我們可以分析得出結論:購買了麵包的人,有60%機率會同時買牛奶,但只有30%的人會同時買尿布。同時購買了麵包和牛奶的人中,有50%的人會再買雞蛋。

所以我們如果要做促銷,那把麵包,牛奶,雞蛋打包成一個商品打折,可能會取到不錯的效果。

Apriori(先驗)演算法

在窮舉法的基礎上,提出了根據截枝,大大減少組合計算次數,加快計算速度。(舉例:如果買牛奶麵包的商品人很少,那就不需要統計同時購買了牛奶麵包可樂的人有多少,因為沒有意義。)

GSP演算法

在Apriori演算法,增加考慮頻繁項順序。可用於時序(有先後順序的)頻繁項挖掘。

SPADE演算法

我也沒搞懂。

實踐—使用weka發現總是一起出現的彩票號碼組合

經常研究彩票的彩民,可以會發現一些號碼經常一起出現。(例如出現2同時出現5概率比較高)找出這些組合,有利於提高中獎機率。但由於彩票開獎資料比較大,想找出這些號碼組合比較困難。我們可以使用資料探勘的關聯分析演算法來解決此類問題。

這裡我們使用weka提供的Apriori(中文意思,先驗的,推測的)演算法進行資料探勘。

我從福利彩票網站抓取了最近100期的彩票記錄資料,處理了一下,轉換成Apriori演算法需要的矩陣並使用它分析裡面是否有頻繁項。

出現概率超過3%,並且支援度超過70%

結果說明:過去100期雙色球開獎結果中,1、6、11同時出現的次數是3次,並且每次出現1和6的時候,肯定會出現11, 2、10、9也是同理。我們買彩票時可以根據這個挖掘結果來指導選號,以期提高中獎率。

分類

定義與應用場景

分類是基於包含其類別成員資格已知的觀察(或例項)的訓練資料集來識別新觀察所屬的一組類別(子群體)中的哪一個的問題。例如,將給定的電子郵件分配給“垃圾郵件”或“非垃圾郵件”類,並根據觀察到的患者特徵(性別,血壓,某些症狀的存在或不存在等)為給定患者分配診斷。分類分析,簡單地說就是把資料分成不同類別。

分類演算法一般使用機器學習裡面屬性有監督學習演算法,即需要輸入一些樣本,根據樣本確定演算法引數,從而生成一個適合業務的演算法模型。

常用演算法

k最近鄰分類(即KNN)

有句話說:“想知道自己是什麼樣的人,那看看自己經常交往的十個人就知道”。KNN分類的原理就是這樣,通過觀察與新資料距離最近的N個資料的分類標籤,數量最多的標籤就是新資料的分類。(N需要根據業務人員經驗確定,不宜太大)

例如以下圖:圓圈是新資料,假設規定根據與它最相鄰的3個資料來分類,因為其中兩個是三角形,一個是正方形,則會認為該資料是三角形。

當N值取5時,最近的5個資料裡面有3個是正方形,2個是三角形,則新資料會被認為是正方形。

距離:

資料探勘有一個的重要概念,就是資料距離:就是。如果是單維資料,要確定距離十分方便,例如有三個人體身高資料,分別是1.6、1.7、1.8,那這三個資料相互的距離直接用資料值相減就可以計算出來。

但我們實際業務資料經常是有多種維度的,例如有三個西瓜,它們資料如下:

甜度 重量 體積
0.8 1kg 8
0.7 1.5kg 5
0.5 2kg 12

所以我們一般需要使用距離公式來評判資料距離。選擇不同公式對分類結果可能產生不同影響。需要根據實際業務需要選擇。

常見距離公式有:

歐式距離:

餘弦距離:

馬氏距離:

傑卡德距離:

獨熱編碼:

如果資料不是數值型,而是標籤型,例如西瓜產地有本地,新疆,雲南,西瓜顏色有紅色、藍色、綠色。則需要獨熱編碼對資料進行處理。

決策樹

決策樹分類是用屬性值對樣本集逐級劃分,直到一個節點僅含有同一類的樣本為止。

決策樹演算法的模型最直觀,最易於解釋,甚至可以做為普通業務人員指導。下圖是判斷一個瓜是好瓜還是壞瓜的決策樹,其判斷過程十分接近人類思維。

​ 圖:使用C45演算法生成的決策樹

神經網路

神經網路可以認為是大量複雜的演算法單元,利用仿生學知識,模擬人類神經傳導機制連線起來形成的一種演算法。每個演算法單元裡面有很多不同引數。通過調整引數,可以處理任意分類問題。我們平常總是聽到的訓練模型,就是在給這些演算法單元找合適的引數。

​ 圖:使用神經網路識別影像

圖:使用神經網路實現公式計算

如果神經網路裡面的感知器使用的演算法是線性演算法(類似前面介紹的多元線性迴歸),則稱為線性神經網路,如果使用了卷積演算法,則稱為卷積神經網路。

阿爾法狗就是使用卷積神經網路的分類應用,它把棋盤當成一個19*19的影像,把下子當成一個分類問題,即輸入現在棋盤影像,輸出一個與人類高手下子後最接近的棋盤影像。(當然,它還加了其它輔助演算法,例如蒙特卡洛樹搜尋樹提高贏棋概率)

貝葉斯分類

支援向量機分類(Support Vector Machine, SVM)

將資料對映到高維度,並尋找一個高維平面將資料分割開來

邏輯迴歸(logistic迴歸)

線上性迴歸的基礎上,使用函式將連續輸出轉換成離散輸出

實踐—使用weka鑑別病人是否得了糖尿病

這裡我們使用weka自帶的疑似糖尿病人身體指標資料和檢測結果做為訓練資料,使用決策樹分類演算法randomtree來訓練模型並用於根據新的病人身體指標預測其是否患糖尿病。

訓練資料在data/diabetes.arff這個檔案裡面,我簡單介紹一下:

檔案裡面包含了一些病人身體指標,例如懷孕次數(preg),飯後2小時血糖濃度(plas),年齡(age)等。對於每個病例,最後都會標記檢測結果為陰性或者陽性(tested_negative/ tested_positive),如果為陽性說明得了糖尿病。

我們先使用weka匯入這個檔案並在Classify這個介面,點選“choose”按鈕,選擇演算法“RandomForest”

點選"Start",訓練出模型。從輸出看,模型分類準確率有75%,效果勉強還行(50%即代表瞎猜的)

接著準備測試檔案,將data/diabetes.arff複製一份,變成diabetes - test.arff

只保留前兩行,並把分類結果改為?,我們用這個來做為測試資料,看模型是否能正確分出結果(實際工作時不應該拿模型資料,而是拿實際未打標資料)

點選"Set…"按鈕,選擇diabetes - test.arff做為測試集。

在ResultList視窗列表項右擊,執行

執行後輸出介面會重新整理,此時再右擊Result List視窗

選擇Save,將檔案儲存為

開啟檔案,會發現結果多了兩列,最右邊一列是模型分類結果。符合我們預期,一個陽性一個陰性。

聚類

定義與應用場景

聚類是將資料分類到不同的類或者簇這樣的一個過程,所以同一個簇中的物件有很大的相似性,而不同簇間的物件有很大的相異性。

聚類分析是一種探索性的分析,在分類的過程中,人們不必事先給出一個分類的標準,聚類分析能夠從樣本資料出發,自動進行分類。聚類分析所使用方法的不同,常常會得到不同的結論。不同研究者對於同一組資料進行聚類分析,所得到的聚類數未必一致。

聚類演算法一般使用機器學習裡面的非監督學習演算法。

常用演算法

隨機森林

使用多個弱分類演算法組合成一個強分類演算法。(類似於民主投票,選誰適合當總統)

孤立森林

孤立森林演算法是周志華教授(機器學習經典--西瓜書的作者)提出來的,用於發現異常資料的演算法。

使用隨機方法將資料集進行多輪切分,在多輪切分中,經常在比較早完全分離出來的資料則認為是異常資料。

下面是一個使用孤立森林演算法來發現圖片中異常的樹木的例子:

第1輪切分,第1次就發現了特別樣例。(上方圖片只有一棵樹,無法再分割)

第二輪切分,第2次就發現了特別樣例。(第一次切分出來的圖片上下兩部分都有樹,第二次分出來的4個圖片區域,有一塊只有一棵樹)

這棵“樹”實在太奇怪了,導致它總是能很快地跟其它樹分離開來。實際上,它是聯通的5G基站,偽裝成樹型,方便部署。

k-均值(k-means)

尋找k箇中心點,將離中心點最近的資料歸到一類。跟KNN有點像,特別依賴資料距離公式。

EM最大期望演算法

DBSCAN

根據資料密度來劃分資料。

實踐—使用kmeans分析中國足球隊是亞洲幾流球隊

https://zhuanlan.zhihu.com/p/62535727 我分析了過去十年五屆大賽的成績,中國男足到底是亞洲幾流?

聚類和分類區別聯絡

聚類分析跟分類分析區別是分類分析需要有已有標籤的資料,而聚類分析則不需要。

實踐中經常先使用聚類對資料進行探索,之後對有價值的資料開發分類模型用於商業應用。

時序分析

定義與應用場景

時間序列是一系列資料點,使用時間戳進行排序。例如水果的每日價格到電路提供的電壓輸出的讀數,股票每分鐘報價等。

雖然在某一給定時刻預測目標的觀測值是隨機的,但從整個觀測序列看,卻呈現出某種隨機過程(如平穩隨機過程)的特性。

隨機時間序列方法正是依據這一規律性來建立和估計產生實際序列的隨機過程的模型,然後用這些模型進行預測未來資料。

像氣溫,股票,客流等這些時序資料都適合用時序序列預測技術。

例如我們公司做的動態閾值元件就使用了時序分析的技術

圖:通過時序分析模型結合歷史資料預測出當前時刻資料上下限,超出閾值的資料認為是異常資料,觸發告警。

常用演算法:

指數平滑

溫特霍特曲線

移動差分自迴歸

神經網路(RNN和LSTM)

RNN和LSTM是深度學習神經網路演算法,深度意思是有多箇中間層。

小結練習

1 請分析文章開始的資料探勘案例,分別使用的是哪種資料探勘方法

案例 使用技術
沃爾瑪通過資料探勘發現啤酒與尿布銷售關係 關聯分析
某叫車平臺通過大資料發現司機與乘客私下交易
某購物平臺使用資料探勘提高優惠券營銷能力
某微博網友質疑天貓雙十一銷售額資料造假
某人使用yolo3輔助自己整理照片

2 使用今天學習的資料探勘知識,開發一款類似今日頭條的資訊流軟體,實現高準確率資訊推薦

一點雞湯:

資料探勘的場景多種多樣,但核心的挖掘演算法卻相對有限。這跟我們以前學的數學,物理有點類似,很多題目看起來十分複雜,但都是通過一些基本的定理,定律可以解決。其實在職場中,想做好工作,也有類似這樣的“定理”,“定律”這樣的東西。例如《高效能人士的七個習慣》裡面提到的:主動積極、以終為始、要事第一、雙贏思維、知彼知己、統合綜效、不斷更新。

說明:

本文大部分資料抄自網上,我自己做了點加工整理,僅供學習交流用。由於來源太多,並且資料整理時間太長,無法一一註明,請作者見諒。歡迎轉載,如果有侵權地方請聯絡我修改。

資料探勘的知識範圍很廣,本文雖然只是介紹了入門知識,但限於作者水平,文章中難免出現有錯漏地方,歡迎各位留言指正。

資料探勘在網上資料非常豐富,如果各位對本文介紹的知識有興趣,可以到百度輸入關鍵字,查詢相關資料。

這裡介紹幾個:

資料探勘技術及應用(我見過的最全面的理論+最佳案.ppt

資料探勘技術在電網企業中的應用需求分析.pdf

基於資料探勘的電力裝置狀態檢修技術研究綜述.doc

面向智慧電網大資料的資料探勘演算法概述.pdf

資料探勘技術及其在電力系統中的應用.pdf

電力行業資料探勘.pptx

不過學技術,關鍵不在於掌握資料的多與少,而在於你是否去運用它。希望大家在個平時生活中多想一下,哪些例子是使用了資料探勘,自己能用資料探勘來解決什麼問題。

附錄1:練習題答案

1

案例 使用技術
沃爾瑪通過資料探勘發現啤酒與尿布銷售關係 關聯分析
某叫車平臺通過大資料發現司機與乘客私下交易 關聯分析
某購物平臺使用資料探勘提高優惠券營銷能力 聚類
某微博網友質疑天貓雙十一銷售額資料造假 相關性分析
某人使用yolo3輔助自己整理照片 分類

2

網上還有很多練習題,涉及到了很多知識點(不包括本文介紹的):

資料探勘150道試題 測測你的專業能力過關嗎?

https://blog.csdn.net/u010022051/article/details/44153421?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control&dist_request_id=&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control

附錄2:weka使用

WEKA資料探勘工具操作實驗.ppt

https://max.book118.com/html/2017/0127/87028147.shtm

WEKA使用教程

https://blog.csdn.net/yangliuy/article/details/7589306

CC中英字幕 - Weka在資料探勘中的運用(Data Mining with Weka)

https://www.bilibili.com/video/BV1Hb411q7Bf?from=search&seid=17226336668903912022

相關文章