ロジスティック回帰とは

著者

Fangfang Lee

Developer Advocate

IBM

ロジスティック回帰とは

ロジスティック回帰は、データサイエンスにおける教師あり機械学習アルゴリズムです。これは、離散的またはカテゴリー的な結果を予測する分類アルゴリズムの一種です。例えば、分類モデルを使用して、貯蓄額、収入、クレジットスコアなどの予測変数に基づいて、ローンが承認されるかどうかを決定できます。

この記事では、機械学習や人工知能(AI)で最もよく使用されている分類アルゴリズムの1つであるロジスティック回帰の背後にある数学について詳しく解説します。また、回帰分析、ユースケース、さまざまな種類のロジスティック回帰についても詳しく説明します。生成AIの時代においても、ロジスティック回帰を支える基礎理論は、複雑なニューラルネットワークモデルの構築において依然として重要な役割を果たしております。ロジスティック回帰は、行動科学や社会科学の研究、あるいはデータサイエンスの分野全体の文脈で統計的テストを実行する際にも、引き続き高度な関連性を持っています。Pythonのscikit-learnモジュールを使用すると、ロジスティック回帰を簡単に実装できます。

この解説では、線形回帰とロジスティック回帰の違い、数学的基盤、さまざまな種類のロジスティック回帰、およびそれに関連するユースケースについて説明します。

ロジスティック回帰と線形回帰

ロジスティック回帰は、線形回帰と同様に、予測変数(独立変数)とアウトプット変数(応答変数、ターゲット変数、または従属変数)の関係を調べる線形モデルの一種です。主な違いは、線形回帰はアウトプット値が連続値である場合に使用される点です。例えば、個人の信用スコアを予測する場合などが該当します。ロジスティック回帰は、融資が承認されるかどうかなど、結果が分類的なものである場合に使用されます。

ロジスティック回帰では、モデルは特定の結果が発生する確率を予測します。例えば、誰かの財務プロフィールから、その人のローンが承認される確率を予測できます。モデルのアウトプットは、0から1までの値です。しきい値(多くの場合0.5)に基づいて、結果を「承認」または「未承認」に分類します。ロジスティック回帰では、線形回帰のようにデータから直線を描くのではなく、S字型の曲線を用いてインプットを確率にマッピングします。

線形回帰とロジスティック回帰はどちらも、統計的検定を使用して、どの予測変数が出力に意味のある影響を与えるかを評価します。t検定や分散分析(ANOVA)などの手法は、各係数のp値を生成するため、関連性が統計的に有意であるかどうかを評価するのに役立ちます。p値が低い(通常、0.05未満)ことは、変数がモデルに意味のある寄与をしていることを示唆しています。また、回帰タイプに応じてさまざまなメトリクスを使用して、適合度(モデルが観察された結果をどの程度十分に説明するか)も評価します。

モデルを構築する際には、モデルがトレーニング・データ内のノイズを捕捉し、新しいデータに対してパフォーマンスが低下する過学習を防ぐことが重要です。このリスクは、予測変数が多数あるものの標本サイズが小さい場合に増大します。この問題に対処するには、係数を縮小することで重要度の低い変数の影響を減らす手法である正則化を適用できます。また、外れ値はモデルを歪め、p値や係数を誤解させる可能性があるため、慎重に注意する必要があります。実際には、主要な機能の選択、テスト、改良を複数回繰り返すことでモデルを改善します。

この2つのモデルをより具体的に対照するために、現在の貯蓄などの主要な機能に基づいて誰かのクレジットスコアを予測する線形回帰シナリオを考えてみましょう。これは次のようにモデル化できます。

 Ycreditscore=β0+β1Xsavings

線形回帰の節約額と信用スコアの比較

内部でのロジスティック回帰

線形回帰と同様、ロジスティック回帰は、一般化線形モデル(GLM)ファミリーに分類される線形モデルの一種です。前の例と同様に、承認するか承認しない確率を表す場合は、線形関数を適用します。

 Yapproval=β0+β1Xsavings

線形関数は線形関係を仮定しているため、Xの値が変化すると、Yは(-inf, inf)からの値になります。ご存知のように、確率は[0,1]に制限されます。この線形モデルの原理を使用して、2進数結果の確率を直接モデル化することはできません。代わりに、確率を理解するにはロジスティック・モデルが必要です。したがって、結果を限定できるように、インプットにトランスフォーメーションを適用する必要があります。このトランスフォーメーションは、ロジスティック回帰式として知られています。この式は複雑に見えるかもしれませんが、次のセクションで、それがどのように導き出されるかを段階的に見ていきます。

Y=P(x)=eβ0+β1x1+eβ0+β1x

 

貯蓄額別のローン承認

