Big Idea 2 – Representation & Reasoning
| 主なインサイト | 説明 |
|---|---|
| 表現とはデータ構造のことで、推論方法とはアルゴリズムのことである。 | 人工知能はコンピュータ科学のツールを使用します:データ構造とアルゴリズム |
| 表現は推論をサポートし、推論方法は表現に作用する。 | 表現と推論は相互にを依存します。 |
| 知識表現には大きく分けて記号表現と数値表現の2種類があります。 | 記号表現による推論は論理的な推論ルールで行い、数値表現による推論はニューラルネットワークなどの複雑な数学的関数で行います。 |
| 何かを"知っている"ということは、それを表現し、それを用いて推論する両方の能力です。 | 書籍や映像は知識を表現できますが、その知識を利用することはできないので、物事を「知っている」ことにはなりません。 |
| エージェントは、目標達成に向けて前進するために、非自明な感覚-思考-行動のサイクルを用いる場合、知能を持つとみなされます。 | 知能とみなされるには、感知、熟慮(推論)、行動のうち少なくとも1つの要素が、計算論的な洗練さ、または大量の計算能力を必要とすべきです。ガレージドア・オープナーは、感知、推論、行動のすべてが自明なものであるため、知的エージェントではありません。 |
| ビッグアイデア#2:表現と推論 | | コンピュータは世界のモデルを保持し、それを推論に利用する。 | 目標 = Learning Objective(学習目標):生徒ができるようになるべきこと。 理解 = Enduring Understanding(永続的な理解):生徒が知っておくべきこと。LOやEUの説明のために必要な場合は、具体的説明文が含まれています。 | | | --- | --- | --- | --- | --- | | コンセプト | K-2 | 3-5 | 6-8 | 9-12 | | 表現 (抽象化)
2-A-i | 目標: 自宅、学校、近隣の地図を作成する。
理解: 地図は領域そのものではないこと。地図は領域の表現であること。 | 目標: 異なるスタイルの地図が、世界のさまざまな側面をどのように捉えているかを示す。
理解: 地図は、幾何学的に正確なものから、どの場所がどの場所から行けるか(トポロジー)を示すだけのものまであること。都市や町の名前や大きさ、それらを結ぶ道路の種類など、さまざまな情報が含まれること。
具体: 自動運転車は、道路地図に頼ってルートを計画します。地下鉄、電車、バスの路線図には、幾何学的なものとトポロジカルなものがあります。 | 目標: ゲームボード(例えば、三目並べ、すごろく、モノポリー、チェス)が平易な言葉でどう表現できるか説明する。
理解: ゲームボードの本質的な情報とは、ボードを構成するマスの集合と、そのマスの関係、そして駒の位置であること。
具体: ゲームプレイプログラムは、盤の抽象的な表現で動作します。チェスプログラムは、64マスすべてのランクとファイルを知っていますが、物理的なボードの寸法や材質などの特性は表現していません。 | 目標: 概念をスキーマとして表現する方法を説明する。
理解: スキーマは、上位概念をリストアップし、そのプロパティを定義することによって概念が説明されること。例はschema.orgで見ることができる。
具体: 何百万ものウェブサイトがスキーマ表現を使い、知識グラフを利用する検索エンジンや推薦システムなどのAIプログラムが情報を理解しやすくしています。例えば、レストランなどのビジネスのスキーマや、書籍、映画、テレビシリーズなどの創作物を記述するスキーマなどです。 | | 表象 (記号的表現)
2-A-ii | 目標: 日常生活で遭遇するシンボルの例を挙げる。
理解: 概念は、言葉の代わりに記号を使用して表現できること。
具体: 記号の例としては、トイレの男性・女性表示、絵文字、トランプのクラブ/ダイヤ/ハート/スペード、通貨のドル・セント、信号機の赤い八角形、「Mr.Yuk」の毒物マークなどがあります。AIプログラムも人間と同じように記号を使います。 | 目標: 人々がよく使うツリー構造の例を挙げ、構成要素間の関係を説明することができる。
理解: 多くの情報には階層構造があり、それをツリーとして可視化することができます。
具体: 祖先の木、タクソノミー、目次、組織木、そしてマインドマップの単純な形はすべて同じ階層構造を持っています:ルートを救うすべてのノードは、より高い階層に現れる親ノードへの単一のリンクを持っています。分類学的情報は、AIシステムが使用する知識グラフの重要な部分であり、通常、大きなグラフの中でツリー構造を形成しています。 | 目標: ゲームボード、ロードマップ、マインドマップなどの構造をラベル付きグラフに変換する例を示し、構成要素の貢献を説明する。
理解: グラフのノードは物事を表し、リンクはそれらの物事の間の関係を表している。ラベルは、ノードとリンクが何を表しているかについての追加情報を提供していること。
例: 「すごろく(すべり台とはしご:Chutes and Ladders)」(元は「蛇と梯子(Snakes and Ladders)」)ゲームでは、マスはグラフのノードとして表現されます。隣接するマスを表すノードは、「後続」リンクで結ばれています。すごろくやはしごで到達できるマスを表わすノードは、「すごろく」「はしご」リンクで結ばれます。ロードマップでは、都市がノードで、道路がリンクです。リンクには、道路名や走行距離のラベルが貼られることもあります。マインドマップは、コンピュータではなく、人が使う非公式な知識グラフの一種です。 | 目標: 英語で表現された三段論法の前提を論理表記に変換し、三段論法を正しく完成させる。
理解: コンピュータが簡単な推論ルールに従って既存の知識から新しい知識を導き出すことができるように、カテゴリーやインスタンスに関する記述を表現するのが三段論法であること。三段論法の構成要素は、大前提、小前提、および結論であること。
具体: 人間の推論は豊かで複雑であり、その仕組みを完全には説明できません。三段論法的推論は、その方法について正確なルールを書くことができる単純な特殊なケースです。三段論法的推論とは、分類情報を利用するAI推論器によく見られる論理的演繹法の一種です。例:すべての人間は哺乳類である、すべての哺乳類は生物である、したがってすべての人間は生物である。三段論法は様々な表記が可能である。ここでは、述語論理に基づくものを紹介する: ∀x [ Human(x) → Mammal(x) ] ∀x [ Mammal(x) → LivingThing(x) ]______________________________ ∀x [ Human(x) → LivingThing(x) ] | | 表現 (データ構造)
2-A-iii | 目標: 各ブランチを副ブランチに分割することを複数回繰り返してツリーを描き、各ブランチにデータの断片を置く。
理解: ツリーとは、情報を整理するための方法であること。
具体: ブランチには多くの種類のデータを配置することができます。決定木の場合、データは質問と回答になります。家系の木の場合は、「母」ブランチと「父」ブランチがあります。分類学的なツリーでは、特異性が高まる分類があります。例えば動物と植物、哺乳類と爬虫類、霊長類と齧歯類などです。ガイド付きアクティビティ
資料:木の描画練習 | 目標: ツリーの各部分と、それらの部分がどのように関連しているかを説明する。
理解: ツリーはラベルを付きのノードの集まりで、(ルートを除く)各ノードは階層構造として上位の親ノードへのリンクを持っていること。子のないノードは葉または終端ノードと呼ばれ、子のあるノードは非終端ノードでと呼ばれること。 | 目標: グラフのパーツとそれらのパーツがどのように関連しているかを説明する。
理解: グラフは、ラベル付きリンクで結ばれたラベル付きノードの集合体であること。すべてのリンクは、ソースノードとターゲットノードを持ち、すべてのノードは、入力リンクの束と出力リンクの束を持つこと。ツリーはグラフの特殊なケースであること。
具体: AIにおけるグラフは、ロードマップ(都市がノード、道路がリンク)、迷路、知識グラフなどの表現に使われます。知識グラフは、人、場所、物、それらの間の関係を表現することができます。マインドマップはほとんどがツリーですが、1つのノードに複数の経路を持つことが可能であり、マップをグラフにすることができます。各ノードは概念であり、リンクは概念間の関係でラベル付けされることもあれば、ラベル付けされないこともあります。 | 目標: 知識グラフ内で、人、場所、または物に関する情報を構造化するためにスキーマがどう使用されるか説明する。
理解: スキーマは、説明されている概念の属性と他の概念との関係を明記する。例えば、RestaurantスキーマはFood Establishmentスキーマからプロパティを継承している。
具体: 知識グラフは、物事とそれらの間の関係に関する情報を符号化したものです。Googleなどの検索エンジンは、検索結果で知識パネルを生成するため知識グラフを利用しています。RestaurantとFood Establishmentのスキーマは、schema.orgで定義されています。 | | 表現 (特徴ベクトル)
2-A-IV | 目標: コレクション内の各オブジェクトを一意にする特徴を特定し、オブジェクトを整理するための特徴テーブルを作成する。
理解: オブジェクトは、それが持つ特徴にもとづいて説明できること。
具体: これは、形、大きさ、色の異なるレゴブロックのように単純なものであったり、猫、犬、鶏、金魚、ペンギンなどの動物の種類を区別する特徴(例えば、毛の有無、飛べるか否か、など)であったりします。また、異なる感情の状態を示す顔絵文字を記述する特徴も選択肢の一つです。 | 目標: 一連のオブジェクトの特徴ベクトル表現を構築し、類似したオブジェクトが特徴空間で近くに存在することを示す。
理解: 推薦システムは、映画、書籍、消費者製品、ソーシャルメディアへの投稿などを特徴ベクトルを用いて表現すること。
具体: 特徴ベクトルは、概念を数値の列として表現します。2つの特徴ベクトルの距離は、両者が一致しない位置の数を数えることで測定できるため、特徴空間では似たようなものが近くに位置します。特徴ベクトルは手作業で構築することもできますが、機械学習によって自動的に構築することもできます。
例: 「パスタランド」の演習では、生徒は様々な種類のパスタを識別する判別木を作成します。このツリーのノードを構成する質問は、パスタの種類の二値特徴ベクトル表現のための特徴を提供することができます。 | 目標: 単語埋め込み(これらは特徴ベクトル)がどう単語を数値の系列として表現するか説明する。
理解: 単語埋め込みは、ニューラル自然言語処理の重要な部分であり、機械翻訳(Google翻訳など)やテキスト生成システム(BERT、GPT3など)に含まれていること。
具体: 各単語は、多次元の特徴空間における点であり、似たような意味を持つ単語が特徴空間内で互いに近接するように配置されています。Word2VecDemoを参照してください。 | 目標: transformerネットワークがどのように動作するか説明する。
理解: transformerネットワークは、単語の系列を入力として取り、それを出力の単語の系列にマッピングすること。単語は特徴ベクトルとして表現されること。
具体: 機械翻訳や質問応答などのニューラルネットワークによる自然言語処理アプリケーションは、特徴ベクトルである単語埋め込み表現によって駆動されます。単語は一度に1つのベクトルで入力され、ネットワークは一度に1つのベクトルで出力します。
活動: https://app.inferkit.com/demo |
| ビッグアイデアその2:表現と推論 | | コンピュータは世界の表現を保持し、それを推論に利用する。 | 目標 = Learning Objective(学習目標):生徒ができるようになるべきこと。 理解 = Enduring Understanding(永続的な理解):生徒が知っておくべきこと。LOやEUの説明のために必要な場合は、具体的説明文が含まれています。 | | | --- | --- | --- | --- | --- | | コンセプト | K-2 | 3-5 | 6-8 | 9-12 | | 検索 (状態空間とオペレータ)
2-B-i | 目標: 三目並べゲームにおいて、開始時の状態から次に起こりうる状態を図示する。
理解: 三目並べのようなゲームは、一手ごとに状態から後継の状態へと遷移する、一連の状態として記述することができること。
具体: 各状態を独立した三目並べボードとして描くべきです。生徒がどの手を選ぶかによって、答えが変わる可能性があります。資料: オンライン三目並べゲーム - https://playtictactoe.org/またはhttps://www.coolmathgames.com/0-tic-tac-toe | 目標: コンピュータが、三目並べやニムなどのゲームのプレイを、プレイヤーの動きによって生成されるボード位置の直線的なシーケンスを描くことによってどう表現するか説明する。
理解: コンピュータは、合法的な手によって連結された状態(ボードの位置)のシーケンスを作成し、各ステップで次の手を選択するアルゴリズムを使用して、ゲームやパズルを解くこと。
具体: ゲームの状態空間(または探索空間)とは、開始状態から到達可能なすべての盤面状態の集合(図)であり、オペレータとは、ゲームのルールに準拠したプレイヤーが行うことのできる可能な手(行為)の集合です。特定のゲーム(ボード位置の直線的なシーケンス:図)は、この状態空間を通過する1つのパスです。 | 目標: コンピュータが迷路を解いたり、地図上のルートを見つけたり、知識グラフの概念を推論したりする方法を、検索ツリーを描くことで説明する。
理解: コンピュータは、検索ツリーを構築するグラフ検索アルゴリズムを使用して、迷路を解いたり、運転ルートを見つけたり、知識グラフの概念を推論したりすること。
具体: グラフ探索問題の探索空間は、グラフの指定された開始ノードから出発するすべての経路の集合です。迷路を解くのに使われるオペレータは、ノードを東西南北に移動させます。より一般的なグラフ探索の場合、オペレータは終点に新しいノードを追加してパスを拡張します。合法的な移動は、グラフ内の直接リンクで到達可能なノードを追加します。合法的な状態とは、一連の合法的な移動によって到達可能な状態です。例: カンガルーが哺乳類かどうかを判断するために、知識グラフの「カンガルー」ノードから「哺乳類」ノードまでのパスで、「is-a」リンクで構成されるパスを検索します。簡単な入門記事。 | 目標: 現実世界の問題のうち、探索問題の種類を特定し、その状態やオペレータを説明する。
理解: コンピュータは、問題が開始状態から目標状態へのパスを見つけるという観点から記述できるならば、探索技術を使用して多くの種類の問題を解決できること。
具体: 例えば、タスク計画問題、スケジューリング問題、資源配分問題などがある。探索アルゴリズムは、どのオペレータをどの順番で適用するかを決定します。目標状態に到達するための合法的な動き(オペレータ)のシーケンスを見つけることは、解がシーケンスでない問題に対しても使用することができます。例えば、様々な大きさのオブジェクトの集合を、様々な容量のコンテナの集合に詰め込むという問題がある場合、解は、どのコンテナも詰め込みすぎず、どのオブジェクトも取り残さないように、オブジェクトのコンテナへの割り当てとなります。これは、あるオペレータが1つのオブジェクトをそれを入れることができるコンテナに配置し、目標状態ではすべてのオブジェクトが配置されている、という探索問題として定式化できます。この種の問題では、オペレータを適用する順序は問題ではありません。 | | 検索 (組合せ探索)
2-B-ii | 目標: 単純な探索ツリーを描くことで、与えられた三目並べゲームの盤面の状態に対して2つの異なる後継状態を描いたツリーを形成することにより、2つの可能な手の選択肢を説明する。
理解: コンピュータはゲームをするときに、人間と同じように選択をしなければならないこと。
具体: 生徒は、ゲームの開始状態をrootとし、rootから降りてくる2本のブランチが代替手を示す3ノードのツリーを描きます。開始時の状態は空の盤である必要はありません。(図) | 目標: 三目並べやニムなどのゲームの状態が与えられたとき、すべての可能な次の手とその結果の状態を示す探索ツリーを描き、最適な次の手を選ぶ。
理解: コンピュータゲームをプレイするプログラムは、次の手を決定するために探索ツリーを構築することがあること。
具体: 探索ツリーは、ゲームで可能なすべての手を体系的に探索する方法です。(図)ゲームの状態空間とは、スタート状態から到達可能なすべての盤面状態の集合であり、オペレータとは、プレイヤーがゲームのルールを遵守して行うことができる可能な手の集合です。 | 目標: 幅優先探索を用いてグラフ探索問題を解くプロセスをモデル化し、探索ツリーを描きます。
理解: 幅優先探索は、グラフの推論を伴う問題を解決するために使用できること。
具体: 幅優先探索では、探索ツリーの現在のレベルにあるすべてのノードを一度に1つずつ展開して、次のレベルを生成します。そして、次のレベルが拡張され、目標に到達するまでこのプロセスが続けられる。友人関係のグラフが与えられた場合、2人の人間が共通の友人を持っているかどうかを判断することは、グラフ探索問題です。また、「ケビン・ベーコンの6度」のように、2人の隔たりの度合いを判定するのもグラフ探索問題です。 | 目標: グラフ検索問題の検索ツリーを成長させるための幅優先、深さ優先、最良優先の検索アルゴリズムを説明する。
理解: 探索ツリーを生成するアルゴリズムは複数あり、それぞれに独自の利点があること。
具体: ツリーを描いて図示する、コードを書くのは上級者(APCSA)に適している。幅優先探索は、浅い解があればすぐに見つけられますが、多くのメモリを必要とします。深さ優先探索は、各レベルのノード数が指数関数的に増加する場合でも、メモリ使用量が少ないため、幅優先探索より優れています。最良優先探索は、道路地図上の総距離のような、解の「コスト」を正確に測る尺度があれば、最適な(最小コスト)解を見つけることができ、一方、幅優先や深さ優先の探索が見つける解が最適である保証がないのは、コストに注意が払われていないからです。 |
| ビッグアイデアその2:表現と推論 | | コンピュータは世界の表現を保持し、それを推論に利用する。 | 目標 = Learning Objective(学習目標):生徒ができるようになるべきこと。 理解 = Enduring Understanding(永続的な理解):生徒が知っておくべきこと。LOやEUの説明のために必要な場合は、具体的説明文が含まれています。 | | | --- | --- | --- | --- | --- | | コンセプト | K-2 | 3-5 | 6-8 | 9-12 | | 推論 (推論問題の種類)
2-C-i | 目標: 問題を分類問題か探索問題のいずれか特定する。
理解: 分類問題では、その特徴からどのようなものがあるかを判断します。探索問題では、地図上のルートを見つけたり、ゲームで可能な手を探したりするような、開始点から目標までのパスを探します。 | 目標: 問題を分類問題と探索問題のいずれかに分類する。
理解: 分類問題は、各入力をあらかじめ決められたクラス群のうちの1つに割り当てる。探索問題は、状態にオペレータを適用して新しい状態を生成することで答えを構築する。
具体: Teachable Machineのように、画像を犬の写真や猫の写真としてラベル付けすることは、分類問題です。与えられた開始位置から1手で到達できる盤面ポジションを見つけることは、探索問題の一例です。 | 目標: 問題を分類、予測、組み合わせ探索、逐次決定問題のいずれかに分類する。
理解: 予測問題は、身長や日々の気温など連続的な値を推定することを除けば、分類問題に似ている。逐次決定問題は、与えられた状態に対して、全体の報酬を最大化するために次の手を選択する。
具体: 逐次決定問題はBig Idea 3で取り上げられており、強化学習を使用して対処されます。
例: スパムとそうでないもの(分類)、明日の最高気温(予測)、オオカミ、ヤギ、キャベツ問題などのパズルを解く(組合せ探索)、スーパーマリオなどのテレビゲームをプレイする(逐次決定問題)。 | 目標: 現実世界の問題を、分類、予測、逐次決定問題、組み合わせ探索、ヒューリスティック探索、敵対的探索、論理的演繹、統計的推論に分類する。
理解: 推論問題は、供給される入力の種類、生成される出力の種類、および探索空間の特徴(該当する場合)に基づいて分類することができます。
具体: ヒューリスティック探索は、状態空間が大きすぎて可能な状態をすべて調べることができない場合に必要とされるもので、経験則(ヒューリスティック)を用いて、最も有望な状態に焦点を当てることで探索を制限する。ゲームプレイで使用される敵対的探索では、アルゴリズムは、プレイヤーにとって最良の手を見つけることと、プレイヤーから見て最悪の手となる相手にとって最良の反応を見つけることを交互に繰り返します。チェスや囲碁のようにゲームが複雑な場合、逆説的探索にはヒューリスティックが必要になることがあります。論理的演繹では、推論者は事実の集合から出発し、推論ルールを適用することで新たな事実を導き出す。論理的演繹は、命題論理や述語論理などの形式論理、あるいは意味ネットワークやエキスパートシステムに見られるIF-THENルールなどのアドホックな推論ルールで行うことができます。統計的推論では、確率を使用して推論を行ないます。 | | 推論 (推論アルゴリズム)
2-C-ii | 目標: 問題を解決するため、分類または探索アルゴリズムの利用をモデル化する。
理解: 推論アルゴリズムは、推論問題を解決するための方法であること。
具体: 生徒たちは2-A-ivで作成した特徴量表や、3-A-vで作成した決定木を使用して、分類の問題を解くことができます。また、2-A-iで作成した地図を使用して、地図検索の問題を解くことができます。 | 目標: 物事を分類するための2つのアルゴリズム:決定木とTeachable Machineのようなニューラルネットワークの違いについて説明する。
理解: 複数のアルゴリズムを用いて推論問題を解くことができること。
具体: パスタの分類は、決定木を構築するか(「パスタランド」のアクティビティを参照)、各パスタの種類のサンプル画像でTeachable Machineのような視覚的分類器をトレーニングすることによって行えます。
パスタランド説明文 - https://www.aimyway.com/blank-page-1(閉鎖済) | 目標: 問題を解決するため、分類または探索アルゴリズムの利用をモデル化する。
理解: 推論アルゴリズムは、推論問題を解決するための方法であること。
具体: 生徒たちは2-A-ivで作成した特徴量表や、3-A-vで作成した決定木を使用して、分類の問題を解くことができます。また、2-A-iで作成した地図を使用して、地図検索の問題を解くことができます。 | 目標: 推論問題タイプ(分類、予測、逐次決定、組み合わせ探索、ヒューリスティック探索、敵対的探索、論理的演繹、統計的推論)それぞれについて、問題を解決するために使用できるアルゴリズムをリストアップする。
理解: AIには、様々なタイプの推論問題を解決するための多種多様な推論アルゴリズムが含まれている。記号的表現を用いるもの(例えば、探索木)もあれば、数値的なもの(例えば、特徴ベクトルで動作するニューラルネット)もある。
具体: 推論問題は、2-C-iで解説しています。アルゴリズムの選択は、入力データの特性や決定すべきことの複雑さによって決まります。ヒューリスティックな探索アルゴリズムには、最良優先探索やA*探索がある。逆説的探索は、組み合わせ探索の変種や、α-βプルーニング(刈り込み)を用いたヒューリスティックな方法で行うことができます。論理的推論は、解決定理証明やアドホックなIF-THENルールの適用によって行うことができます。統計的推論では、確率や分布を用いた推論を行うかベイジアンネットワークなどがあります。 |