集成學習是一種通過結合多個模型來提升機器學習預測性能的方法。相較於單一模型,集成學習能產生更準確且穩定的結果,其核心理念是訓練一組分類器(或專家),並通過集體投票來決策。Bagging 和 Boosting 是集成學習中常見的兩種技術,這兩者都能減少單一模型的方差,從而提升模型的穩定性。Bagging跟Boosting 同為同質弱學習器模型,但其工作方式不同,我們將深入探討這兩者之間的差異。 晨晰部落格新站 發表在 痞客邦 留言(0) 人氣(414)
XGBoost,全名為 Extreme Gradient Boosting,是一種先進的機器學習算法,特別適合於分類和回歸任務。自 2016 年由陳天奇推出以來,XGBoost 以其卓越的性能和靈活性迅速成為數據科學領域的熱門工具,被廣泛應用於許多實際問題中,特別是在Kaggle的競賽中經常會見到。
晨晰部落格新站 發表在 痞客邦 留言(0) 人氣(1,512)
一、緣起:晨晰部落格新站 發表在 痞客邦 留言(0) 人氣(246)

筆者過去曾寫過用R執行KNN(K-Nearest Neighbors)分析(https://reurl.cc/qV5Xzp)的文章,筆者這篇將針對KNN的起源跟原理進行介紹及說明。
晨晰部落格新站 發表在 痞客邦 留言(1) 人氣(306)
支持向量機(Support Vector Machine,SVM)是一種重要的機器學習算法,被廣泛應用於分類和回歸分析等任務。它的起源可以追溯到上個世紀60年代,由兩位蘇聯數學家Vladimir Vapnik (弗拉基米爾·瓦普尼克)和Alexey Chervonenkis (亞歷克塞·澤范蘭傑斯)首次提出。在本文中,我們將分別討論SVM的起源、發展歷程以及其在在機器學習中的優點及缺點。
晨晰部落格新站 發表在 痞客邦 留言(0) 人氣(305)
在機器學習的領域當中,有著各式各樣的演算法,但往往為了要使用這些演算法,會需要透過寫程式的方式來去使用這些方法,雖然現在統計軟體(例如: R、Python)在呼叫這些演算法所下的指令不是說非常的長,有些時候甚至相當簡單的指令就能使用需要的演算法,但對於沒有寫程式經驗的機器學習初學者來說,還是有一定的進入障礙。所幸還是有一些不需要寫程式的機器學習工具可以使用,例如Weka,筆者第一次接觸Weka是在大學上資料探勘課程的時候,筆者大學的時候機器學習還沒有像現在那麼多課程跟工具可用(應該距今至少十年吧),因此Weka這個工具可以發展那麼久都還沒有停止更新,想必有其過人之處,因此筆者想介紹Weka給機器學習的初學者們。Weka是紐西蘭懷卡托大學機器學習實驗室專為「學習資料探勘」所開發的Java軟體,Weka是懷卡托智慧分析系統的縮寫。Weka限制在GNU通用官方證書的條件下發佈(開源工具),幾乎可以運行在所有作業系統平台上,包括Linux、Windows、Mac OS等。Weka包含完整的資料探勘處理流程,包含(1)資料前處理工具、(2)機器學習演算法、(3)成效評估方法、(4)資訊視覺化報表摘要,最大的優點在於兼具圖像化的使用介面以及寫指令的介面,因此不管是不懂寫程式的初學者以及老手都可以充分做使用,此外,Weka也可以持續擴充新的演算法,因此不用擔心不支援主流的演算法。目前下載最新版本的Weka是3.8.6版,以下的操作就已最新版本做示範。晨晰部落格新站 發表在 痞客邦 留言(0) 人氣(2,774)

這次的內容會針對如何在
R語言執行
XGBoost作介紹,主要會根據筆者參考資料中
XGBoost R Tutorial的章節作介紹,
XGBoost的全名是
eXtreme Gradient Boosting,最早是在
2014年由陳天奇開發,此種演算法在
Kaggle的比賽中大殺四方,因此獲得了大量建模使用者的青睞。筆者之前有針對
XGBoost的原理做比較深入的介紹,有興趣的讀者可以參考
XGBoost演算法
-eXtreme Gradient Boosting(極限梯度提升
)-1/3、
XGBoost演算法
-eXtreme Gradient Boosting(極限梯度提升
)-2/3的文章。
晨晰部落格新站 發表在 痞客邦 留言(0) 人氣(246)

梯度提升(Gradient Boosting)是一種boosting的演算法,最早的論文是「Greedy Function Approximation: A Gradient Boosting Machine」,目前已被引用約15,000次,此種演算法可以應用到很多模型上,但是最常見的是用到決策樹(Decision tree)上,也就是GBDT(Gradient Boosting Decision Tree)。
晨晰部落格新站 發表在 痞客邦 留言(0) 人氣(2,120)
機器學習中,有一個分支為集成式學習(ensemble learning),顧名思義,集成式學習不是指單一的演算法框架,是一種團體的合作演算法框架,既然一個演算法無法得到好的預測結果,那如果是把不同方法用來訓練,理論上,應該會得到更好的預測結果,集成式學習就是這樣的概念。集成式的做法包含了Bagging、Boosting、Stacking,預測的準不準基本上有兩個面向,”Bias”跟”Variance”,詳細的介紹可參考筆者之前寫過的文章(機器學習-Bias-Variance Tradeoff),所有的機器學習模式不外乎想降低”Bias”跟”Variance”來得到更好的預測結果,但Bias跟Variance從下圖來看就是一種取捨的過程,所以各種機器學習的優化糾是想在這兩個概念中取得最佳的平衡。晨晰部落格新站 發表在 痞客邦 留言(0) 人氣(817)
<源起>LDA最早是1936年由RA. Fisher(現代統計學之父)發展,可用於解決二元分類的問題,之後也拓展成解決多分類的問題。在機器學習的領域,LDA可做為資料降維的工具,至於為什麼要降維,可參考筆者之前寫過的文章(https://reurl.cc/7y1zON),裡面有完整的介紹,降維的目的主要是為了避免機器學習的模型的分類或迴歸能力會開始隨維度的增加而下降(如圖一所示)。晨晰部落格新站 發表在 痞客邦 留言(0) 人氣(5,812)