回帰

完了

回帰モデルは、特徴量と既知のラベルの両方を含むトレーニング データに基づいて数値ラベル値を予測するようにトレーニングされます。 回帰モデル (または、実際には任意の教師あり機械学習モデル) をトレーニングするプロセスには、適切なアルゴリズム (通常はパラメーター化された設定を伴う) を使用してモデルをトレーニングし、モデルの予測パフォーマンスを評価し、許容できるレベルの予測精度が得られるまでさまざまなアルゴリズムとパラメーターでトレーニング プロセスを繰り返してモデルを調整する、複数回のイテレーションが含まれます。

教師ありモデルのトレーニングと評価のプロセスを示す図。

この図は、教師あり機械学習モデルのトレーニング プロセスを構成する 4 つの主要な要素を示しています。

  1. トレーニング データを (ランダムに) 分割してデータセットを作成し、それを使用してモデルをトレーニングする一方で、トレーニング済みモデルの検証に使用するデータのサブセットを確保します。
  2. モデルにトレーニング データを適合させるアルゴリズムを使用します。 回帰モデルの場合は、"線形回帰" などの回帰アルゴリズムを使用します。
  3. 確保した検証データを使用して、特徴のラベルを予測することでモデルをテストします。
  4. 検証データセット内の既知の "実際" のラベルを、モデルが予測したラベルと比較します。 次に、"予測された" ラベル値と "実際" のラベル値の差を集計して、検証データに照らしてモデルの予測がどの程度正確であったかを示すメトリックを計算します。

トレーニング、検証、評価のイテレーションを終えるたびに、許容可能な評価メトリックが達成されるまで、さまざまなアルゴリズムとパラメーターを使用してプロセスを繰り返すことができます。

例 - 回帰

1 つの特徴値 (x) に基づいて数値ラベル (y) を予測するようにモデルをトレーニングする簡略な例を使用して、回帰について詳しく見ていきましょう。 ほとんどの実際のシナリオには複数の特徴値が含まれており、複雑さが増します。しかし、原則は同じです。

この例では、前に説明したアイスクリームの売上シナリオを引き続き使用しましょう。 ここでは特徴として "気温" を考慮します (値が特定の日の最高気温であると仮定します)。モデルをトレーニングして予測するラベルは、その日に売れるアイスクリームの数です。 まず、毎日の気温 (x) とアイスクリームの売上 (y) の記録を含む履歴データから始めます。

温度計の図。 アイスクリームの図。
気温 (x) アイスクリームの売上 (y)
51 1
52 0
67 14
65 14
70 23
69 20
72 23
75 26
73 22
81 30
78 26
83 36

回帰モデルのトレーニング

まず、データを分割し、そのサブセットを使用してモデルをトレーニングします。 トレーニング データセットを次に示します。

気温 (x) アイスクリームの売上 (y)
51 1
65 14
69 20
72 23
75 26
81 30

これらの xy の値が相互にどのように関連しているかについての分析情報を得るために、それらを次のように 2 つの軸に沿って座標としてプロットできます。

x と y を示す散布図の図。

これで、トレーニング データにアルゴリズムを適用し、x に演算を適用して y を計算する関数に適合させる準備ができました。 このようなアルゴリズムの 1 つは "線形回帰" です。これは、次のように、直線とプロットされたポイントの間の平均距離を最小限に抑えながら、xy の値の交差部分を通る直線を生成する関数を派生させることによって機能します。

回帰の直線が追加された散布図の図。

直線は関数の視覚的な表現であり、線の傾きによって、与えられた値 x に対する y の値をどのように計算するかが表されます。 直線は x 軸に 50 で交わるので、x が 50 の場合、y は 0 です。 プロットの軸マーカーからわかるように、直線の傾きは、x 軸が 5 増加すると y 軸が 5 増加するようになっています。x が 55 のとき、y は 5 です。x が 60 の場合、y は 10 です。 与えられた x の値に対する y の値を計算するには、関数で単純に 50 を減算します。つまり、関数はこのように表すことができます。

f(x) = x-50

この関数を使用すると、ある特定の気温の日に売れるアイスクリームの数を予測できます。 たとえば、天気予報から明日は 25℃になるとします。 モデルを適用して 77-50 を計算し、明日売れるアイスクリームを 27 個と予測できます。

しかし、このモデルはどれぐらい正確でしょうか。

回帰モデルの評価

モデルを検証し、予測がどの程度適切かを評価するために、ラベル (y) の値がわかっているデータを確保しておきました。 確保しておいたデータは次のとおりです。

気温 (x) アイスクリームの売上 (y)
52 0
67 14
70 23
73 22
78 26
83 36

このモデルを使用して、特徴量 (x) の値に基づいてこのデータセット内の各観測値のラベルを予測できます。その後、予測されたラベル (ŷ) を既知の実際のラベル値 (y) と比較します。

