鴨川にあこがれる日々

軽い技術っぽい記事かいてます

kaggleにsubmitだけした話

機械学習の勉強*1をしていると,
「なんとなくわかった気持ちにはなったけど,実際にどんな風にアルゴリズムを使ったらいいかわからない」ということがあります.

ちょうど4月にインターン先で知ったでKaggleを思い出しました.www.kaggle.com


てきとうに紹介するとある課題に対して機械学習などを用いて課題で設定されているスコアを競うというものです.


例えば,サンフランシスコで起こった犯罪のデータでモデルを構築し,犯罪の特定のデータを使ってその犯罪のカテゴリを推定する,といった課題があります.www.kaggle.com

ものによっては賞金$10,000とか$100,000が手に入ります.

  • 勉強したアルゴリズムを実践的に試すことができる
  • 成績がいいと賞金がもらえる
  • データを触れる
  • (英語の勉強になる)

といいことばかりなので,やってみました.


さきほど触れたサンフランシスコの犯罪の課題です.

個人的にJuliaが好きなので,Juliaでやりました.
言語の指定などはありません.
余談ですが,Juliaの課題もあります.www.kaggle.com


書捨てで書いたので,最適化もされてなければ変数もひどいJuliaのコードですが...
kaggle_sample.jl

訓練データ(train.csv)からある部署があるカテゴリの犯罪を扱う確率(条件付き確率)を求め,
それをテストデータに適用するという愚直な作戦です.
機械学習ですらないですね.


結果はサンプルデータを提出するよりはマシでしたが,167/192でした.


課題に対して一日に提出できる回数は決まっていますが,数ヶ月単位で開催されてるものが多いです.
チームでの参加もできますので,研究室やサークルなどで挑戦してみるのもいいかもしれませんね.

*1:言語処理のための機械学習入門とかPRML