プログラミング

tidymodelsによるtabnet

こんにちは,shun(@datasciencemore)です!!

最近,tabnetというアルゴリズムがkaggleで流行っているそうです.

tabnetを簡単に説明すると表形式データで効果を発揮するディープラーニングです.

表形式データだと今まではxgboost,lightgbm,catboostなどの勾配ブースティングが代表的なアルゴリズムでした.

tabneのこれからの動向が楽しみですね!

さてそんなtabnetですが,PythonだけでなくRでも使用できますよ~

しかも嬉しいことにtidymodelsとの連携もOKということです!

ということで,tabnetをtidymodelsで使用したので,メモ書き程度ですがまとめていきます!!

tabnetは,{torch}の一部なので,使用するためには{torch}もインストールする必要があります.

1.データ

今回使用するデータは,パッケージ{DALEX}に付属の「HR」というデータです.

この「HR」は,とある会社の従業員データを示しています.

「HR」のstatus列に人事評価の結果(promoted:昇進,ok:現状維持,fired:解雇)が記載されています.

ということで,

目的変数:status
説明変数:gender,age,hours,evaluation,salary

として,tabnetを使用してみましょう!

2.コーディング

次のようなコードになります.

そこまで特徴量エンジニアリングしていないのにaccuracy:0.722程度なので,まずまずいいですね!!

まとめ

最近話題のtabnetを使用してみました!

ちょっとしたバグもありましたが,他のアルゴリズムとほぼ同じように運用できそうです.

精度も高そうなので,今後ますます流行ってくるかもしれませんね!

それでは,お疲れ様でした!

-プログラミング
-