sumiiの日記 このページをアンテナに追加 RSSフィード

2008-04-21

「計算機科学の研究は役に立たない」

http://d.hatena.ne.jp/KZR/20080331

Mencius Moldbug, What’s wrong with CS research

コンピューター・サイエンス――いわゆる "CS" は,何も面白いものを生み出したりはしない,という暴言。

せっかく面白い話なのに、proof carrying codeとかC言語の形式的意味論とかの各論に、論理の飛躍やテクニカルな誤り(単によく知らないだけ?)が多いせいで「暴言」になっていてもったいないです…。"Computer Science"と自然科学と数学の対比や、TAPL/ATTAPLに関する下りはちょっと同意します。というかBenjaminも「もう書きたくない」と言っていました。:-)

それはともかく、全体として提起されている問題意識ですが、自然科学や数学では確立している、基礎研究と応用の(「つながり」よりもむしろ)「すみわけ」が計算機科学では成熟していないせいじゃないか、と私は思ってます。たとえば相対性理論やフェルマーの大定理が「ユーザの役に立たない」とか「税金の無駄遣いだ」とか文句を言う人は(あまり)いないですよね。

追記:「ネタにマジレス」っぽいですが、(結論はともかく途中の)明らかな論理的・技術的誤謬を本気にする人がいると残念なので、激しく野暮&遅レスを承知でコメントしてみました。一部抜粋:

Do you think your heroes developed "interesting, cool and relevant software" out of thin air on their own? Just for one example, did Guy Steele invent Scheme without knowing lambda-calculus? And when was lambda-calculus studied first? This is just an example, and most good research is like that! (Or, if you believe the present CS research is worse than research at the time of Church---which may or may not be true---you need to argue for that.)

ちなみに、

http://d.hatena.ne.jp/KZR/20080401

物事に価値があるかどうかを客観的な視点から評価することができるのは,ユーザーだけだ。ユーザーがいなければ,物事に価値など与えることはできない。これは極論だと思うけれど,もしその極論を受け入れるなら,純粋にアカデミックな研究――つまり,研究者を相手にした研究などは,とうてい無意味なものであるという結論に辿り着くだろう。

この論理もちょっとよくわかりません…。普通は「基礎研究」→「応用研究」→「実用」のようなユーザのレイヤーがあるので(実際にはもっと何層もあると思います)、「研究者相手の研究」にユーザがいない、というのは事実ではありませんし、そういう意味ではユーザからきちんと評価されていると思います。(もし「まだエンドユーザがいない、あるいは評価できないものは価値がない」という仮定だったら極論としても明らかに偽なので、それを「受け入れ」ても意味のある結論は得られないように思います。)

物事の進歩は小さな改良の積み重ねによって起こるものなのに,新たな価値が創出される瞬間というのは,そういった加算的な進歩の流れからは外れた飛躍が発生する。というか,発生しなければならない。ただそれは,必然的に発生する進歩とは別で,大いに偶然性の絡むものであるように感じられる。ダメなときはダメってことを受け入れなきゃならないってことだよ。

ある程度の偶然は確かにあると思いますが、私は「小さな改良の積み重ね」に基づかない「飛躍」を寡聞にして知りません。「ダメなとき」=「うまくいかない科学的理由が明白になったとき」(また例が悪いかもしれませんが、錬金術と質量保存則とか)ならばわかりますが、単に「今現在、役に立たないからダメ」と(数年や数十年で)諦めてしまっては、小さな改良も、飛躍も起こらないのではないかと思います。

むしろ、「現在の計算機科学(ないしプログラミング言語理論)は永久に役に立たない」と思っている人がいるから、元エントリのような話が出るのではないかと思うので、「なぜ永久に役に立たないと(その人は)考えるのか」という部分に興味があります。ひょっとしたら現在の研究の本当の問題が明らかになるかもしれませんし、あわよくば:-)解決に結びつくかもしれません。あるいは単に、やはり基礎研究と応用のすみわけが成熟していないせいで、まだ実用化には時間のかかる研究を「役に立つ」と研究者が宣伝しすぎている反動かもしれません。

ちなみにRadium Softwareがはてなに移転していたので、恐る恐るトラックバックを送ってみたのですが、やはり表示されないようですね…。コメントまで書き込むのは何となく気が引ける感じのブログなのですが、独白っぽい文体のせい?

追記2:すばらしい洞察(?)。

okagawaokagawa 2008/04/21 23:53 本題からは逸れますが、相対性理論はGPSに利用されていますから、日常生活レベルで大変役に立っていると思います。。。

