2017/07/12
2020/04/14
生存時間解析〜生存関数とハザード関数とその関係〜
当ページでは生存時間データ解析の基本中の基本を解説していきます。
そもそも、生存時間データ解析とはなんなのか?というところから始め、生存関数とハザード関数の概念とその関係について、初心者にもわかるようなページとなっております。
生存時間データ解析とは?
生存時間解析というと、その名称から「死亡までの時間」についての解析だというイメージがつきまといますが、実際にはそれに限らず、もっと幅広い分野で使われている解析です。生存時間データ解析とは、イベントまでの時間データに対する解析という意味です。よって、取り扱われるテーマとしては、次のようなものがあり、多岐に渡ります。
・疾病の再発または回復までの時間
・品質管理の分野では工業製品が故障するまでの時間
・経済の分野では失業期間
生存関数
生存時間解析を行う際には、\(S(t)\)という、生存関数(survival function)を定義します。生存関数とは、被験者がある期間\(t\)よりも長く生きる確率です。よって、以下のように定義されます。
\(T\)を被験者の生存時間を表す確率変数とする。\((T>0)\) また、\(T\)は確率密度関数\(f(t)\)を持つ。\(T\)の分布関数は、
$$F(t)=P(T<t)=\int_0^t f(u) du$$
となり、これは被験者がある期間\(t\)よりも長く生存しない確率を表す。よって、生存関数は生存時間が\(t\)以上となる確率なので、
$$S(t)=P(T\geq t)=1-F(t) $$
つまり生存関数は、1から被験者の生存時間の分布関数を引くことによって、得られる関数です。
ハザード関数
ハザード関数とは、時点\(t\)における死亡のリスクや危険度を表すために使われているものです。(ハザードという言葉は、「潜在的危険性」という意味)具体的には、被験者が時点\(t\)まで生存したという条件のもとで、その時間に死亡する確率です。
ハザード関数\(h(t)\)を導出するために、ここで、確率変数\(T\)が\(T\geq t\)という条件の下で、\(T\)が\(t\)と\(t+t\delta t\)の間の値を取る確率を考えてみましょう。それは以下の式で表せます。
$$P(t\leq T<t+\delta t |T\geq t)$$
これは、\(T\geq t\)という条件の下での条件付確率です。これを\(\delta t\)で割ることで、単位時間当たりの確率、すなわち率(rate)が得られます。この式を、\(\delta t\rightarrow 0\)とすると、
$$h(t)=\lim_{\delta t \to 0}\frac{P(t\leq T<t+\delta t|T\geq t)}{\delta t}$$
となります。この\(h(t)\)をハザード関数(ハザード率)といいます。
生存関数とハザード関数の関係
ここまでで、生存関数とハザード関数、それぞれについてはお分りいただけましたでしょうか?ここから、二つの関数にはどのような関係性があるのか見ていきます。ハザード関数\(h(t)\)を変形していくと、見えてくる関係性があります。
まず、\(h(t)\)の分子を
$$P(t\leq T<t+\delta t|T\geq t) = \frac{P(t\leq T<t+\delta t)}{P(\geq t)} $$
と変形し、\(h(t)\)に代入すると、
\begin{align}h(t)&=\lim_{\delta t \to 0}\bigl\{\frac{P(t\leq T<t+\delta t)}{P(T\geq t)}\times\frac{1}{\delta t}\bigr\} \\ &=\lim_{\delta t \to 0}\bigl\{\frac{F(t+\delta t)-F(t)}{P(T\geq t)}\times \frac{1}{\delta t}\bigr\}\\&=\lim_{\delta t \to 0}\bigl\{\frac{F(t+\delta t)-F(t)}{\delta t}\times \frac{1}{S(t)}\bigr\}\\ &=\frac{f(t)}{S(t)}\\ &= \frac{F'(t)}{1-F(t)} \end{align}
となります。
この関係式を使えば、\(S(t),h(t),f(t)\)の二つが求められれば残り1つも求めることができます。つまり、密度関数、生存関数、ハザード関数のどれか二つが分かれば、残りの一つが決まるということになります。
ここで、
\begin{align}\int \frac{F'(t)}{1-F(t)}dt&=-\log(1-F(t))\\&=-\log{S(t)}\end{align}
より、
$$h(t)=-\frac{\mathrm{d}}{\mathrm{d}t}\{\log S(t)\}$$
となります。
※\(h(t)\)の式変形1行目から2行目について
\begin{align}P(t\leq T<t+\delta t)=\int_t^{t+\delta t} f(u)du\\=\int_0^{t+\delta t} f(u)du-\int_0^t f(u)du\\=F(t+\delta t)-F(t)\end{align}
ということも言えます。
指数分布の生存関数とハザード関数
生存関数とハザード関数の例として、指数分布をあげます。指数分布は計算機や空調設備などのシステムの故障発生などの事情が発生する時間間隔\(T\)が従う分布です。
以下が、その生存関数のグラフになります。
上のグラフはそれぞれパラメータ\(\lambda\)が\(0.5,0.2\)のときの生存関数です。また、ハザード関数は\(\lambda\)となり、一定となります。
※補足〜指数分布の無記憶性〜
指数分布には次のような性質があります。
$$P(T>m+n|T>s)=\frac{P(T>m+n)}{P(T>m)}=\frac{e^{-\lambda(m+n)}}{e^{-\lambda m}}=e^{-\lambda n} =P(T>n)$$
これを指数分布の無記憶性(memoryless)といいます。これは、将来のイベント発生までの時間がその過去の経過によらないということです。また、指数分布はこのような無記憶性を持つ唯一の連続型確率分布となっております。
Recommended