書く実験の記録

#576 プログラムはエラーを教えてくれるが、人間は教えてくれない

プログラミングの初心者がつまづくこととして一つの要素としてエラーがあるだろう。エラーが出る。なんか怖い英語の文章が出て動かない。怖い。意味がわからない。

ちゃんと作られているエラーなら何かしらのヒントが書いてあるので、真面目に読むことももちろん大事だ。一方でぱっと見よくわからない時に、もしくは読もせずにそのエラーをまるっとコピーしてブラウザにペーストしてまずは検索、と言うのも、まあ悪いことではない。そう言うこともある。

もちろん読んだほうがいいのは事実なのだが、もっとも良くないのは何かエラーが出てたんですがよくわからないので読んでもいないし検索もしていませんというパターンだ。しかしでもなぜかうまく動きませんという。

なぜか、というか、いやここにエラーが出てるじゃないか、そして初心者が陥るようなエラーというのはまずはエラーも初歩的なものが多いので、例えば変数名が間違っているとか、シンタックスが間違っているとか、まあ正直言って大体その二つが多い。

だから、そういう場合は大体エラーも単純で、この行に問題がありますよ、この名前の変数はないですよ、ここでシンタックスエラーがありますよ、みたいなことを教えてくれる。

これはまあすでに答えではあるのだが、もちろん学び始めたばかりなので、それもよくわからないのは仕方ない。でもまあ、何かしら答えか、もしくは答えのヒントはくれている。根気強くやっていけばそのうち修正される。多分。

これは実は非常に親切というか優しいというか。わかりやすい。ダメだったらどこがダメなのか教えてくれるから。一方で人間は何も教えてくれないことの方が多い。人間の方がずっと難しい。

私は以前は、誰かの何かの行動や判断に対して、その裏側にはその人なりのロジックがあるんだと思うし、その土台にはいわゆるナラティブというか、そのロジックに通すための元々持っていた要素や変数やバイアスであったりとか、そもそもそのロジック自体を構成するに至った何か、とにかくその人の持っているストーリーというか土台というか。

何かそういうものがあって、それを理解したら、その人をもっとよく理解できる、つまりはその人の行動が理解して腹落ちするし、予測もできるんじゃないかなと思っていた。

そうは言ってもこれはもちろん、理解して腹落ちしているからといって、共感や賛成、受け入れが可能かというと必ずしもそうではない。賛同できるということと理解できるということは別である。

そういうロジックだと確かにその行動になるのは理解できる。でもそのロジックはおかしい。とか、そういうこともあるし。確かにロジックはあっているけど前提条件や前提としている情報が間違っている、ということもあるし。前提が間違っていたら結論も間違うことが多い。

だから、逆に言えば、賛成しない、ということがロジックも理解できない、ということとは必ずしもイコールではない。それぞれにそれぞれのロジックやナラティブがあって、それを理解できれば、その人も理解できる、そして理解したら予測もできる。

というようなことを、思っている時期もあった。

ということはつまり、これは過去形なので、今はそう思っていない、ということだ。そう、今はそうは思えていない。

一時期は、というか私のこれは大きな過ちなのではないかと今は思っているのだが、とにかく長い間、自分はそう思ってきた。そう、というのは、ナラティブ、という言葉は比較的最近に耳にするというか使われるようになってきている印象だが、つまりとにかく他者は理解できると。理解できないのは自分の理解力が不足しているからだと。自分が理解力をアップすれば理解できるのだと。もしくはより情報を得たら理解できるのだと。

そして今では、と言ってもこの考えはまた変わるかもしれないのだが、少なくとも今は、この考えは間違いだったな、いやそこまでではないかもしれないが、間違いだったのかもしれない、と思っている。

つまり、他者は理解不能である。というか、そもそもロジックなどないのだ。念のため書いておくがないかどうかは正直わからない。しかし、理解などできないし、ロジックもない、というように考えておく方が、整合するということだ。

もちろん完全にロジックがないわけではない。完全にランダムな行動をとるわけではない。そんな人間しかいなかったらこの世界はとっくに崩壊している。崩壊以前に成立していないだろう。

それはそうなんだが、どちらかというと、例えばある関数があるとする。関数というのは単純に入力があると出力がある何かの仕組み、と思えばいい。1と2を入れたら3が出てくる。3と4を入れたら7が出てくる。という関数があったとしたら、どうやら内部では二つの数字を足しているようだな、と思う。これは間違っているかも知らないがそのように推測できるだろう.

これを入力があってそこに何かの仕組みがあってその入力をのみを操作して何かが出てくるというものだ.

少しややこしくしてみると例えば1と2を入力したら4が出てくる3と4を入力したら8が出てくる.例えばこういうものがあったとしたら多分だが入力した数字2つを出してそれに内部で持っている1という数字を出してその結果を戻しているような感じがする.まあこれも間違っているかもしれないがそんな感じがする.

