教師ありの学習

教師あり学習のタスクは明確に定義されており、スパムの識別や降水量の予測など、多くのシナリオに適用できます。

教師あり学習の基礎となるコンセプト

教師あり機械学習は、次の基本コンセプトに基づいています。

  • データ
  • モデル
  • トレーニング
  • 評価
  • 推論

データ

データは ML の原動力データは、テーブルに格納された単語や数字の形式、または画像や動画でキャプチャされたピクセルと波形の値となります。関連データはデータセットに保存されます。たとえば、次のようなデータセットがあるとします。

  • 猫の画像
  • 住宅価格
  • お天気情報

データセットは、特徴ラベルを含む個別のサンプルで構成されています。スプレッドシートの 1 行の例と考えることができます。特徴とは、教師ありモデルがラベルの予測に使用する値です。ラベルは「回答」、つまりモデルに予測させたい値です。降雨を予測する気象モデルでは、緯度、経度、気温、湿度、雲の被覆率、風向、気圧などの特徴があります。ラベルは「降水量」になります。

特徴とラベルの両方を含む例は、「ラベル付きサンプル」と呼ばれます。

2 つのラベル付きサンプル

プレースホルダ画像。

対照的に、ラベルのないサンプルには特徴は含まれますが、ラベルは含まれません。モデルを作成すると、モデルは特徴からラベルを予測します。

ラベルのない 2 つの例

プレースホルダ画像。

データセットの特性

データセットは、そのサイズと多様性に特徴があります。サイズはサンプルの数を示します。多様性は、それらのサンプルがカバーする範囲を示します。優れたデータセットは大規模で多様性に富んでいます。

一部のデータセットは大規模で多様性に富んでいます。ただし、データセットは大きいものの多様性が低いものもあれば、小規模で多様性に富んでいるデータセットもあります。言い換えると、大規模なデータセットであっても十分な多様性が保証されるわけではありません。また、多様性が非常に高いデータセットであっても、十分なサンプルが保証されるわけではありません。

たとえば、データセットに 100 年分のデータが含まれているとします。ただし、これは 7 月分のデータのみです。このデータセットを使用して 1 月の雨量を予測する場合、予測の精度が低くなります。逆に、データセットに含まれるのは数年のみで、月ごとにデータが含まれる場合があります。このデータセットにはばらつきを考慮するのに十分な年数が含まれていないため、予測の精度が低下する可能性があります。

理解度チェック

ML で使用するのに理想的なデータセットの属性は何ですか。
大規模 / 多様性
機械学習システムがデータの根本的なパターンを理解するには、さまざまなユースケースをカバーする多数のサンプルが不可欠です。このタイプのデータセットでトレーニングされたモデルは、新しいデータに対して適切な予測を行う可能性が高くなります。
大規模 / 多様性: 低
機械学習モデルの性能は、トレーニングに使用されたサンプルで決まります。モデルは、トレーニングに使用した新しいデータに対して、より不適切な予測を生成します。
小規模 / 多様性が高い
ほとんどのモデルは、小規模なデータセットでは信頼できるパターンを見つけることができません。この予測では、大規模なデータセットが提供する信頼度にはなりません。
小規模 / 多様性: 低
データセットが小さく、ばらつきが少ない場合、機械学習のメリットは得られません。

データセットは、特徴の数によっても特徴付けられます。たとえば、一部の気象データセットには、衛星画像から雲の被覆率の値まで、数百の特徴が含まれている場合があります。また、湿度、大気圧、温度などの特徴が 3 つまたは 4 つしかないデータセットもあります。データセットの特徴が多いほど、モデルは追加のパターンを検出し、予測の精度を高めることができます。ただし、特徴量の数が多いデータセットから必ずしも予測の精度が高いモデルが生成されるとは限りません。一部の特徴量はラベルとの因果関係がないためです。

モデル

教師あり学習におけるモデルは、特定の入力特徴パターンから特定の出力ラベル値への数学的関係を定義する複雑な数値の集合です。モデルはトレーニングを通じてこれらのパターンを検出します。

トレーニング

教師ありモデルは、予測を行う前にトレーニングを行う必要があります。モデルをトレーニングするには、ラベル付きサンプルを含むデータセットをモデルに渡します。このモデルの目標は、特徴からラベルを予測する最適なソリューションを見つけることです。モデルは、予測値をラベルの実際の値と比較することで、最適な解を見つけ出します。モデルは、予測値と実際の値の差(損失として定義)に基づいて、その解を徐々に更新します。言い換えると、モデルは特徴とラベルの数学的関係を学習し、未知のデータに対しても最適な予測を行えるようにします。

たとえば、モデルでは雨が 1.15 inches であると予測しましたが、実際の値が .75 inches だった場合、モデルは予測が .75 inches に近づくように解を変更します。モデルがデータセット内の各サンプルを(場合によっては複数回)確認した後、各サンプルに対して平均して最適な予測をする解決策に至ります。

モデルのトレーニングを以下に示します。

  1. このモデルは、1 つのラベル付きサンプルを受け取り、予測を提供します。

    予測を行うモデルの画像。

    図 1. ラベル付きサンプルから予測を行う ML モデル。

     

  2. モデルは、その予測値を実際の値と比較し、その解を更新します。

    予測と実際の値を比較するモデルの画像。

    図 2. 予測値を更新する ML モデル。

     

  3. モデルは、データセット内のラベル付きサンプルごとにこのプロセスを繰り返します。

    実際の値に対して予測のプロセスを繰り返すモデルの画像。

    図 3. トレーニング データセット内のラベル付きサンプルごとに予測を更新する ML モデル。

     

このようにして、モデルは特徴とラベル間の正しい関係を徐々に学習します。このような段階的な理解が、大規模で多様なデータセットが優れたモデルを生成する理由にもなります。このモデルは、より幅広い値を持つより多くのデータを認識し、特徴とラベルの関係の理解を改良しました。

トレーニング中、ML の実務担当者は、モデルが予測に使用する構成や特徴を微調整できます。たとえば、特定の特徴は他の特徴よりも予測能力が高くなります。そのため、ML の実務担当者は、トレーニング中にモデルで使用する特徴を選択できます。たとえば、気象データセットに特徴として time_of_day が含まれているとします。この場合、ML の実務者はトレーニング中に time_of_day を追加または削除して、モデルの予測精度が向上しているか確認できます。

評価

Google は、トレーニング済みのモデルを評価し、学習の度合いを判定します。モデルを評価する際はラベル付けされたデータセットを使用しますが、モデルにはデータセットの特徴のみを付与します。次に、モデルの予測をラベルの実際の値と比較します。

トレーニング済みモデルの予測値と実際の値の比較を示す画像

図 4. ML モデルの予測値と実際の値を比較して評価する。

 

モデルの予測によっては、モデルを実際のアプリケーションにデプロイする前に、より多くのトレーニングと評価を行う場合があります。

理解度チェック

予測を行う前にモデルをトレーニングする必要があるのはなぜですか。
データセット内の特徴量とラベルの数学的関係を学習するには、モデルをトレーニングする必要があります。
モデルをトレーニングする必要はありません。モデルはほとんどのパソコンで使用できます。
予測のためにデータを必要としないように、モデルをトレーニングする必要があります。

推論

モデルの評価結果に満足したら、モデルを使用して、ラベルのないサンプルに対して推論と呼ばれる予測を行うことができます。天気アプリのサンプルでは、現在の気象条件(気温、大気圧、相対湿度など)をモデルに与え、降雨量を予測します。