【機(jī)器學(xué)習(xí)入門與實(shí)踐】含數(shù)據(jù)挖掘項(xiàng)目實(shí)戰(zhàn):數(shù)據(jù)融合、特征優(yōu)化、特征降維等
【機(jī)器學(xué)習(xí)入門與實(shí)踐】合集入門必看系列,含數(shù)據(jù)挖掘項(xiàng)目實(shí)戰(zhàn):數(shù)據(jù)融合、特征優(yōu)化、特征降維、探索性分析等,實(shí)戰(zhàn)帶你掌握機(jī)器學(xué)習(xí)數(shù)據(jù)挖掘。
項(xiàng)目鏈接合集(必看)
項(xiàng)目專欄合集https://www.heywhale.com/home/column/64141d6b1c8c8b518ba97dcc?
必看
1. 【機(jī)器學(xué)習(xí)入門與實(shí)踐】合集入門必看系列
邏輯回歸(Logistic regression,簡稱LR)雖然其中帶有"回歸"兩個(gè)字,但邏輯回歸其實(shí)是一個(gè)分類模型,并且廣泛應(yīng)用于各個(gè)領(lǐng)域之中。雖然現(xiàn)在深度學(xué)習(xí)相對(duì)于這些傳統(tǒng)方法更為火熱,但實(shí)則這些傳統(tǒng)方法由于其獨(dú)特的優(yōu)勢依然廣泛應(yīng)用于各個(gè)領(lǐng)域中。
A.機(jī)器學(xué)習(xí)算法入門系列(二): 基于鳶尾花數(shù)據(jù)集的素貝葉斯分類預(yù)測
樸素貝葉斯算法(Naive Bayes, NB) 是應(yīng)用最為廣泛的分類算法之一。它是基于貝葉斯定義和特征條件獨(dú)立假設(shè)的分類器方法。由于樸素貝葉斯法基于貝葉斯公式計(jì)算得到,有著堅(jiān)實(shí)的數(shù)學(xué)基礎(chǔ),以及穩(wěn)定的分類效率。NB模型所需估計(jì)的參數(shù)很少,對(duì)缺失數(shù)據(jù)不太敏感,算法也比較簡單。當(dāng)年的垃圾郵件分類都是基于樸素貝葉斯分類器識(shí)別的。
A.機(jī)器學(xué)習(xí)系列入門系列[三]:基于horse-colic的KNN近鄰分類預(yù)測:
kNN(k-nearest neighbors),中文翻譯K近鄰。我們常常聽到一個(gè)故事:如果要了解一個(gè)人的經(jīng)濟(jì)水平,只需要知道他最好的5個(gè)朋友的經(jīng)濟(jì)能力, 對(duì)他的這五個(gè)人的經(jīng)濟(jì)水平求平均就是這個(gè)人的經(jīng)濟(jì)水平。這句話里面就包含著kNN的算法思想。



A.機(jī)器學(xué)習(xí)系列入門系列[四]:基于支持向量機(jī)的分類預(yù)測
支持向量機(jī)(Support Vector Machine,SVM)是一個(gè)非常優(yōu)雅的算法,具有非常完善的數(shù)學(xué)理論,常用于數(shù)據(jù)分類,也可以用于數(shù)據(jù)的回歸預(yù)測中,由于其其優(yōu)美的理論保證和利用核函數(shù)對(duì)于線性不可分問題的處理技巧


A.機(jī)器學(xué)習(xí)系列入門系列[五]:基于企鵝數(shù)據(jù)集的決策樹分類預(yù)測
決策樹是一種常見的分類模型,在金融風(fēng)控、醫(yī)療輔助診斷等諸多行業(yè)具有較為廣泛的應(yīng)用。決策樹的核心思想是基于樹結(jié)構(gòu)對(duì)數(shù)據(jù)進(jìn)行劃分,這種思想是人類處理問題時(shí)的本能方法。由于決策樹模型中自變量與因變量的非線性關(guān)系以及決策樹簡單的計(jì)算方法,使得它成為集成學(xué)習(xí)中最為廣泛使用的基模型。梯度提升樹(GBDT),XGBoost以及LightGBM等先進(jìn)的集成模型都采用了決策樹作為基模型,在廣告計(jì)算、CTR預(yù)估、金融風(fēng)控等領(lǐng)域大放異彩,成為當(dāng)今與神經(jīng)網(wǎng)絡(luò)相提并論的復(fù)雜模型,更是數(shù)據(jù)挖掘比賽中的常客。在新的研究中,南京大學(xué)周志華教授提出一種多粒度級(jí)聯(lián)森林模型,創(chuàng)造了一種全新的基于決策樹的深度集成方法,為我們提供了決策樹發(fā)展的另一種可能。
A.機(jī)器學(xué)習(xí)系列入門系列[六]:基于天氣數(shù)據(jù)集的XGBoost分類預(yù)測:
XGBoost是2016年由華盛頓大學(xué)陳天奇老師帶領(lǐng)開發(fā)的一個(gè)可擴(kuò)展機(jī)器學(xué)習(xí)系統(tǒng)。嚴(yán)格意義上講XGBoost并不是一種模型,而是一個(gè)可供用戶輕松解決分類、回歸或排序問題的軟件包。它內(nèi)部實(shí)現(xiàn)了梯度提升樹(GBDT)模型,并對(duì)模型中的算法進(jìn)行了諸多優(yōu)化,在取得高精度的同時(shí)又保持了極快的速度,在一段時(shí)間內(nèi)成為了國內(nèi)外數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)領(lǐng)域中的大規(guī)模殺傷性武器。
更重要的是,XGBoost在系統(tǒng)優(yōu)化和機(jī)器學(xué)習(xí)原理方面都進(jìn)行了深入的考慮。毫不夸張的講,XGBoost提供的可擴(kuò)展性,可移植性與準(zhǔn)確性推動(dòng)了機(jī)器學(xué)習(xí)計(jì)算限制的上限,該系統(tǒng)在單臺(tái)機(jī)器上運(yùn)行速度比當(dāng)時(shí)流行解決方案快十倍以上,甚至在分布式系統(tǒng)中可以處理十億級(jí)的數(shù)據(jù)。



