ZACKY's Laboratory 山崎 進 研究室 Page Topへ

理系知識習得科目をどう教えるか〜概念と原理のディープラーニング

理系の授業科目は大きく分けて次の2種類があります。

  • 知識習得科目: さまざまな概念や原理を理解することを目的とした科目。
  • 技能習得科目: スキルを身につけることを目的とした科目。

今回は理系の知識習得科目における効果的な授業づくりについて,事例を紹介しながら説明したいと思います。

概念や原理を理解するとはどういうことか

そもそも「概念や原理を理解する」とはどういうことでしょうか。

インストラクショナル・デザインでは,ガニェの学習成果の5分類の言語情報(verbal information)に分類される学習目標だと解釈します。さらには「◯◯を理解する」というように書かれた学習目標は望ましくないと言われています。なぜならば「◯◯を理解する」というのは頭の中の変化に過ぎず本当に習得したのかどうかを客観的に判断できないからです。そこで,言語情報の学習目標では「◯◯(という言葉)の意味を説明できる」というように,習得すればできるようになる行動として具体的に学習目標を書き表すべきだとインストラクショナル・デザインの教科書には書かれています。

さて,このような説明に違和感を覚えませんでしたか? 私たちが教師向けに行ったインストラクショナル・デザインの研修では次のような質問が出ました。みなさんはこのような問題意識に対し,どのように考えますか。

「◯◯を理解する」という学習目標のままの方がより適切だ。なぜならば,「◯◯(という言葉)の意味を説明できる」というのでは,単に言葉を丸暗記して意味を復唱できるという浅い理解だけでしかない。「◯◯を理解する」という目標記述には,より深い理解を期待している。

私も長年ずっとこの問題について考え続けました。すぐにわかったのは,より深い理解を期待したいのであれば,深い理解を達成したときにできるようになる行動で学習目標を記述するのがインストラクショナル・デザイン的には正しいだろう,ということです。しかし,では具体的にどのような行動を目標として設定すれば本来の意図に近い記述になるのか,私はすぐにわからなかったのです。

長年の考察の末,「概念や原理を理解する」ということは次の学習目標を統合したものだと結論づけました。(このような学習目標を「多重に統合された目標: multiple integrated objectives」と言います)

  1. 用語の暗記: 概念や原理に関連する用語とその意味を対応させて説明できる。
  2. 直観的な理解: 概念や原理,用語同士の関連について,例示や図示をしながら説明できる。
  3. 応用技能: 与えられた問題に対し,原理を適用して解を導き出せる。

ケーススタディ〜コンピュータシステムでの授業づくり

では「概念や原理を理解する」ことをどう具体化するのか,「コンピュータシステム」の事例を紹介します。

用語の暗記

用語の暗記は,既存の知識をすぐに検索して調べられるようになった現代情報社会においても,なお重要だと私は考えます。なぜならば,調べたい事柄を検索キーワードとして的確に表現できないと有効な知識に到達できないからです。

用語の暗記に有効な学習方略も従来と同様です。すなわち用語を列挙し,それぞれの用語の意味とともに覚えるということです。人間が一度に覚えられるのは5〜10個の事柄なので,定番となる学習方略はクラスター分析,たとえば47都道府県を覚えるのに地方ごとに分割して覚える(九州地方:福岡県,大分県,…,中国地方,…)方式です。

このクラスター分析のしかたが授業設計上の最重要ポイントです。その具体的なやり方については,次の直観的な理解の項目で説明します。

用語の暗記に用いるツールは,昔ながらの単語カードでも良いでしょう。最近は単語を覚えるためのアプリケーションソフトウェアが登場しています。私たちは近い将来授業で自由に使える単語カードアプリケーションを提供しようと準備しているところです。

アクティブ・ラーニングの考え方に従うならば,調べ学習を適宜取り入れる方略も考えられます。すなわち覚えるべき用語のリストを与え,それらの意味を調べさせるという方式です。注意点としては,調べ間違えて覚えることがあるので,本格的に暗記させる前に調べた内容をチェックするべきだということです。教師が直接確認するのが一番ですが,グループワークやピアレビューによる学生同士の相互チェックを入れてから教師がフォローアップするという方法もあります。

直観的な理解

言うまでもなく用語を丸暗記するだけでは生きた知識になりません。より深い理解のために有効な方法はたとえば次のようなことです。

  1. 覚えた用語を今まで得た知識や経験と結びつける。
  2. 覚えた用語を用いながら,概念や原理について,例示や図示をしながら自分の言葉で説明する。
  3. 覚えた用語同士を関連付ける。

それぞれ事例を交えて説明しましょう。

