「頭が良いって何?」の答えは「抽象的思考力」 #13

頭が良いってなんだろう?

最近はAIブームもあって、「知能とは何か?」「頭が良いってどういうこと?」のような疑問が増えている。ちょっと哲学的な問いでもあるし、正解のない永遠のテーマのようで、勝手ながら僕の中ではひとつの結論がでたので説明してみたい。

「頭が良い」とはズバリ「抽象的思考力が高い」ってこと

これ以外の候補としては「記憶力」「計算力」「創造力」「言語力」などいろいろあるけど、「頭の良さ」と一番関係してるのは「抽象的思考力」。

抽象的思考力って?

ざっくり言うと「特徴をおおまかにとらえて把握する能力」。

たとえば、

▼具体的な対象物 ▼抽象化すると・・
柴犬のレオくん
チワワのココちゃん

ペットの犬


動物
4足歩行の哺乳類
足が速い動物

みたいな感じに、ものごとを抽象化して分類する能力のこと。

抽象的思考力があると何がいいの?

「頭が良い人=正しい判断ができる人」で、抽象的思考力が高い人ほど正しい判断ができる。

たとえば、

「柴犬のレオくんはビーフジャーキーを美味しく食べてた」

ことを知ったときに、

「きっと三毛猫のミーちゃんも好きなはずだ。おんなじ哺乳類で肉食だし」

のように、常にものごとを抽象的に把握しているから正しい判断ができやすい。

分かる=分類できるってこと

「分かる」っていうのはその名の通り「分けられる」「分類できる」ってことだ。スキー初心者にとっては「雪」は1種類しかないけど、プロには「パウダースノー」「アイスバーン」など10種類以上に区別できるらしい。分かっている人ほど細かく分類して最適な判断をくだせる。

分類する力は「仕事のうまさ」にも大きく影響している。

▼状況 ▼分かる人 ▼分からない人
営業 顧客課題を分析して豊富な知識から解決策を提案 一般的な提案しかできない
リーダー 部下の強みや状況を詳細に把握し的確に指示 誰にでも同じような指示
エンジニア 要件を分解して把握し部品を組み立てるように実装 よく考えず場当たり的に実装

抽象的思考力が高い人は複雑な状況でもちゃんと整理して的確な判断をくだす。

ところで「勉強ができる人」=「仕事ができる人」じゃない理由は、例えば数学なんかはすでに抽象化されたものを計算する能力(例えば「3つのりんご」も「3つの国」も同じ「3」に抽象化される)であって、抽象的思考力と直結していないケースが多いからだと思う。そしてIQテストはまさに、たとえば図形の共通点を見つけたりと抽象的思考力が重視されているように思える。

 

犬と鳥はどっちが頭が良い?

wikipediaの「知能」に書いてあるように、迷路をクリアするような課題で、犬は障害があっても遠回りしながらゴールにたどり着ける。しかし鳥は遠回りするという考え方が無いためにゴールできない。

両者の本質的な違いは、

いまの状況を一歩引いて考えられるかということ。

犬はおかれている状況を抽象化して客観的に考えて、遠回りしてみることを思いついたけど、鳥はただただこの具体的状況で本能的にゴールを目指すだけで、一歩引いて考えられてないのだ。動物についても抽象的思考力が頭の良さに関係している。

ピアジェによる幼児の研究

赤ちゃんは猿のような状態で生まれて、人類の進化をなぞるように成長していく。ということは、その様子を観察することで人類の「知能」がどのように発達してきたのか解明できるかもしれない。

そんな研究をしたのがピアジェという心理学者で、このように知能は進化するらしい。

幼児の年齢 知能レベル
0〜2歳 最初は自分と他人の区別もなく、目の前にあるものが存在しているという概念も分からないが、徐々にわかってくる
2〜7歳 目の前のものを単語で覚えたり分類できるようになる。まだ目の前に無いものについては考えられないが、徐々にわかってくる
7〜12歳 目の前にないものを考えられるようになり、数字の概念も理解し、計算や分類ができるようになる。ただし目に見えない概念はまだ理解できない
12歳〜 神や道徳・社会といった、目に見えない概念も考えられるように

