Pythonでの線形回帰の実装:完全なガイド
公開: 2019-11-18Pythonで機械学習を勉強している場合でも統計を勉強している場合でも、線形回帰に遭遇します。 線形回帰は、機械学習認定コースの重要な部分の1つです。
それは何ですか? Pythonで線形回帰をどのように実行しますか?
この記事では、これらの質問に対する答えを見つけます。 この記事を読んだ後、あなたは以下に精通するでしょう:
- 回帰とそれらは何ですか
- 線形回帰とは何ですか
- 線形回帰モデルをトレーニングする方法
- 線形回帰のアプリケーション
始めましょう。
目次
回帰とは何ですか?
回帰分析は、従属変数と独立変数の間の関係を推定するために使用する特定の統計プロセスを指します。
金融や銀行など、複数の業界で人気があります。 回帰分析を使用すると、特定の環境における2つの変数間の関係を理解できます。

特定の地域の住宅の価格を調べたいとします。 そのためには、その地域の都市、居住者の数、アメニティの利用可能性、その他多くのことを観察する必要があります。
住宅の価格が依存するものは、機能と呼ばれます。 そして、要因が各家のコストに関連している問題は観察です。 この例では、場所、設備、およびその他の要因が各住宅の価格に影響を与えると推定されます。
簡単に言うと、回帰分析で特定の主題に関していくつかの観察を行います。 あなたの観察には、それらの間の関係を形成し始める前に、いくつかの特徴といくつかの推定があります。
回帰分析には2種類の機能があります。 彼らです:
- 従属出力、変数、または応答と呼ばれる従属機能
- 独立した出力、変数、または応答と呼ばれる独立した機能
一般に、回帰問題には1つの連続従属変数があります。 入力は異なります。
出力をyで、入力をxで表すことができます。 厳格なルールはありませんが、これらの出力と入力を示すためにyとxを使用するのが一般的な方法です。
複数の独立変数がある場合は、x =(x1、…、xr)として表すことができます。ここで、rは入力の数を示します。
世界のトップ大学(修士、エグゼクティブ大学院プログラム、ML&AIの高度な証明書プログラム)からオンラインで最高の機械学習コースを取得して、キャリアを早急に進めましょう。
線形回帰とは何ですか?
線形回帰は、最も一般的なタイプの回帰です。 これは、依存する出力と独立した出力のグループの間の関係をモデル化するための統計的方法です。
この記事では、独立した出力を「機能」、依存した出力を「応答」と呼びます。
線形回帰に特徴が1つしかない場合、それは単変量線形回帰と呼ばれます。 同様に、複数の機能がある場合は、重回帰と呼びます。
線形回帰の最も顕著な利点は、結果の解釈が容易なことです。 線形回帰インタビューの質問
これは最も単純な回帰形式です。
仮説
yが予測値である場合、0はバイアス項xnであり、は特徴値であり、線形回帰モデルを次の式で表すことになります。
Y = 0 + 1 x 1 + 2 x2 + …。 + n x n
ここで、nはモデルパラメータを示します。
線形回帰Pythonコード
線形回帰モデルを作成するには、最初にデータセットも必要です。 線形回帰にPythonコードを使用する方法は複数あります。
この点で作業を開始する前に、Pythonを学習し、Pythonライブラリに精通することをお勧めします。
これは、基本的な線形回帰モデルの作成に役立ちます。
回帰モデルのトレーニング
モデルに必要なパラメーターを見つける必要があるため、データに最適です。 最適な線(または回帰線)を見つける必要があります。