1. 覚えた用語を今まで得た知識や経験と結びつける。

新たな用語を覚える際に,既に知っていることとの関連付けで理解することは日常的に行っていることだと思います。このとき,新たに覚える際に参照する既知の知識や経験のことを先行オーガナイザ(advance organizer)と言います。

コンピュータシステムでは,オペレーティングシステムのマルチタスクとそれに関連する用語を教授するために,まずマルチタスクを身近な例にたとえさせるという課題を与えました。解答例としては,料理や事務作業などが挙げられます。

2. 覚えた用語を用いながら,概念や原理について,例示や図示をしながら自分の言葉で説明する。

言葉というものは,ただ覚えるだけではなかなか定着しないものです。その場合,実際にその言葉を使って話したり作文したりするといったアウトプットをすると有効です。学習パターンでもアウトプットしながら学ぶことの重要性を訴えています。

アウトプットから始まる学び Output-Driven Learning〜学習パターン No.13

コンピュータシステムでは,マルチタスクの単元で次のような指導方略を採りました。

  1. 単元の初回で次の課題を与える。
    • マルチタスクに関連する用語を覚える。たとえば,プリエンプション,コンテキストスイッチ,スケジューリングなど。
    • マルチタスクを身近な例にたとえさせる。解答例としては,料理,事務作業など。
  2. 単元の2回目で次の課題を与える。
    • 初回であげた身近な例に沿って,初回で覚えた用語を一通り説明させる。解答例としては,事務作業におけるプリエンプションは上司の指示によって現在行っている事務作業を中断することに相当する,など。

単元の2回目の課題を与える際に次のことを促す指示や加点評価,フィードバックなどを合わせて行うとより効果的です。

  • 具体例を示すこと
  • 説明図を描くこと
  • 自分の言葉で書くこと

3. 覚えた用語同士を関連付ける。

新たな用語をまとめて覚える際に関連性のある用語を関連づけて覚えることも,日常的に行っています。前述のクラスター分析による分割はこれに該当します。

コンピュータシステムでは,次のようなことを行いました。

  • 単元の中で覚えるべき用語が多い場合に,クラスター分析をして構造的な順位をつけて分割しました。マルチタスクの単元と同様の教授方略を採用する場合,まず身近な例にたとえやすい主要な用語を先に覚えさせます。これを身近な例に関連付けて直観的に理解させしっかり定着させた後で,既に覚えた用語に関連付けるように新たな用語を覚えさせます。
  • 一通りの学習を終えた後で,覚えた用語を関連深い学習単元ごとに分類させました。

応用技能

覚えた概念や原理を適用して応用問題を解けるようになると,より深い理解ができたと言えます。このような応用問題の多くは,暗記した知識を復唱するような言語情報ではなく,与えられた問題にルールを当てはめて解くような知的技能(intellectual skill)に該当します。

コンピュータシステムでは,コンピュータの動作原理を理解したことを確かめるため,アセンブリ言語レベルの疑似プログラムを与え,CPUがバスを通じてメモリやI/Oにアクセスしながら疑似プログラムを実行する様子を説明させるような応用問題を与えました。この場合の採点基準としては,そもそもの主旨を踏まえ,大筋で説明できていれば合格とします。

おわりに

本記事では,理系の知識習得を目的とした科目において,より深い学習につなげるためにどのように教授するかについて,次の3つの学習目標と教授方略に整理し,それらを統合して授業づくりをすることを説明しました。

  1. 用語の暗記: 概念や原理に関連する用語とその意味を対応させて説明できる。
  2. 直観的な理解: 概念や原理,用語同士の関連について,例示や図示をしながら説明できる。
  3. 応用技能: 与えられた問題に対し,原理を適用して解を導き出せる。

今回示したのはインストラクショナル・デザインの基本的な考え方です。これだけでも応用は効きますが,実際に授業づくりをするには分野の特性に合わせていく必要があろうかと思います。

Q&A

Q1

Facebook〜ブログを書きました。

「…を理解する」より「…の意味を説明できる」は賛成です. 説明できる ということは,理解していることでもあるから. だけど,「…説明できる」ということは,それを聞く相手がいるということかなと思うのです. となると,別の能力も必要になるのかしら…と. また,聞く相手もいろんなタイプがいて,聞く人の能力が高いとか,人柄?^^; などによっても変わってくるのかなと.

通常の場合に想定する相手は教師です。また,説明に用いる手段はレポートや試験のことが多いです。したがって「説明できる」ためには,文章を書く能力が前提となります。なので,たとえば幼児など文章を書けない人の場合にはうまく機能しません。