こう見るとやっぱり知能の獲得とはつまり抽象的思考力の獲得といえるのではないか。もしかすると記憶力や計算力、創造力なんかは子供と大人でそこまで大きく変わらないかもしれないけど、抽象的思考力だけは、脳の成長に合わせて年々すこしずつ高まっていく。(ちなみにIQテストも年齢とともに点数が上がっていくことが知られている)

そういえば僕が小学校高学年になった頃から、急に「それって抽象的だよね、具体的にはどういうこと?」のような会話が増えてきて、「抽象的ってどういう意味?」と困った記憶がある。その頃はきっとまだ知能が未発達で抽象的という概念を理解できていなかったのだ・・笑。

 

プログラミングにも抽象化は大事

プログラミング手法として有名な「オブジェクト指向プログラミング」。抽象化はこれの大事な要素となっている。

抽象化っていうのは、

たとえばもしプログラミングで「犬」と「猫」を作ることになったとして

「犬」と「猫」は抽象化すると「動物」だから、

「動物」に共通の機能、(食べる、寝る、etc..)あたりは「動物」の処理として共通化しよう。
「犬」と「猫」で違う機能(遊ぶ、鳴く、etc..)あたりは個別に処理しよう。

のような感じで作っていくやり方のこと。そもそも処理の集まりを「動物」や「犬」のように、「オブジェクト=もの」として捉える発想が分かりやすいし、こうすることで複雑なシステムも考えやすくなる。コンピュータの専門家が試行錯誤して発明した手法が抽象化に関係しているのは偶然じゃなさそうだ。

 

機械学習がやっていることも抽象化

最近のAIブームは機械学習(ディープラーニング)の進歩によるところが大きい。

機械学習の仕組みをざっくり言うと、

①猫の写真を1,000枚集めて、特徴を学習しデータベース化しておく
②それをもとに新しい1枚の画像を見て猫かどうか判断する

っていうもので、この工程こそが、「猫の特徴を分析して抽象的概念として把握して分類できるようにする」つまり抽象的思考そのもの。

これはGoogleが発表した、大量の「猫」を学習した結果の画像、つまりは抽象的な「猫」の画像。ちょっと不気味だけど、たしかに「猫」って感じがする笑。

参考)Google、脳のシミュレーションで成果……猫を認識|RBB TODAY

 

頭の良さ、それは未来を見通せる力

社長に求められる究極の能力は「未来を見通す力」。そしてここでも抽象的思考力の出番となる。社会が今後どのように変化していくか想像するためにはかなりの抽象的思考力が求められる。未来が予測できる人こそ、本当に頭が良い人だ。

そういう人は例えば、

いまの日本は幕末期と近いから、維新はこういった形で表れるだろう

とか、

中国経済は急成長してて戦後日本と似ているけど、政治体制が違うからこうなりそうだ

みたいな抽象的なイメージを膨らませて、未来を見通すことができる。

 

さいごに:ジョブズは子供にiPhoneを与えず

そう、頭が良いとは抽象的思考力が高いということ。そして抽象的思考力を養うためには子供時代に「漫画」や「ゲーム」を消費することはオススメできないかも。漫画やゲームはすでに消費しやすいように適度に抽象化されているために、抽象的思考力を養う機会が少なくなってしまうからだ。

それよりは「自然とのふれあい」「人との対話」などなど、まだ整理されていない自然で複雑な体験をさせることがより大切に思える。自分の子供にiPhoneを与えなかったスティーブ・ジョブズの子育て法は、そのあたりを意識していたのかもしれない。

ということで、何かの参考になれば!

菅澤 英司
菅澤 英司
bravesoft CEO&つよつよエンジニア社長です。よろしく!