日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【数据竞赛】Kaggle知识点:树模型特征Embedding

發(fā)布時(shí)間:2025/3/12 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【数据竞赛】Kaggle知识点:树模型特征Embedding 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在對(duì)數(shù)據(jù)進(jìn)行編碼的過程中,經(jīng)常會(huì)遇到一些非結(jié)構(gòu)化的字段(如列表、文本),或者高維稀疏的字段。

在使用樹模型的過程中,上述字段對(duì)樹模型很不友好,會(huì)增加樹模型的訓(xùn)練時(shí)間,一般情況需要通過人工特征提取,然后進(jìn)行。

有沒有一種可以適合樹模型編碼的操作呢?在樹模型中可以通過葉子節(jié)點(diǎn)的次序作為進(jìn)行編碼,在Kaggle中稱為Tree Categorical Embedding。

Tree Categorical Embedding

在訓(xùn)練完樹模型之后,可以通過對(duì)模型進(jìn)行預(yù)測(cè),通過節(jié)點(diǎn)邏輯的判斷從根節(jié)點(diǎn)到葉子節(jié)點(diǎn)。

此時(shí)葉子節(jié)點(diǎn)中包含的樣本類別(或標(biāo)簽均值)為最終的預(yù)測(cè)結(jié)果。這里想要具體的index,也就是樣本預(yù)測(cè)到第幾個(gè)葉子節(jié)點(diǎn)中。

在XGBoost中,擁有多棵樹。則一個(gè)樣本將會(huì)被編碼為多個(gè)index,最終可以將index作為額外的類別特征再加入到模型訓(xùn)練。

具體API

XGBoost

使用Learning API,設(shè)置pred_leaf參數(shù)

import?xgboost?as?xgb from?sklearn.datasets?import?make_classificationX,?Y?=?make_classification(1000,?20) dtrain?=?xgb.DMatrix(X,?Y) dtest?=?xgb.DMatrix(X)param?=?{'max_depth':10,?'min_child_weight':1,?'learning_rate':0.1} num_round?=?200 bst?=?xgb.train(param,?dtrain,?num_round) bst.predict(dtest,?pred_leaf=True)

LightGBM

使用sklearn API或者Learning API,設(shè)置pred_leaf參數(shù)

import?lightgbm?as?lgb from?sklearn.datasets?import?make_classificationX,?Y?=?make_classification(1000,?20) dtrain?=?lgb.Dataset(X,?Y) dtest?=?lgb.Dataset(X)param?=?{'max_depth':10,?'min_child_weight':1,?'learning_rate':0.1} num_round?=?200 bst?=?lgb.train(param,?dtrain,?num_round) bst.predict(X,?pred_leaf=True)

CatBoost

使用calc_leaf_indexes函數(shù)

import?catboost?as?cab from?sklearn.datasets?import?make_classificationX,?Y?=?make_classification(1000,?20) clf?=?cab.CatBoostClassifier(iterations=200) clf.fit(X,?Y) clf.calc_leaf_indexes(X)

使用細(xì)節(jié)

  • leaf index預(yù)測(cè)維度與具體樹個(gè)數(shù)相關(guān),也就是與具體的round相關(guān)。

  • leaf index的預(yù)測(cè)結(jié)果為類別類型。

  • leaf index建議交叉驗(yàn)證編碼,避免自己訓(xùn)練并編碼自己。

  • 交叉驗(yàn)證實(shí)現(xiàn):https://www.kaggle.com/mmueller/categorical-embedding-with-xgb/script

    學(xué)習(xí)數(shù)據(jù)競(jìng)賽,組隊(duì)參賽,交流分享
    添加👇微信

    總結(jié)

    以上是生活随笔為你收集整理的【数据竞赛】Kaggle知识点:树模型特征Embedding的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。