로그-노말 분포(Log-normal distribution)
랜덤변수의 자연로그가 정규분포를 따른다면 랜덤변수 자체는 로그노말(log-normal) 분포를 따른다고 할 수 있습니다.
X (log-normal) | ⇒ | Y=ln(x) (normal) |
Y(normal) | ⇒ | X=exp(Y) (log-normal) |
양수인 연속 랜덤변수 X를 식 1과 같이 나타낼 수 있다고 가정합니다.
랜덤 변수 X의 확률밀도함수가 식 2와 같다면 그 변수는 매개변수
다음 코드는 식 2를 함수로 작성한 것입니다.
def logNormPdf(x, mu, sigma): c1=1/(x*np.sqrt(2*np.pi)*sigma) c2=np.exp(-1/2*(np.log(x)-mu)**2/sigma**2) return c1*c2
양수인 랜덤변수 x에 대해 모수 중의 σ의 변화에 따른 위 로그-노말 확률밀도 함수를 적용한 행태를 나타냅니다.
x=np.linspace(0.01, 10, 1000) para=[(0,0.5, 'g'), (0, 1, 'b'), (0, 2, 'r')] plt.figure(figsize=(3,2)) for i , j, z in para: p=logNormPdf(x, i, j) plt.plot(x, p, color=z, label=f"$\mu$={i}, $\sigma$={j}") plt.xlabel("x") plt.ylabel('PDF') plt.legend(loc="best") plt.show()
위 코드의 변수는 로그-노말 분포에 부합합니다. 이 변수에 자연로그를 취한 변형된 랜덤 변수는 정규분포에 부합니다.
y=np.log(x) pn=stats.norm.pdf(y,scale=0.5/2) plt.figure(figsize=(3,2)) plt.plot(y, pn) plt.show()
Y~N(μ, σ2) 즉, 랜덤변수 Y는 μ와 σ2를 모수로 하는 정규분포를 따릅니다. 이 변수에 식 3이 성립하면 랜덤변수 X는 μ와 σ2를 모수로 하는 로그-노말 분포를 따르며 그 확률밀도 함수는 식 4와 같습니다.
위 식 3에 부합하는 X의 확률밀도 함수는 식 4와 같습니다.
식 4는 랜덤변수의 Y와 X의 역함수 관계를 적용한 것입니다(증가 확률함수의 역함수 참조).
기대값
로그 노말 분포를 따르는 랜덤변수 X에 대한 기대값은 식 4와 같습니다.
위 식 5는 다음과정으로 유도 됩니다(식 6).
식 6에서 랜덤변수 X는 로그-노말 분포를 따르므로 범위는 x < 0 이 됩니다. 또한 위 식을 식 7과 같이 치환하여 계산합니다.
식 7을 식 6에 대입하여 정리하면 식 8과 같습니다.
분산
로그 노말 분포를 따르는 랜덤변수 X에 대한 분산은 식 9와 같습니다.
분산은
그러므로 분산은 식 11과 같습니다.
높은 차수의 모멘트
n차 모멘트는 식 12와 같이 계산됩니다.
식 12는 식 7을 적용하여 증명할 수 있습니다.
댓글
댓글 쓰기