A.機(jī)器學(xué)習(xí)系列入門系列[七]:基于英雄聯(lián)盟數(shù)據(jù)的LightGBM分類預(yù)測:
LightGBM是2017年由微軟推出的可擴(kuò)展機(jī)器學(xué)習(xí)系統(tǒng),是微軟旗下DMKT的一個(gè)開源項(xiàng)目,它是一款基于GBDT(梯度提升決策樹)算法的分布式梯度提升框架,為了滿足縮短模型計(jì)算時(shí)間的需求,LightGBM的設(shè)計(jì)思路主要集中在減小數(shù)據(jù)對(duì)內(nèi)存與計(jì)算性能的使用,以及減少多機(jī)器并行計(jì)算時(shí)的通訊代價(jià)。
LightGBM底層實(shí)現(xiàn)了GBDT算法,并且添加了一系列的新特性:
基于直方圖算法進(jìn)行優(yōu)化,使數(shù)據(jù)存儲(chǔ)更加方便、運(yùn)算更快、魯棒性強(qiáng)、模型更加穩(wěn)定等。
提出了帶深度限制的 Leaf-wise 算法,拋棄了大多數(shù)GBDT工具使用的按層生長 (level-wise) 的決策樹生長策略,而使用了帶有深度限制的按葉子生長策略,可以降低誤差,得到更好的精度。
提出了單邊梯度采樣算法,排除大部分小梯度的樣本,僅用剩下的樣本計(jì)算信息增益,它是一種在減少數(shù)據(jù)量和保證精度上平衡的算法。
提出了互斥特征捆綁算法,高維度的數(shù)據(jù)往往是稀疏的,這種稀疏性啟發(fā)我們?cè)O(shè)計(jì)一種無損的方法來減少特征的維度。通常被捆綁的特征都是互斥的(即特征不會(huì)同時(shí)為非零值,像one-hot),這樣兩個(gè)特征捆綁起來就不會(huì)丟失信息。


A.機(jī)器學(xué)習(xí)系列入門系列[八]:基于BP神經(jīng)網(wǎng)絡(luò)的乳腺癌分類預(yù)測
BP(Back Propagation)網(wǎng)絡(luò)是1986年由Rumelhart和McCelland為首的科學(xué)家小組提出,是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一。BP網(wǎng)絡(luò)能學(xué)習(xí)和存貯大量的輸入-輸出模式映射關(guān)系,而無需事前揭示描述這種映射關(guān)系的數(shù)學(xué)方程。它的學(xué)習(xí)規(guī)則是使用最速下降法,通過反向傳播來不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小。BP神經(jīng)網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)包括輸入層(input)、隱層(hide layer)和輸出層(output layer)。在模擬過程中收集系統(tǒng)所產(chǎn)生的誤差,通過誤差反傳,然后調(diào)整權(quán)值大小,通過該不斷迭代更新,最后使得模型趨于整體最優(yōu)化(這是一個(gè)循環(huán),我們?cè)谟?xùn)練神經(jīng)網(wǎng)絡(luò)的時(shí)候是要不斷的去重復(fù)這個(gè)過程的)。


A.機(jī)器學(xué)習(xí)系列入門系列[九]:基于線性判別模型的LDA手寫數(shù)字分類識(shí)別:
線性判別模型(LDA)在模式識(shí)別領(lǐng)域(比如人臉識(shí)別等圖形圖像識(shí)別領(lǐng)域)中有非常廣泛的應(yīng)用。LDA是一種監(jiān)督學(xué)習(xí)的降維技術(shù),也就是說它的數(shù)據(jù)集的每個(gè)樣本是有類別輸出的。這點(diǎn)和PCA不同。PCA是不考慮樣本類別輸出的無監(jiān)督降維技術(shù)。LDA的思想可以用一句話概括,就是“投影后類內(nèi)方差最小,類間方差最大”。我們要將數(shù)據(jù)在低維度上進(jìn)行投影,投影后希望每一種類別數(shù)據(jù)的投影點(diǎn)盡可能的接近,而不同類別的數(shù)據(jù)的類別中心之間的距離盡可能的大。即:將數(shù)據(jù)投影到維度更低的空間中,使得投影后的點(diǎn),會(huì)形成按類別區(qū)分,一簇一簇的情況,相同類別的點(diǎn),將會(huì)在投影后的空間中更接近方法。


