今回トライしたのは、日本版KaggleのようなSIGNATEで開催されていました国税調査予測です。(2021/3/4時点でコンペ自体は終了しています。)
https://signate.jp/competitions/413
SIGNATEはKaggleのように先輩たちのKernelこそありませんが、説明が日本語で記載されている点からKaggleに比べると若干敷居は低いように感じます。実際コンペによっては特にkaggleと変わらないのですが、今回こちらのコンペを選んだのは理由があります。
それはBeginner向けと銘打たれていること。SIGNATEではいくつか称号が分かれていて、BeginnerがTier6で、そこから徐々に上がっていきTier1まで準備されています。Tier5(下から二番目)であるIntermediateに昇格する条件ですが、通常は1回以上コンペにて上位60%に入るというものです。(下のリンクはTierの説明です)
https://signate.jp/features/tiering
そのように通常は他者と競走が必要な昇格条件なのですが、このBeginner限定のコンペで一定のスコア(このコンペではAccuracy評価において0.844以上)とると即時にIntermediateに昇格できるという他者関係ない素敵なものとなっています。
ということで気合を入れてトライしていきました。余談ですが、貴重なチャンスだ!と思ってたのですが、結果的にはこのBeginnerトライはこれが第7回で毎月行われてました。。。と期限超えた後で気がつきました。確認不足。。。
さて内容ですが、下記の11個の説明変数を用いて、その人の年収が50kを超える(=1)人と超えない人(=0)に分けるというものです。中身を見てみると欠損値もなく、数値データはageとfnlwgt、あとeducation-numの3つのみで他は全てobjectという比較的扱いやすいデータでした。titanicよりも欠損値がない+年収に関係ありそうな変数が直感的にわかりやすいということも踏まえると確かにbeginner向けだなと思います。
age
workclass
fnlwgt
education
education-num
marital-status
occupation
relationship
race
sex
native-country
ということで次回以降最初に提出したコード、スコアアップした中間コード、最終的に提出したコードの3つくらいを素人である僕がどんな感覚で処理していったかを紹介していこうと思います。