본문 바로가기
반응형

R Programming/Analysis6

[R] shapviz 패키지로 SHAP Value 구하고 해석하기 SHAP (SHapley Additive exPlanations) 값은 머신러닝 모델의 예측 결과를 설명하기 위한 방법 중 하나로,모델의 각 변수(feature)가 결과의 예측에 어떻게 기여했는지를 정량적으로 측정한다. 본 게시글에서 소개하고자 하는 shapviz는 모든 모형에 적용가능한 형태는 아니며,R의 xgboost, lightgbm, h2o (tree-based regression or binary classification model)에만 적용 가능하다.  0. 패키지패키지는 R Cran을 통한 설치도 가능하며 (다른 패키지처럼 설치 ok)가장 최신 버전을 받으려면 devtools 라이브러리를 사용해서 github을 통해 직접 받을 수도 있다.# From CRANinstall.packages(".. 2024. 8. 22.
[R] Auto Correlation 데이터 생성과 Durbin-Watson 검정 본 게시글은 R에서 Auto Correlation (혹은 자기상관성; Serial Correlation, 대체로 시계열 데이터에서 나타나는 특성임)이 존재하는 데이터를 생성하는 방법에 대해 소개한다. Auto Correlation (자기상관성) Auto Correlation은 이 전 시점의 결과 $y_{t-1}$가 현재 시점의 $y_{t}$에 영향을 주는 관계를 의미한다. 보통 시계열 데이터와 같이, 시간의 순서에 따라 결과 변수들이 관찰되었을 때, Auto Correlation이 존재할 가능성이 크다. 결과 사이의 자기상관성이 존재한다는 것은 다른 말로 잔차 $\epsilon_{t}$가 이 전 시점의 잔차 $\epsilon_{t-1}$에 영향을 받는다고도 표현할 수 있다. 일반적으로 선형 회귀분석 시,.. 2023. 12. 28.
[R] Cox 분석을 위한 생존 시간 데이터 생성 (시뮬레이션 코드) 본 게시글을 Cox PH 모형 분석을 위한 특정 분포를 따르는 Survival Time 데이터를 생성하는 방법에 대한 내용이다. 참고에 Stackoveflow와 해당 게시글에서 언급된 Bender et al. (2005)를 참고하여 작성하였다. 데이터 생성하는 법 정규분포, 이항분포, 포아송분포 등의 분포를 따르는 시뮬레이션 데이터는 R의 기본 내장함수를 통해 쉽게 사용할 수 있다. 하지만 어떠한 Cox 모형의 확장된 분석방법이 시뮬레이션 데이터에서 잘 작동하는지 확인하고자 할 때, Cox 모형은 관찰된 생존 시간에 대한 어떠한 가정을 하는 것이 아닌, Hazard Function에 대한 가정을 하고 있기 때문에 어떻게 생성할지 막막해진다. 2005년도에 Stat Med에서 Cox 모형을 위한 생존시간 .. 2023. 12. 22.
[R] 부트스트랩 신뢰 구간 (Bootstrap Confidence Intervals) 계산 전통적인 통계 검정은 주어진 데이터가 특정 분포를 독립적으로 따른다는 가정에서 시작된다. 하지만, 해당 가정이 어려운 경우는 항상 존재하며, Standard Error를 직접적으로 계산할 수 없는 상황이 존재한다. (예를 들어, EM 알고리즘은 Standard Error를 제공하지 않는다.) 이러한 상황에서 우리는 주어진 데이터를 사용하여, 부트스트랩 (Bootstrap) 방법을 통해 Standard Error를 추론하고, 신뢰 구간을 계산할 수 있다. 일반적으로 주어진 데이터를 Population이라고 생각하고, 직접 1,000번 반복하여 주어진 데이터에서 해당 데이터 크기만큼의 무작위 복원 추출을 진행한다. 1,000개의 데이터에서 얻어진 추정량의 분포를 사용하여, 경험적으로 Standard Erro.. 2023. 11. 27.
[R] 랜덤포레스트 (randomForest)에 대한 모든 것 본 게시글은 랜덤포레스트의 간략한 소개와 R 기반의 랜덤포레스트 모형 학습 과정을 소개한다. 전체적인 과정은 0. 랜덤포레스트 소개, 1. 패키지와 데이터 불러오기, 2. 데이터 분할과 학습, 3. 학습된 모형 평가, 4. 변수 중요도 순서이다. 0. 랜덤포레스트 (randomForest) 랜덤포레스트 사용하기 전, 꼭! 알아야 하는 랜덤포레스트의 특성을 소개하고 넘어간다. 이 특징을 이해해 두면, 코드 작성 과정에서의 이해나 결과 해석이 편해진다. 앙상블(Ensemble) 모형: Randomforest는 여러 개의 Decision Tree 모형을 조합하여 만든 앙상블 모형이다. 각 트리마다 무작위 추출 진행: 각각의 Decision Tree 학습에 사용되는 변수와 관측은 모두 무작위로 추출하여 사용한다.. 2023. 11. 16.
반응형