シグモイド変換により、前のユースケースに対して2項予測を行うことができます。トランスフォーメーションを適用すると、Xの値は(-inf, inf)を取得でき、yは[0,1]に制限されます。

ロジスティック回帰関数(またはシグモイド関数)を理解するには、次の概念に基づく強固な基盤が必要です。

  • オッズ、対数オッズ、オッズ比
  • ロジスティック回帰の係数
  • 最尤推定法(MLE)

オッズ、対数オッズ、オッズ比

オッズ

確率の比率のログはロジット関数として知られており、ロジスティック回帰の基礎を形成します。

線形関数を使用して確率を直接モデル化することはできない(確率は0から1の間に制約がある)ため、代わりにオッズを使用します。確率とオッズはどちらも結果の可能性を表しますが、定義では異なります。

確率は、考えられるすべての結果の中からイベントが発生する確率を測定します。

白い正方形の上に青と赤の円を描いたミニマリストなグラフィック。

オッズは、イベントが発生する可能性とそうでない可能性を比較します。

白い正方形の上に青と赤の円を描いたミニマリストなグラフィック。

ログオッズ

p(x)は結果の確率を表します。次に、xのオッズは次のように定義されます。

 odds(x)=p(x)1-p(x) 

具体的な例を考えてみましょう

バスケットにリンゴ3個とオレンジ5個が入っているとします。

- オレンジを選ぶ確率は5/(3+5) = 0.625です

- オレンジを選ぶオッズは5/3≈1.667です

つまり、オレンジを選ぶ確立は、リンゴを選ぶよりも約1.667倍高いということになります。逆に、リンゴを選ぶオッズは3 / 5 = 0.6です。これは1未満であり、結果(リンゴを選ぶこと)の可能性がそうでない場合よりも低いことを示します。オッズの方程式に従って、オッズは、1-結果の発生確率以上の結果が発生する確率と考察することもできます。オレンジを選ぶオッズは、P(oranges)/(1-P(oranges))=0.625/(1-0.625)から、約1.667となります。

オッズは0から無限までの範囲があります。オッズ値が1より大きい場合は好ましい結果を示し、1未満は悪い結果を示ます。1はイベントが発生する可能性が半々であることを意味します。

ただし、オッズは1を中心に対称的ではありません。例えば、2と0.5のオッズは「可能性が2倍」と「可能性が半分」を表しますが、これらはまったく異なる数値スケールを表しています。この不均衡に対処するために、オッズの対数を採用し、オッズの無制限の[0, ∞]スケールを実数直線(−∞, ∞)に変換します。これは、対数オッズ、またはロジットとして知られており、ロジスティック回帰モデルの基礎となります。

私たちは、対数オッズを次のように定義しています。

 log(p(x)1-p(x))

このトランスフォーメーションにより、対数オッズをインプットの線形関数として表すことができます。

 log(p(x)1-p(x))=β0+β1·x1

次に、両側を指数化してオッズに戻ることができます。

 p(x)1-p(x)=eβ0+β1·x1

解くと p(x) シグモイド関数が得られ、これにより予測値が0から1の間に収まることが保証されます。

 p(x)=eβ0+β1·x11+eβ0+β1·x1

このトランスフォーメーションにより、下位線形関数を使用してモデル化していても、回帰は有効な確率をアウトプットできます。

オッズ比

最後に、モデル係数の効果を解釈するのに役立つ概念であるオッズ比について紹介します。オッズ比は、インプット変数x1が1単位増加するときにオッズがどのように変化するかを示します。

イベントの確率が次のようになるとします。

 odds(x1)=eβ0+β1·x1 

x1を1単位増やすと、新しいオッズは次のようになります。

 odds(x1+1)=eβ0+β1(x1+1)=eβ0+β1x1·eβ1 

x1が1単位増加するごとに、オッズはeb1倍になることを意味します。この乗数がオッズ比です。

- b1>1の場合、オッズが増加する(イベントの可能性がより高くなる)

- b1<1の場合、オッズが減少する(イベントの可能性が高くなる)

もしb1=1の場合、オッズ比は0であり、インプットがオッズに影響を与えないことを意味します

オッズ比は、ロジスティック回帰に解釈可能性を与えます。それは、インプットに基づいてイベントのオッズがどのように変化するかを示し、ヘルスケア、マーケティング、金融などの多くの応用環境で役立ちます。ただし、線形回帰の係数と同じ方法で係数を解釈することはできません。次のセクションでは、係数がどのように決定され、解釈されるかについて詳しく見てみましょう。

ロジスティック回帰の係数

連続予測変数

以前にもお伝えした通り、線形回帰では係数の解釈が容易です。連続変数を使用した線形回帰の例を考えてみます。インプット特徴量 x が1単位増加すると、予測される結果 y がb1単位増加します。この直接的な関係が成立するのは、線形回帰がインプット特徴量と目的変数の間の変化率が一定であると仮定しているためです。そのアウトプットは無制限であり、直線的に増加します。

