線形回帰とは機械学習での使用方法
公開: 2021-07-16線形回帰は統計の一部ではありませんか?
間違いなく、そうです。
実際、ほとんどの 機械学習 (ML) アルゴリズムは、主に統計など、さまざまな分野から借用されています。 モデルの予測を改善するのに役立つものはすべて、最終的に ML の一部になります。 したがって、線形回帰は統計アルゴリズムと機械学習アルゴリズムの両方であると言っても過言ではありません。
線形回帰は、データ サイエンスと機械学習で使用される一般的で単純なアルゴリズムです。 それは 教師あり学習 アルゴリズムと、変数間の数学的関係を調べるために使用される回帰の最も単純な形式。
線形回帰とは
線形回帰は、変数間の関係を示そうとする統計的手法です。 さまざまなデータ ポイントを見て、トレンド ラインをプロットします。 線形回帰の簡単な例は、機械の修理コストが時間とともに増加することを発見することです。
より正確には、線形回帰を使用して、従属変数と一連の他の独立変数の間の関連の特徴と強さを判断します。 企業の株価の予測など、予測を行うためのモデルを作成するのに役立ちます。
観測されたデータセットに線形モデルを適合させる前に、変数間に関係があるかどうかを評価する必要があります。 もちろん、これは 1 つの変数が別の変数を引き起こすという意味ではありませんが、それらの間に目に見える相関関係があるはずです。
たとえば、大学の成績が高いからといって、必ずしも給与パッケージが高いとは限りません。 しかし、2 つの変数の間に関連性がある可能性があります。
知ってますか? 「線状」という用語は、線に似ている、または線に関連することを意味します。
散布図の作成は、説明(独立) 変数と従属変数の間の関係の強さを判断するのに理想的です。 散布図に増加傾向または減少傾向が見られない場合、観測値に線形回帰モデルを適用しても効果がない可能性があります。
相関係数は、2 つの変数間の関係の強さを計算するために使用されます。 通常はrで表され、値は -1 から 1 の間です。正の相関係数値は、変数間の正の関係を示します。 同様に、負の値は、変数間の負の関係を示します。
ヒント:相関係数が 0.50 以上の正または負の場合にのみ、回帰分析を実行してください。
勉強時間と成績の関係を見ていれば、正の関係が見られるでしょう。 一方、ソーシャルメディアの利用時間と成績の関係を見ると、マイナスの関係にあることがほとんどです。
ここでは、「成績」が従属変数で、勉強やソーシャル メディアの利用に費やした時間が独立変数です。 これは、成績が勉強に費やす時間に依存するためです。
散布図と相関係数の両方を使用して変数間に中程度の相関関係を (少なくとも) 確立できる場合、これらの変数には何らかの形の線形関係があります。
つまり、線形回帰は、観測されたデータに線形方程式を適用することにより、2 つの変数間の関係をモデル化しようとします。 線形回帰直線は、直線の方程式を使用して表すことができます。
y = mx + b
この単純な線形回帰方程式では、次のようになります。
- yは、推定された従属変数 (または出力) です。
- mは回帰係数 (または勾配) です。
- xは独立変数 (または入力) です。
- bは定数 (または y 切片) です。
変数間の関係を見つけることで、値または結果を予測できます。 つまり、線形回帰により、既存のデータに基づいて新しい値を予測できます。
例としては、受け取った降雨量に基づいて収穫量を予測することです。 この場合、降雨量が独立変数で、収穫量 (予測値) が従属変数です。
独立変数は、予測変数とも呼ばれます。 同様に、従属変数は応答変数とも呼ばれます。
線形回帰の主な用語
線形回帰分析を理解することは、一連の新しい用語に慣れることも意味します。 統計学や機械学習の世界に足を踏み入れたばかりなら、これらの用語を正しく理解しておくと役に立ちます。
- 変数:カウントまたは測定できる任意の数、量、または特性です。 データ項目とも呼ばれます。 収入、年齢、スピード、性別がその例です。
- 係数:数値 (通常は整数) に隣の変数を掛けたものです。 たとえば、7x では、数値 7 が係数です。
- 外れ値:これらは、残りのデータ ポイントとは大きく異なるデータ ポイントです。
- 共分散: 2 つの変数間の線形関係の方向。 つまり、2 つの変数が線形に関連している度合いを計算します。
- 多変量: 2 つ以上の従属変数が関与し、結果が 1 つになることを意味します。
- 残差:従属変数の観測値と予測値の差。
- 変動性:一貫性の欠如、または分布が縮小または拡張される程度。
- 直線性:比例関係と密接に関連し、直線としてグラフィカルに表すことができる数学的関係の特性。
- 線形関数:グラフが直線になる関数です。
- 共線性:回帰モデルで線形関係を示すような、独立変数間の相関。
- 標準偏差 (SD):データセットの平均に対する分散の尺度です。 言い換えれば、それは数字がどのように広がっているかの尺度です。
- 標準誤差 (SE):統計サンプル母集団のおおよその SD。 変動性を測定するために使用されます。
線形回帰の種類
線形回帰には、単純線形回帰と多重線形回帰の 2 種類があります。
単純な線形回帰法では、単一の独立変数と対応する従属変数の間の関係を見つけようとします。 独立変数は入力であり、対応する従属変数は出力です。
ヒント: Python、R、MATLAB、Excel など、さまざまなプログラミング言語と環境で線形回帰を実装できます。
多重線形回帰法では、2 つ以上の独立変数と対応する従属変数の間の関係を見つけようとします。 と呼ばれる多重線形回帰の特別なケースもあります 多項式回帰。
簡単に言えば、単純な線形回帰モデルには 1 つの独立変数しかありませんが、多重線形回帰モデルには 2 つ以上の独立変数があります。 はい、非常に複雑なデータ分析に使用される非線形回帰手法は他にもあります。
ロジスティック回帰と線形回帰
線形回帰は、特定の独立変数セットの連続従属変数を予測しますが、ロジスティック回帰は、カテゴリ従属変数を予測します。
どちらも教師あり学習法です。 ただし、線形回帰は回帰の問題を解決するために使用されますが、ロジスティック回帰は分類の問題を解決するために使用されます。
もちろん、ロジスティック回帰は回帰問題を解決できますが、主に分類問題に使用されます。 その出力は 0 または 1 のみです。2 つのクラス間の確率を決定する必要がある場合、つまり、イベントの可能性を計算する必要がある場合に役立ちます。 たとえば、ロジスティック回帰を使用して、今日雨が降るかどうかを予測できます。