2. 數(shù)據(jù)挖掘項(xiàng)目實(shí)戰(zhàn)
B.機(jī)器學(xué)習(xí)實(shí)戰(zhàn)系列[一]:工業(yè)蒸汽量預(yù)測(最新版本上篇)含數(shù)據(jù)探索特征工程等:
B.機(jī)器學(xué)習(xí)實(shí)戰(zhàn)系列[一]:工業(yè)蒸汽量預(yù)測(最新版本下篇)含特征優(yōu)化模型融合等:
背景介紹 火力發(fā)電的基本原理是:燃料在燃燒時(shí)加熱水生成蒸汽,蒸汽壓力推動(dòng)汽輪機(jī)旋轉(zhuǎn),然后汽輪機(jī)帶動(dòng)發(fā)電機(jī)旋轉(zhuǎn),產(chǎn)生電能。在這一系列的能量轉(zhuǎn)化中,影響發(fā)電效率的核心是鍋爐的燃燒效率,即燃料燃燒加熱水產(chǎn)生高溫高壓蒸汽。鍋爐的燃燒效率的影響因素很多,包括鍋爐的可調(diào)參數(shù),如燃燒給量,一二次風(fēng),引風(fēng),返料風(fēng),給水水量;以及鍋爐的工況,比如鍋爐床溫、床壓,爐膛溫度、壓力,過熱器的溫度等。
相關(guān)描述 經(jīng)脫敏后的鍋爐傳感器采集的數(shù)據(jù)(采集頻率是分鐘級(jí)別),根據(jù)鍋爐的工況,預(yù)測產(chǎn)生的蒸汽量。
數(shù)據(jù)說明 數(shù)據(jù)分成訓(xùn)練數(shù)據(jù)(train.txt)和測試數(shù)據(jù)(test.txt),其中字段”V0”-“V37”,這38個(gè)字段是作為特征變量,”target”作為目標(biāo)變量。選手利用訓(xùn)練數(shù)據(jù)訓(xùn)練出模型,預(yù)測測試數(shù)據(jù)的目標(biāo)變量,排名結(jié)果依據(jù)預(yù)測結(jié)果的MSE(mean square error)。
結(jié)果評(píng)估 預(yù)測結(jié)果以mean square error作為評(píng)判標(biāo)準(zhǔn)。
在工業(yè)蒸汽量預(yù)測上篇中,主要講解了數(shù)據(jù)探索性分析:查看變量間相關(guān)性以及找出關(guān)鍵變量;數(shù)據(jù)特征工程對(duì)數(shù)據(jù)精進(jìn):異常值處理、歸一化處理以及特征降維;在進(jìn)行歸回模型訓(xùn)練涉及主流ML模型:決策樹、隨機(jī)森林,lightgbm等。下一篇中將著重講解模型驗(yàn)證、特征優(yōu)化、模型融合等。
【機(jī)器學(xué)習(xí)入門與實(shí)踐】數(shù)據(jù)挖掘-二手車價(jià)格交易預(yù)測:
來自 Ebay Kleinanzeigen 報(bào)廢的二手車,數(shù)量超過 370,000,包含 20 列變量信息,為了保證 比賽的公平性,將會(huì)從中抽取 10 萬條作為訓(xùn)練集,5 萬條作為測試集 A,5 萬條作為測試集 B。同時(shí)會(huì)對(duì)名稱、車輛類型、變速箱、model、燃油類型、品牌、公里數(shù)、價(jià)格等信息進(jìn)行 脫敏。
3.總結(jié)
本人最近打算整合ML、DRL、NLP等相關(guān)領(lǐng)域的體系化項(xiàng)目課程,方便入門同學(xué)快速掌握相關(guān)知識(shí)。聲明:部分項(xiàng)目為網(wǎng)絡(luò)經(jīng)典項(xiàng)目方便大家快速學(xué)習(xí),后續(xù)會(huì)不斷增添實(shí)戰(zhàn)環(huán)節(jié)(比賽、論文、現(xiàn)實(shí)應(yīng)用等)
上述機(jī)器學(xué)習(xí)項(xiàng)目為最經(jīng)典的項(xiàng)目,但由于原課程依賴的算法庫和算子替換導(dǎo)致部分程序無法運(yùn)行,本次貢獻(xiàn)點(diǎn)在于按照自己思路進(jìn)行項(xiàng)目整合,其次是對(duì)bug修復(fù)保證案例全部調(diào)通,
項(xiàng)目鏈接合集(必看)
項(xiàng)目專欄合集https://www.heywhale.com/home/column/64141d6b1c8c8b518ba97dcc?必看