ただし、ロジスティック回帰はyを直接モデル化するのではなく、対数オッズ(オッズの対数)を通じてyの確率をモデル化します。このため、xを1単位増やすと、成果が一定に変化するとは言えません。代わりに、係数を対数オッズ、ひいてはオッズと結果の確率に対する影響という観点から解釈します。

具体的には、ロジスティック回帰では次のようになります。

  • 正の係数とは、インプットが増えるにつれて増加する結果の対数オッズを意味します。これは確率の増加に対応します。
  • 負の係数は、インプットが増加するにつれて対数オッズが減少することを意味します。これは確率の減少に対応します。
  • 係数がゼロの場合、変数は結果に影響を与えないことを意味します。

重要なのは、係数の規模はこの影響の強さを反映していることです。また、オッズ比(係数の指数関数)は、変数が1単位増加したときにオッズがどれだけ変化するかを示します。

カテゴリ予測変数

他の機械学習と同様に、ロジスティック主要な機能エンジニアリングの予測にはカテゴリー変数を組み込むことができます。カテゴリー変数や離散変数を扱う際には、ワンホットエンコーディングやダミー変数などの主要な機能エンジニアリング手法を用いて、モデルが使用できるバイナリ形式に変換することが一般的です。

例えば、先ほどの概念を応用して、既存の債務の有無に基づいて、y=1 誰かがローンの承認を受けるかどうか(承認された場合:y=1、承認されなかった場合:y=0) y=0 を予測したいとします。」

- x=0 既存の負債がないと意味する

- x=1 既存の負債があることを意味する

対数オッズ y=approvaly=b0+b1*x1

係数 b1は、既存の負債がある場合と、そうでない人を比較した場合に承認される対数オッズの変化を表します。

これをより解釈しやすくするために、b1をべき乗してオッズ比を得ることができます。

  • もしb1 b₁が正の値である場合、 eeのb₁乗は b1 1より大きくなります。これは、既存の負債があることが承認される確率を高めることを意味します。
  • もしb1 b₁が負の値である場合、 eeのb₁乗は b1eのb₁乗は1未満となります。これは、既存の負債があることが承認の可能性を低下させることを意味します。
  • もし b1 もしb₁が0の場合、 e eのb₁乗は1となります。 b1これは債務状態が影響しないことを意味します。

そのため、線形回帰からは係数の単純な解釈が失われますが、ロジスティック回帰は、特にオッズと確率シフトの観点からフレームワークする場合に、依然として豊富で解釈可能なインサイトを提供します。変数xの関数としての確率の増減の大きさは、xxが1単位増加したことに対応するものではなく、 x特定の時点における xxの値によって決まります。

 

AI Academy

カスタマー・サービスでAIを活用する

生成AIが、セルフサービス、ヒューマン・エージェント、コンタクト・センターの運用という3つの主要領域で、よりシームレスなエクスペリエンスで顧客を満足させ、組織の生産性を向上させる方法をご覧ください。

最尤推定法

ロジスティック回帰の係数は、β0  と  β1最尤推定(MLE)を用いて推定されます。MLEの背後にある中心となる考え方は、ロジスティック回帰モデルの下で観測データの可能性を最も「可能にする」パラメーターを見つけることです。

ロジスティック回帰分析では、入力変数 x1 が与えられた場合に、y1目的変数 y1 が 1(例えば「承認済み」)となる確率を、x1ロジスティック(シグモイド)関数を用いてモデル化します。

 Y=P(x)=eβ0+β1x1+eβ0+β1x

MLEはb0とb1の様々な組み合わせを試行し、それぞれの組み合わせについて次のように問いかけます。 b0 および b1これらのパラメータを前提とした場合、実際のデータで観測された結果が生じる確率はどれほどでしょうか。

これは、各データ・ポイントの予測確率を乗算する尤度関数を使用して取得されます。

  L(β0,β1)=i=1np(xi)yi·(1-p(xi))1-yi

もし y1=1もし y₁ = 1(「承認」)である場合、モデルの予測確率 P(x₁) が P(x1)1 にできるだけ近づくことを望みます。p(x_i)y_iという項がp(xi)yiこれを表します。y1の実際の観測データが実際に「承認」または1の場合、その項は1になります。

もし y1=0y1=0の場合、予測確率が0に近づくことを望みます。このケースは(1-p(xi))1-yiという項で(1-p(xi))1-yi処理されます。y1の実際の観測値が「承認されない」、 y1 つまり0である場合、 p(xi) p(xi)の値は0に近づくため、 1-p(xi) 1-p(xi)は1に近づきます。