もし学生同士の相互評価などを実施する場合には,聞く相手は学生になります。その場合,暗黙のうちに「聞くことができる」という学習目標を設定していることになります。

Q2

Facebook〜ブログを書きました。

記載されている「応用技能」は「うんうん^^*」って読ませていただきました.(中略) ただ,仕組みまで知ってるといい,けど,知らなくてもできると思うのです.どこまでをブラックボックスで考えて,授業したらいいのか,そこってわたしの中ではなかなか整理できてなくて.山崎先生はこうしてる!というのがありましたら是非アドバイスいただけると嬉しいです.

それは学生の能力や求める水準,かけられる時間などに応じて教師が設定する問題だと思います。深い理解をさせる必要がないと判断するのであれば,言葉の丸暗記だけでも十分です。この記事では「深い理解をさせたい場合にどうすればいいか」という話をしています。

もうちょっと補足すると,一般論としてどの分野でも,教えること学ぶことはとてもたくさんある一方で,教えたり学んだりするのに使える時間は限られていて全然足りないわけです。そういう前提に立った時に採用できる方針として,基本的に「広く浅く」vs「狭く深く」のトレードオフの問題になってしまいます。「広く深く」ができれば理想かもしれませんが,そんなことは不可能なのです。

T型人材/H型人材という話があります。「広く浅く」と1つの分野の「狭く深く」を組み合わせるとT字型になります。これがT型人材のイメージです。そして1つの分野について深く究めると,あるとき急に「悟り」が開けて,それまで関連性の見えなかった分野のつながりが見えてくるようになります。この形がHの字を横にした形になるので,H型人材と言います。かの有名なスティーブジョブズのスタンフォード大学の講演で「connecting the dots: 点をつなげること」という話があります。若いときには点でしかなかったことが,あるとき急に線になり面になり,というお話です。これはH型人材で言われている現象と一致します。この現象は私自身も強く実感することです。したがって,「広く深く」ができない以上,「広く浅く」と1つの分野の「狭く深く」を組み合わせる方法が最善ではないかと思います。

とすると「広く浅く」と「狭く深く」をどう選択すればいいかという問題になります。私の結論としては,この記事で紹介した用語の暗記は「広く浅く」に該当し,直観的な理解応用技能は「狭く深く」に該当します。学部教育でのアクティブ・ラーニングを前提とした時,「狭く深く」に選ぶべきなのは,案外「学生や教師が心から楽しめること」ではないでしょうか。学部教育までの段階では,「広く浅く」常識をつかんでいて,学習意欲を十分に喚起するのに成功し,さらにアクティブ・ラーニングの習慣も身についているのであれば,あとは学生の知的好奇心がおもむくままに学習が進むであろうからです。ポイントは,学生だけでなく教師も楽しめることです。教師がイヤイヤやっていることを学生が楽しんで習得するはずがないからです。

いったんアクティブ・ラーニングの習慣が学生に定着したならば,教師はナビゲーター/ファシリテーターとして学生が関心を持つテーマを自分で調べる手助けをすればいいでしょう。これこそがアクティブ・ラーニングが目指す学習像です。その辺りの話は,また機会を改めて詳しく説明したいと思います。

Q3

Facebook〜ブログを書きました。

「用語の暗記」.地方ごとに覚える. 似たようなことで,なかなか全部覚えきらないとき,「この本のここに載っている」ということだけでも覚えていると,わからないとき,すぐに見つけ出せる!というのを学生に話したこともありました. つまり,「本の目次だけでも覚える作戦」 クラスタ分析,勝手に「似てる!」と思ってしまいました ^^;

「本の目次だけでも覚える作戦」は,適切に目次が記述された書籍ならば有効な指導方略ですね。おっしゃるようにクラスタ分析で導き出された構造は目次みたいなもので,著者の知識体系を形にしたものです。なので,クラスタ分析は教師の力量やセンスが問われることだと思います。

Q4

Facebook〜ブログを書きました。

目標は試験時を想定して立てればよいということですか

はい。最終的に課す試験やレポート等で想定している学習目標(到達目標)を中心に考えます。

目標は予習、授業、試験の段階でスパイラルに考えられていますか

目標をスパイラル的に考えるというよりは,最終的な到達目標を習得するのに必要な下位目標を分析し,授業の進行とともに下位目標を順番に教授する感じです。

たとえば47都道府県名を覚える到達目標だとしたとき,この目標は言語情報なので,地方名を覚えることと各地方の都道府県名を覚えることを下位目標とします。第1回の授業では地方名を覚える,第2回の授業では九州地方の都道府県名を覚える,という具合に順番に教授していきます。

ちなみにスパイラルカリキュラムという考え方もあります。

