| 主なインサイト | 説明 |
|---|---|
| 機械学習は、人が明示的に行動をプログラミングしなくても、コンピュータが行動を獲得することを可能にします。 | 機械学習の定義 |
| 新しい動作の学習は、学習アルゴリズムが、決定木やニューラルネットワークなどの推論モデルの内部表現に加えた変化で実現します。 | 機械学習アルゴリズムの仕組み |
| 推論モデルが多種多様な振る舞いをする際、大量の学習データによって、学習アルゴリズムの選択肢を絞り込みます。 | トレーニングデータの役割 |
| 機械学習アルゴリズムによって構築された推論モデルは、新たなデータに対して問題解決や意思決定を行えます。 | 学習フェーズと応用フェーズの違い |
| ビッグアイデア#3: 学習 | コンピュータはデータから学習することができる | 目標 = Learning Objective(学習目標):生徒ができるようになるべきこと。 理解 = Enduring Understanding(永続的な理解):生徒が知っておくべきこと。LOやEUの説明のために必要な場合は、具体的説明文が含まれています。 | | | | --- | --- | --- | --- | --- | | コンセプト | K-2 | 3-5 | 6-8 | 9-12 | | 学習の本質 (人間 vs. 機械)
3-A-i | 目標: 人がどのように学習するか、コンピュータがどのように学習するかについて説明し、例を挙げる。
理解: コンピュータの学習方法は人とは異なること。
具体: 人は、観察すること、教えられること、質問すること、実験すること、練習すること、過去の経験と関連付けることによって学びます。コンピュータは、データのパターンを見つけたり、試行錯誤したりすることで学習します。
**活動:**あなたが、教えてもらったり、他の人を見たり、質問したりして何かを学んだときのことを説明しなさい。Teachable Machineのようなデモを使用して、コンピュータが正例と負例から何かを学ぶことを説明してみる。 | 目標: 人が学ぶ方法とコンピュータが学ぶ方法を区別する。
理解: 人もコンピュータも、データからパターンを見つけたり、試行錯誤したりすることで学習することができる。しかし、人は柔軟な学習者であり、不慣れな状況に適応し、他の人を観察したり、質問をしたり、過去の学習と関連付けたりして、他の方法で学習することができる。
具体: 人は自然な学習者であるのに対し、コンピューターは学習するようプログラムされなければなりません。現在のところ、コンピューターが学習するためのプログラムには2つの方法がある:人間が提供した例からパターンを見つけて学習する方法と、試行錯誤して学習する方法。 | 目標: 人間の学習の独特な特性を機械学習システムの動作方法と対比する。
理解: 人は、観察すること、教えてもらうこと、質問すること、実験すること、実践すること、そして過去の経験を結びつけることによって学習する。コンピュータは、大量の学習データに特殊なアルゴリズムを適用し、何千、何百万もの試行錯誤を繰り返して、狭く限定された問題の解決によって学習する。
具体: 人は複数の戦略を用いる柔軟な学習者です。コンピュータは、大量のデータや多くの試行を必要とする特化したアルゴリズムを用いて、限定された問題しか解決しません。人間は明示的にプログラミングすることで推論を構築できますが、複雑な問題は機械学習アルゴリズムに任せた方が便利なことが多いです。 | 目標: 教師あり、教師なし、強化学習のアルゴリズムを定義し、各アルゴリズムに類似した人間の学習の例を挙げる。
理解: 教師あり学習と教師なし学習は、どちらもデータからパターンを見つけ出すアルゴリズムである。教師あり学習は、教師から与えられたクラスラベルを予測するために特徴を使用し、教師なし学習は、類似のインスタンスをグループ化して独自のクラスを作成する。強化学習は、強化信号を最大化する行動を選択するポリシーを見つけるために試行錯誤を行う。
具体: 教師あり学習は、コーチに添削されるようなものだ。教師なし学習は、ある店舗で顧客の購買パターンにもとづいて3種類の特徴があることに気づくようなものです。強化学習は、ビデオゲームでさまざまな動きを試し、どれが最も多くの点数(最大の報酬)をもたらすかを見つけ出すようなものです。 | | 学習の本質 (データからパターンを見つける)
3-A-ii | 目標: ラベル付きデータからパターンを特定し、ラベルを予測する特徴量を決定する。
理解: クラスは特徴量の値で定義できる。ラベル付けされた例を調べることで、関連する特徴を推測することができる。
具体: 分類学習の問題について学生に感覚を与えるためには、直感的には明らかでないクラスを学ぶように求める必要があります。例えば、「毒魚」と「毒魚でない」というラベルが貼られた魚のお絵書き画像を調べて「毒魚」を学習します。そして、毒のある魚の特徴(赤い魚で頭が四角いなど)が説明できるようになります。画像を入力とすることで、分類規則が直感的でなくても、特徴が直感的にわかるので、タスクが簡単になります。 | 目標: 教師あり学習がラベル付きデータからパターンを識別する方法をモデル化する。
理解: ラベル付きデータの分類を学習するとき、発見されたパターン(またはルール)は、ニューラルネットワークの重みまたは決定木のノードとして表現できること。
具体: K-2学年帯を発展させ、生徒が提案したルールを口頭で伝えるだけでなく、決定木として描かせる。さらに、クラスの数を増やしたり、クラスの定義を複雑にすることで、3-5学年帯の課題をより豊かなものにすることができる。例えば、魚が赤色で頭が四角いか、青色で頭が丸いか、紫色でトゲがあり頭がどんな形でもよい、といったいずれかの場合で毒があるかどうかが決まります。決定木の各ノードは、色など1つの特徴値をテストできるので、複雑な特徴はより深い木が必要となります。 | 目標: 教師なし学習がラベルのないデータからパターンを見つける方法をモデル化する。
理解: 教師なし学習は、どのようなクラスが存在するのか事前に分からない場合に有効である。近くの点をクラスタにまとめることで、データのパターン(またはクラス)を発見する。クラスターのセットが見つかったら、クラスター境界からの距離に基づいて新しい点を分類することができる。
具体: 平面上の点を用いて、各クラスターの輪郭を描く(例えば、周囲に楕円を描く)ことにより、クラスターの境界を視覚的に構築することができる。 | 目標: 機械学習が分類や予測のための推論器を、推論器のパラメータ(内部表現)を調整し構築する方法をモデル化する。
理解: 教師あり学習は、(人間があらかじめ選んだ)数学的モデルのパラメータを調整し、正しい分類や予測を生成する。このモデルは、単純な線形方程式、高次の多項式、またはディープニューラルネットワークのようなさらに複雑な非線形方程式でもある。入力と出力の関係を符号化した内部表現が、データに見られる「パターン」を表現する。
具体: 回帰では、線形方程式y = mx+bのような数学的モデルを選択し、そのパラメータを一連のデータポイントにできる限り適合するよう調整します。そして、モデルを使用して、任意のx値に対するy値を予測することができます。線形回帰は、直線と点の間の距離を目測することで行うことができます。生徒は、パラメータ値を制御するスライダを備えたグラフ表示を与えられることで、多項式回帰やロジスティック回帰をモデル化できます。スライダーを手動で調節して、データに最も適合すると思われる値に到達させることができます。さらに上級の学生には、平均二乗誤差を使用して、適合の質を数学的に測定する方法を教えることができる。分類問題では、Y値はクラス内の場合は1、「クラス外」の場合は0であり、決定境界は直線または表面y = 0.5です。 | | 学びの本質 (モデルの育成)
3-A-iii | 目標: コンピュータに何かを認識させるための訓練方法を示す。
理解: コンピュータは例から学ぶことができる。
具体: 指導者の支援により、Teachable Machineは手のジェスチャーや音を認識するために使用することができる。 | 目標: 機械学習を使用して分類モデルを訓練し、新しい入力に対するモデルの精度を検討する。
理解: コンピュータは、ラベル付きの例を示すことで、インスタンスを分類したり、値を予測したりすることを学習できる。新しい入力に対する結果が満足のいくものでない場合、精度を向上させるために追加の訓練が必要となることがある。
活動: Teachable MachineやMachine Learning for Kidsを使用して、ウェブカメラの入力やウェブ上の画像検索から訓練事例を収集し、猫の写真を認識するなどのタスクでモデルをトレーニングすることができます。 | 目標: 表形式のデータセットを用いて機械学習による分類または予測モデルの訓練と評価を行う。
理解: コンピュータは、特徴量を調べることで事例を分類したり、値を予測することを学習できる。新しい入力に対する結果が満足のいくものでない場合、精度を向上させるために追加の訓練が必要になることがある。
具体: 表形式のデータセットでは、各訓練例は表の行であり、一連の特徴値によって記述される。分類は各例を離散的なクラス(例:猫や犬)のいずれかに割り当て、予測は年齢から人の身長を予測するなど、連続的な値を出力する。学習アルゴリズムは、ニューラルネットワークではなく、決定木学習が適している可能性がある。
**活動:**Machine Learning For KidsやeCraft2Learnなどのサイトには、決定木学習を含んでいます。学習アルゴリズムは、各クラスについて、どれが関連する特徴で、どのような値を持つべきかを把握する。 | 目標: 教師あり/教師なし学習アルゴリズムのいずれかを用いて実世界のデータでモデルを訓練し結果を評価する。
理解: 教師あり学習では、ラベル付きデータに即した正しいラベルを生成するために、訓練セットでモデルを訓練する。結果は、テストセットで正しくラベル付けされた項目の割合を測定することで評価する。教師なし学習では、各入力を類似した入力のクラスタに割り当てるようにモデルが訓練される。学習データにはラベルが貼られていないため、クラスタは学習アルゴリズムによって決定される。結果は、クラスタがデータセットの有用な区別を捉えているかどうかを調べることで評価する。
具体: 教師あり学習と教師なし学習は、どちらもデータからパターンを見つけ出すアルゴリズムです。教師あり学習では、パターンとは特徴量とクラスラベルの関係のことです。教師なし学習では、データがクラスタにどのように分類されるかがパターンとなります。実世界のデータセットは、現在、ウェブ上で広く公開されています。下位学年では、学習したモデルをいくつかの新しいデータ点でテストしますが、この学年では、自明でないテストセットで訓練したモデルの性能を定量的に測定することが求められます。 | | 学びの本質 (推論器の構築と使用)
3-A-iv | なし | 目標: 機械学習ツールを使用して、訓練データがどのようにラベル付けされるかを実演する。
理解: モデルの訓練の準備として、訓練データは、まずクラス(ラベル)を定義し、次に各クラスの例を個別に追加することでラベル付けすることができる。訓練後、新しいデータをモデルに提示すると、モデルはクラスを予測しますが、データはラベル付けされていないため、モデルはクラス予測の正しさについてフィードバックを受け取れません。
具体: Teachable Machineはデフォルトでは2つのクラスを提供し、各クラスに個別の「Hold to Record」ボタンを備えています。訓練例はどのクラスで記録されるかに基づいて暗黙のうちにラベル付けされます。訓練後、モデルはリアルタイムでウェブカメラの入力を分類しますが、フィードバックは受け取りません。 | 目標: 推論モデルの訓練と使用の違いを説明する。
理解: 機械学習アルゴリズムは、分類や予測を行う推論モデルを構築するために、ラベル付きのトレーニングデータを使用します。訓練中、推論モデルは訓練入力で実行され、学習アルゴリズムは、その出力がよりラベルに近くなるようにモデルを調整します。訓練が完了すると、推論モデルを新しいデータに適用して、問題の解決や意思決定を行うことができます。訓練した推論モデルはこのように使用しても変化することはなく、学習アルゴリズムだけがモデルを変化させることができます。 | 目標: 機械学習を使用して、分類器や予測器を構築するために必要な各ステップで何が起こるかを説明する。
理解: 解決したい問題の決定、訓練データの入手先の決定、特徴セットの選択、データのラベル付け方法の決定、学習アルゴリズムの実行、訓練の停止タイミングを決めるための交差検証セットの使用、パフォーマンスを測定するためのテストセットの使用、というステップである。
具体: 交差検証セットは、過学習を避けるために使用される。テストセットは、訓練中や交差検証に使用されなかった例で構成されており、新しい入力に対する推論者の性能を偏りなく予測することができる。 | | 学びの本質 (内部表現の調整)
3-A-v | なし | 目標: 決定木を構築するゲームを分析し、ツリーの構成とノードを追加するために使用される学習アルゴリズムを説明する。
理解: 決定木の学習ゲームでは、ツリーのブランチのノードは質問で、葉のノードはクラスです。学習アルゴリズムは、ブランチのノードで質問(入力の特徴をテスト)してツリーの中を辿り、葉のノードに到着します。その葉ノードのクラスが正しくない場合、そのノードは新しい質問を持つブランチノードに置き換えられ、葉ノードはそのブランチに再接続されます。
活動: 動物を当てるゲーム、問題のトラブルシューティング、パスタランドのアクティビティ(閉鎖済)は、決定木の訓練を実演するのによい選択肢です。 | 目標: 決定木の学習アルゴリズムの仕組みとニューラルネットワークの学習アルゴリズムの仕組みとを比較する。
理解: 決定木学習では、各ステップが新しいノードを追加し、単一の特徴量をテストする。ニューラルネットワーク学習では、各ステップがネットワーク内のすべての重みに小さな変化を与える。
具体: 決定木の内部表現は、ノード、各ノードが検査する特徴、その特徴が比較される値からなります。ニューラルネットワークの内部表現は、重みです。決定木の学習アルゴリズムは、新しいノードを作成するたびに、最も有益な特徴を調べるように試みます。訓練データを変更することで、次に調べるべき特徴の選択が変わることがあります。ニューラルネットワークでは、訓練データを変更すると、アルゴリズムがエラー信号を減らそうとする際に、異なる重みの調整が行われます。 | 目標: 様々な種類の機械学習アルゴリズムが内部表現を調整することで学習する方法を説明する。
理解: 決定木学習者は、ノードを1つずつ追加することで決定木を構築します。ニューラルネット学習アルゴリズムは、重みを調整します。回帰アルゴリズムでは、方程式のパラメータを調整します。強化学習者は、値の予測や方針を更新します。 | | 学びの本質 (経験から学ぶ)
3-A-vi | なし | 目標: 強化学習によってコンピュータが経験(試行錯誤)から学習できる方法を説明する。
理解: コンピュータは、コンピュータの行動が良い結果につながっているか悪い結果につながっているかを示す「強化」信号があれば、経験から学習することができる。
具体: コンピュータは、直近のゲームで勝ったか負けたか、あるいは何点取ったかを示す強化信号を使用して、ゲームのプレイを学習することができます。コンピュータが熟練者になるには、何十万回とゲームをする必要があるかも知れません。
デモ: 強化学習は、障害物や危険物のある格子状の世界を移動するエージェントを用いて説明することができます。タスクは、目標地点への最適なパスを学習することです。各グリッドのマスでは、東西南北に移動することができます。試行錯誤を繰り返すうちに、エージェントは各マスで行うべき最適な移動を学習します。 | 目標: 教師あり学習と強化学習の違いについて説明する。
理解: 教師あり学習は、エージェントが各入力に対してどんな出力を出すべきか指示する。強化学習は、エージェントが取るべき行動を選択する際に、どの程度うまくいっているのかのみを指示する。
具体: 教師あり学習では、教師が各訓練例に対して正しい出力を示すにあたって、自分が何を間違えているのか学習アルゴリズムは知ることができます。強化学習では、強化信号がモデルのパフォーマンスがどの程度か示しますが、モデルがより良い結果を得るためにどのような行動を選択すべきなのか学習アルゴリズムは知り得ません。これは試行錯誤によって発見する必要があり、熟練者レベルの性能に達するには何十万回もの試行が必要になることもあります。例えば、ビデオゲームをプレイする場合、強化信号は得点の数かも知れません。コンピュータは自分の経験から学ぶので、強化学習は、最適な行動を教えてくれる教師がいない問題でも、解決策を見つけることができます。 | 目標: 推論問題を解決するための適切な機械学習アルゴリズム(教師あり/教師なし/強化学習)タイプを選択する。
理解: 学習アルゴリズムとそれらを用いて解決する推論問題の種類は、分類と予測に使用される教師あり学習、クラスタリングに使用される教師なし学習、逐次的意思決定に使用される強化学習である。
具体: 教師あり学習と教師なし学習は、どちらもデータからパターンを見つけ出す学習アルゴリズムです。教師あり学習アルゴリズムは、ラベル付きの訓練データを使用し、推論モデルのパラメータを調整して正しいラベルを生成しようとします。分類や予測の問題に使用されます。教師なし学習アルゴリズムは、ラベルのないデータを使用し、類似のデータ点をグループ化しようとします。データ内のクラスを発見するために使用されます。強化学習アルゴリズムは、逐次決定問題に使用されます。強化学習は、モデルが受け取る強化量を最大化する行動を選択する方針を学習します。強化学習は、学習が試行錯誤で進められるため、時間がかかることがあります。しかし、コンピュータが自らの経験から学習することで、どの行動が最適か事前にわからない問題でも、解決策を発見できるという利点があります。 |
| ビッグアイデア#3: 学習 | コンピュータはデータから学習することができる | 目標 = Learning Objective(学習目標):生徒ができるようになるべきこと。 理解 = Enduring Understanding(永続的な理解):生徒が知っておくべきこと。LOやEUの説明のために必要な場合は、具体的説明文が含まれています。 | | | | --- | --- | --- | --- | --- | | コンセプト | K-2 | 3-5 | 6-8 | 9-12 | | ニューラル・ネットワーク (ニューラルネットの構造)
3-B-i | なし | 目標: 1~3個のニューロンからなるニューラルネットワークが、出力を計算する関数であることを説明する。
理解: ニューラルネットワークは、1つまたは複数のニューロンを使用して関数を形成する。各ニューロンは、入力として一連の数値を受け取り、出力として1つの数値を生成する。
具体: ニューラルネットワークは互いに接続されたニューロンの集合体です。各ニューロンは一連の入力接続をもち、それぞれに重みが付加されています。各入力接続は値を運び入れます。ニューロンは、各入力値に接続の重みを掛け合わせて、重み付き入力を生成します。すべての重み付けされた入力の合計は、ニューロンの閾値と比較されます。ニューロンは合計が閾値を超えている場合に1を出力し、そうでない場合に0を出力します。出力値は、他のニューロンの入力として使用されます。
活動: 複数入力をもつ1つのニューロン、あるいは1つの出力ニューロンに対しフィードバックする2つの複数入力をもつ隠れニューロンのネットワークの出力を計算してください。このようなネットワークは、「AND」「OR」または「3分の2以上」のような単純な関数を計算することができます。3-5学年向けのニューラルネットの簡単なチュートリアル例については、こちらのリンクを参照してください。https://docs.google.com/document/d/1bYs0tTiL44sQhsMADgU2bDmVjWaVKVl2pT_SYZTzEwI/edit#heading=h.g640mybwbie6 | 目標: ニューラルネットワークの構造を図示し、各部分が出力を計算する一連の関数をどのように形成するか説明する。
理解: ニューラルネットワークは、ユニットの層(入力層、隠れ層、出力層)として構成され、連続する層のユニット間には重み付けされた接続がある。各ユニットは、重み付けされた入力の合計を計算し、その合計を伝達関数を通じて、数値出力を生成する。
具体: ニューラルネットワークは、入力パターンを複雑な方法で出力パターンにマッピングします。各ニューロンは関数を計算し、ネットワーク全体としては、非常に曲線的な数学的関数と考えられる複雑な関数を計算します。 | 目標: ニューラルネットワークアーキテクチャとその用途を説明する:フィードフォワードネットワーク、2次元畳み込みネットワーク、リカレントネットワーク、敵対的生成ネットワーク。
理解: フィードフォワードネットワークは、任意の関数を学習することができ、分類と回帰の両方に使用されます。2次元畳み込みネットワークは、入力と畳み込みの小さな「カーネル」と、画像解像度を下げるため最大値プーリング層を学習します。リカレントネットワークは、フィードバック接続をもち、言語処理に使用されます。敵対的生成ネットワークは、生成モジュールと識別モジュールをもち、ディープフェイクの作成に使用されています。 | | ニューラル・ネットワーク (重み調整)
3-B-ii | なし | 目標: ニューラルネットワークで得たい入力/出力の振る舞いを生み出すために、重みをどう割り当てるか示す。
理解: ニューラルネットワークの振る舞いは、その重みを調整することで変えることができる。 | 目標: 1層ニューラルネットワークの重み調整するために学習ルールをどのように用いるか示す。
理解: 訓練中、ネットワークの出力のエラーに対応して重みが調整され、入力が再度与えられたときにエラーが発生しにくくなるようにする。
具体: 訓練は、2進数単位と重み調整するための簡単な学習ルール(「この犬は私を噛むか」問題におけるパーセプトロンの学習ルールなど)を用いて行うことができます。 | 目標: 誤差逆伝播学習アルゴリズムを使用して多層ニューラルネットワークを訓練し、学習の結果としてニューロンの重みと隠れユニットの出力がどのように変化するかを記述する。
理解: ニューロンの重みは、小さなランダム値で始まり、学習を通してより正確なパターンに進化する。ニューロンの重みの変化は、誤差逆伝播される信号で駆動される学習ルールによって計算される。ニューロンの重みパターンは、ニューロンが検出する特徴を決定する。
具体: 生徒は、誤差逆伝播学習アルゴリズムの詳細を知る必要はありませんが、エラーが後続の層から前方の層に逆伝播されることは知っておくべきです。
活動: TensorFlow Playgroundのようなオンラインデモを使用して、訓練中の重みの変化を視覚化することができます。 |
| ビッグアイデア#3: 学習 | コンピュータはデータから学習することができる | 目標 = Learning Objective(学習目標):生徒ができるようになるべきこと。 理解 = Enduring Understanding(永続的な理解):生徒が知っておくべきこと。LOやEUの説明のために必要な場合は、具体的説明文が含まれています。 | | | | --- | --- | --- | --- | --- | | コンセプト | K-2 | 3-5 | 6-8 | 9-12 | | データセット (特徴セット)
3-C-i | 目標: コンピュータが食品、映画、玩具などの分類を学習する方法を説明するため、明示的な特徴を持つラベル付きデータセットを作成する。
理解: コンピュータが推論できる特徴値の観点から記述することによって物事を分類することができる。その特徴は人が選ぶ。
具体: 食品を健康なものとそうでないものに分類したり、おもちゃを赤ちゃんにとって安全なものとそうでないものに分類したりします。オプションとして、これらの特徴を使用して決定木を作ることもできますが、最も重要なのは、機械学習アルゴリズムにデータを与えて、決定木を作成させることです。 | 目標: 数種類の特徴を明示したラベル付きデータセットを作成し、このデータを用いて機械学習ツールで分類器を訓練する。
理解: 特徴のタイプには、離散値(「ニューヨーク」「ペンシルバニア」「アイオワ」など)、二値(「はい」「いいえ」)、連続値(年齢、身長)などがある。
具体: Machine Learning For Kidsなどのサイトでは、このタイプのデータに基づいて決定木分類器を訓練します。 | 目標: 決定木分類器または予測器を訓練するデータセットを作成し、異なる特徴エンコーディングが決定木に与える影響を調べる。
理解: どのような特徴を含めるか、またその特徴にどのようなエンコーディングを使用するのが最適かは、解決しようとする特定の推論問題によって異なる。
具体: 決定木の各ノードで、学習アルゴリズムは、残りのインスタンスを異なるクラスに分離するために最も役立つ特徴を選ぼうとします。どのクラスとも強く相関しない特徴は、選ばれません。
資料:Machine Learning For Kidsが決定木を描くので、生徒はそれを見て、各ノードでどの特徴が参照されるかを確認することができます。 | 目標: 実世界の2つのデータセットを構成する特徴がどのように符号化されているかという観点で比較する。
理解: 人間が、データセットにどのような特徴を含めるか、またそれらをどのように符号化するかを決定する。これは、これらのデータセットで訓練された機械学習アルゴリズムに影響を与える可能性がある。
具体: 年齢は、月(小児用データセット)、年(成人用)、または年齢範囲(乳児、子供、10代、成人、シニア、後期高齢者)でエンコードできます。連続変数を離散値でエンコードすることで、人間の領域理解に適合した区別を行うよう、学習アルゴリズムを導くことができます。 | | データセット (大規模データセット)
3-C-ii | なし | 目標: 「犬」のような広い概念の分類器を訓練するには、ドメインの多様性を捉えるために大量のデータが必要であることを説明する。
理解: 機械学習が効果を発揮するためには、大量のデータが必要となる。画像内の犬を認識するためには、多くの種類の犬だけでなく、多くの異なる視覚的アングルや文脈が必要となる。
具体: 必要な多様性を生徒がイメージしやすいように、ImageNetやCocoなど、物体認識に使われる標準的なデータセットのいくつかを閲覧する方法もあります。 | 目標: 対象物認識のための訓練セットを構築するため、画像内の対象物をどうセグメント化してラベル付けするか説明する。
理解: 機械学習が効果を発揮するためには、大量のデータが必要となる。データのラベル付けには通常、人間の専門知識が必要であり、労力が必要となる可能性がある。
具体: 生徒に一連の画像を与え、画像内のすべての人、犬、交通標識の周りにバウンディングボックスが描かれるよう、適切なラベルを付けさせます。その後は、数千の例からなるラベル付きデータセットを構築するのにかかる時間を生徒に推定させることもできます。 | 目標: 実際のAIシステムの訓練に使用されたデータセットについて、データセットのサイズ、データの取得とラベル付けの方法、必要なストレージ、データセットの作成にかかる推定時間などを考慮して評価する。
理解: 複雑なドメインの多様性を捉え、推論器の可能な動作の範囲を絞り込むためには、通常、大規模なデータセットが必要である。データセットを構築し、クリーニングし、検証する方法は複数ある。データセットの作成とデータの処理には、大きなコストがかかることがある。訓練データのラベリングには労力がかかり、専門的な知識が必要な場合がある(例:X線写真から病気の発見)。データセット作成の各ステップでバイアスが発生する可能性がある。
具体: 実世界の問題のデータセットには多くの特徴があり、クラスの定義的な特徴には、これらの特徴間の複合的な関係が含まれることがあります。学習すべきクラスを絞り込み、他の何百万もの可能なクラスと区別するために、学習アルゴリズムは多くの例を見る必要があります。
活動: Kaggleなどのリポジトリにある一般的な機械学習データセットや、一般に公開されている人口統計、経学、環境のデータセットを用いて活動できます。 | | データセット (バイアス:偏り)
3-C-iii | 目標: ラベル付きデータセットを調べ、コンピュータが誤った予測をする可能性のあるデータの問題点を特定する。
理解: コンピュータがどの程度分類を学習できるかは、訓練に使用したデータによって異なる。
具体: 健康な食べ物の例がブロッコリー、インゲン豆、エンドウ豆、ホウレンソウ(すべて緑色)であり、不健康な食べ物がドーナツ、ケーキ、キャンディバーだとすると、コンピュータは緑色のグミについてどう結論づけるだろうか? | 目標: 訓練データの特徴とラベルを調べ、潜在的なバイアスの原因を検出する。
理解: 機械学習のアルゴリズムは、正確なモデルを構築するために、代表的なデータのコレクションを必要とする。過去のデータから抽出された訓練データセットには、人間や社会のバイアスが反映されている可能性がある。
具体: Amazonの履歴書ソーターは、過去の採用履歴を統計的に模倣するよう訓練されたため、女性応募者に対するバイアスを学習していました。 | 目標: 訓練データの選択によって分類器の動作がどのように形成されるか、また、訓練セットのバランスが適切でない場合にどのようなバイアスが生じるか説明する。
理解: モデルに対し訓練データに似ていない入力を分類するよう求めたり、訓練データに分類器に依存させたくない無関係な相関関係が含まれていたりすると、バイアスが生じる可能性がある。
具体: 白人の顔だけを対象として訓練された分類器は、黒人やアジア人の顔でうまくいかない。ローン申請を却下された申請者のほとんどがプレザントビル(Pleasntville)に住んでいた場合の申請データセットで訓練された分類器は、プレザントビル(Pleasntville)に住んでいる人に対しては絶対にローンを組まないと決定してしまうかもしれない。 | 目標: データ可視化ツールを用いて、性別、年齢、民族などの人口統計的変数の観点から、偏ったモデルになる可能性がある訓練データの不均衡を調査する。
理解: 機械学習アルゴリズムは、エラー率を下げるのに役立つ訓練セット内の不均衡や相関関係を利用する。データセットが代表的でない場合、これらの相関関係は誤解を招く可能性がある。
具体: 生徒が不均衡や相関関係を発見するためのデータ探索は、Excelのヒストグラムや、Pandas(Python用ライブラリ)などのデータ可視化ツールで行うことができる。 |