線形回帰の仮定
線形回帰を使用して変数間の関係をモデル化する際に、いくつかの仮定を行います。 仮定は、モデルを使用して予測を行う前に満たすべき必要条件です。
通常、線形回帰モデルに関連する 4 つの仮定があります。
- 線形関係:独立変数xと従属変数yの間に線形関係があります。
- 独立性:残差は独立しています。 時系列データの連続する残差間に相関関係はありません。
- 等分散性:残差はすべてのレベルで等しい分散を持ちます。
- 正規性:残差は正規分布しています。
線形回帰モデルを解く方法
機械学習または統計用語では、線形回帰モデルを学習することは、利用可能なデータを使用して係数の値を推測することを意味します。 線形回帰モデルをより効率的にするために、いくつかの方法を適用できます。
ヒント:機械学習ソフトウェアを使用して、単調なタスクを排除し、正確な予測を行います。
線形回帰モデルを解決するために使用されるさまざまな手法を見て、それらの違いとトレードオフを理解しましょう。
単純な線形回帰
前述のように、単純な線形回帰には 1 つの入力または 1 つの独立変数と 1 つの従属変数があります。 2 つの変数が連続的であることを考慮して、2 つの変数間の最適な関係を見つけるために使用されます。 たとえば、消費カロリーに基づいて増加した体重を予測するために使用できます。
通常の最小二乗
通常の最小二乗回帰は、複数の独立変数または入力がある場合に係数の値を推定する別の方法です。 これは、線形回帰を解くための最も一般的なアプローチの 1 つで、正規方程式とも呼ばれます。
この手順では、二乗残差の合計を最小化しようとします。 データを行列として扱い、線形代数演算を利用して各係数の最適値を決定します。 もちろん、この方法は、すべてのデータにアクセスできる場合にのみ適用でき、データを収めるのに十分なメモリも必要です。
勾配降下
勾配降下法は、線形回帰の問題を解決するために最も簡単で一般的に使用される方法の 1 つです。 これは、1 つ以上の入力があり、モデルの誤差を繰り返し最小化することによって係数の値を最適化する必要がある場合に役立ちます。
勾配降下は、すべての係数のランダムな値から始まります。 入力値と出力値のペアごとに、二乗誤差の合計が計算されます。 スケール係数を学習率として使用し、各係数はエラーを最小化する方向に更新されます。
このプロセスは、それ以上の改善が不可能になるか、平方和が最小になるまで繰り返されます。 勾配降下法は、メモリに収まらない多数の行と列を含む大規模なデータセットがある場合に役立ちます。
正則化
正則化は、モデルの二乗誤差の合計を最小化すると同時に、モデルの複雑さを軽減しようとする方法です。 通常の最小二乗法を使用して二乗誤差の和を減らします。
ラッソ回帰とリッジ回帰は、線形回帰における正則化の 2 つの有名な例です。 これらの方法は、独立変数に共線性がある場合に役立ちます。
アダムの方法
適応モーメント推定( ADAM ) は、で使用される最適化アルゴリズムです。 ディープラーニング。 これは、ノイズの多いデータに対して適切に機能する反復アルゴリズムです。 実装は簡単で、計算効率が高く、メモリ要件は最小限です。
ADAM は、二乗平均平方根伝搬 (RMSprop)と適応勾配降下の 2 つの勾配降下アルゴリズムを組み合わせています。 データセット全体を使用して勾配を計算する代わりに、ADAM はランダムに選択されたサブセットを使用して確率的近似を作成します。
ADAM は、多数のパラメーターまたはデータを含む問題に適しています。 また、この最適化方法では、ハイパーパラメーターは一般に最小限の調整で済み、直感的に解釈できます。
特異値分解
特異値分解( SVD ) は、線形回帰で一般的に使用される次元削減手法です。 これは、学習アルゴリズムの次元数を減らす前処理ステップです。
SVD では、行列を他の 3 つの行列の積として分解します。 高次元データに適しており、小さなデータセットには効率的で安定しています。 その安定性により、線形回帰の線形方程式を解くための最も好ましいアプローチの 1 つです。 ただし、外れ値の影響を受けやすく、巨大なデータセットでは不安定になる可能性があります。
線形回帰用のデータの準備
ほとんどの場合、実世界のデータは不完全です。
他の機械学習モデルと同様に、データの準備と前処理は線形回帰の重要なプロセスです。 値の欠落、エラー、外れ値、矛盾、および属性値の欠如が発生します。
不完全なデータを考慮して、より信頼性の高い予測モデルを作成する方法をいくつか紹介します。
- 線形回帰は、予測変数と応答変数にノイズがないと考えます。 このため、いくつかのデータ消去操作でノイズを除去することが重要です。 可能であれば、出力変数の外れ値を削除する必要があります。
- 入力変数と出力変数がガウス分布の場合、線形回帰はより適切な予測を行います。
- 正規化または標準化を使用して入力変数を再スケーリングすると、通常、線形回帰の方がより適切な予測を行うことができます。
- 属性が多数ある場合は、線形関係になるようにデータを変換する必要があります。
- 入力変数が高度に相関している場合、線形回帰はデータに過剰適合します。 このような場合は、共線性を削除してください。
線形回帰の長所と短所
線形回帰は、理解しやすく、実装が最も簡単なアルゴリズムの 1 つです。 変数間の関係を分析するための優れたツールです。
線形回帰の注目すべき利点は次のとおりです。
- そのシンプルさから、これは頼りになるアルゴリズムです。
- オーバーフィッティングの影響を受けやすいですが、次元削減手法を使用することで回避できます。
- 解釈力が良い。
- 線形分離可能なデータセットでうまく機能します。
- そのスペースの複雑さは低いです。 したがって、これは高レイテンシ アルゴリズムです。
ただし、線形回帰は、実際のアプリケーションの大部分では一般的に推奨されていません。 これは、変数間の線形関係を仮定することで、現実の問題を単純化しすぎているためです。
線形回帰のいくつかの欠点を次に示します。
- 外れ値は回帰に悪影響を与える可能性があります
- 線形モデルに適合するには、変数間に線形関係が存在する必要があるため、変数間に直線関係があると仮定します
- データが正規分布していることを認識する
- また、独立変数と従属変数の平均の間の関係も調べます
- 線形回帰は、変数間の関係を完全に説明するものではありません
- 変数間に高い相関関係があると、線形モデルのパフォーマンスに大きな影響を与える可能性があります
まず観察し、次に予測する
線形回帰では、変数に線形関係があるかどうかを評価することが重要です。 傾向を見ずに予測しようとする人もいますが、変数間に適度に強い相関があることを確認するのが最善です。
前述のように、散布図と相関係数を見ることは優れた方法です。 はい、相関が高い場合でも、散布図を確認することをお勧めします。 つまり、データが視覚的に線形であれば、線形回帰分析が可能です。
線形回帰では従属変数の値を予測できますが、新しいデータ ポイントを分類したり、近傍を調べて値を予測したりするアルゴリズムがあります。 これは k 最近傍アルゴリズムと呼ばれ、遅延学習器です。