情報共有&質問&雑談
はじめに
コンペ開催中でのトピック投稿は初となるので,もし,ルールなどに反する記述などがありましたら早急に削除するので,何か問題があればご指摘よろしくお願いいたします.
一つ前に参加していたコンペで,疑問に思っていたことなどを,聞けずに最終日を迎えて後悔が多かったので,今回は思い切って,疑問に思ったことなどを聞けるように,トピックを作ってみました.
データ解析のコンペ自体も,参加経験が少ないため,ルールなどの基本事項なども確認させてもらえたらと思っています.
少しでも,誰かのスコア向上に貢献できたら,いいなとも思っているので,いろいろ気づきがあったら,内容追加できたらと思っています.
スプラトゥーンに限らず,ゲームがゲームボーイアドバンスあたりで止まっているので,いろいろ質問させてもらえたら幸いです.
好きだったゲームは,スーパーマリオワールドです.
随時,コメントでデータに関する雑談交えつつ,情報共有を追加していけたらと思っています.
情報共有
まず,ベストスコアはLightGBMのみを使用し,CV:0.558751,LB:0.563867となっており,現状はCV:よりもLBが高い結果となっています.
複数手法のアンサンブルなどは,コンペ後半にやった方がいいみたいなことをどこかで目をしたので,今はLightGBM,NNの各モデルでのスコア向上に挑戦しています.
他の参加者のモデルと,そのCV,LBがどれくらいなのか気になっているので,教えてあげてもいいよって人はコメントで教えてほしいです!
また,自分は交差検証でのデータ分割を完全にランダムにしているのですが,みなさんは,データ分割に工夫したりしているのでしょうか?
このあたりも,試して駄目だったものでもいいので,良かったらコメントで教えてください!
また,すでに気づいている方もいると思いますが,テストデータに関しても少し気づいたことがあるので共有しておきます.
リーダーボードにはテストデータの一部で計算と書いてあり,リーダーボードと最終スコア計算に使われるデータの割合は書いてありませんが,LBの計算に使われているデータは,テストデータの4分の1の約7085件であり,最終評価で使用されるのは残りの4分の3の約21255件のデータです(一応計算して出したのですが,ミスってるかもしれないので,間違ってたらすいません).
また,スプラトゥーンに関してほとんど知識はありませんが,対戦ゲームで情報だけから,勝敗が必ず決まるようなゲームではないと考えているため(有利・不利はある),LBのスコアが高くてもこの割合だと油断はできないなと思っています(CV信じて,特徴量とか決めていきたい).
また,いったん全ての予測を1にして提出したLBのスコアは,0.524065でした.
ちなみに自分のLightGBMモデルのテストデータの1の割合は57%で少し多い傾向にあり,nnモデルは,1の割合が53%とLB計算に使われている割合に近い結果となっていました.
その他の質問&疑問点
雑談にも繋げられるように,いくつか質問や疑問点についてメモしておきます.
その1
与えられたデータからいくつか疑問点があるのですが,modeが'nawabari'のとき,ランクが必ずNaNになっているような気がするのですが,これはなんでなのでしょうか?
また,4対4のゲームと認識しているのですが,A4やB4のweaponとlevelが欠測している原因は,切断とかが原因なのかなと思っているのですが,どうなんでしょうか?
その2
日付と時間帯のデータありますが,実際,ガチ勢が多い時間帯や,適当にやっている人が多い時間帯とかってあるものなのでしょうか?
そもそもランクごとの強さのイメージがまったくわからない(;´・ω・)
小学生とかの平均ランクってどのくらい何ですかね?
オンラインゲームとかだと,深夜はガチプレイヤー多かったりするのかなと思ったのですがどうなんでしょうか?
データの分布として,時間帯では0時から順に,
[4293, 4354, 5364, 6725, 7056, 9315, 14619, 17196, 12334, 5600, 4252, 3357]
のデータがテーブルに存在しており,12時から18時の時間帯のデータが多い印象を受けます.
この時間帯に多いのは,曜日ごとでカウントしたデータが,月曜日から曜日ごとに,
[12024, 10897, 10408, 11868, 11506, 19390, 18372]
となっているため,土日のデータが多いことによる影響で,多いのかなと考えています.
時間帯,曜日は勝ち負けの判断には使えないと思っているのですが,一応情報を共有しておきつつ,このあたりの情報から,ガチな試合やってるプレイヤーが多い・少ないみたいな情報から,予測には寄与しなくても,データごとの学習における重みとかに,もしかしたら使える??と思ったり思わなかったりしてます.
その3
スコアやランクをどうとらえるべきか,悩んでいるのですが,ランク'x'が一番高いようですが,ランクが'x'でレベルが37のプレイヤーと,ランクが'c+'でレベルが134のプレイヤーとかいるのですが,これは最短で'x'までレベルを上げたこのプレイヤーは優れており,レベルが134だけど,ランクが'c+'なのは,めちゃくちゃやりこんでるけど,うまくない残念なプレイヤーととらえればいいのでしょうか?
今後の方針
初めて2値分類で予測がこんなに難しいコンペへの参加なので,悪戦苦闘しつつすごく楽しめています.
次の方針としては,疑似ラベルを付与した半教師あり学習で,予測を行ってみようかなと思ったりしているのですが,こういうデータに対して半教師あり学習ってどうなのでしょうか?(疑似ラベルがまともに付けられる気がしない(;´・ω・))
とりあえず,半教師学習これまで使ったことないので,とりあえず実装の練習も兼ねてやってみたいなと思っています!
その他
①これまで最終サブを1つor2つほど選ぶコンペしか参加してこなかったのですが,このコンペは締切日までに提出した全submitが最終評価の対象ってことでいいのでしょうか?
②基本情報の評価方法に記載されている提出ファイルの例が,idが0から始まっていますが,実際のtestデータや,チュートリアル確認すればわかることですが,idは1からでした.(小心者の自分は最初の提出で1からで大丈夫かドキドキしてました)
上記の内容に限らずコメントお待ちしております.