ざっくばらんメモ_15:kaggle, deepnetの特性解析, 既約性メモ
kaggle recruit
Recruit Restaurant Visitor Forcasting Challengeをスタート.
レストランの将来訪問者数を予測するタスク.
分析はすでにやられていて参考になる
ーhttps://www.kaggle.com/headsortails/be-my-guest-recruit-restaurant-eda
ひとまずkernelにあるスターターを参考にxgboostを実装.
ー結果:0.516
sklearnのgridsearchCVで適当にパラメータをふってチューニングしたところ
ー結果:0.512
あまりうまくないので他のkernelのパラメータも参考にしつつ手動チューニングも 取り入れたところ
ー結果:0.500
でまあまあな感じに.
他にもlightgbmも試しに適用してみたところほぼデフォルトのパラメータで
ー結果:0.493
でxgboostよりも良い感じに.今回のタスクはlightgbmが相性が良い?
現在ランク:171/707
Failure of Gradient-Based Deep Learning
この論文を読んだ際に気になった事として, 最適化の収束速度,sample complexityなどの観点からdeep learningモデルの性能を改めて評価している点がある.
例えばEnd-to-Endモデルは複数に分解して別々に学習するよりもはるかに収束速度が遅くなるから 良くないなどとしている.
通常の論文などはとりあえず一般的の指標でSOTA出せばOKな風潮がだいぶ根付いてきたが, 改めて多面的な評価、あるいはモデルの特性の理解、の重要性を訴えている感じがする.
実用面だとただ性能が良いだけでは結局モデルの一側面でしかないので, モデルの特性解析を理論抜きでやるはめになり,イレギュラー対応など頻繁に発生して 保守が難しい面があると感じる.
irreducabilityとintegral domain
あるvariety Xが与えられた時、それが非ゼロでXそのものでない 二つのvariety X_1, X_2で表せる時,Xはreducibleと言い、 そうでない場合はirreducibleであるという。
Xがirreducibleな時のみにおいて、そのcoordinate ring Γ(X)は整域(integral domain)となる.
つまりXがreducibleな場合、X上に定義される非ゼロ関数が2つあって, その積がゼロ関数になるものが存在する.
例:Xはx2+y2=1の解集合とする.Γ(X)=C[x,y]/(x2+y2-1)なので、f=x-y, g=x+yとおけば これらはΓ(X)上でゼロ関数でないがfgはゼロ関数である.つまりΓ(X)は聖域でなくreducible.