1. 序章

このチュートリアルでは、線形回帰と呼ばれる古典的なマシンアルゴリズムを紹介します。 最初に、回帰という用語とすべての異なるタイプの回帰について説明します。 次に、線形回帰の詳細な調査と、正則化が必要な理由について詳しく説明します。 すべての後に、適切な数式と表記法が続き、それらが明確に説明されます。

結局のところ、線形回帰は最も人気があり、最も使用されている統計および機械学習アルゴリズムの1つであり、関連するすべてのコースでカバーされています。

2. 回帰

一般に、回帰は、2つ以上の変数間の関係を測定するために使用する統計アルゴリズムのファミリーです。 主なロジックは、独立変数と呼ばれる入力変数(機能)と結果または従属変数の間の関係を見つけたいということです。入力変数と出力変数の間のこの関係を活用することにより、回帰は広く使用されます予測または予測のための機械学習モデルとして。

たとえば、R-squaredを使用して、2つの変数間の関係を測定できます。これにより、変数が近似回帰直線にどれだけ近いかがわかります。 また、多項式回帰を使用して履歴データに基づいて将来の価格を予測したり、ロジスティック回帰を使用して二項分類の確率をモデル化することもできます。

2.1. 回帰の種類

回帰には多くの種類がありますが、ここではそのうちのいくつかについてのみ説明します。 入力変数の数に基づいて、回帰を2つのグループに分類できます。

  • 単純回帰–入力として1つの変数のみを使用します
  • 重回帰–2つ以上の変数を入力として使用します

同様に、従属変数または出力変数の数に基づいて、回帰を次のように分類できます。

  • 単変量回帰–従属変数は1つだけです
  • 多変量回帰–2つ以上の従属変数があります

最も一般的に使用される3つの回帰モデルは次のとおりです。

  • 線形回帰–入力変数と出力変数の間に線形関係があることを前提とし、線形関数を使用してその関係を説明します
  • 多項式回帰–線形回帰に似ていますが、多項式を使用して変数間の関係を近似します
  • ロジスティック回帰–ロジスティック関数またはシグモイドを使用して二項分類問題の確率をモデル化します

最後に、回帰という用語は、機械学習アルゴリズムのクラスとして、さまざまなコンテキストで広く使用されていることにも言及する価値があります。 通常、ほとんどの機械学習の問題は2つのクラスに分けられます。

  • 分類の問題–目標は、事前定義されたラベルまたはクラスを予測することです。 たとえば、特定の文の感情が肯定的であるかどうかを予測したり、画像上の手書きの数字を予測したりします
  • 回帰問題–目標は定量化することです。 たとえば、テスラ株の明日の価格を予測したり、気象データを使用して正確な気温を予測したりします

3. 線形回帰

以前に最も使用された回帰手法のいくつかについて説明しましたが、このセクションでは、最も人気のある手法を紹介します。 線形回帰は、1つの従属変数と、連続または離散の1つ以上の説明変数との間の関係をモデル化するためのアプローチです。 この手法は、別の変数を使用して、ある変数の将来の値を予測するのに役立ちます。 これにより、両方の変数の過去のデータを使用して、ある変数が別の変数に与える重みを予測できます。

次の画像は、線形回帰がと軸の特徴間の関係をどのように近似するかを示しています。

次の式で線形回帰を定義します。

(1)  

ここで、は予測値、は特徴の数、は-番目の特徴値、は-番目のモデルパラメーターまたは重みです。 また、バイアス項として知られています。

同様に、ベクトル化された形式を使用して上記の方程式を書くことができます。

(2)  

ここで、は転置モデルの重みベクトル、、であり、は特徴ベクトルです。ここで、はです。

次に、モデルをトレーニングするには、まずモデルがトレーニングデータにどの程度適合しているかを測定する必要があります。 この目的のために、通常、平均二乗誤差(MSE)コスト関数を使用します。 次の式を使用して定義します。

(3)  

ここで、はサンプル数を示し、は-番目のサンプルの実際の値です。 MSEを使用して、推定値と実際の値の平均二乗差を測定します。

コスト関数を最小化するの値を見つけるには、次の3つの方法があります。

  1. 閉じた形の解
  2. 最急降下法
  3. SVDおよびムーアペンローズ疑似逆

3.1. 閉じた形の解

閉形式の解とは、1つのステップで最適な値を見つけるために正規方程式を使用することを意味します。 したがって、正規方程式は次のように定義できます。

(4)  

ここで、はMSEの最適解であり、はすべての特徴ベクトルを含む行列であり、はすべてを含むターゲット値のベクトルです。

行列の逆行列、つまり行列を計算する必要があるため、は特徴の数であり、複雑さは約です。 結果として、この方法は、機能の数が増えるにつれて非常に遅くなる可能性があります。 対照的に、複雑さはトレーニングテストのサンプル数に関して線形です。

