Kaggle初コンペに
Rで挑戦した話

Tokyo.R #99

@igjit

@igjit

共著で本を書きました。

https://gihyo.jp/book/2022/978-4-297-12524-0

本題

Kaggleコンペに初挑戦して

銅メダルを獲りました!

概要

H&M Personalized Fashion Recommendations

過去の購買履歴を元にファッションアイテムを推薦する

チーム

  • 会社の同僚
  • データエンジニア2人、データアナリスト2人

やったこと

まずは評価指標を確認

https://www.kaggle.com/competitions/h-and-m-personalized-fashion-recommendations/overview/evaluation

なるほどわからん

Kaggleで勝つデータ分析の技術 を読む

2.3.6 レコメンデーションにおける評価指標

で MAP@K がくわしく説明されている。

とりあえずfirst submit

Kaggle NotebookでR, Pythonのコードを実行、共有できる。

Rでコードを書いてsubmit

他の人のNotebookを読む

有用なNotebookが多数公開されているので読んで参考にする

私は

を参考にして

ルールベースの推薦をRで実装

個々のスコアはメダル圏に達しなかったけど

最終日にチームみんなの予測をアンサンブルさせた結果、

銅メダルを獲得できた!

後日

上位のチームの解法が多数公開されていて

  • 1st stage: 質の高い複数のcandidate generation
  • 2nd stage: GBDTでreranking

の2-stageレコメンドが一般的だった模様

RでもTidymodelsLightGBMを使えるし、
Rで上位を目指せたかもしれない。

Q: RでKaggleを戦えるのか

A: コンペによってはいけるかも

ただ、現時点では、Pythonを読む必要がある

H&Mコンペで公開されたNotebokの数

n
Python 405
R 14

そのうち4件は私

みんなRでKaggleやろうな!

Rで良かったところ

圧倒的に快適なデータ整形

purrrで書いたリスト処理をfurrrでらくらく並列化

ほかにも便利なパッケージたくさん

みんなRでKaggleやろうな!

Kaggleは楽しい

  • real worldの課題
  • 世界中のエキスパートが同じ問題を解く
  • チームメイトと友情・努力・勝利

Enjoy!

// reveal.js plugins