過学習とはなにか

流れ去るのが惜しいのでまとめておきます。「コインを3枚投げて確率1と推定するのは過学習」の元ネタがわからない人は「パターン認識と機械学習 上」67ページを参照
10
nishio hirokazu @nishio

@nokuno そもそも過学習とは何なのだろう?

2011-02-15 10:26:45
Yoh Okuno @yoh_okuno

@nishio ここでは日記に書いたオーバーフィットと同じ意味で使っていますが、言われてみれば一般的な定義はよく知りません。 http://d.hatena.ne.jp/nokuno/20110213/1297554152

2011-02-15 10:51:27
shuyo @shuyo

@nokuno @nishio 語義通りに解釈すれば「データへの過剰な適合」ですよね。多くの場合、データにノイズが含まれている場合に起こりうるとかなんとか書いてあり、データが少ないとか偏ってるとかいう場合に起こる不都合は過学習と呼んでいいのかちょと悩みます……。

2011-02-15 10:59:05
shuyo @shuyo

@nokuno @nishio 一般的な話としては、汎化性能とセットで語れば過学習という言葉の定義に振り回されなくていいんじゃあないかなあというイメージです。

2011-02-15 11:01:11
Yoh Okuno @yoh_okuno

@nishio @shuyo ニューラルネットワークとかのオンライン学習で、イテレーションを途中で止めたほうがテストセットに対する性能が上がるので、「過」学習という名前がついたのもあると思います。

2011-02-15 12:02:24
shuyo @shuyo

1年半前に機械学習を始めたときは1人だったのに、いつのまにか機械学習組がラボの最大勢力。というわけで今日から社内機械学習勉強会スタート。@nishio さんや @higepon さんが PRML を読んで、隙あらばフルボッコにする簡単なお仕事。

2011-02-15 15:21:45
しましま @shima__shima

.@nokuno @nishio @shuyo というか階層ニューロが出てくるまでは,線形ばっかりだったから「過」になることなんかなかったからかと

2011-02-15 20:54:07
nishio hirokazu @nishio

いやそもそものきっかけはコインを三回投げて三回表が出た時に最尤推定して表の確率が一だとするのを過学習と呼ぶのはどうなのか?って話なんですよRT @shima__shima: .@nokuno @nishio @shuyo というか階層ニューロが出てくるまでは,線形ばっかりだったか

2011-02-15 21:13:42
しましま @shima__shima

.@nishio @nokuno @shuyo 本当に表しか出ないってことは否定はできないです.でも,そっちを想定すると,やりすぎのことが,あたることが多いよねっていう仮定というか,背景知識というものです.

2011-02-15 21:20:27
しましま @shima__shima

.@nishio @nokuno @shuyo このあたりは,本当に帰納論法だけだと事実の列挙だけで,将来の予測は全くできないので,何か仮定・背景知識が必要です.その背景知識として,こういうときはやり過ぎだと思うことにしようというのがあるということかと.

2011-02-15 21:22:05
nishio hirokazu @nishio

そうですね、「過学習」は未定義で、仮定や「この結果は都合が悪い」という主観に過ぎないのに「これは過学習である」などと客観的事実のような書かれ方をしているのでつまずきました。RT @shima__shima @nokuno @shuyo …仮定というか,背景知識というものです.

2011-02-15 21:44:26
Shunsuke SOEDA @shnsk

@nishio @shima__shima @nokuno @shuyo 過学習は、どのように失敗したかをmentionするキーワードでしょ?

2011-02-15 23:03:25
しましま @shima__shima

.@shnsk @nishio @nokuno @shuyo どのように失敗したかという経過というより,そういう状態は都合の悪い状態と想定して,その状態に名前を付けたってことかと

2011-02-15 23:06:44
Yoh Okuno @yoh_okuno

@nishio @shuyo @shima__shima サイコロ投げの最尤推定は過学習以前に学習という言葉がそぐわないですね。その場合は過適応と読んだほうがよさそうです。

2011-02-15 23:08:40
shuyo @shuyo

@nokuno @shima__shima 「3回表でp=1.0」だと過学習として、じゃあ「200回表でp=1.0」だったら? それが過学習でないとしたら、何回以下なら過学習? と考えれば過学習も仮定に過ぎないことがわかるよね、と @nishio さんと話していました。

2011-02-15 23:24:00
Yoh Okuno @yoh_okuno

@shuyo @shima__shima @nishio なるほど、そういう意味でしたか。

2011-02-16 00:00:16
nishio hirokazu @nishio

これ納得してないんですけどね。 RT @shuyo 「3回表でp=1.0」だと過学習として、じゃあ「200回表でp=1.0」だったら? それが過学習でないとしたら、何回以下なら過学習? と考えれば過学習も仮定に過ぎないことがわかるよね、と @nishio さんと話していました。

2011-02-16 00:32:25
nishio hirokazu @nishio

@shuyo Xとnot Xに明確な境界がないことと、Xが仮説であることの関連がわかりません。むしろ明確な境界がないことから「Xである」という主張が明確に真であるか偽であるか判断できないケースが存在する→つまり命題ではない→ということで仮説ですらないと思います。

2011-02-16 00:35:35
nishio hirokazu @nishio

@shuyo 「身長170cmの人は背が高い」は仮説でも命題でもなくただの曖昧なつぶやき。

2011-02-16 00:38:21
nishio hirokazu @nishio

これが僕のイメージに一番近いです。さらに、どういうときにその状態なのかは定義されていない、と。 RT @shima__shima @shnsk @nokuno @shuyo そういう状態は都合の悪い状態と想定して,その状態に名前を付けたってことかと

2011-02-16 00:41:55
shuyo @shuyo

@nishio なあんだそうだったんですか。てっきりその場で何も言わないので一応納得してくれたのかと。とりあえず仮定が仮説にすり替わっていますね。あと、厳密さを求めているか、イメージの話をしているのか、どっちなのかははっきりしてもらった方が話がしやすいかと。

2011-02-16 00:53:24
しましま @shima__shima

.@nishio @shnsk @nokuno @shuyo データに合わせすぎるのはまずいよっていうところだけ共通で,じゃあどうしたらいいかは,データに置く仮定によっていろいろあって,どれがいいかはデータ次第ということになるから,定義というか,全部公理から積み上げるの無理かと

2011-02-16 03:30:34
しましま @shima__shima

.@nishio @shnsk @nokuno @shuyo アルゴリズム的な問題は公理的にバシッと決められるのは,データに想定する仮定が厳密に当てはまるからですが,機械学習だと,そもそも iid なデータなんて存在しなくて,あてはまりません.

2011-02-16 03:33:02