こんにちは昨夜行われた KaggleDays x Z by HP Championship Meetup in Mumbai に参加してきました。
ありがたい英語の講演を聞いてから、直前にタスクが発表され、4時間で戦うコンペです。今回はNLPが題材でした。
モチベーションとしては機械学習タスクに取り組むときのアジリティが低い自負があったため短期間コンペで練習したいというところからです。
結果
public 41st => private 42nd / 87
感想と取り組みタイムライン
まずは4時間のうちに簡単なサブとやってみたいアイデア1つを実装してサブで来たのは良かったです。ただ、Jigsaw(前回参加したコンペ)のフォルダで実験したり色々と準備不足だらけだったので新しいタスクするときに押すボタンを用意しないといけないですね・・・やはり実際に短いコンペに参加することで足りないものを実感できるので参加してよかったと思います。
コンペの流れとしてはとりあえず埋め込み表現取得してLGBMでポンする方針に決めました。データの説明を読んだところマルチリンガルデータだったためbert-base-multilingual-cased
で埋め込み表現を作成。しかしこれが思ったより遅くて....というか想像してたよりデータが多くてベクトル化だけで2時間強かかった気がします。普通にBERTモデルでDeepで分類してみようと思いましたがこれも時間かかりそうなので今回は諦めました。
待ち時間で言語カテゴリ、sim1,2,3だけを使ったLGBMを作ってみて0.424、埋め込み表現を使って0.529でフィニッシュ。上位とは差が大きいのでこのあと公開される解法で勉強します。
ソリューション図はこちら
ノートも公開しました。
www.kaggle.com
終わったあと Universal Sentence Encoder
が有効だったと言ってる方が何人もいてなにそれ知らない状態なのでアジリティだけでなく選択肢も少ないことを実感しました・・・悔しい。
Universal Sentence Encoderについて解説されているものはこちら。
今回非常にいい時間を過ごせたので次回からのkaggledaysも参加したいし準備もしたいと思います。