如何根據資料的分佈來選擇ML演算法? - Reddit
問題:根據基礎理論/資料分佈,何時使用決策樹而不是 SVM 或 KNN 更好?
答案:
1. xgboost在結構化資料和監督學習問題上很難被擊敗。
相對特徵規模不是問題,類不平衡不是問題,它可以處理空資料,而且由於決策樹的性質,它在非線性資料上表現得非常好。它缺乏線性迴歸的可解釋性,但透過SHAP值等技術,你仍然可以在模型或單一預測層面獲得特徵重要性。
2. 我認為模型架構更多的是取決於你要解決的問題和相關的約束。
如果我想要一些簡單或可解釋的東西,我可能會選擇一個決策樹。如果我想要一些高效能的分割,我可能會使用像UNet或MaskRCNN這樣的成熟方法。為什麼這些方法都能很好地工作,在文獻中都有簡潔的記錄。
最終,我認為選擇ML演算法的很大一部分要歸結為了解兩者的利弊,以及被建模的非線性函式的種類(也就是對基礎資料進行的假設,如果有的話)。例如,Naive Bayes或GDA都對你的資料做出不同的關鍵假設。
3. 所有的機器學習模型都會在特徵空間中建立超平面,選擇一個模型而不是其他模型的更好方法是瞭解這些超平面是如何被模型建立的,以及你的特徵在空間中是如何表示的(用一些 dimensonality reduction 技術進行視覺化,如 UMAP 或 t-SNE)。
相關文章
- 大資料時代,如何根據業務選擇合適的分散式框架大資料分散式框架
- 根據開源資料庫選擇合適的工具資料庫
- 如何根據自己的需要選擇伺服器配置?伺服器
- 如何根據需求選擇合適的資料庫管理工具?Navicat OR DBeaver資料庫
- 如何根據寶塔皮膚引數選擇伺服器伺服器
- 根據選擇的物料顯示其特性值
- 微信小程式中根據字母選擇城市微信小程式
- 如何在列表,字典,集合中根據條件篩選資料
- 微信小程式--根據首字母選擇城市微信小程式
- 根據datetimepicker選擇的日期計算年齡
- swift4.0 物件資料來源根據屬性分組,時間排序Swift物件排序
- 如何根據生產環境mysql版本選擇合適的percona xtrabackup版本MySql
- Storm框架:如何根據業務條件選擇不同的bolt進行下發訊息ORM框架
- 關於如何根據shp檔案篩選csv某個省份資料集
- pytest-根據類或函式名選擇用例函式
- 根據需要的圖表型別選擇echarts對應的series型別型別Echarts
- ABAP選擇螢幕:根據使用者選擇動態顯示螢幕(轉老宋)
- 根據奧卡姆剃刀原理選擇架構 - Eduards Sizovs架構
- 【知識分享】根據遊戲網站的型別以及規模來選擇合適的伺服器遊戲網站型別伺服器
- 根據使用者不同的選擇動態改變程式的標題
- Spring+Hibernate 實現不同域名訪問同一專案,自定義Filter根據域名選擇對應的資料來源SpringFilter
- JavaScript 根據type篩選inputJavaScript
- 根據應用場景合理選擇工業相機的解析度
- MySQL:如何對待分佈偏移的資料MySql
- 2024年:如何根據專案具體情況選擇合適的CSS技術棧CSS
- 如何選擇合適的NoSQL資料庫SQL資料庫
- 如何選擇大資料的程式語言大資料
- MySQL 資料型別分類和選擇MySQL 資料型別
- 如何選擇機器學習分類器?機器學習
- 可以根據心情自動選擇音樂 智慧頭戴耳機Vinci
- 如何刪除tomcat上的session,根據sessionID來刪TomcatSession
- 根據什麼選擇一套適合自己的linux系統?(轉)Linux
- Delphi中根據分類資料生成樹形結構的最優方法 (轉)
- 如何選擇大資料分析軟體大資料
- SAP RETAIL 如何根據分配表查到根據它建立的採購訂單?AI
- 資料庫選型的依據資料庫
- jquery 根據id去找 json中list的資料jQueryJSON
- 根據條件動態更新不同表的資料