離散特徵為什麼要是用one-hot編碼方式:
在樹模型中,當類別特徵為數很高時,one-hot編碼並不合適:
使用one-hot coding的話,意味著每乙個決策節點上只能用one-vs-rest的切分方式,當特徵維度高時,每個類別的資料都會比較少,產生的切分不平衡,切分增益也會很小
會影響決策數的學習,會把資料切分到很多零散的空間中,而決策樹學習時利用的統計資訊,在這些資料量小的空間中,統計資訊不準確,學習會變差。
在決策數應該如何使用類別特徵:
模擬特徵的最有切分?lightgbm
轉化為數值特徵
a)利用nn將one-hot訓練為乙個embedding
b)統計每個類別對應的label的均值(樣本的均值)
c)其他的編碼方式:
使用Numpy進行one hot編碼
在實現很多機器學習任務的時候,經常需要將labels進行one hot encoding,具體思想這裡就不詳述,借一張圖來表示 numpy實現可以是這樣 函式需不需要返回轉置要根據具體情況看 如果不轉置每個label返回的就是乙個行向量 這裡轉置了,每個label就是對應的列向量 def conve...
使用sklearn訓練xgboost模型
xgboost是提公升樹方法的一種,演算法由gbdt改進而來,在計算時也採用平行計算,速度更快。sklearn中提供分類和回歸的xgboost模型,本文對二分類問題採用xgboost進行訓練。import pandas as pd from sklearn.model selection impor...
xgboost簡單介紹 XGBOOST模型介紹
前言 這是機器學習系列的第三篇文章,對於住房租金 比賽的總結這將是最後一篇文章了,比賽持續乙個月自己的總結竟然也用了乙個月,牽強一點來說機器學習也將會是乙個漫長 的道路,後續機器學習的文章大多數以知識科普為主,畢竟自己在機器學習這個領域是個 渣渣,自己學到的新知識點會分享給大家的。前面的文章談了談這...