スパイラルカリキュラム: 鈴木先生との議論

Q5

Facebook〜用語を丸暗記するだけでは生きた知識になりません。より深い理解のために有効な方法を紹介します。

仕事でも新しい言語や技術に取り組むときに、こういった手順を踏めると実務レベルにあがるまですごく早まると思います。

単語や概念がわからずに使っていて、思わぬバグを仕込む事も多く、今までの自分の経験と、新たに覚えた知識のリンクができるとものすごく腹に落ちたりします。

わかりやすく書いていただき、勉強になりました。

自分が勉強に取り組む時や、仕事で新しい技術にふれる同僚や後輩がいた場合にも順序立てて勉強していけます。 ありがとうございます。

ありがとうございます。

教師が本業ではない人が教える場合(たとえばプログラマが本業で時々後輩を指導している場合)に最初に読むべきインストラクショナル・デザインの本は「いちばんやさしい教える技術」です。

この本については学生が紹介記事を書きました。参考にしてください。

いちばんやさしい教える技術〜あらみそかもすぞ

ちなみに教師が本業の人が教える場合(学校の先生はもちろん,企業でも研修を主業務としている場合)に最初に読むべきインストラクショナル・デザインの本は「教材設計マニュアル」です。

Q6

Facebook〜ブログを書きました。

とても勉強になりました.

理解にはいろいろな側面とレベルがあり,分野によっても何が「理解」であるのかは異なりますね.(中略)

そういった長い旅路をまず始めるにはどう動機づければいいのか,学びのプロセスのグラフ構造をどう巡回させていくのか,ノードとなる知識の反復が効果的であるためにはどうするか,学ぶ人の多様性を前にしていろいろと悩むところです.

分野によって何が「理解」であるのかは異なるのはおっしゃる通りです。大枠ではこの記事で示した「用語の暗記」「直観的な理解」「応用技能」に沿って分解できるのだろうと思いますが,それぞれが具体的にどのような知識や技能が必要になってくるかが分野によって変わってくるでしょう。

「そういった長い旅路をまず始めるにはどう動機づければいいのか」の基本は,課題分析図を示すことです。課題分析図については教材設計マニュアルや下記を参照ください。

第5章 教材の構造を見極める

教材設計マニュアル―独学を支援するために

動機づけとしては,次のように行います。

  1. まず最終的な学習目標を達成するとどんなことができるようになるのかを説明します。これはARCSモデルでいうとR:関連性に該当します。たとえば私が行ったUMLモデリングの授業では,UMLモデリングの意義を説明し,最終試験で登場するような UML 図を示しました。

  2. 次に課題分析図を示します。ポイントは「難しそうだけど,何とかやれそうだな」という自信を与えることです。これはARCSモデルではもちろんC:自信に該当します。UML モデリングの授業では,さらに学習者に自信をつけさせるために,課題分析図を示しただけでなく,初回の授業を学んだ後で,もう一度最終試験例の UML 図を示し,一部が理解できるようになったことを確認させました。

「学びのプロセスのグラフ構造をどう巡回させていくのか」についても,下記が参考になります。

第5章 教材の構造を見極める

ただし,この原則にしたがっても全ての順序性を定義できない場合が多いです。たとえば言語情報の課題には基本的に順序性はありませんし,知的技能の課題でも課題が並列する場合には順序性はありません。インストラクショナルデザインの原理の第9章では,このような場合にどのように順序づけるかを論じています。

インストラクショナルデザインの原理

「ノードとなる知識の反復が効果的であるためにはどうするか」「学ぶ人の多様性を前にしていろいろと悩むところ」については完全習得学習(mastery learning)の考え方が参考になるでしょう。下記を参照ください。

完全習得学習と形成的テスト

最近の反転授業でも現代のITを使って完全習得学習が再発明され,完全習得型反転授業(Flipped-Mastery model)と呼ばれています。詳しくは下記を参照ください。

反転授業

反転授業

初等C言語プログラミングでは完全習得学習の一形態であるPSI:個別化教授システムを実現した向後千春先生のウェブ教材「ネコのぶきっちょと学ぶC言語(2002)」を採用しました。この授業では,学生はeラーニング教材で個別に自習し,各単元を修了したことを確認するテストを受けて次の単元へ進みます。学生の多様性の問題については,究極的にはこのように個別学習を中心とした学習形態になっていくのではないでしょうか。

UMLモデリングの授業でも,完全習得学習を実現すべくいろいろ工夫しました。いずれブログで紹介したいと思います。

<< 授業づくりはまずコンセプトづくりから〜事例に学ぶコンセプトづくり 電子情報通信学会シンポジウム講演>>