天色グラフィティ

技術ちっくなことを書きます

データ解析

Quoraコンペの振り返りと上位解法まとめ

KaggleのQuora Insincere Questions Classificationコンペに参加しました。 結果は121位で、銀メダルでした。これで銀メダルが3枚目です。わーい。 Public Leaderboardで692位と振るわず、コンペのdeadlineが修論発表の当日だったので直前ほとんど何も出来ず…

決定木は本当に変換に依存しないのか?

決定木をベースとしたモデル(RandomForestやXGBoost、LightGBMなど)は正規化などの前処理が必要ないと言われています。 理由として挙げられるのは「決定木は特徴量の大小関係のみに着目しており、値自体には意味がないから」というものです。 先日もkaggler-…

コピペで使える。Kaggleでの実験を効率化する小技まとめ

この記事はKaggle Advent Calendar 2018の20日目の記事です。当初の予定ではPLAsTiCCコンペの振り返りをするはずだったのですが、時空の狭間に吸い込まれた結果0サブミットでフィニッシュしてしまいました。何ででしょうね。 そこで、代わりにKaggleで使える…

LightGBMのcallbackを利用して学習履歴をロガー経由で出力する

KaggleなどでLightGBMを使っていて学習履歴を見たとき、ログファイルにも残してほしいと思うことがあります。 公式にはそのような機能は実装されていないようなので、LightGBMのコールバックで対応したいと思います。 LightGBMではfitメソッドの引数としてコ…

KaggleのHome Creditコンペで銀メダルを取った話と、チームで動く際のノウハウとか

書く書くといっておきながらなかなか書かないでいたらGoogle Analyticsコンペが始まってしまいました。慌ててこの参戦記を書いています。 Home Credit Default Riskコンペに参加し、166位で銀メダルを取りました! 僕は同じ研究室の@sugawarya、東大松尾研の…

Kaggleで使えるFeather形式を利用した特徴量管理法

みなさま、Kaggle楽しんでいますでしょうか。 僕は現在Home Credit Default RiskとSantander Value Prediction Challengeに参加しています。 前回のKaggle記事ではpandasのテクニックについてまとめました。 多くのアクセスをいただき、人生初のホッテントリ…

Kaggleで使えるpandasテクニック集

PythonでKaggleなどのデータ分析を行う際、pandasでゴリゴリ作業をすることが多いかと思います。 最近知って「めっちゃ便利やん!」ってなったものをまとめておきたいと思います。 全部の関数にドキュメントへのリンクを付けたので参考にしてください。 今回…

pandas + matplotlibで描くヒストグラムいろいろ

データ解析コンペの初期段階では、データを可視化して眺め、特徴を探すという探索的データ分析(EDA)が行われます。 Pythonでデータ分析している場合、可視化にはpandasのプロット機能、もしくはmatplotlibを使うことが多いでしょう。 今回はヒストグラムに絞…

機械学習コンペで使うスニペットたち

メモです。自分がコピペでぺたぺたする用なので随時更新です。 HyperoptでLightGBMモデルをチューニングする from hyperopt import fmin, hp, tpe def objective(params): params['num_leaves'] = int(params['num_leaves']) params['max_depth'] = int(para…

SUUMOデータ分析ワークショップで優勝した。

sankak.jp SUUMOのデータ分析ワークショップに参加した。結論から書くと優勝した。文字通りの意味である。 コンペ形式でランキングがつくということなので、腕試しのためにラボの同期と一緒に応募した。(ちなみに同期は落ちたので品川の日本酒フェアみたい…