もし完全に答えがランダムだとしたら1と2を入れても12345が戻ってくるし3と4入れると1が戻ってくる.もしそれはよくわからなくても繰り返せば何と繰り返しても1と2を入力したら12345帰ってくるのであればそこには何かのロジックがあるのかもしれない.

もし答えが完全にランダムだとしたら答えが毎回変わることになる.それはさすがに全く理解ができない.こういうものだとは思っていない.

けれども例えばある程度の傾向はあるがランダムな感じだなとか.そういう風に思っておいた方が良いように思っている.ということだ.

最近のテクノロジーの潮流つまり主に AI の分野において研究が進んできたりいろんなことを分かってきたりするにつれて言われつつあることはもはや人間にはもはや理解できる範囲というのは限られているのではないかということだ.

だから例えば僕が家で水を飲んだということが地球の裏側で巡り巡って誰かが体調を崩すということ.もしそういうことがあったとしてその因果関係を自分には理解できないだろう.

そうは言っても全ては繋がっているのだみたいな全ては関係しているみたいなこと言いたいわけでもなくて.もちろん何か2つの事象が関係していることもあるし関係していないこともあるだろう.

そして今私が理解できているような因果関係であるとか相関関係であるとかそういったもの.そして私のような一般人が理解できてるような範囲とは違うような例えば世界最高の頭脳を持った人間が理解をしているような因果関係.そういったものがあるとして.

しかし例えばもはや深層学習の中で行われているような非常に高次元の計算みたいなものはどれだけ人類最高の頭脳であってももはやそれを計算することはできないし.つまり A という 入力 かって B という 出力が出てくるということを人間はもう説明ができない理解もできない.まあ人間が人間が作った仕組みなのでその仕組み自体は理解しているけれども.

まあというようなことで世の中には関係あることと関係ないことは依然としてあるけれども関係があることの中でも今の人間であるとか今のテクノロジーで観測できていて人間が理解できていることというものは必ずしも多くはないのではないかということ.そしてそこを理解まではすることができないけれどもA と B に 因果関係があるということを,今まではそこに因果関係があると知ることができなかったようなこともこれから知ることができるのではないかと思っている.

話がどこかに飛んで行ってしまったので戻そうと思うが.何だろうないつもまとめのようなことは別にしないのだけれども話を戻しつつまとめると.人間には合理的な側面もあるし論理的な側面もあるだろう.そしてナラティブやロジックみたいなものが内包されていてそれを理解すればその人が理解できてそしてその人が理解できたらその人を予測できるとある時期の自分は思っていたように思う.もちろん完全に予測できるなどと思っているわけではないが多少は部分的には例えば仕事においてはこの人はこういう状態だとこういうことをするだろうなというような予測が立っていた方が仕事がしやすかったりはするだろうしそれは別に間違いではないというかそのような試み自体は悪いことがないだろう.

完全に何をするかわからない人ばかりと仕事をするのはなかなか大変だ.

まあそんなわけで少なくとも利害や目的みたいなものが存在するお仕事の側面においては人間の行動というものはある程度理解や予測が可能なものなのである.少なくともそのように考えてアプローチをしようと考えていたということがある.

しかしそうではないのではないか.しかしそうではないというか本当にそうではないかわからないけれどもそうではないと考えた方が良いのではないかというのが最近の考え.

それはどういうことかというとその人間が持つロジックやナラティブみたいなものは存在はするんだけれどもそこにはやはり乱数的なものも含まれているしもしくは乱数ではないんだけどもはや人間には乱数としか思えないような複雑な大量の変数が入っていてそれを予測するのはもはや少なくとも自分には無理なのではないかということ.

予測をしないということは受け身になるということである.相手が何かをしてから何もしくは何かをしない状態になってからこちらがリアクションするということになる.予測をしなければ失望することもない.

相手が何をしようとしているのか何をするのかということを予測していないわけだから当然期待もしていない.期待をしなければがっかりもしない.ということになるのかもしれないがしかしそれは非常に仕事がしづらい.こういう目的に向かって進んでいるはずだからこういうことをした方がいいですよねみたいな所っていうのはある種そのプライベートで何か趣味をしたり友人と遊んだりということは全く別なのでやはりある程度の合理的な行動であるとか.

つい合理的と言ったけれども合理的であるということと論理的であるということは違うしじゃあ今自分が想定してるようなシーンでは論理的であるということと合理的であるということどちらがより望ましいのかそして自分は望んでいるのかということについては今はっきりと答えが出せていない.

論理ではない部分もあるので合理的である方が良いと思っているし合理的であるための一部として論理的であるということがあると思っているし.

しかし残念ながら合理的でも論理的でもない意味がわからない行動する人というのはたくさんいて.しかしそれを意味はわからないのは自分が理解が足りないのではある自分の理解力が足りないのであるもしくは情報は足りないのであるというように考えてそれを理解しようとしていたけれどもそれはもはや無理なのではないかなと思っているということかもしれない.

2025-01-11

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です