解約を予測するための生存モデル-時変予測子?


17

解約を予測するための予測モデルを構築し、個人期間トレーニングデータセットに適合した離散時間サバイバルモデルを使用することを検討しています(各顧客およびリスクのある離散期間ごとに1行、イベントのインジケーター-1に等しい)その期間に解約が発生した場合、そうでない場合は0)。

  • SingerとWilletの手法を使用して、通常のロジスティック回帰を使用してモデルを近似しています。
  • 顧客の解約は、1か月のどこでも発生する可能性がありますが、それは私たちがそれを知っているのは月末(つまり、彼らが去ったその月のいつか)だけです。24か月がトレーニングに使用されています。
  • 使用されている時間変数は、サンプルの起点時間です-2008年3月31日の時点でアクティブなすべての顧客-2009年1月の時点ですべてt = 0を受け取ります(これを行う古典的な方法ではありませんが、予測モデルと従来の統計モデル)。使用される共変量は、その時点での顧客の在職期間です。
  • 構築された一連の共変量があります。データセットの行全体で変化しないもの(特定の顧客)と変化するものがあります。

  • これらの時変共変量が問題であり、解約予測の生存モデルに疑問を投げかけているのは(現在のスナップショットデータに基づいて今後xか月の解約を予測する通常の分類子と比較して)。時不変のものは、前月のアクティビティを表し、重要なトリガーになると予想されます。

この予測モデルの実装は、少なくとも私の現在の考え方に基づいて、毎月末に顧客ベースをスコアリングし、来月中に解約の確率/リスクを計算することです。その後、次の1、2または3か月間。その後、次の1,2,3,4,5,6か月間。3か月および6か月の解約率については、推定生存曲線を使用します。

問題:

スコアリングについて考える場合、時変予測変数をどのように組み込むことができますか?私は時不変の予測子でしかスコア付けできないか、または時不変の予測子を含めることができるようです。それらを時不変にする必要があります。値を「今」に設定します。

生存モデルのこの使用に関する経験や考えはありますか?

@JVMコメントに基づく更新:

問題は、モデルの推定、係数の解釈、トレーニングデータを使用した興味深い共変量値のハザード/生存プロットのプロットなどにはありません。問題は、特定の顧客のリスクを予測するためにモデルを使用することです。今月の終わりに、私はまだこのモデルでアクティブな顧客であるすべての人を獲得したいと考えています。このリスクをx期間のうちに予測します(来月の終わりに口座を閉鎖するリスク。今から2か月の終わりに口座を閉鎖するリスクなど)。時変共変量がある場合、それらの値は将来の期間で不明であるため、モデルの利用方法は?

最終更新:

個人期間のデータセットには、各個人およびリスクのある各期間のエントリがあります。Jの期間があるとしましょう(24か月でJ = 1 ... 24の場合)離散時間生存モデルを構築します。簡単にするために、時間Tを線形として扱い、Xが時間である2つの共変量XとZがあるとします-不変、つまり、i番目の人のすべての期間で一定であり、Zは時間的に変化する、つまりi番目の人の各レコードが異なる値を取ることができることを意味します。たとえば、Xは顧客の性別であり、Zは前月の企業にとってどれだけの価値があるかを示します。j番目の期間におけるi番目の人のハザードのロジットのモデルは次のとおりです。

logit(h(tij))=α0+α1Tj+β1Xi+β2Zij

したがって、問題は、時変共変量を使用し、新しいデータで(まだ見えない未来に)予測する場合、は不明です。Zj

