WirelessWire News The Technology and Ecosystem of the IoT.

by Category

プログラミング 教育 子供 イメージ

情報学を浸透させるためのプログラミング教育

2019.10.17

Updated by Ryo Shimizu on October 17, 2019, 12:19 pm UTC

昨日、大学で深層学習の応用事例研究会があるというので参加してきた。所属する研究室の発表もあったが、CERNなどの現場で、未知の素粒子の発見に深層学習を活用しようとしたりする試みや、日々の大量のエラーログのなかから単なる操作ミスではない本当の異常を検知する技術の探求など、興味深いテーマが多かった。

ところが大学というのは、特に歴史ある大学というのは、増改築を重ねているためどこにどの建物があるのかわかりにくい。
以前、大学院の授業を履修していたときに講義が工学部一号館であるというので工学部をいろいろ歩いて、そのへんの学生さんに「工学部一号館はどこですか?」と尋ねると、「知りません」と言われたことがあった。よく見ると、彼らはまさしく工学部一号館から出てきたところだった。たぶん僕と同じように、不案内だったのだろう。

ただでさえ看板が古くて見づらい。
何度通っても迷宮みたいな場所なので、うろうろしていると情報系ではない学科の棟に迷い込んでしまった。
すると飛び込んできたのが懐かしい光景である。

掲示板だ。
休講だとかアルバイトの情報だとか、教授からの呼び出しだとかが掲示される場所である。ちなみに同じ大学でも学部が違うと情報管理の方法が根本的に違うなどということもあるらしい。

21世紀の最初の1/5が終わろうとしているのに、情報学は同じ学部の中ですら浸透していないように思えて呆然とする。
おそらくは、当然のように学部を管理している総務課の職員は情報学を専攻してはいないだろうし、彼らはExcelみたいなものは使うかもしれないが、自らGoogle Docsを立ち上げたりするわけではないだろう。

人々がAIに期待することのなかで、実は、Google Docsでできることは少なくないのかもしれない。

図書館の設立から始まった情報学は、未だ人類に十分浸透しているとは言えないようだ。思えば、cakesで連載しているマンガ 教養としてのプログラミング講座だって、情報学をもっと一般の社会で役立てましょう、というメッセージである。そのメッセージに価値があるということは、そのメッセージがまだ浸透していないことを意味する。

そういえば情報学、つまりプログラミングの手法を一般化して現実社会のふるまいを変えることができると思ったのは、そもそもそれが成されていないと感じたからだ。

プログラミング教育を義務教育に導入する意味というのは、情報学を浸透させるという目的が一番大きい。そして情報学が数学そのものよりも重要と思えるのは、情報学はすべての思考様式の根幹を成すからだ。

情報学に全く疎い人のために説明すると、たとえば数学の基礎を成しているいくつかの法則、1+2=3のとき、2+1=3であるという(交換法則)のは、数学である以前に情報学であると考えられる。

なぜなら、これはもともとモノを数えるときに、「○」がモノだとして、○ + ○○ = ○○○であり、○○ + ○ = ○○○であることは自明であり、故に、演算子(この場合は加算記号の+)の両隣の数字を入れ替えても同じ意味であると定義しようと決めたのが数学だからだ。

つまり、モノを数える行為が先にあって、それを情報化するプロセスで生まれたのが数学であり、数学は情報学的な考え方から生まれて体系化されたと考えられる。

もちろん、実際の数学の歴史的成り立ちと、情報学の歴史的成り立ちにそこまで強い相関関係があるわけではないが、言いたいのは、出発点において情報学は数学よりも一段メタな段階、すなわち、自然現象や頭の中にしかない漠然としたイメージをどのようにして他者が活用できる「情報」へと変換できるか、そしてそうして変換された情報は、どのように組み合わせて活用することができるか、を考えるものであると言える。

もっとわかりやすくいえば、情報学は、保育園や幼稚園でも扱う。つまり、数を数えるというのは、現実にある同種の「モノ」を数という情報に変換する行為だからだ。

図書館学から派生した情報学は、本が二冊以上存在するところには常にある。すなわち、保育園や幼稚園の絵本だ。