K_O_K_O_ 2008/04/22 00:07 確立から何十年も経った基礎研究と、現在の基礎研究を同列に比べるのはどうかと思います。
物理の今の基礎研究と言うと......超対称性理論とか?(意図的に役に立ちにくそうなものを挙げてます

sumiisumii 2008/04/22 08:12 どうもすみません、実は「相対性理論」の部分はまさにそういう理由(すでに時間が経過して役に立っている)でちょっと迷ったのですが、私が物理の最新研究をあまりよく知らない&他の人にもわかりにくい?かと思って、わかりやすそうな例を挙げてしまいました。もっとも、たとえば「型理論」も(相対性理論ほどではありませんが)やや時間が経過して、いわゆる型安全な言語などで実用になりつつあるからこそ、こういう話が出てくるのかもしれませんが。ド素人の妄想ですが、超対称性理論もいずれ何かの役に立つのではないでしょうか。:-)

LefLef 2008/04/22 13:47 相対性理論やフェルマーの大定理をそもそも知らない人というのが、社会にはものすごい数でいて、説明したら「それなんの役に立つの?」といわれるかもとは思います。(自分の両親とかは両方ともたぶん知らないと思いますし)
強いていえば、権威主義的にすごいと感じるから良い、という反応はあるかもしれません。
(個人的には好ましいこととは感じられませんけど、他の分野では同じようなことをいってしまっているかもしれません…)

sumiisumii 2008/04/22 13:57 まさにそういう「そもそも知らない人」は(説明されない限り)そもそも文句も言わない、という「すみわけ」が成熟しているのではないか、という主旨です(違ったらすみません>物理や数学の方)。それが良いのか悪いのかは、また別かもしれませんが…

LefLef 2008/04/22 17:24 なるほど。そういう「すみわけ」だったんですね。
確かに、その成熟にはまだだいぶ時間がかかりそうな気がしますね。

学生さんは名前が無い学生さんは名前が無い 2008/04/22 21:46 学生としては、混同されているおかげで基礎研究をしている学生も企業に就職しやすく、安心して基礎研究できるという副作用がある気がします

sumiisumii 2008/04/23 06:56 おお、なるほど、それは重要な作用ですね。:-) やはり理論物理や、いわゆる純粋数学を専攻している学生さんは就職が大変なのでしょうか…(道路工事のアルバイトが高等数学や現代物理の議論をしている、というネタはどこかで見かけた覚えがありますが)

daichidaichi 2008/04/24 00:59 コンピュータサイエンスの中で、確かに「サイエンス」といっていい
内容というのは存在するものの、かなり限られていますよね。
その区別が成熟していないという部分にも共感します。
知る限りでは、サイエンスと呼べる内容は、
(1)離散数学、論理に端を発するもの(プログラミング言語理論など)
と、
(2)解析学、確率・統計に端を発するもの(情報理論、統計的機械学習など)
の大きく2つがあるように思います。(他にもあるかも)
どちらも数学のそれぞれ別の場所に端を発しているのですが、
だからといって数学でやればいいというものではなく、やはり独自
の内容を持っていると思っています。
# この記事では主に前者が問題になっていますが、僕自身は後者なので、
ちょっとコメントしてみました。

K_O_K_O_ 2008/04/24 01:26 理論物理といっても色々あると思いますが、素粒子論とかの博士は就職が大変だ、という話はわりとよく聞きます。

sumiisumii 2008/04/24 07:15 >daichiさん
そうでした、元記事は「計算機科学」といいつつ、ほとんどプログラミング言語理論の話をしていますよね。おそらくアルゴリズムも(1)でしょうか。

情報理論や機械学習やアルゴリズムは、あまり「役に立たない」と言われることは少ない感がありますが(違ったらすみません)、数学基礎論や論理学が「普通の数学」より素人には非生産的に見えることがあるようなものでしょうか。(「正当性を証明」とか「形式的に検証」とかが後ろ向きに聞こえてしまう?)

>K_O_さん
なるほど、情報でも(日本の)博士は「やや」大変そうですが、素粒子論などでは大学や国立研究所以外にどういう進路があるのか、確かに私には想像もつかないです…

daichidaichi 2008/04/25 22:34 プログラミング言語の場合は、情報理論その他と比べて
素人の方の目に触れる機会が多いので、サイエンス的でない
話と混同されることが多いのではないでしょうか。
統計的な話もアルゴリズムの話もどちらもかなり理学的だと
思うのですが、それと工学的な話が「理工学」という名前
で一緒になっていて、コンピュータサイエンスの中で違いが
意識的に教えられていない、ということはあるように思います。

named letnamed let 2008/06/24 10:50 歩み寄る姿勢がほとんど感じられないから…

何事においても
「底辺コーダー用言語とは違うのだよチミィ」
みたいな感じ。

物理や化学の基礎研究の人達は、もう少し工学系の人や企業と真摯に向き合ってた気がする。

sumiisumii 2008/06/24 11:12 http://d.hatena.ne.jp/sumii/20080405/p1#c1214270848に続いてコメントをいただき有難うございます。「感じ」とか「気がする」だけではなく、もう少し具体的にご教授いただけると助かります。例えば私自身はCもC++もJavaもRubyもアセンブリも大好きですし、その一部は実際に真剣に研究しているつもりです(全部はちょっと手が回りませんが…)。

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/sumii/20080421/p1