結論として、この方法は、多くの機能がある場合、またはトレーニングサンプルが多すぎてメモリに収まらない場合には、最善のアプローチではありません。

3.2. 最急降下法

最急降下法は、最適化のコンテキストで通常使用される機械学習の手法です。 このアルゴリズムを使用して、現在の場所に対して最も急な勾配の方向を繰り返し見つけることにより、関数の最小値を見つけます。 この場合、最急降下法を使用して、現在の場所への最も急な勾配を計算します。

具体的には、MSEコスト関数の形式が次の場合:

(5)  

次に、勾配は次のとおりです。

(6)  

その後、勾配に学習率を掛けて重みを更新します。

(7)  

この場合、コスト関数は凸関数であるため、このアプローチはグローバル最小値につながります。したがって、グローバル最小値でもあるローカル最小値が1つだけあります。 最急降下法は、ニューラルネットワークを含む多くの機械学習手法に広く適用できるため、一般的です。 それにもかかわらず、いくつかの欠点があります。

最急降下法は反復的なアプローチであるため、最適なソリューションに到達するまでに時間がかかる場合があります。 また、収束は学習率に依存します。

結論として、この方法の勾配降下法または修正法は機械学習で広く使用されていますが、私たちの場合、以下で説明するさらに高速な方法があります。

3.3. SVDとムーアペンローズ疑似逆行列

通常の方程式の1ステップ前:

(8)  

次の方程式があります。

(9)  

この方程式が正確な解を持つことはほとんどないため、特徴よりもサンプルが多いため、ユークリッド距離を使用してベクトルを可能な限り近似します。

(10)  

この問題を通常最小二乗(OLS)と呼びます。 それを解決する方法はたくさんありますが、そのうちの1つは、ムーア・ペンローズ疑似逆定理を使用することです。 特に、線形方程式系の場合、最小ノルムの解は、であると言われています。ここで、はムーア-ペンローズ疑似逆行列です。

その後、特異値分解(SVD)を使用して、値を計算します。この例では、次のように計算します。

(11)  

ここで、の形式はです。ここで、は特徴の数、はサンプルの数、は直交行列、は対角行列、直交行列です。 したがって、ムーア・ペンローズ疑似逆行列を次のように計算します。

(12)  

ここで、は、非ゼロ要素の逆数を取り、結果の行列を転置することによって構築されます。 最後に、線形回帰の重みを計算するには、次の式を使用します。

(13)  

このメソッドは、スピーディーで数値的に安定しているため、線形回帰最適化のデフォルトとしてScikit-learnパッケージで使用されます。 

4. 線形回帰の正則化

正則化は、モデルの一般化を実現しようとする機械学習の手法です。 これは、私たちのモデルがトレーニングやテストデータだけでなく、将来受け取るデータでもうまく機能することを意味します。 要約すると、これを達成するために、正則化は重みをゼロに向かって縮小し、複雑なモデルを思いとどまらせます。 したがって、これにより過剰適合が回避され、モデルの分散が減少します。

線形回帰の正則化には、主に3つの手法があります。

  1. ラッソ回帰
  2. リッジ回帰
  3. エラスティックネット

4.1. ラッソ回帰

ラッソ回帰、またはL1正則化は、線形回帰からの非切片の重みの絶対値の合計に等しいペナルティによってコスト関数を増加させる手法です。 正式には、L1正則化を次のように定義します。

(14)  

ここに、正則化パラメーターがあります。 基本的に、正則化の程度を制御します。 特に、値が高いほど、重みは小さくなります。 最良のものを見つけるために、各反復での交差検定誤差から始めて測定し、固定値で増加させることができます。

4.2. リッジ回帰

ラッソ回帰、リッジ回帰、またはL2正則化と同様に、コスト関数にペナルティが追加されます。 唯一の違いは、ペナルティが線形回帰からの非切片の重みの2乗値を使用して計算されることです。 したがって、L2正則化を次のように定義します。

(15)  

L1正則化と同様に、同じ方法でパラメーターを推定できます。 LassoとRidgeの唯一の違いは、Ridgeの収束が速いのに対し、Lassoは特徴選択によく使用されることです。

4.3. エラスティックネット回帰

要約すると、この方法は前の2つのアプローチを組み合わせたものです。 これは、リッジとラッソ回帰の両方からのペナルティを組み合わせたものです。したがって、 ElasticNet正則化を次の式で定義します。

(16)  

前の2つの方法とは対照的に、ここでは2つの正則化パラメーターとがあります。 そのため、両方を見つける必要があります。

5. 結論

この記事では、回帰という用語、そのタイプ、および線形回帰について詳しく説明しました。 次に、最も一般的に使用される3つの正則化手法と、正則化パラメーターを見つける方法について説明しました。 結論として、線形回帰と正則化の方法の背後にある数学を学びました。