前にトレーニングした、関数 f(x) = x-50 をカプセル化したモデルを使用すると、次の予測が行われます。

気温 (x) 実際の売上 (y) 予測された売上 (ŷ)
52 0 2
67 14 17
70 23 20
73 22 23
78 26 28
83 36 33

次のような特徴値に対して "予測された" ラベルと "実際" のラベルの両方をプロットできます。

予測された値と実際の値を示す散布図の図。

予測されたラベルはモデルによって計算され、関数行に表示されますが、関数によって計算される ŷ 値と、検証データセットの実際の y 値には多少の差異があります。これは、予測が実際の値からどれだけ離れていたかを示す ŷy の値の間の線としてプロットに示されます。

回帰評価メトリック

予測された値と実際の値の差に基づいて、回帰モデルの評価に使用されるいくつかの一般的なメトリックを計算できます。

平均絶対誤差 (MAE)

この例では、差異は、各予測が間違っていたアイスクリームの数で示されます。 予測が実際の値を "上回った" か、"下回った" かは関係ありません (たとえば、-3 と +3 はどちらも差異 3 と示されます)。 このメトリックは、各予測の "絶対誤差" と呼ばれ、検証セット全体の "平均絶対誤差" (MAE) として集計できます。

アイスクリームの例では、絶対誤差 (2、3、3、1、2、3) の平均は 2.33 です。

平均二乗誤差 (MSE)

平均絶対誤差メトリックでは、予測されたラベルと実際のラベルの間のすべての差異が均等に考慮されます。 ただし、誤差が生じることは少ないが誤差が大きいモデルよりも、一貫して小さい誤差があるモデルの方が望ましい場合があります。 メトリックを生成する方法の 1 つで、個々の誤差を "二乗" し、二乗した値の平均を計算することで、より大きな誤差を "増幅" します。 このメトリックは、平均二乗誤差 (MSE) と呼ばれています。

このアイスクリームの例では、二乗した絶対値 (4、9、9、1、4、9) の平均は 6 です。

二乗平均平方根誤差 (RMSE)

平均二乗誤差は誤差の大きさを考慮するのに役立ちますが、誤差の値を二乗するため、得られたメトリックはラベルによって測定された数量を表さなくなります。 言い換えると、モデルの MSE は 6 ですが、それは予測が間違っていたアイスクリームの数の観点から精度を測定したものではありません。6 は、検証予測の誤差レベルを示す数値スコアにすぎません。

アイスクリームの数の観点から誤差を測定する場合は、MSE の "平方根" を計算する必要があります。これにより、当然ですが "二乗平均平方根誤差" と呼ばれるメトリックが生成されます。 この場合、√6 は 2.45 (個のアイスクリーム) です。

決定係数 (R2)

これまでのメトリックはすべて、モデルを評価するために、予測された値と実際の値の差異を比較しています。 ただし、実際には、モデルが考慮するアイスクリームの毎日の売上には、ある程度の自然のランダムな差異があります。 線形回帰モデルでは、トレーニング アルゴリズムは、関数と既知のラベル値の間の平均差異が最小化される直線に適合します。 決定係数 (より一般的には R2 または R 二乗と呼ばれます) は、モデルで説明できる検証結果の差異の割合を測定するメトリックであり、検証データのいくつかの異常な側面 (たとえば、地元のお祭りのために通常ではないほどの数のアイスクリームが売れた日) とは対照的なものです。

R2 の計算は、これまでのメトリックよりも複雑です。 次のように、予測されたラベルと実際のラベルの二乗した差の合計と、実際のラベル値と実際のラベル値の平均の二乗した差の合計を比較します。

R2 = 1- ∑(y-ŷ)2 ÷ ∑(y-ȳ)2

複雑に見えても、あまり心配しないでください。ほとんどの機械学習ツールでは、メトリックを自動的に計算できます。 重要な点は、結果が 0 から 1 の間の値であり、モデルによって説明される差異の割合を表すということです。 簡単に言えば、この値が 1 に近づくほど、モデルは検証データに適切に適合していることになります。 アイスクリーム回帰モデルの場合、検証データから計算された R20.95 です。

反復トレーニング

上記のメトリックは、回帰モデルを評価するために一般的に使用されます。 現実のほとんどのシナリオでは、データ サイエンティストは反復プロセスを使用して、次のようなさまざまなモデルのトレーニングと評価を繰り返します。

  • 特徴の選択と準備 (モデルに含める特徴量と、適合を高めるために適用する計算の選択)。
  • アルゴリズムの選択 (前の例では線形回帰について詳しく見ましたが、他にも多くの回帰アルゴリズムがあります)
  • アルゴリズム パラメーター (アルゴリズムの動作を制御するための数値設定。より正確には "ハイパーパラメーター" と呼ばれ、x および y パラメーターと区別されます)。

複数回のイテレーション後、特定のシナリオで許容できる最適な評価メトリックが得られるモデルが選択されます。