私が考えることができる唯一の解決策は次のとおりです。

  • Zのような時変共変量を使用しないでください。たとえば、Zの減少を見ると、顧客が離脱し、おそらく出発する準備ができていることがわかりますので、これはモデルを大幅に弱め、撹拌のイベントを予測します。
  • 時変共変量を使用しますが、(Zが上にあるように)それらを遅らせることで、変数に遅れが生じている期間を予測できます(ここでも、新しい現在のデータをスコアリングするモデルを考えます)。
  • 時変共変量を使用しますが、予測では定数として保持します(したがって、モデルはさまざまなデータに適合しましたが、予測のためにそれらを一定のままにして、後で実際に観察された場合、これらの値の変化が撹拌のリスクにどのように影響するかをシミュレートします。
  • 時変共変量を使用しますが、既知のデータからの予測に基づいて将来の値を補完します。たとえば、各顧客のを予測します。Zj

いくつかの質問:最初に、離散時間モデルを使用することに結婚していますか?あなたがしたいことは、パラメトリック生存モデルではより簡単かもしれません。第二に、解約という意味の例を提供できますか。おそらく、あなたのデータがどのように見えるかの単なる例ですか?
ジェイソンモーガン

@JWM。チャーンとは、顧客がアカウントをキャンセルしたことを意味します。顧客がキャンセルした月しかわからないので、個別の時間が適切だと思います。モデルが離散時間または連続時間(CoxまたはAFT)である場合、時変予測子に関する同じ問題が存在すると思いますいいえ?
B_Miner

あなたの懸念をまだ把握していないことをおaび申し上げます。モデルを十分に推定できるはずです。ただし、TVCおよび従属変数に測定誤差がある可能性が高いため、おそらくモデルでTVCのラグを使用する必要があります。それ以外の場合は、イベントの発生後に測定された共変量の値を、そのイベントの予測子として使用するリスクがあります。時間の一貫性の問題を確認できます。あなたの目標は予測ですが、合理的な信頼区間が必要な場合は、堅牢な標準誤差を(少なくとも)推定する必要があります。
ジェイソンモーガン

@JVMはどうやら自分自身をうまく説明できていないようです。質問に回答を追加しました。
B_Miner

提案された4つのソリューションに関する@B_Miner。あなたに問題はありませんt=0か?私はあなたが時間立っていて、を知りたいと思うと思います。つまり、初期生存曲線ではなく、条件付き生存確率を探しています。私は正しいですか、何かが欠けていますか?:私はここに、この上の質問を提案stats.stackexchange.com/questions/346338/...s>0P(Ti>s+x|Fs)
mr.bjerre

回答:


1

説明をありがとう、B_Miner。私は自分で多くの予測をしていませんので、塩分を少なめに取ってください。ここに、少なくともデータの最初のカットとして私がすることを示します。

  • 最初に、TVCを説明するモデルを定式化および推定します。相互検証、エラーチェックなどをすべて実行して、データに適切なモデルがあることを確認します。
  • 第二に、(どんなフレーバーの)生存モデルを策定し、推定します。このモデルも妥当であることを確認するために、すべての相互検証、エラーチェックを実行します。
  • 第三に、TVCモデルからの予測を解約のリスクの予測の基礎として使用する方法を決めます。もう一度、サンプルを使用して予測が妥当であることを確認します。

妥当と思われるモデルができたら、最初のTVCモデルのエラーを2番目のモデルに組み込む方法として、データをブートストラップすることをお勧めします。基本的に、ステップ1〜3をN回適用します。そのたびに、データからブートストラップサンプルを取得し、一連の予測を作成します。妥当な数の予測がある場合は、タスクに適していると思われる方法で予測を要約してください。たとえば、95%の信頼区間だけでなく、関心のある個人または共変量プロファイルごとに解約の平均リスクを提供します。


@JVM。あなたの提案が上記の最後の解決策の選択肢であることを正しく読みますか(最終更新時)。実際のサバイバルモデルで使用する各Z(TVC)を予測するモデルを開発しますか?
-B_Miner

2

私が見るように、使用できる2つの生存分析パラダイムがあります。Cox回帰フレームワークでは、時変共変量が許可され、キャンセルの平均レベルに対する特定の共変量セットを条件とするキャンセルのリスクの推定値が生成されます。ポアソン誤差を伴うglmフレームワークも比例ハザードモデルであり、離散間隔に特に適しています。JVMは、今月の不完全なデータの使用に潜在的なエラーがあることを指摘しましたが、私が得た意味は、共変量または共変量の最新の値を条件とする推定値が必要だということです。データの状況をより適切に説明すると、より効果的な例が得られる可能性があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.