오늘은 응용통계학의 R 코딩을 학습하는 데 대부분의 시간을 보냈다. 이 과목은 데이터를 다루는 다양한 기법을 실제로 코드로 구현하고 분석하는 부분이 많아서 흥미로우면서도 어려운 부분이 많다. 특히, 단순히 데이터를 다루는 것에서 나아가 다양한 분석 기법과 통계적 추론을 적용해야 하는 응용통계학에서는, 수식을 단순히 이해하는 것을 넘어 R을 통해 구현하는 부분이 아주 중요했다. 그래서 오늘은 실제로 손을 움직여 R 코드를 작성하면서, 통계적 개념들이 데이터에 어떻게 적용되는지 세세하게 확인하고자 했다. 예를 들어, 단변량 분석과 이변량 분석을 다루면서, 변수 간 관계를 시각적으로 확인하고 이해하는 데 많은 시간을 투자했다. 한편, 스팸 메일 분류 모델의 성능을 높이기 위해 나이브 베이즈 모델을 사용해 보고, 그 위에 앙상블 기법을 적용해 보는 실험도 병행하였다. 앙상블 방법 중에서는 '하드 보팅'과 '에버리징'을 비교해 보는 데 주력했다. 먼저, 나이브 베이즈 모델 자체는 스팸과 비스팸 메일을 단순한 확률 기반으로 분류하는 데 있어 상당히 가볍고 효율적인 성능을 보여주었다. 그러나 단일 모델의 한계를 느낄 수밖에 없었고, 이를 보완하기 위해 여러 모델을 결합하는 앙상블 방법을 시도하게 되었다. 하드 보팅의 경우, 여러 모델의 예측 결과를 다수결로 최종 결과를 정하기 때문에 특정 모델이 잘못된 예측을 하더라도 다른 모델들이 보완해 줄 수 있다. 이를 통해 나이브 베이즈 모델의 단일 성능보다 안정적이고 강력한 성능 향상을 기대할 수 있었다. 실제로, 하드 보팅을 적용했을 때 모델의 정확도가 상승했고, 개별 모델의 변동성을 줄일 수 있었다는 점에서 큰 만족감을 얻었다. 에버리징 기법 또한 흥미로운 실험이었다. 에버리징은 여러 모델의 예측 결과를 평균 내어 최종 결과를 도출하는 방법이다. 하드 보팅과 달리, 예측값의 평균을 활용하기 때문에 연속적인 확률 값을 처리하는 데 더 유리한 부분이 있었다. 나이브 베이즈 모델의 예측 확률을 여러 번 에버리징한 결과, 하드 보팅과 유사한 수준의 성능을 보여주었으나, 특정 경우에는 에버리징이 하드 보팅보다 조금 더 나은 결과를 제공하기도 했다. 이렇게 두 가지 앙상블 기법을 통해 스팸 메일 분류 성능을 향상시키기 위해 노력해 보면서, 각 기법의 장단점을 깊이 있게 이해할 수 있었다. 하드 보팅은 결과의 일관성을 높이는 데 큰 역할을 했고, 에버리징은 확률적 예측을 다루는 데 유리했다는 점에서 서로 다른 매력을 가지고 있었다. 앞으로 이 경험을 바탕으로 다양한 앙상블 기법을 추가로 탐구해 보고, 모델 성능을 극대화하는 방법을 더욱 연구해 나가야겠다.
화이팅 ^^ 시험이 끝나서 이제 슬슬 다시 다른 코딩을 열심히 연습해야지.