多くの近代的な学問と同じように、これまで長い時間、情報学は存在している事自体を見過ごされてきた。19世紀までの人々にとって、情報という言葉は一般的ではなく、自分たちが扱っているものを「情報」として認識してこれなかった。それ以前は、文学とか帝王学とか、政治学とか法学とか神学とか科学とか、情報学とは全く切り離された状態で行われていたが、そこで扱っているものはすべて情報に起因していたことが情報処理機械であるデジタルコンピュータの発展とともに理解された。

このことは、アリストテレスの時代にそれ以上不可分なものとして原子と呼ばれたものが、実際には複数の素粒子の組み合わせであることが1987年に発見され、そこから素粒子を構成する要素として発見されたことで物理学が急速に発達したのと似ている。

情報学がデジタルコンピュータとともに「再発見」され、急速に発展してきた。この重要性が時間とともにわかってきたので、情報学の観点からすべての教育システムを見直そうという活動が、プログラミング教育の導入であると僕は考えている。

AIを活用するためには、まず情報学の概念をある程度は我々が理解する必要がある。
なぜならば、今の深層学習が担う部分というのは、情報と非情報の間をつなぐことだからだ。

情報ではないもの、つまり現実の物理現象や心の動きといったものを「情報化」するのがニューラルネットワークの根本的な特徴である。
そして少しややこしいが、ニューラルネットワークは情報をも「情報でないもの」として扱うことができる。

どういうことかと言うと、AIはたとえば猫(情報でないもの)を見て、「猫だ」という情報に変換し、次に、「猫だ」という先ほど情報化した情報と、猫の写真(情報)を足したものを見て「この猫はかわいい」という新しい「情報」を作り出すことができる。もちろん可愛さの基準とか、猫とはなにかというものを与えなければならないが、AIが学ぶのは、大量の整理されていない(情報化されていない)写真(=画像情報)であって、人間がうまく言葉にしたり定義したり(=情報化)できないが、確実に「こうだ」と感じ取れるようなものをうまく学習し、情報化できる。

したがって、AIの持つ潜在的な作用は非情報から情報への変換であることは間違いない。非情報から情報への変換は、幼稚園児でもできるから、幼稚園児であろうと原理的にはAIを使ったり育てたりできるはずで、それは育てる対象が弟や妹やペットから、AIに変わったに過ぎないからだ。

そして非情報から情報化された情報をうまく使うためには、やはり情報学が必要になる。
20世紀を通して、情報というものの正体がしだいに明らかになり、21世紀は単に情報を使いこなすだけでなく、非情報から情報そのものを作り出す機械を誰もが手に入れることができるようになる。

そのためにはまず情報学の理解と浸透が必要で、仮に数学が全くできなかったとしても、情報学を活用できる能力を身につければ、たいていの問題は解決できるようになるはずである。そのヒントが、おそらくプログラミングという世界にはある。プログラミングは数学者が考えたものだが、数学そのものではない。カツ丼は蕎麦屋が考えたが、蕎麦屋がトンカツ屋でないのと同じように、プログラミング(=情報学)も数学ではない。

そう考えると、今のプログラミング教育はそれはそれで推進するとして、実際に人々の生活に役立つ情報学について我々はもっと興味を持って考えるべきではないだろうか。

来る10月20日に最終審査回と表彰式を控え、今年でついに4回目になる全国小中学生プログラミング大会は、毎回規模を拡大しているが、その審査基準には他のコンテストとは異なり、プログラミングを表現手段として使うという観点を導入している。

これも、実はアイデアという非情報を、子どもたちが言葉という形で情報化し、プログラミングによって活用する能力を評価しているというわけだ。

これからの時代、情報学をどのように捉えるか、そして非情報から情報化されるべきものは何なのかということが非常に重要な論点になってくるだろう。プログラミング教育の開始はそうした時代の幕開けに過ぎない。

WirelessWire Weekly

おすすめ記事と編集部のお知らせをお送りします。(毎週月曜日配信)

登録はこちら

清水 亮(しみず・りょう)

新潟県長岡市生まれ。プログラマーとして世界を放浪した末、 '17年にソニーCSLとWiL LLC.とともにギリア株式会社を設立し、「ヒトとAIの共生環境」の構築に情熱を捧げる。 '17年より東京大学先端科学技術研究センター客員研究員を兼務。著書として「教養としてのプログラミング入門(中央公論社)」「よくわかる人工知能 (KADOKAWA)」「プログラミングバカ一代(晶文社)」など。

RELATED TAG