ロジスティック回帰のユーザフレンドリガイド
ロジスティック回帰とは
ロジスティック回帰は、1 つまたは複数の入力変数を 1 つの出力変数に関連付ける数式を見積もります。
たとえば、レモネードスタンドを経営し、どのタイプの顧客が戻ってくるかに関心があるとします。データには、各顧客のエントリ、最初の購入、および翌月中にレモネードを買い戻したかどうかが含まれます。データは以下のようになります。
戻る | 顧客年齢 | 性別 | 初回購買時温度 | レモネードの色 | パント長 |
---|---|---|---|---|---|
そうしませんでした | 21 | 男性 | 24 | ピンク | パンツ |
返却済 | 34 | 女性 | 20 | 黄 | パンツ |
返却済 | 13 | 女性 | 25 | ピンク | パンツ |
そうしませんでした | 25 | 女性 | 27 | 黄 | ドレス |
その他 | その他 | その他 | その他 | その他 | その他 |
“カスタマ年齢” (入力または説明変数) は “リターン” (出力または応答変数) に影響を与える可能性があります。ロジスティック回帰によってこの結果が得られる可能性があります。
12歳(最少年齢)では「帰還」となる可能性が10%。
さらに年齢を重ねるごとに「帰還」が1.1倍に「帰還」となる。
この知識は、2 つの理由で役立ちます。
まず、年配の顧客が戻ってくる可能性が高いという関係を理解できます。この洞察により、広告はリピーター顧客になる可能性が高くなるため、古い顧客に向けて広告を曲げることができます。
次に、相対的に、特定の予測を行う際にも役立ちます。24 年前の顧客が立ち寄ると、レモネードを購入した場合、後で返品顧客になる可能性が 26% あると見積もることができます。
オッズの乗算について
なお、ある状況で「返却済」が「1.5倍の可能性」と言った場合、以下のことを行っています。
オッズは1対9で、1/(1+9) = 10%と書かれていた。
“オッズ” (1) は 1.5 で乗算されます。
1.5:9 と記述すると、1.5/(1.5+9) = 14% と表記されます。
もう 1 つの例は、50% の確率から 3 倍の確率へと移行する時間です。
オッズは1対1で、1/(1+1) = 50%と書かれていた。
“odds for” (左側 1) に 3 が乗算されます。
3:1 では、3/(3+1) = 75% と表記されます。
次に、この回帰モデルを作成するプロセスについて説明します。
回帰モデルの作成の準備
1.回帰の理論を考えてみてください。
「Revenue」という回答変数を選択すると、さまざまな入力がどのように関係するかを仮定します。たとえば、”初回購入時の温度” が高いほど “返品済” の可能性が高くなり、”年齢” が “返品” にどのように影響するかがわからない場合があります。また、”パンツ” (対短パン) は “温度” の影響を受けるものの、レモネードスタンドには影響しないと考えることがあります。
回帰の目標は通常、複数の投入と 1 つの出力の関係を理解することであるため、この場合、「温度」と「年齢」で「帰還」を説明するモデルを作成することにします(また、実際の予測よりも説明に関心がある場合でも、「温度および年齢からの戻りを予測する」と言います)。
おそらく、回帰には「パンツ」が含まれないでしょう。どちらも「温度」と関係があるので「帰り」と相関するかもしれませんが、因果連鎖では「復帰」の前に来ないため、モデルを混乱させる可能性があります。
2.モデルに有用である可能性のあるすべての変数を「説明」します。
まず、応答変数 (この場合は “Revenue”) を記述し、その応答変数に適した操作感を得ます。説明変数に対して同じ操作を行います。
…ほとんどのデータがヒストグラムの最初の数個のビンにある場合。これらの変数には、後で特別な注意が必要です。
3.考えられるすべての説明変数を応答変数に「関連付け」します。
Stats iQは、統計関係の強さによって結果を並べ替えます。結果を見て、”収益” に関連する変数とその方法について確認します。
4. 回帰の構築を開始します。
回帰モデルの構築は、反復プロセスです。 以下の 3 つのステージを必要な回数繰り返します。
回帰モデルを構築する 3 つのステージ
ステージ 1:変数を加算または減算します。
以前の分析で “Revenue” に関連していることが示された変数を 1 つずつ追加します (または、理論的に追加する理由がある変数を追加します)。1 つずつ移行することは厳密には必要ではありませんが、進行しながら問題を特定して修正しやすくし、モデルの感触を得るのに役立ちます。
まず「温度」で「収益」を予測するとしましょう。強い関係を見つけて、モデルを評価し、満足できるものであると判断します (詳細については 1 分程度で詳しく説明します)。
返品 <– 温度
次に “Lemonade color” を追加し、回帰モデルに 2 つの項があり、どちらも統計的に有意な予測変数です。たとえば、
収益 <– 温度およびレモネードの色
すると「セックス」を加え、モデル結果では「セックス」がモデルで統計的に有意だが、「レモネードカラー」がなくなったことがわかる。通常は、モデルから “Lemonade color” を削除します。以上で、以下を実現しました。
収益 <– 温度および性別
つまり、顧客の性別がわかっている場合、顧客が注文したレモネードの色を把握していても、顧客が返品顧客になるかどうかについての情報は得られません。
女性が男性よりも黄色のレモネードを選ぶ傾向があり、女性が戻ってくる可能性が高いことを調査し、発見するかもしれません。そのため、当初はイエローを選んで客が帰る可能性が高まったように見えたが、実は「レモネード色」は「セックス」を通した「復帰」にのみ関係している。 そこで回帰に「セックス」を含めると、「レモネード色」が回帰から脱落する。
回帰結果の解釈には十分な判断が必要であり、変数が統計的に有意であるからといって、それが実際に因果であることを意味するわけではありません。ただし、変数を注意深く加減し、モデルがどう変化するかを書き留め、モデルの背後にある理論を常に考えることで、データ内の興味深い関係を引き離すことができます。
ステージ 2:モデルを評価します。
変数を加算または減算するたびに、R二乗(R2)、AICc、Stats iQからのアラートを確認して、モデルの精度を評価する必要があります。モデルを変更するたびに、新しい R二乗、AICc、診断プロットを古いものと比較して、モデルが改善されたかどうかを判断します。
R二乗 (R2)
モデルの予測精度を定量化する数値メトリクスは、0 と 1 の間にある R二乗と呼ばれます。ゼロは、モデルに予測値がないことを意味します。ゼロは、モデルがすべてを完全に予測することを意味します。
たとえば、左側に表示されるデータは、右側のデータよりもずっと低い精度モデルになります。散布図を通して線を描こうとすると、右側の赤 (“Didn’t”) から青色 (“Returned”) がほぼ完全に分離できましたが、左側ではそれが難しい場合があります。
つまり、右側は R二乗が高く、「温度」と「年齢」がわかっている場合は、「帰った」と「帰った」を判別できる。なかなか簡単に「ドンドン」でした。左辺は低中R二乗で、「温度」と「年齢」が分かれば、「帰り」か、対とかなり良い推測がある。「そうじゃなかった」が、エラーが多発する。
「良い」R二乗の定義は固定されていません。一部の設定では、どのような効果でも興味深い場合があります。一方、他の設定では、非常に正確でない限り、モデルが役に立たない場合もあります。
変数を追加すると、R二乗が上昇するため、可能な最大のR二乗を達成することは目標ではなく、モデルの精度(R二乗)と複雑性(一般的には変数の数)のバランスをとります。
AICc
AICc は、精度と複雑さのバランスを取る指標です。精度が高いとスコアが向上し、複雑さが増し(より多くの変数が)スコアが悪くなります。下位AICcのモデルが良い。
AICc メトリクスは、データ行数が同じで出力変数が同じモデルの AICcs を比較する場合にのみ役に立つことに注意してください。
アラート
Stats iQは随時モデルを改善する方法を提案します。たとえば、Stats iQは、変数の対数(その意味の詳細)を取ることを提案する場合があります。
コンフュージョンマトリクスおよび精度リコール曲線
コンフュージョンマトリクスと精度リコール曲線は、モデルの精度を理解するためのツールとしても役立ちます。また、モデルに基づいて予測を行う場合は、これらのツールが役立ちます。 これらは、モデルの内容をよく理解するために必要ではないため、コンフュージョンマトリクスと正確性リコール曲線に関する別のセクションに配置します。
ステージ 3:モデルを適宜修正します。
モデルの評価で満足できるものであることが判明した場合は、完了するか、ステージ 1 に戻って、より多くの変数を入力することができます。
アセスメントでモデルが不足していることが判明した場合は、Stats iQのアラートを使用して問題を修正します。
モデルを変更する際には、変化する R二乗、AICR、および残差診断を常に書き留め、変更によってモデルが役に立つか傷つけられているかを判断します。