回帰直線は、観測値と予測値の誤差が最小になる線です。 これらのエラーの別名は残差です。
エラーを測定するには、コスト関数を定義する必要があります。
J( )= 1 2m i = 1 m (h( x i )– y i ) 2
ここで、h(x)は仮説関数を表し、前に説明した方程式で表されます。
h(x)= 0 + 1 x 1 + 2 x2 + …。 + i x i
mは、データセット内の例の総数を表します。
これらの方程式と最適化アルゴリズムを使用して、線形回帰モデルをトレーニングできます。
Python回帰分析を実行する方法は他にもたくさんありますが、以下で説明します。
Pythonパッケージを使用した線形回帰の実行
広く普及している基本的なPythonパッケージであるNumPyを使用できます。 高性能な操作を行うために使用されます。 これはオープンソースであり、多くの数学ルーチンを利用できます。
NumPyのユーザーガイドで詳細を確認できます。 NumPyをベースにした人気のPythonライブラリであるscikit-learnについても学ぶ必要があります。 機械学習などのアクティビティで広く使用されています。
線形回帰モデルを開発して実装するには、statsmodelsについても学ぶ必要があります。 これは、テストの実行と統計モデルの推定に使用される、もう1つの強力なPythonパッケージです。
線形回帰のアプリケーションは何ですか?
線形回帰は、多くの業界で使用されています。 線形回帰のいくつかのアプリケーションを次に示します。
1)トレンドを理解する
線形回帰は、企業が市場動向を理解するのに役立ちます。 このようにして、彼らは戦略をよりよく計画し、間違いを犯さないようにすることができます。 企業、トレーダー、および研究機関とは別に、この手法を使用して傾向を評価することもできます。
2)価格変動の分析
商品の価格変動は、農産物事業の利益に大きな影響を与える可能性があります。 線形回帰は、価格の変化とそれに寄与する要因との関係を見つけることができるため、このタスクを実行する企業にも役立ちます。

3)リスクアセスメント
保険会社と投資家は、線形回帰を使用して異常を見つけることができます。 投資家は、リスクを軽減しながら、弱い投資を見つけ、それに応じて戦略を立てることができます。
結論
線形回帰は重要なAIアルゴリズムの1つであり、Pythonを使用した線形回帰に関するこのガイドがお役に立てば幸いです。 Pythonのリグレッションは、初心者にとって非常に困難な場合があります。 そのため、最初にPythonパッケージとアルゴリズムに精通することをお勧めします。
機械学習について詳しく知りたい場合は、IIIT-BとupGradの機械学習とAIのエグゼクティブPGプログラムをご覧ください。このプログラムは、働く専門家向けに設計されており、450時間以上の厳格なトレーニング、30以上のケーススタディと課題、IIITを提供しています。 -B卒業生のステータス、5つ以上の実践的なキャップストーンプロジェクト、トップ企業との雇用支援。
これら2つだけを知っていると、線形回帰を実装する上で大きなメリットがあります。
いつ回帰を使用しますか?
問題に複数の変数が存在する場合、それらすべての関係を理解したい場合があります。 行列を使用して、変数の特定のペア間の潜在的な関係を見つけることができます。 相関の方法を使用して、変数の任意のペア間の線形関係を測定できます。 ただし、この方法は、複数の変数を含む複雑な関係を見つけたい場合には適切ではありません。 このような場合、回帰は、複数の変数間の複雑な関連を理解するためのより効果的な方法です。 回帰は、どの変数が特定の応答に影響を与え、それらが特定の結果をどのように説明できるかを知るのに役立ちます。
機械学習では何種類の回帰が使用されますか?
回帰は、ターゲット変数と1つまたは複数の独立した予測変数の間の将来の結果を予測できる手法です。 回帰は、時系列モデリング、予測、およびさまざまな変数間の因果関係の理解のための機械学習で非常に一般的に使用されます。 機械学習で使用されるさまざまなタイプの回帰は、線形回帰、ロジスティック回帰、リッジ回帰、多項式回帰、およびラッソ回帰です。 機械学習で採用されている、より多くの種類の回帰分析手法に出くわすことができます。 ただし、これらは他のすべての中で最も広く使用されている方法です。
Pythonを使用する利点は何ですか?
Pythonは、機械学習で最も一般的に使用されているプログラミング言語の1つです。 それにはいくつかの利点があります。 まず、Pythonの構文は単純です。 習得と理解が容易なため、初心者だけでなく熟練したプログラマーにも非常に人気があります。 次に、オープンソースで無料で使用でき、アクティブな開発者や研究者の大規模なコミュニティが付属しています。 Pythonのコアに組み込まれている関数の広範なライブラリは、開発者に包括的なサポートを提供するため、外部またはサードパーティのライブラリに依存する必要はありません。 さらに、Pythonは、CやC ++などの他のプログラミング言語とは異なり、柔軟性が高く、システムに依存しません。