アイソモカ

isomocha: 知の遊牧民の開発記録

未完成のモデル - 人間学習とバックプロパゲーション

最近ニューラルネットワークついて学んだ人と、仕事がうまくいかない悩みについて話していた。

我々は頭の中に人や物事がどう動くかのモデルを持っており、そのモデルから仮説を立てて行動するのだが(順伝播)
結果として何か失敗したり、思ってたんと違ったとき、損失を算出してモデルをアップデートしている(逆伝播)。
というフィードバックループを回していくのが、基本的な学習の仕組みなので、仕事がうまくいかないときは「バックプロパゲーションしてるなあ」と思ったら少し元気が出てくるのではないだろうか?

我々の学習がシンプルなニューラルネットワークと違うかもしれないのは、 自分の直接の体験からだけではなく、教科書や本から体系的に学ぶこともでき(体系化は「モデル」の解釈可能性に近い?)、
本を読んだり人と話したりすることで、他人の体験からも学べることも大きいのではないか(その点では大規模なデータで学習したニューラルネットワークとあまり違わないかもしれない)。

(機械学習は人間の学習から着想を得て構築されてきたところがあるが、これは逆に人間の学習を機械学習に喩えていることになるのかな。厳密な話ではなく、メタファ/アナロジーとして有用ならヨシという程度)

↑ここまでは人を励まそうとして書いていて
↓ここからは自戒っぽいもの

(しかしバックプロパゲーションは工学的な工夫から始まっていて、人間の学習から着想を得たわけではないと聞いたこともあり、よくわからないが。)

たぶん、感覚的に学ぶときと、理論的に学ぶときがあると思う。順伝播/逆伝播をほとんど無意識のうちにやっているとき(身体知、暗黙知)もあれば、「仮説を立てて検証」のプロセスを意識的にやって失敗や成功の要因を分析したりするときもある。

最近の自分が気になっていることとして、「何か嫌だ」「まずい予感がする」「これが臭うぞ」「勘が冴えてた」「ひらめいた」みたいな言葉にできないものを、
言葉にしたり、体系立てて考えたりしたい!というのがある。
言葉にしたり体系立てたりすることは、他人に伝えられるようになったり、再現性の向上につながると思う。
それには、すでに整理されてある言葉や概念を学んで自分のモデル(感覚)と統合することが大事なんじゃないか。

「自分なりの表現を見つける」のは(もしかすると一般的に推奨されがちかもしれないが)後回しだ!
なぜ?
私は自分の「モデル」が間違っているかもしれない(改善を続けていく必要がある)と思っているし、
「自分なりの表現」をいちいち他人に学んでもらうのは効率がよくないから、だろうか?

ここで DeepSeek に聞いてみたところ、
「正則化」は無数の人々の試行錯誤で洗練された既存概念を取り入れることだと言っていた。 正則化ってそういうことなの!?
たしかに、限られた経験や知識を元にした過度な一般化は、過学習のようなものかもしれないし、
その場しのぎの対処法や継ぎ接ぎしたようなモデルは、長い目・広い視野で見るとロバストでない、
といったことと関連していそうに思える。

「正則化が強すぎるとアンダーフィット(凡庸化)する」という機械学習の原理は、
人間の場合 「他人の真似ばかりで独自性が消える」 現象に対応します。
最適なバランスは:
自分の体験(生データ) × 集合知(正則化)ハイブリッド学習 にあると言えそうです。 DeepSeek V3

それと、教科書や本を読んですぐにピンとこなくても、後でじわじわ分かってきたりハラオチしたりすることもあるよね。正則化は無意識のうちにも進行しているのかも。

機械学習・ニューラルネットワークに話を戻ると、我々はどうやって勾配消失を防いでいるのか? 学習率はどう調整されているのか?
思考実験はデータオーグメンテーションのようなものだろうか? 強化学習の報酬関数(とその設計)は? などなど、考えてみたいことが他にもいろいろある。