したがって、各データポイントに対して、実際のラベルが1か0かによって、p(x₁) または 1 − p(x_i) を乗算します。 p(x1) または 1p(xi)すべての例における積は、単一の数値、すなわち現在のモデル下でデータセット全体が観測される確率を示します。ご覧の通り、予測結果(パラメータ b 0 および b 1 を用いて)が b0 および b1観測データに適合する場合、尤度の値は最大化されます。すべての確率を掛け合わせる理由は、結果が互いに独立していると仮定しているためです。言い換えれば、ある方の承認される可能性が、別の方の承認される可能性に影響を与えるべきではありません。

この積は非常に小さくなるため、通常は対数尤度を使用します。これにより、積が合計に変換され、計算と最適化が容易になります。

対数尤度を最大化する b0 および b1 b₀およびb₁の値を求めるために、反復最適化アルゴリズムである勾配降下法を用います。各ステップで、各パラメーター(例えば、その勾配)に関して対数尤度がどのように変化するかを計算し、その後、尤度が高まる方向にパラメーターをわずかに更新します。時間の経過とともに、このプロセスは b0 および b1 データに最も適合するb₀およびb₁の値に向かって収束します。

ロジスティック回帰の種類

ロジスティック回帰には、カテゴリー応答に基づく3種類のモデルがあります。

  • 2項ロジスティック回帰:このアプローチでは、応答変数または従属変数は本質的に2分変数で、予測可能な結果は2つだけです(例:0または1)。よく使用される例としては、Eメールがスパムか非スパムか、腫瘍が悪性か良性かを予測することが挙げられます。ロジスティック回帰ではこれが最もよく使用されるアプローチであり、より一般的には、2項分類で非常によく使用される分類器の1つです。
  • 多項ロジスティック回帰:このロジスティック回帰モデルでは、従属変数の予測可能な結果は3つ以上あります。ただし、これらの値には順序が指定されていません。例えば、映画会社は、映画をより効果的に売り込むために、映画ファンがどのジャンルの映画を見る可能性が高いかを予測したいと考えています。多項ロジスティック回帰モデルは、年齢、性別、交際ステータスが、好みの映画のタイプに及ぼす影響の大きさを判断するのに役立ちます。これによって、この映画会社は広告キャンペーンを、その映画を観に行く可能性が高いグループに向けて実施できます。
  • 順序ロジスティック回帰:このロジスティック回帰モデルは、応答変数に3つ以上の可能な結果があるときに利用されますが、この場合、これらの値には定義済みの順序があります。序数応答の例には、AからFまでの評価尺度、1から5までの評価尺度などがあります。

ロジスティック回帰のユースケース

ロジスティック回帰は、予測および分類問題の分析によく使用され、そのユースケースには次のようなものがあります。

  • 不正の検出:ロジスティック回帰モデルは、不正の予兆となるデータの異常を特定するのに役立ちます。特定の行動や特徴は不正行為との関連性が高い場合があり、これは銀行やその他の金融機関が顧客を保護する上で特に役に立ちます。SaaSベースの企業も、業績に関するデータ分析を行う際に、データ・セットから偽のユーザーアカウントを排除するためにこれらの手法を採用し始めています。
  • 疾病予測:医学の分野では、この分析アプローチを使用して、特定の集団の疾病リスクを予測できます。医療機関は、特定の病気になる傾向が高い個人に対して予防医療を設定して取り組めます。
  • チャーン予測:組織のさまざまな部門において、特定の行動がチャーン(離反)の兆候を示すことがあります。例えば、人事チームや管理チームは、優秀な人材が組織を離れるリスクがあるかどうかを知りたいでしょう。この種の洞察は、文化や報酬など、社内の問題領域を理解するための会話を促すことができます。また、営業組織は、どの既存顧客に仕事を他社に回すリスクがあるかを知りたいでしょう。チャーン予測の結果、チームは収益の損失を避けるためにリテンション戦略を立てるかもしれません。
関連ソリューション
IBM watsonx.ai

AI開発者向けの次世代エンタープライズ・スタジオであるIBM watsonx.aiを使用して、生成AI、基盤モデル、機械学習機能をトレーニング、検証、チューニング、導入しましょう。わずかなデータとわずかな時間でAIアプリケーションを構築できます。

watsonx.aiをご覧ください。
人工知能ソリューション

業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。

AIソリューションはこちら
AIコンサルティングとサービス

AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。

AIサービスはこちら
次のステップ

AI開発ライフサイクル全体にわたる機能にワンストップでアクセスできます。使いやすいインターフェース、ワークフロー、業界標準のAPIやSDKを利用して、強力なAIソリューションを構築できます。

watsonx.aiの詳細はこちら デモを予約