[논문이야기] 건축물 별 월간 전기/가스 사용량 예측:결합확률분포 모델 기반 예측 ⑤

공분산 행렬 계산을 통해 결합정규분포를 수학적으로 정의
다변량 정규분포 표본 추출로 에너지 사용량 합리적으로 예측 가능해
조건부 다변량 정규분포의 평균으로 누락치 추정도 '손쉽게'

[논문이야기] 건축물 별 월간 전기/가스 사용량 예측:결합확률분포 모델 기반 예측 ④에서 이어집니다.

이전 글(1,2,3,4)까지의 기나긴 대장정을 통해, 우리는 에너지 사용량에 대한 기존 연구의 1차 모멘트 벡터(1st moment vector) 계산과 함께 회귀 모델의 ‘공분산’을 포함한 2차 모멘트 행렬(2nd moment matrix)까지 완전히 추정할 수 있게 됐다. 아울러 이렇게 계산된 1차 모멘트 벡터 및 2차 모멘트 행렬을 통해 우리는 ‘다변량 정규분포(Multivariate Normal Distribution)’을 수학적으로 정의할 수 있게 됐다.

이번 글에서는 위의 과정을 통해 추정된 ‘다변량 정규분포’를 기반으로 ‘건축물 별 월간 전기/가스 사용량’을 통계적으로 예측 해보고, 나아가 우리의 통계 모델이 기존 연구 대비 현실을 얼마나 제대로 설명할 수 있는지 실제 데이터와 비교를 통해 살펴본다.

다변량 정규분포를 활용한 표본 추출, 공분산을 반영한 예시

이전 글에서 도출한 2차 모멘트 행렬을 기반으로 다변량 정규분포를 정의하며, 이때 해당 다변량 정규분포로부터 1년간의 1월, 2월, …, 12월의 에너지 사용량의 표본을 추출할 수 있다. 이는 회귀 모델의 잔차(residual) 간 상관관계를 반영해 ‘계절적 추이를 반영해서’ 표본을 뽑는다는 점에서 이전 글에서 살펴본 기존 연구들과는 차별된다. 쉽게 말해 이제는 7월에 비슷한 규모의 다른 건물들 대비 매우 많은 전기를 쓰던 건물이, 비로소 8월에도 많은 전기를 사용한다고 추정할 수 있게 되는 것이다.

실제 필자의 위 주장이 타당한지 아래 그림의 다변량 정규분포로부터 추출된 에너지 사용량 데이터 표본들을 살펴보자.

주어진 건물 속성에 대한 월별 에너지 사용량 벡터의 표본들
주어진 건물 속성에 대한 월별 에너지 사용량 벡터의 표본들

위 그림을 통해, 실제 표본들에서의 에너지 사용량의 계절적 추이가 실제 데이터의 추이와 매우 비슷하다는 것을 확인할 수 있다. 예컨대 에어컨을 많이 트는 여름철 7-8월의 경우 전기 사용량이 크게 증가하는 한편, 난방을 많이 가동하는 겨울철인 12-2월의 경우 가스 사용량이 크게 증가하는 것을 통해 우리의 통계 모델이 현실을 제대로 반영하고 있다는 것을 확인할 수 있다.

다변량 정규분포를 활용한 표본 추출, 공분산을 반영하지 않은 예시

한편 기존 연구들처럼 서로 다른 월의 에너지 사용량 간 공분산(covariance)을 고려하지 않는 경우의 표본 추출이 어떻게 이뤄지는지 살펴보자. 이는 위 표본 추출에 사용한 다변량 정규분포에서 공분산행렬의 비대각 성분을 0으로 보는 것과 같다. 만약 비대각 성분을 0으로 만들고 표본을 뽑는다면, 아래와 같이 들쭉날쭉한 추이를 보이는 표본을 얻게 된다.

공분산을 고려하지 않을 경우 추출되는 비현실적 표본들
공분산을 고려하지 않을 경우 추출되는 비현실적 표본들

상식대로라면, 만약 7월에 대해 평균보다 상당히 적은 에너지 사용량을 표본으로써 뽑았다면 이는 에너지를 적게 쓰는 건물이 돼야할 것이다. 이에 따라 같은 건물의 8월 사용량도 평균보다 상당히 적어야 할 것이다.

그러나, 이번에는 모델이 공분산이라는 정보를 활용하지 못해 비상식적인 표본이 추출된 것을 확인할 수 있다. 즉 위 자료의 첫 번째 그림이 보여주듯, 7월에 비슷한 규모의 다른 건물들 대비 매우 적은 전기를 쓰던 건물이 8월에는 다른 건물들 대비 매우 많은 전기를 쓰게 된 것이다.

다변량 정규분포를 활용한 누락치 추정

표본 추출에 이어서 또 하나의 활용 사례로, 누락치 추정(Imputation)을 들 수 있다. 예컨대 국토교통부 데이터에는 건물별 월별 에너지 사용량이 종종 누락되어 있다. 또는 기록된 사용량 중 일부가 이상한 경우도 있다. 나머지 월에 대해서는 올바르게 기록된 사용량이 존재할 때, (올바르게) 기록된 사용량들을 기반으로 누락된 사용량을 추정할 수 있을까?

빌딩 데이터 이상치
예:특정 건물의 월별 에너지 사용량이 연속적으로 누락돼 중간값 자체를 정의할 수 없는 경우 기존과는 다른 누락치 추정법이 필요하다

만약 세 개의 연속된 월 중 처음과 마지막 월은 사용량이 기록되어 있고 두 번째 월만 누락되어 있다면, 중간값을 쓰는 것으로 타협할 수 있다. 하지만 만약 두 개의 월이 연속적으로 누락되어 있다면? 혹은 시간적으로 마지막 월의 사용량이 누락되어 있어 후행하는 월의 사용량과의 중간값 자체가 정의되지 않는다면? 이 때는 어떻게 할 것인가?

조건부 다변량 정규분포의 평균치를 활용해서 누락치를 합리적으로 추정할 수 있다

이 연구에서 도출한 다변량 정규분포를 활용하면 어떤 경우에도 합리적으로 누락치를 추정할 수 있다. 위 수식에서 확인할 수 있듯, 다변량 정규분포를 따르는 확률변수 벡터의 원소들 중 일부의 값이 고정될 경우, 고정되지 않은 나머지 원소들의 확률분포는 고정값들을 조건부로 하는 축소된 차원의 다변량 정규분포를 따른다. 즉 이 조건부 다변량 정규분포의 조건부평균을 활용해 누락치를 합리적으로 추정할 수 있게 된 것이다.

조건부 다변량정규분포를 이용한 누락치 추정 예시
조건부 다변량정규분포를 이용한 누락치 추정 예시

위 그림은 조건부 다변량 정규분포의 조건부 평균을 활용해 누적치를 실제로 메워넣은 그래프다. 파란색 실선은 어떤 건물의 실제 월별 에너지 사용량이고, 주황색 동그라미들은 2, 7, 10월 사용량이 누락되었다고 가정 시 나머지 월들의 사용량을 조건부로 하는 다변량 정규분포의 조건부 평균이다. 초록색 네모들은 1~9월의 사용량이 주어졌다고 가정 시 10~12월의 사용량이 따르는 다변량 정규분포의 조건부 평균으로, 미래 사용량 예측으로 볼 수 있다. 조건부 평균이 실제 참값에서 크게 벗어나지 않는다. 이를 볼 때 조건부 평균을 누락치의 추정치로 사용하는 것은 합리적이다.