Kernel Assisted Learning for Personalized Dose Finding
イントロ
- 薬の用量の最適化に取り組む
- 患者をランダムに選んで薬を処方し経過を見るというアプローチが典型的
- しかし最適な用量は患者の状態によって異なる
- 最近パーソナライズされた治療の推薦手法が注目されている
- 適用できる有限の治療法の中から患者個人の情報に基づいて最適な治療を選ぶ
- 所望の出力を最大化する治療法を学習する手法が複数提案されている
- Q-learning, A-learningを含む
- しかしこれらの手法は治療段階が多数ある場合に適用できない
- 例えば血栓を防ぐワルファリンは適量が患者によって10倍程度違うため, 用量の推定が難しい
- 処方量を間違えると大量出血を起こす
- このような場合, 個人の用量は状態に応じて安全な処方量の範囲内で推薦される
- 既存研究の拡張の方向性の一つとして連続の処方量に扱えるように処方量を離散化したもの, 患者を分類し各々に一つの処方ルールをあてはめたもの, 二値の出力を当てるものから順序を当てられるよう拡張したもの などがある
- しかし処方量の変化に敏感な場合, 粗い離散化では適切な推定ができない場合がある
- 一方離散化幅を細かくすると一つ一つのグループに振り分けられるデータが少なくなりオーバーフィッティングを招く
- Q-learningを拡張した手法も提案されているが, これは処方量と共変量の関係を特定の関数形でモデル化したもの\(\rightarrow\)misspecificationの恐れあり, かつ推定した処方量が安全な処方量の範囲内にあることを補償しない
- 他に個人の報酬を重みとして重み付け回帰を用いる手法もある
- この手法はmisspecificationに対してロバストで計算上の利点もある (non-convex loss)が推定された処方法に対する統計推論ができない
- 本研究ではkernel assisted learning法を提案
- 提案法は直接探索法と見做せる
- まずkernel based estimatorでvalue functionを推定
- その後予め定義された用法の中から個人の処方法を探す
提案手法
- i番目の患者の共変量 \(X_i\), 適用された用量 \(A_i\), 出力 (容態など) \(Y_i\)の系列が観測されている
- 個人に最適化された処方法を 𝜋(𝑋) とおく
- 価値関数 \(V(\pi)=\mathbb{E}[Y^{\ast}{\pi\{X\}}]\)を最大化する 𝜋を見つける
- 価値関数をデータから推定するためいくつか仮定を置くと \(V(\pi)\)は \(A\), \(X\)が与えられた下での \(Y\)の期待値で書き換えられる
- まずはカーネルに基づく推定法を使って \(V(\pi)\)を推定する
- 処方法を関数として定義しておく (今回は \(x\)の線形変換にリンク関数をかませたものを使用)
- リンク関数をかませることで安全な処方量の範囲内に収まることを補償
- あとは価値関数を最大化するβを推定する
- 最適化 (βの推定)にはRパッケージのoptimr()を使用
- 積分は離散近似