• 검색 결과가 없습니다.

CART 기법을 이용한 개인신용정보 재현자료 생성 논문보기 | 통계개발원

N/A
N/A
Protected

Academic year: 2021

Share "CART 기법을 이용한 개인신용정보 재현자료 생성 논문보기 | 통계개발원"

Copied!
30
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

CART 기법을 이용한 개인신용정보 재현자료 생성 기법

1)

유성준

2)

․ 박나리

3) 요약 정부의 데이터 경제 활성화 사업이 시작된 2013년 이후부터 현재까지 정부와 민간의 데이터 개 방은 일자리 및 창업 기회 생성 등 경제적 파급효과와 열린 정부 및 시민 참여 증대와 같은 사 회적 가치를 창출하고 있다. 특히, 개인정보를 포함하는 빅데이터는 수요자 맞춤형 서비스 제공과 같은 경제적 가치를 창출하면서, 기존 또는 새로운 비즈니스의 수익 확보를 위한 활용 사례가 증가하고 있다. 그러나 개인정보의 가치가 증가할수록 개인정보 노출의 위험도는 높아지는 문제가 발생한다. 이에 대한 대안으로 원자료(Raw Data)의 통계적 특성은 살리되, 실제 데이터는 포함하지 않는 재현자료(Synthetic Data) 생성 기법에 대한 다수의 연구가 진행되고 있으며, 입력데이터 셋을 분석하여 재현자료를 생성해 주는 응용 프로그램도 다수 개발되었다. 본 논문에서는 R 패키지 synthpop의 CART 기법을 사용하여 금융분야 빅데이터의 시계열과 신용정보주체 특성이 반영된 개인신용정보에 대한 재현자료 생성 기법을 제안한다. 또한, 제안된 기법을 통해 금융분야 빅데 이터 분석을 위한 교육용 DB를 생성하여 금융분야 재현자료의 활용가능성을 보여준다. 주요용어 : 재현자료생성, 분류회귀나무, 개인신용정보, 노출위험제어, 정보유용성

1. 서론

2012년 정부 3.0 발표를 시작으로 각 부처가 보유한 정보를 적극적으로 개방하여 공유함으로써 부처 간 소통과 협력을 통해 국민 맞춤형 서비스를 제공하려는 노력이 시작되었다. 공공자료를 공개하여 국정 과제에 대한 추진 동력을 확보함과 동시에 일 자리 창출, 재화 및 서비스 생산 등 사회·경제적 활동을 지원하고 잠재적인 문제를 해 결하고자 하는 노력은 2018년까지 데이터 개방 5.3배, 민간 이용 비중 542.2배, 창업 사례 48.4배 증가라는 성과를 보였다.4) 특히, 금융분야는 타 산업분야에 비해 집적된 데이터 양이 많고 데이터 신뢰도가 매우 높아 데이터의 경제적 활용가치가 높은 영역 이다. 개인이나 기업의 금융정보는 유통, 보건·의료 등 다른 산업과의 융합이 용이하고, 전후방 산업과의 상관관계도 높아 타 산업의 데이터 활용에 유용한 예측변수로 작용 할 수 있다. 또한, 개인의 금융 및 비금융정보는 소비 및 투자 행태 등 개인의 특성을 반영할 수 있기때문에 맞춤형 금융상품 개발, 개인신용평가 모형 등에 활용됨으로써 소비자 중심의 금융권 혁신이 가능하다. 예를 들어, 2018년 11월 금융위원회는 데이터 1) 과학기술정보통신부의 재원으로 정보통신기획평가원의 지원을 받아 수행된 연구 2) 교신저자. 서울특별시 광진구 능동로 209, 세종대학교 컴퓨터공학과, 교수. E-mail: sjyoo@ sejong.ac.kr 3) 서울특별시 광진구 능동로 209, 세종대학교 컴퓨터공학과, 선임연구원. E-mail: nari.park@ sejong.ac.kr 4) 공공데이터포털(data.go.kr) 등록 기준(‘18.12월말)

(2)

경제 활성화를 위해 신용정보산업 선진화 방안을 신용정보법 개정안에 반영하여 금융 분야 데이터 활용 활성화 기반을 조성하는 과제를 발표하였다.5) 현재 국내 신용정보산업은 <그림 1.1>과 같이 신용조회회사(Credit Bureau)와 신 용정보집중기관으로 구성되어있다. 신용조회회사는 개인 및 기업에 대한 신용정보를 수집하여 제공 및 관리하고, 금융거래 등을 위한 신용평가업무를 수행한다. 인프라 기 관인 신용정보집중기관(현 한국신용정보원)은 금융회사 및 공공기관 등으로부터 입수 되는 신용정보를 집중 관리하여 CB사나 금융회사 등과 공유한다. 최근 신용평가의 정 확성, 공정성, 투명성 제고와 산업의 책임성 확보에 대한 사회적 요구가 증가함에 따라 개인이 자신의 신용정보를 효율적으로 관리하는 마이데이터 산업 도입방안이 마련되 었다. 금융위원회는 마이데이터 산업이 도입되고 정보주체가 본인의 신용정보를 주도 적으로 관리 및 활용이 가능해지면, 금리인하 요구나 신용평점 상승을 위한 정보정정 청구 등 개인정보주권 활용이 활발해질 것으로 전망했다.6) 이에 따라 금융분야 데이터 산업인 신용정보산업(Credit Bureau)이 수집된 정보를 바탕으로 개인맞춤형 상품 추천, 금융상품자문 등 정보관련 권리의 대리행사 업무 등을 소화하며 새로운 일자리를 창 출하고, 데이터 산업 인프라를 구축함과 동시에, 자본시장의 불평등을 해소하는 핵심 적인 역할을 수행할 것으로 기대된다. <그림 1.1> 신용정보산업 및 신용정보 관리·유통 체계 하지만 정보의 유용성 및 활용 기회가 높은 금융정보는 타 공공정보와는 다르게 개인의 민감한 정보를 다수 포함한다. 민감 정보에 비식별화 조치를 하여도 타 산업 정보와 결합하여 특정 개인이 식별된다면, 대출 및 신용카드 발급, 보험 가입 등의 영 역에서 불합리한 차별을 받을 수 있기 때문에 금융산업의 데이터 개방은 민감한 사항 5) 금융위원회, 데이터 경제 활성화를 위한 신용정보산업 선진화 방안(‘18년 11월) 6) KDI 보도자료(http://eiec.kdi.re.kr/policy/materialView.do?num=182556)

(3)

이다. 정부가 2016년 발표한 개인정보 비식별 조치 가이드라인7)에 따르면 가명처리, 총계처리, 데이터 삭제 또는 범주화, 마스킹 등이 대표적인 방법으로 소개되어 있으며, 비식별 조치 적정성 평가단을 구성하여 k-익명성 등의 방법을 통해 비식별 조치가 적 정하게 이루어졌는지 평가한다. 이러한 비식별 조치는 데이터의 활용과 개인정보보호 간 적절한 균형이 중요하다. 예를 들어, k-익명성을 준수하기 위해서 각 항목을 군집화하게 되면, 데이터 활용도가 매우 낮아지는 문제가 발생한다. 이와 같은 노출위험과 정보손실 모두 축소되지 않는 비식별 기법의 한계를 극복하기 위한 대안으로 재현자료(Synthetic Data)라는 개념이 등장하였다. Ruiz et al. (2018)에 따르면, 재현자료는 기본적으로 결측값을 대체하기 위한 다중 대체 개념을 기반으로 하고 있다. 원본자료로 학습시킨 재현모델의 결과값에서 샘플링 하여 단순히 결측값을 대체하는 수준에서 벗어나 원본자료를 대체한다. 이러한 재현자 료는 원본자료가 전혀 사용되지 않은 완전재현자료(fully synthetic data), 노출될 경우 개인 식별 가능성이 있는 민감정보만이 재현된 부분재현자료(partially synthetic data), 그리고 원본자료와 완전재현자료가 섞여 있는 하이브리드자료(hybrid data) 등으로 구 분된다. 최초로 다중대체 기법을 노출위험제어에 적용한 Rubin(1993)은 (i) 모집단에 대한 모델을 가정하고, (ii) 원본자료를 이용하여 모델을 보정한 뒤, (iii) 보정된 모델에서 하나의 데이터에 대해 여러 개의 대체값을 제공하는 완전재현자료 생성 방식을 소개하 였다. 이 후, 추론의 대상을 고정된 상수로 가정한 뒤, 발생할 수 있는 모든 가능한 관측 값을 고려하여 결합 확률밀도함수가 최대가 되는 추정량을 기반으로 사후분포를 추정하여 샘플링하는 고전적 통계기법, 이미 관측된 관찰값으로부터 산출한 사전분포와 우도함수를 바탕으로 특정 관찰값의 조건부 분포를 통해 사후분포를 산출하는 베이지안 추론 방식8), 사후분포를 추정하지 않고 관측값의 일부를 랜덤추출한 표본으로 재현자료 생성하는 비 모수적 기법, 적대적 생성 신경망(Generative Adversarial Networks), 서포트 벡터 머신 (Support Vector Machine), 랜덤포레스트(Random Forest)을 포함하는 기계학습 알고리즘 등 다수의 방법론이 소개되었다. 현재 연구 목적과 데이터 특성에 따라 다양한 방식으로 생성되는 재현자료는 결측값을 대체하거나 개인의 민감 정보를 보호하는 목적 외에도, 인공지능 분야에서 사기 탐지 등 모델을 학습할 때 일어나는 클래스 불균형 문제를 해결하거나9), 또는 실제 관측치를 구하기 위한 시간과 비용을 절감하기 위해10) 사용 되고 있다. 본 논문에서는 비모수적 기법인 CART 방식을 이용하여 개인신용정보에 대해 원 본자료의 차주, 카드, 대출, 연체정보의 조합을 동일하게 생성하지 않으면서도, 통계적 특성을 최대한 유지하는 수준에서의 재현자료를 생성하고, 금융분야 빅데이터 교육용 DB로써 활용 가능성을 확인하고자 한다. 비모수적 CART 방식을 선택한 배경에는 결 합분포를 기반으로 모든 변수를 한 번에 고려하여 여러 개의 값들을 생성하는 다중대체 방식은 범주형 자료와 연속형 자료가 섞여 있는 데이터셋에 적용하기 어렵다는 점이 7) 개인정보보호 종합포털(https://www.privacy.go.kr) 8) 강승택 (2017). 표본조사에서 베이지안적 추정방법.

9) Barse, et al. (2004). Synthesizing test data for fraud detection systems. 10) Howe, et al. (2017). Synthetic data for social good.

(4)

작용하였다. 모수적 방식의 접근은 현실적으로 많은 변수를 대체할 수 있는 모형을 만 들기도 쉽지 않고, 모집단을 잘못 가정하는 경우에 정보손실이 커지는 문제가 발생한다. 또한, 시간 순으로 발생하는 데이터 내에 숨겨진 Markov 모델 또는 비선형적 상관관 계를 가지는 변수는 copula를 사용하여 모델링하는 방법이 있지만, 이러한 생성 모델의 성능은 연구자가 사용하는 분포의 종류에 따라 제한되기도 한다. 즉, 모집단을 추정하는 모형이 아닌, 특정 구간으로 샘플링 된 자료의 조건부 분포 및 사후 분포를 기반으로 원본 자료의 통계적 특성을 살리는 것이 본 연구의 주목적이며, 따라서 비모수적 재 현자료 생성 방식이 정보 손실을 최소화 할 수 있다고 판단하였다.

2. 재현자료 생성

2.1 개인신용정보 데이터 우리나라는 2003년 카드사태 이후로 금융업권 간 정보공유 인프라가 구축되었고, 신용평가기관을 통한 개인신용평가 체계가 생겨나게 되었다. 현재 다양한 업권에서 생산되는 개인신용정보는 전국은행연합회 종합신용정보집중기관인 한국신용정보원으로 집중되어 관리 및 공유되고 있다. 한국신용정보원은 금융데이터를 적극적으로 활용하 도록 금융 빅데이터 개방시스템(CreDB)을 개발하여 금융서비스 개발 및 금융소비자 연구 등의 목적으로 이용하고자 하는 이용자에게 샘플링 후 비식별 조치한 신용정보를 제공하고 있다. 한국신용정보원이 제공하는 신용정보DB는 크게 개인, 기업, 보험의 세 가지 신용정보로 이루어진 표본DB, 신용정보 빅데이터 분석을 교육하기 위한 교육용 DB, 그리고 목적에 따른 맞춤형DB11)로 구성되어 있다. 표본DB는 2019년 현재 서비스 이용 신청자를 선별하여 한정적으로 시범 운영 중이며, 신용정보뿐 아니라 빅데이터 분석 환경을 함께 제공하고 있다. 한국신용정보원의 개인신용정보 표본DB는 대출, 연체, 그리고 카드 개설 정보로 이루어져 있으며, 5% 표본을 추출하여 구축한 자료로써 이를 이용한 통계 결과는 실제 결과와 일치하지 않을 수 있다.12) 일반 사용자에게 연구, 조사, 분석용으로 공개되는 자료인 만큼 데이터 범주화, 총계처리, 데이터 삭제, 유일 데이터 값 보정 등의 여러 가지 비식별 조치 기법을 적용하여 특정 개인을 식별할 수 없도록 개발되었다. 이는 본 교육용DB 개발을 위한 재현자료 생성 연구에서도 원본자료에 접근할 수 없기 때 문에 부득이하게 비식별 조치된 자료를 재현하였다. 교육용DB 재현자료 생성을 위한 샘플은 비식별 조치된 표본DB 중 2015년 12월부터 2019년 6월까지 관찰된 카드, 대출, 연체정보를 기준으로 추출하였다. 각 테이블에 대한 설명은 다음과 같다. 11) 2020년 공개 예정 12) 한국신용정보원, 금융 빅데이터 개방시스템(CreDB) 이용자 매뉴얼(2019.07)

(5)

❍ (차주정보) 표본DB 내 테이블 간 결합을 위한 임의의 문자열로 이루어진 차주 일련번호, 생년으로 표기되어 만 나이를 알 수 없는 연령, 성별 ❍ (대출정보) 업권의 성격으로 범주화된 업권코드, 금융회사별 특성 노출을 최소 화하기 위해 차주별로 다르게 부여된 기관일련번호13), 상·하한 처리된 대출금액, 대출의 성격 및 목적을 나타내는 대출코드1과 대출코드2, 대출발생년월 및 기준년월14) 13) 예를 들어, 동일한 A은행이더라도 기관일련번호는 차주 1과 차주 2에 대해 각각 B와 C로 다르게 부여되지만, 동일 차주에 대해서는 다른 테이블과의 결합을 위해 동일하게 부여 14) 특정 기준월까지 대출, 연체, 카드정보가 관찰되다가 익월 사라진 경우, 해제된 것으로 판단 번호 컬럼명 영문명 컬럼유형 비고 1 차주일련번호 JOIN_KEY CHAR(20) 차주정보와 대출·연체·카드개설정보를 결합하기 위한 key 2 생년 BTH_YR CHAR(4) - 샘플링 시점 80세 이상은 "80세의 생년"으로 묶음 (예: 2017. 6에 2013. 12~2016. 12 기준 샘플링시, 가장 최초인 2013.12 시점에 80세인 1933년 이전 출생자의 출생년도를 "1933"로 부여) - 샘플링 시점 19세 이하는 "19세의 생년"으로 묶음 (예: 2017. 6에 2013.12~2016. 12 기준 샘플링시, 가장 최근인 2016. 12 시점에 19세인 1997년 이후 출생자의 출생년도를 "1997"로 부여) 3 성별 GENDER CHAR(1) 1: 남성, 2: 여성 <표 2.1> 차주정보 테이블 설명 번호 컬럼명 영문명 컬럼유형 비고 1 기준년월 YM CHAR(6) 기준월(예: “201612”는 해당 record가 2016년 12월말 시점의 정보임을 의미)

2 차주일련번호 JOIN_KEY CHAR(20) 대출정보와 위한 key 차주·연체·카드개설정보를 결합하기

3 업권코드 SCTR_CD CHAR(2) 정보를 등록한 업권 구분 코드 은행, 생보사, 손보사, 저축은행, 카드사, 캐피탈・ 할부・리스・신기술사, 협동조합, 기타 등 8개 4 기관일련번호 COM_KEY CHAR(20) 대출정보와 연체·카드개설정보를 금융회사 단위로 결합하기 위한 key 기관일련번호는 차주별로 unique하게 생성 5 대출상품코드1 LN_CD_1 CHAR(4) 신용대출, 주택담보대출 등 대출상품구분 6 대출상품코드2 LN_CD_2 CHAR(3) 단기·장기카드대출 등 대출상품구분 7 대출년월 LN_YM CHAR(6) 대출정보가 등록된 년월(YYYYMM) 8 대출금액 LN_AMT BIGINT 기준월말 시점의 대출금액(단위: 천원)

(6)

❍ (연체정보) 대출정보와 동일하게 범주화된 업권코드, 연체사유 및 기록유형코드, 상·하한 처리된 연체등록금액, 연체등록년월 및 기준년월 ❍ (카드정보) 카드개설사유 및 유형코드, 개설년월, 기준년월 번호 컬럼명 영문명 컬럼유형 비고 1 기준년월 YM CHAR(6) 기준월(예: “201612”는 해당 record가 2016년 12 월말 시점의 정보임을 의미) 2 차주일련번호 JOIN_KEY CHAR(20) 연체정보와 차주·연체·카드개설정보를 결합하기 위한 key 3 업권코드 SCTR_CD CHAR(2) 정보를 등록한 업권 구분 코드 은행, 생보사, 손보사, 저축은행, 카드사, 캐피탈・ 할부・리스・신기술사, 협동조합, 기타 등 8개 4 기관일련번호 COM_KEY CHAR(20) 연체정보와 대출·카드개설정보를 금융회사 단위로 결합하기 위한 key 기관일련번호는 차주별로 unique하게 생성 5 연체유형코드 DLQ_TYPE CHAR(1) 연체유형(신용도판단정보=1, 공공정보=2) 6 연체사유코드 DLQ_CD_1 CHAR(4) 대출금, 신용카드, 할부금융 등 연체사유 구분 코드 7 등록사유코드 DLQ_CD_2 CHAR(1) 연체사유구분

8 연체등록년월 LN_YM CHAR(6) 연체정보가 등록된 년월(YYYYMM) 9 연체등록금액 LN_AMT BIGINT 차주가 연체한 금액(단위: 천원) <표 2.3> 연체정보 테이블 설명 번호 컬럼명 영문명 컬럼유형 비고 1 기준년월 YM CHAR(6) 기준월(예: “201612”는 해당 record가 2016년 12월말 시점의 정보임을 의미) 2 차주일련번호 JOIN_KEY CHAR(20) 카드개설정보와 차주·대출·연체정보를 결합하기 위한 key 3 업권코드 SCTR_CD CHAR(2) 정보를 등록한 업권 구분 코드 은행, 생보사, 손보사, 저축은행, 카드사, 캐피탈・ 할부・리스・신기술사, 협동조합, 기타 등 8개 4 기관일련번호 COM_KEY CHAR(20) 카드개설정보와 대출·연체정보를 금융회사 단 위로 결합하기 위한 key 기관일련번호는 차주별로 unique하게 생성 5 개설사유코드 CD_OPN_CD_1 CHAR(4) 0081:신용카드, 0083:신용체크카드 6 카드유형코드 CD_OPN_CD_2 CHAR(1) 1:개인카드, 2:개인기업카드

7 개설년월 CD_OPN_YM CHAR(6) 카드개설정보가 등록된 년월(YYYYMM) <표 2.4> 카드정보 테이블 설명

(7)

교육용DB 이용자들은 특정 기간 내 시간 흐름에 따른 변화나 특정 기준 시점의 현상을 분석하거나 또는 연체발생여부를 예측하는 등 다양한 분석 목적을 가지고 테 이블을 결합하고 기준 시점을 설정할 것으로 예상된다. 특정 시점에 관찰된 현상을 조사하는 패널조사 또는 인구통계학적 자료와 달리, 개인신용정보는 한 개인에 대해 여러 기간에 걸쳐 다양한 경제활동이 꾸준히 기록된 자료이다. 한 차주는 각 관찰 시 점별로 여러 건의 카드개설, 대출, 또는 연체를 가질 수 있으며, 각 차주가 지니는 이 러한 특징을 반영하기 위해서는 경제활동이 일어나는 해당 업권의 순서, 계정의 수, 대출 또는 연체의 규모 등을 설명변수로 함께 고려하여 재현자료를 생성하여야 한다. <그림 2.1> 개인신용정보 표본DB 예시 2.2 테이블 결합 개인신용정보 표본DB는 한 차주가 N개의 신용거래를 할 수 있고, 대출-연체-카드 개설 정보 간에도 N:M 관계가 성립하기 때문에 차주의 신용정보가 차주, 대출, 연체, 카드개설 등 4개 테이블로 구분되어 있으며, 2015년 12월부터 2019년 6월까지 신용거 래가 발생한 계좌를 대상으로 총 43개월의 시계열 데이터로 구성되어 있다. <그림 2.2>은 신용거래기간 동안의 월말시점에 대한 snapshot 형태로 구성되어 있는 대출, 연체 및 카드개설 데이터를 이력 시작월과 이력 종료월 형태의 선분이력형태 (LINEAR)로 변경하고, 대출과 연체금액 관련 항목은 평균값으로 처리한 과정을 예시로 보여주고 있다. 원본(RAW)과 카드, 대출, 연체 각각의 선분이력형태(LINEAR)의 통계는 거의 차이가 없으나, 세 개의 다른 테이블을 한 행으로 같은 계좌에 대해 함께 묶어 결합(MERGED)하면 원본이나 선분이력형태일 때 비해 정보손실이 일어난다. 이 때 발 생하는 손실의 정도를 5% 미만으로 하는 수준으로 다시 샘플링 하였다.

(8)

<그림 2.2> 스냅샷형태(snapshot)와 선분이력형태(LINEAR) 비교 이렇게 선분이력형태로 변환된 각 테이블은 차주일련번호(JOIN_KEY)와 업권코드 (SCTR_CD) 및 기관일련번호(SERIAL_COMKEY)로 결합되며, 그 결과는 <그림 2.3>에 나타난 것과 같다. 각각의 결합된 레코드는 카드 개설 정보는 있지만 그에 대한 대출 이나 연체가 발생하지 않았거나, 카드와 관계없는 대출이 발생하였거나, 법원 등 공공 기관에서 파산 등의 정보가 유입되어 카드나 대출정보와 결합되지 않는 연체정보가 존재하기도 한다. <그림 2.3> 결합 테이블 예시 2.3 데이터 전처리 대출, 연체, 카드개설의 시작년월(_YM)은 YYYYMM(년월)의 형태에서 1(1995.12) 부터 483(2019.06)까지의 연속형 데이터로 변환되었으며, 대출, 연체, 카드의 지속기간 (_DUR)은 시작년월(YYYYMM)로부터 마지막으로 관찰된 시점(YYYYMM)까지의 개월 수로 산출한 뒤, 연체는 3개월 단위, 대출은 6개월 단위로 다시 한 번 범주화 되었다. 차주의 생년은 5년 단위로 범주화 하였다. 대출 및 연체금액에 대해서는 원본과 동일한

(9)

범주 내에서 재현되게 하되, 원본과 일치하는 샘플이 생성되는 것을 방지하기 위해 정수 형태의 대출과 연체금액을 앞의 2자리까지 반올림하였다. 원래는 금액을 절대적 또는 분위로 범주화 한 뒤, 각 범주 내 평균과 분산에 대해 랜덤하게 금액을 생성하는 방식으로 후처리 하였으나, synthpop이 범주형으로 처리할 수 있는 최대 60개 카테고리 이상으로 범주의 수가 많아지거나, 또는 분위구간 내에서도 한쪽으로 치우침이 너무 커 (skewed) 꼬리 쪽 데이터를 제대로 재현해 내지 못하는 문제점이 관찰되었다. 로그 (log)값으로 변환하고 정규성 여부에 따라 재현하는 방식을 시도하였으나, 원격접속시 스템의 과부화로 결과를 확인하지 못한 점은 본 실험의 제한점으로 남겨둔다. 아래 <표 2.5>은 전처리 후 각 테이블과 변수의 형태와 설명을 나타낸다. 컬럼명 코드 설명 차 주 정 보 차주일련번호 JOIN_KEY 차주를 구별하기 위한 비식별 조치된 A+19자리 숫자 차주생년 BTH_YR 10개 카테고리 차주성별 GENDER 2개 카테고리 대 출 정 보 업권코드 SCTR_CD 8개 카테고리 기관일련번호 COM_KEY 카드, 대출, 연체가 발생한 금융기관 종류 구분 대출상품코드 1 LN_CD_1 3개 카테고리 대출상품코드 2 LN_CD_2 19개 카테고리 대출시작년월* LN_FROM 1~283(월) 단, 283의 기록은 현재 대출이 유지되고 있는 것으로 간주 대출유지기간* LN_DUR 대출기간 내 평균대출금* LN_AMT 기간 내 평균대출금, 앞의 두 자리까지 반올림하여 범주화 연 체 정 보 연체유형코드 DLQ_TYPE 1개 카테고리 연체사유코드 DLQ_CD_1 8개 카테고리 연체등록사유코드 DLQ_CD_2 2개 카테고리 연체시작년월* DLQ_FROM 1~283(월) 단, 283의 기록은 현재 연체가 남아있는 것으로 간주 연체지속기간* DLQ_DUR 연체기간 내 평균연체금* DLQ_AMT 기간 내 평균연체금, 앞의 두 자리까지 반올림하여 범주화 카 드 정 보 카드개설사유코드 CD_OPN_CD_1 2개 카테고리 카드유형코드 CD_OPN_CD_2 2개 카테고리 캐드개설년월* CD_OPN_FROM 1~283(월) 단, 283의 기록은 현재 카드가 개설되어 있는 것으로 간주 카드개설기간* CD_OPN_DUR <표 2.5> 원본자료의 전처리 후 생성 변수 및 설명 (*는 연속형 변수)

(10)

2.4 CART 기법을 이용한 재현자료 생성 개인신용정보 표본DB 샘플의 재현자료 생성에 분류회귀나무모형(CART) 기법을 선택한 이유는 결합분포를 기반으로 모든 변수를 한 번에 고려하여 여러 개의 값들을 생성하는 모수적 방식은 범주형 자료와 연속형 자료가 섞여 있는 개인신용정보의 경 우에 적용하기 어렵기 때문이다. 이러한 모수적 방식의 접근은 현실적으로 많은 변수를 대체할 수 있는 모형을 만들기도 쉽지 않고, 모집단을 잘못 가정하는 경우에 정보손 실이 커진다는 문제가 발생한다. 더구나 개인신용정보 표본DB을 빅데이터 분석 교육용 DB로 제공하려는 목적으로 재현하려는 자료의 범위는 매우 제한적이며, 분석 목적에 따라 달라지는 데이터 활용 방식과 샘플링 기간에 따라 실제 표본을 설명할 수 없는 경우도 발생할 수 있다. 즉, 모집단을 추정하는 모형이 아닌, 특정 구간으로 샘플링된 자료의 조건부 분포를 기반으로 원본 자료의 통계적 특성을 살리는 것이 본 연구의 주목적이며, CART와 같은 비모수적 방식이 정보손실을 최소화할 수 있다고 판단하 였다. 분류회귀나무모형은 이름에서 알 수 있듯이 범주형과 연속형 데이터 모두를 처리할 수 있는 의사결정나무 알고리즘의 하나로, 반복적으로 입력 변수의 구간을 나누고 각 구간에 대한 모델을 정의하고, 이는 나무의 잎 노드(terminal node)로 표현한다. 엔트 로피나 정보이득을 기반으로 노드(node)을 나누는 기계학습 기반의 의사결정나무 알 고리즘들과 달리 통계 기반의 카이제곱, t-검정, F-검정 등을 사용하며, 최대한 나무를 크게 키우며 나뉘는 모든 구간에 대해 지니불순도(Gini Impurity)를 산출하여 순도 (purity)를 최적화함으로써 구간을 확정한다. 구간 분할(splitting) 결과를 해석하기 쉽고, 이상치 처리에 강하며, 대규모 데이터 크기에 맞게 확장 가능하다는 장점 외에도, 데 이터의 우선순위를 정하고 이를 기반으로 분할 지점을 정하므로 데이터의 단조변환 (monotone transformation)에 민감하지 않아 매우 효율적이다. 물론 일부 트리 알고리 즘의 탐욕적 특성 때문에 과적합(over-fitting)의 확률이 높으며, 입력 변수의 작은 변 화에도 계층적인 트리의 구조가 크게 바뀔 수 있기 때문에 불안정하다는 단점이 존재 하지만, 가지치기(Pruning) 등의 기법을 통해 이러한 현상을 완화할 수 있다.

R 패키지 synthpop은 rpart나 party 등 기타 R 패키지를 활용한 syn()함수 기능을 제공하여 단일 명령어를 통해 사용자가 보다 간편하게 원본자료에 대한 재현자료를 생성할 수 있다. syn() 함수는 따로 조건을 설정하지 않으면 simple synthesis를 사용 하여 재현모델 파라미터의 사후분포로부터 샘플링을 하지 않고 원본자료와 같은 길이의 재현자료를 한 세트 생성한다. 또한 재현하고자 하는 자료의 수()를 설정하여 사후 예측분포로부터 샘플링 된 재현자료를 사용하여 원본자료의 재현자료를 생성하는 기 능도 제공하고 있다. 민감한 변수가 존재하는 데이터의 경우, 통계 검증과 노출 위험 추정을 위해서 값을 10 ~ 500개 사이로 설정하여 사용하기도 한다.15) 개인신용정보는 외부 데이터와 쉽게 결합할 수 없으며, 노출 시 정보주체에 대한 차별, 편견 등 불이 익을 초래할 수 있는 민감정보라고 간주할만한 연체정보 또한 범주화 및 총계처리로

(11)

비식별 조치되어 있다. 따라서, 사후예측분포를 추정하지 않고, 특정 기간으로 잘라낸 샘플, 즉, 원본자료만을 이용하여 모수를 추정해 한 번에(  ) 재현자료를 생성 (simple synthesis)하였다. 먼저 차주의 카드, 대출, 연체발생여부 및 조합의 종류에 따라 차주를 그룹화하고, 각 그룹 내 계좌 생성순서 및 기관종류에 따라 계좌를 그룹화 한 뒤, 차주 그룹 내 계좌 그룹별로 재현자료를 생성한다. 자세한 과정은 다음과 같다. 차주 및 계좌 그룹 연체가 한 번도 발생하지 않았거나, 대출이 없이 카드개설에 대한 연체만 발생하는 등 차주의 특성을 보존한 재현자료를 생성하기 위해 차주를 그 룹화하고, 그룹별로 재현자료를 생성하였다. 차주 그룹화 과정은 다음과 같다. 모든 차주는 발생한 계좌에 대해 카드(CD), 대출(LN), 연체(DLQ), 카드-대출(CD_LN), 카드 -연체(CD_DLQ), 대출-연체(LN_DLQ), 그리고 카드-대출-연체(CD_LN_DLQ) 등 7개 조합으로 정의된 그룹으로 분류될 수 있다. ƒ A–보유한 모든 계좌가 카드개설정보인 그룹 ƒ B–보유한 모든 계좌가 대출정보인 그룹 ƒ C–보유한 모든 계좌가 연체정보인 그룹 ƒ AB–카드개설에 대한 대출정보가 존재하는 계좌를 반드시 1개 이상 보유하며, 그 외 계좌는 카드개설정보만 있거나 대출정보만 있는 그룹 ƒ AC–카드개설에 대한 연체정보가 존재하는 계좌를 반드시 1개 이상 보유하며, 그 외 계좌는 카드개설정보만 있거나 연체정보만 있는 그룹 ƒ BC–대출에 대한 연체정보가 존재하는 계좌를 반드시 1개 이상 보유하며, 그 외 계좌는 대출정보만 있거나 연체정보만 있는 그룹 ƒ ABC–카드개설 및 대출정보에 대한 연체정보가 모두 존재하는 계좌를 반드시 1개 이상 보유 하며, 카드개설정보, 대출정보, 연체정보, 카드개설에 대한 대출정보, 대출에 대한 연체정보, 카 드개설에 대한 연체정보 조합의 계좌를 가질 수도 있음 차주별 얼마나 다양한 금융기관에서 거래가 발생하는지, 어떠한 업권의 순서로 거 래가 발생하는지에 대한 정보를 반영하기 위해 차주 그룹 내에서 계좌생성순서(order)와 기관일련번호(COM_KEY)을 다시 한 번 그룹화 하여 재현자료를 생성한다. 예를 들면, 위의 차주 그룹에서 그룹 BC에 속하는 차주는 반드시 대출에 대한 연체가 발생한 계 좌를 1개 이상 가지고 있으며, 대출만 발생했거나 또는 대출정보가 없이 공공기관에서 입수된 연체정보만 있는 계좌를 가지고 있을 수도 있다. 따라서, 최대 3개의 계좌 그 룹을 가질 수 있다. 이렇게 카드-대출-연체 조합으로 분류된 차주 그룹은 계좌발생순서(order)와 기관 일련번호(COM_KEY)로 분류된 그룹별로 재현자료가 생성된다. 계좌발생순서(order)는 따로 재현되지 않지만, 차주별 최초 발생 계좌 정보, 또는 순차적 계좌 정보를 재현하기 위한 조건 변수로 활용되며, 이후 생성될 생년과 성별 등 차주별 특징을 보존하는 데 에도 활용된다. 기관일련번호(COM_KEY) 또한 계좌발생순서(order)가 차주별 특징을 보존하는 것과 같은 맥락으로 차주별 기관 비율을 유지하고, 동시에 기관 종류에 따라 업권코드를 동일하게 유지하기 위한 더미(dummy)변수로 활용된다.

(12)

<그림 2.4> 차주 및 계좌그룹별 재현자료 생성 과정

룰 및 룰기반 생성값 설정 카드개설사유가 재현되지 않은 경우에도 카드개설일자가 생성되는 것을 방지하고가 가장 먼저 생성되는 변수가 NA이면, 나머지 변수도 재현 되지 않고 NA값으로 재현되도록 설정하였다. 대출과 연체도 마찬가지로 사유코드가 가장 생성되었으며, 따라서 사유코드(_CD_1 또는 _CD_2)가 NA이면 등록코드, 시작 년월, 지속기간, 금액 모두 NA로 생성되도록 룰(rules)과 룰기반 생성값(rvalues)을 설 정하였다.

변수 추가 생성 차주일련번호(JOIN_KEY), 생년(BTH_YR), 성별(GENDER) 외에도 연체발생과 상관관계가 높은 보유카드 수(num_CD), 보유대출 수(num_LN), 연체 발생 건 수(num_DLQ), 최장 카드보유 기간(max_CD_DUR) 등을 변수로 추가 생성하고, 이를 샘플링하여(method=“sample”) 차주의 특징을 반영할 수 있는 조건으로 활용하였다. 컬럼명 영문명 컬럼유형 비고 (차주별) 기관일련번호 SERIAL_COMKEY CHAR(2) 차주별 계좌 생성 기관에 대해 최대 23개까지 변수 지정 (0~22) 카드 수 num_CD CHAR(2) 차주별 개설 카드 수 대출 수 num_LN CHAR(2) 차주별 대출 수 연체 수 num_DLQ CHAR(2) 차주별 연체 수 최장 카드개설기간 MAX_CD_DUR CHAR(3) 차주별 최장기 카드개설기간 최단 카드개설기간 MIN_CD_DUR CHAR(3) 차주별 최단기 카드개설기간 계좌발생순서 order CHAR(2) 차주별 계좌 생성 순서 단기연체여부 ST_DLQ CHAR(1) 단기(6개월 이하) 연체여부 (0 또는 1) <표 2.6> 추가 생성된 조건변수 및 설명

(13)

변수별 재현 순서 R 패키지 synthpop은 원본데이터를 기준으로, 또는 사후확률분포 (posterior probability distribution)에서 샘플링하는 비모수적 기법은, 이전에 생성된 컬럼(변 수)의 분포에 의존하여 다음 컬럼을 생성하므로, 생성순서(visit.sequence)에 따른 오차가 매우 큰 것으로 나타났다. 생성순서는 범위가 넓은, 즉, 카테고리의 수가 적은 변수를 먼저 생성하 도록 하였으며, 카테고리의 수가 많은 시작년월(_YM), 지속기간(_DUR), 그리고 금액(_AMT) 등을 마지막에 생성하도록 하였다. 예측행렬(predictor.matrix)은 생성순서(visit.sequence)에 따라 결정되도록 디폴트로 설정하였다. 자료 규모 및 재현작업 환경 본 재현자료는 2015년 12월부터 2019년 6월까지의 신용거래내역을 대상으로 약 172만 명의 차주와 그에 따른 카드, 대출, 연체정보를 포 함하고 있다. 원본자료는 한국신용정보원이 제공하는 원격분석시스템에서만 접속이 가능하며 이러한 대규모 데이터 처리 시 발생하는 스토리지 및 네트워크 불안정 문제로 인해 실험적으로 샘플의 33%만을 재현한 뒤, 이를 3배수하여 원본자료와 비교하는 방 식으로 진행되었다.

3. 재현자료 검증

개인신용정보의 재현자료 생성은 시계열과 각 신용정보주체별 특성을 반영하는 재 현자료 생성 가능성을 확인하고자 하는 실증적인 목적으로 진행되었다. 따라서 재현 자료의 정보손실은 특정 시점의 업권별, 대출목적별 대출과 연체발생 건 수 및 비율 등 신용정보분석 실무자의 분석 방식과 단·다변수 탐색적 분석, 변수 간 상관관계 비교를 통해 측정하였다. 또한 본 재현자료는 금융 빅데이터 교육용DB 제공을 목적으로 생 성된 자료인 만큼 연체발생여부를 예측하는 머신러닝 모델의 성능을 비교하는 방식으로 추가 검증하였다. 위에서도 언급한 바와 같이 개인신용정보는 비식별 과정을 거쳤고, 외부 데이터 결합 가능성이 없지만, 비식별된 원본자료를 실제 개인정보라고 가정한 뒤, 원본자료와 동일한 조합의 수와 유일한 레코드(unique record)의 재현 여부를 확인하는 방식으로 노출위험을 측정하였다. 3.1 정보손실 측정 결과

정보손실은 스냅샷형태(snapshot)의 원본자료(RAW)를 선분이력형태(LINEAR)로 만들었을 때의 통계와 선분이력형태의 카드, 대출, 연체정보를 한 행으로 엮은 데이터 (MERGED), 그리고 이를 기반으로 생성한 재현데이터(SYN)를 비교하여 측정한다. MERGED와 SYN 간 정보손실을 오차범위 5% 포인트 이내로 최소화하는 재현자료를 만들기 위해 조건 및 확률변수 선정과 생성 순서 변경 등의 재현작업이 반복되었다.

synthpop 패키지는 compare()라는 함수를 제공하여 syn() 함수의 object에 대해 단 변수 분포 그래프를 한 번에 보여주며(<그림 3.5>과 <그림 3.6> 참고), 단변수 분포 비교의 결과는 비교적 원본과 재현자료가 유사한 분포를 보이고 있다. 하지만 신용정 보데이터의 특성상 전체 데이터의 변수별 분포보다는 특정 시점에서의 대출과 연체현

(14)

황을 분석하고 각 대출과 카드개설사유별 연체자의 비율을 비교함으로써 정보손실을 측정하는 것이 적절하다. <표 3.1>은 2016년 12월, 2017년 12월, 2018년 12월을 기준 으로 원본자료와 재현자료의 업권별 대출에 대한 연체비율을 비교하였으며, <그림 3.1>은 2016.12월, 2017.12월, 2018.12월말 각 시점의 대출업권별 잔액과 연체비율을 비 교한 결과이다. 잔액은 대체로 유사하며, 연체자 수의 비율은 다소 과대계상 되기는 하 였으나 유사한 증감패턴을 보이는 것을 알 수 있다. <표 3.2>은 2016년 12월, 2017년 12월, 2018년 12월을 기준으로 원본자료와 재현자료의 대출사유별 연체비율을 비교하 였으며, <그림 3.2>은 2016.12월, 2017.12월, 2018.12월말 각 시점의 대출사유별 잔액과 연체비율을 비교한 결과로, 잔액은 대체로 유사하며, 연체자수 비율은 다소 과대계상 되기는 하였으나 유사한 증감패턴을 보인다. <그림 3.3>은 2016.12월, 2017.12월, 2018.12월말 각 시점의 연체업권 및 연체사유별 잔액과 연체자 수의 비율을, <그림 3.4>는 카드개설기간별 차주 수 및 연체자 수의 비율을 비교한 결과이다. 명 수 기준 으로는 카드개설기간이 짧은 차주의 수가 대체로 적게 생성되는데, 이는 재현데이터 생성과정상 시작월은 MIN, 종료월은 MAX로 대체하여 카드개설기간이 실제보다 길게 계산되었기 때문이다. 연체자 수의 비율은 다소 과대계상 되기는 하였으나 유사한 증 감패턴을 보인다.

YM SCTR_CD RAW LINEAR MERGED SYN

201612 1 2.2% 2.3% 2.3% 3.7% 201612 3 3.3% 3.4% 3.3% 4.9% 201612 5 5.7% 5.8% 5.3% 7.4% 201612 6 2.7% 2.8% 2.9% 6.0% 201612 8 4.7% 4.8% 4.9% 8.3% 201612 17* 5.0% 5.2% 5.3% 11.1% 201612 21* 13.8% 14.3% 14.4% 21.5% 201612 98 1.9% 2.1% 1.9% 4.6% 201712 1 2.1% 2.2% 2.1% 3.6% 201712 3 3.0% 3.1% 3.0% 4.4% 201712 5 5.9% 6.1% 5.5% 7.3% 201712 6 2.6% 2.8% 2.7% 6.0% 201712 8 4.6% 4.8% 4.8% 7.3% 201712 17* 4.6% 4.9% 4.9% 10.3% 201712 21* 12.5% 13.1% 13.0% 19.5% 201712 98 1.8% 1.9% 1.7% 4.0% 201812 1 2.2% 2.3% 2.1% 3.0% 201812 3 3.1% 3.1% 2.9% 3.5% 201812 5 6.5% 6.6% 6.0% 6.2% 201812 6 2.9% 3.0% 2.8% 4.6% 201812 8 4.9% 5.0% 4.9% 5.7% 201812 17 4.8% 4.9% 4.7% 8.4% 201812 21 12.1% 12.3% 12.0% 15.6% 201812 98 3.0% 3.1% 2.8% 3.0% <표 3.1> 업권별 대출에 대한 연체비율 (*는 5% 포인트 이상 차이를 보이는 업권)

(15)

YM LN_CD_2 RAW LINEAR MERGED SYN 201612 100 5.0% 5.2% 5.2% 8.2% 201612 150 2.3% 2.5% 2.3% 3.9% 201612 200 1.0% 1.1% 1.0% 2.8% 201612 210 0.6% 0.6% 0.6% 1.9% 201612 220 0.7% 0.7% 0.7% 1.9% 201612 230 1.5% 1.5% 1.4% 3.2% 201612 240 3.0% 3.1% 3.1% 7.6% 201612 245 0.2% 0.2% 0.2% 0.4% 201612 250 2.6% 2.8% 2.7% 3.2% 201612 290 5.3% 5.4% 5.6% 9.2% 201612 500 1.7% 1.7% 1.7% 4.5% 201612 510* 5.7% 5.8% 5.9% 12.4% 201612 590 5.7% 5.9% 5.9% 10.7% 201612 700 3.7% 3.7% 3.7% 5.1% 201612 710 4.3% 4.3% 4.5% 7.8% 201612 037-000 6.1% 6.3% 5.5% 8.1% 201612 041-000 5.0% 5.2% 5.5% 7.5% 201712 100 4.6% 4.8% 4.7% 7.7% 201712 150 2.4% 2.6% 2.4% 3.6% 201712 170* 2.7% 2.7% 2.7% 11.2% 201712 200 0.9% 1.0% 0.9% 2.7% 201712 210 0.6% 0.6% 0.6% 1.8% 201712 220 0.7% 0.7% 0.7% 1.7% 201712 230 1.3% 1.3% 1.2% 2.8% 201712 240 3.6% 3.8% 3.8% 7.1% 201712 245 0.1% 0.1% 0.1% 0.4% 201712 250 2.2% 2.4% 2.2% 2.6% 201712 270 2.1% 2.2% 2.1% 2.8% 201712 290 5.5% 5.7% 5.7% 9.1% 201712 500 1.6% 1.7% 1.6% 3.8% 201712 510* 5.5% 5.7% 5.6% 11.0% 201712 590 6.0% 6.3% 6.2% 8.9% 201712 700 3.2% 3.3% 3.3% 4.4% 201712 710 4.7% 4.9% 4.8% 5.9% 201712 037-000 6.2% 6.5% 5.8% 7.7% 201712 041-000 5.7% 5.9% 5.9% 7.3% 201812 100 4.8% 4.9% 4.7% 6.6% 201812 150 2.4% 2.5% 2.3% 2.9% 201812 170 5.2% 5.2% 5.1% 9.4% 201812 200 0.9% 0.9% 0.9% 2.2% 201812 210 0.5% 0.5% 0.5% 1.4% 201812 220 0.7% 0.7% 0.7% 1.4% 201812 230 1.3% 1.3% 1.1% 2.1% 201812 240 3.0% 3.1% 2.9% 5.7% 201812 245 0.2% 0.2% 0.2% 0.2% 201812 250 2.3% 2.3% 2.2% 2.4% 201812 270 1.8% 1.8% 1.8% 2.1% <표 3.2> 대출상품별 연체비율 (*는 5% 포인트 이상 차이를 보이는 상품)

(16)

<그림 3.1> 대출업권(SCTR_CD)별 잔액 및 연체자 수 비교

<그림 3.2> 대출상품(LN_CD_2)별 잔액 및 연체자 수 비교 YM LN_CD_2 RAW LINEAR MERGED SYN 201812 290 6.9% 7.0% 6.7% 7.4% 201812 500 1.5% 1.6% 1.4% 2.7% 201812 510 5.7% 5.8% 5.5% 8.0% 201812 590 7.0% 7.1% 6.9% 7.6% 201812 700 2.3% 2.4% 2.3% 3.3% 201812 710 5.8% 5.9% 5.5% 3.8% 201812 037-000 7.0% 7.1% 6.4% 6.2% 201812 041-000 6.9% 7.0% 6.7% 6.0%

(17)

<그림 3.3> 연체사유(DLQ_CD_1) 및 연체업권(DLQ_CD_2)별 연체발생 수와 연체자 수 비교

(18)
(19)

<그림 3.6> 원본과 재현자료의 범주형 단변수 분포 비교

(20)

3.2 머신러닝 예측 결과 개인신용정보 교육용DB로써 재현자료의 유용성을 측정하기 위해 재현데이터로 연 체발생여부를 예측하는 머신러닝 기반 분류 모델을 학습하고 원본데이터로 테스트함 으로써 재현데이터의 정합성을 확인하는 방식을 적용하였다. 2018년 1월부터 12월의 대출 및 연체정보를 이용하여 2019년 연체발생여부를 예측하였으며, 차주 단위의 전체 대출 수 및 총 금액, 비은행권 대출 수 및 총 금액, 비담보 대출 수 및 금액, 대출 최 장보유기간 등의 예측 변수를 생성하고 로지스틱회귀, 의결정나무, 선형판별분석, 그 리고 서포트벡터머신으로 각각 비교하였다. 로지스틱회귀는 독립 변수의 선형 결합을 이용하여 사건의 발생 가능성을 예측하 는데 사용되는 통계 기법으로, 일반적인 회귀분석의 목표와 동일하게 종속 변수와 독립 변수 간의 관계를 구체적인 함수로 나타내어 향후 예측 모델에 사용하는 것이다. 이는 독립 변수의 선형결합으로 종속변수를 설명한다는 관점에서는 선형회귀분석과 유사하 지만, 로지스틱회귀는 선형회귀분석과는 다르게 종속변수가 범주형인 데이터를 대상 으로 하며, 입력데이터가 주어졌을 때 해당 데이터의 결과가 특정 분류로 나뉘기 때 문에 일종의 분류(classification) 기법으로도 볼 수 있다. 흔히 로지스틱 회귀는 종속 변수가 이항형 문제(binary), 즉, 유효한 범주의 개수가 두개인 경우에 사용된다. 의사결정나무(Decision Tree)는 한 번에 하나씩의 설명변수를 사용하여 예측 가능한 규칙들의 집합을 생성하는 알고리즘으로, 분류(classification)와 회귀(regression) 분석이 모두 가능하여 범주형과 연속형 수치가 섞여 있는 데이터 분석에 매우 용이하다. 예 컬럼명 영문명 컬럼유형 비고 전체 대출기관 수 num_COM CHAR(2) 차주별 계좌 생성기관 수 비은행 대출기관 수 num_NBLN_COM CHAR(2) 차주별 비은행 대출계좌 생성기관 수 비담보 대출기관 수 num_NCLN_COM CHAR(2) 차주별 비담보 대출계좌 생성기관 수 최장 대출기간 MAX_LN_DUR CHAR(3) 차주별 최장기 대출기간 최단 대출기간 MIN_LN_DUR CHAR(3) 차주별 최단기 대출기간 전체 대출 수 num_LN CHAR(2) 차주별 총 대출 수 전체 대출 금액 amt_LN CHAR(10) 차주별 총 대출금액 비은행 대출 수 num_NBLN CHAR(2) 차주별 비은행 대출 수 비은행 대출 금액 amt_NBLN CHAR(10) 차주별 비은행 대출금액 비담보 대출 수 num_NCLN CHAR(2) 차주별 비담보 대출 수 비담보 대출 금액 amt_NCLN CHAR(10) 차주별 비담보 대출금액 <표 3.3> 연체발생여부 예측에 사용된 변수

(21)

측의 경우, 새로운 데이터가 특정 잎 노드(terminal node)에 속한다는 정보를 확인한 뒤 해당 잎 노드(terminal node)에서 가장 빈도가 높은 범주로 새로운 데이터를 분류한다. 회귀분석 시에는 해당 잎 노드(terminal node)의 종속변수(y)의 평균을 예측값으로 반 환하며, 이 때 예측값의 종류는 잎 노드(terminal node)의 수와 일치한다.

선형판별분석(Linear Discriminant Analysis)은 모집단들 사이의 거리가 가장 최대가 되는 선형결합식을 이용하여 다변량 관측값 를 단변량 관측값 로 변환, 즉, 차원축 소를 통해 판별하고자 하는 두 범주의 중심은 최대화하고 관측치가 해당 범주의 중심 에서부터의 분산은 최소화하는 방식으로 판별하는 기법이다.

서포트벡터머신(Support Vector Machine)은 기계학습분야 중 하나로, 패턴인식, 자 료분석을 위한 지도학습 모델이다. 주로 분류와 회귀분석을 위해 사용되며, 주어진 데 이터의 집합을 바탕으로 하여 새로운 데이터가 어느 카테고리에 속할 것인지 판단하는 비확률적 이진 선형분류 모델을 만든다. <그림 3.8>부터 <그림 3.11>까지는 위의 네 가지 머신러닝 알고리즘의 연체발생 여부 예측결과를 나타낸다. 동일한 분류 알고리즘이 다른 두 가지 데이터 셋에서 보 이는 성능을 비교하는 것은 본 과제의 범위를 벗어나며, 실제 비교 분석을 위해서는 데이터뿐만 아니라 분석 환경도 제어하여야 하는 정교한 실험 설계가 필요하므로 여 기에서는 원본과 재현자료가 여러 머신러닝 분류 알고리즘에 대해 유사한 양상을 보 이며, 따라서 금융분야 빅데이터 분석 교육용DB로 활용되기에 부족하지 않다는 결론 으로 마무리한다.

(22)

<그림 3.8> 로지스틱회귀( Logistic Regression)

(23)

<그림 3.10> 선형판별분석(Linear Discriminant Analysis)

(24)

3.3 노출위험 제어 개인신용정보 표본DB는 그 자체가 실제 개인신용정보를 비식별 조치하여 생성된 정보이다. 차주의 식별번호를 가명처리한 일련번호(JOIN_KEY), 차주의 나이는 생년 으로 대체, 업권에 따른 금융기관을 차주 단위에서 일련번호(COM_KEY) 부여, 대출 및 연체 금액은 반올림 및 캡을 씌워 처리, 외부정보와 결합하여 재식별 가능한 항목 값은 제외, 그리고 각 항목 내 유일데이터는 가장 가까운 값으로 대체하는 등의 방식 으로 처리되어 다른 연구나 조사의 목적에 부합하는 수준으로 제공된다. 따라서 본 실험에서의 노출위험을 제어하는 것은 공격자가 가지고 있는 정보의 수준을 가정하여 유일한 변수의 조합을 제외하고 최대한 다양하게 생성하여 원본과 동일한 조합을 가 지는 레코드가 없도록 하는 수준에서 다음과 같이 진행하였다. 개인식별위험 한 개인이 과도하게 많은 신용거래이력을 보유하고 있을 경우, 그 자체만으로도 재식별의 위험이 있으므로, 교육용DB 개발을 위해 테이블 간 결합시, 아래와 같이 과다이력보유자의 정보를 일부 삭제하여 제공한다. 변수 조합 경우의 수 업권, 상품코드 등의 범주화 변수 조합은 재현자료에서도 동 일한 조합의 경우가 발생하기 때문에, 원본자료의 조합과 다른 조합을 생성하기 위해 서는 카드, 대출, 연체정보의 시작년월, 지속기간, 그리고 금액을 제어하여야 한다. R 패키지 synthpop은 60개 종류가 넘는 카테고리를 가지는 변수는 연속형으로 가정하지만, 결국 원본자료에서 값을 뽑아내기 때문에 재현자료 생성에 앞서 금액의 앞 두 자리까지 범주화하고 데이터 후처리에서 랜덤하게 생성하였다. <그림 3.12> 원본데이터 재식별 가능성 검토를 위한 Raw data 가공

(25)

유일데이터(unique record) 교육용DB 내에 원본데이터와 정확하게 일치하는 데 이터가 있는지를 확인하기 위해 <그림 3.12>처럼 개인의 월별 차주, 대출, 연체 및 카 드개설정보를 1개 행(row) 형태로 재구성하고, 원본데이터와 교육용DB 간에 정확하게 일치하는 레코드의 빈도를 확인하였다. 원본데이터 차주레코드 중 0.049%에 대해 유 일하게(unique)하게 1:1로 매핑되는 정보가 존재하는 것을 확인하였으며, 매핑되는 0.049% 중 88.3%는 가장 재식별 가능성이 낮은 카드개설정보만 보유하고 있으며, 나 머지 11.7% 역시 단 1건의 신용이력을 보유하는 것으로 나타났다. 상대적으로 민감한 대출 및 연체가 2건 이상 일치하는 경우는 전혀 없어, DB의 재식별 가능성은 없는 것으로 판단된다. <그림 3.13> 원본데이터와 재현데이터가 유일하게 일치하는 비율

4. 결론

개인신용정보의 재현자료 생성은 기존 패널조사 데이터와 달리 한 명의 차주에 대해 여러 개의 계좌정보가 존재하며, 각 계좌는 시계열적 특성을 가지는 복잡한 구조를 가진다. 이러한 특성을 보존하는 재현자료 생성 가능 여부를 살피기 위해 CART 기법을 이용하여 재현자료를 생성하고 정보손실과 노출위험을 비교하였다. 데이터의 분포는 원본과 매우 유사하였으나, 선분이력으로 비교해 본 업권 및 대출코드별 연체 비율에 있어 차이가 많이 나는 구간도 발견되었다. 이는 시간과 비용의 제약이 따르는 분석 환경으로 인해 전체 샘플의 33%만으로 실험하여 재현자료의 3배수로 전체 샘플과 비 교함으로써 확률이 희박한 특정 구간에서 과대계상 되는 것이 관찰되었다. 확률이 고루 분포된 다른 구간에서는 원본과 유사하거나 허용 오차 범위 내로 재현자료가 생성되 었다.

(26)

5. 향후과제

기존의 통계적 기법이 활용된 재현데이터는 여러 변수 간 복잡한 다변량 결합확률 분포(joint multivariate probability distribution)를 산출하여 샘플링하지만, 데이터 구 조가 복잡해질수록 모든 경우에 대해 적절한 분포를 산출하기 어려우므로 상당한 통 계적 지식이 요구된다. 예를 들어, 시간 순으로 발생하는 데이터 내에 숨겨진 Markov 모델 또는 비선형적 상관관계를 가지는 변수는 copula를 사용하여 모델링 할 수는 있 으나, 이러한 생성 모델은 사용하는 분포의 종류에 따라 제한되며, 따라서 데이터의 종류에 따라 신뢰도가 떨어지기도 한다. 본 실험에서처럼 R의 synthpop을 이용하여 원본데이터를 기준으로, 또는 사후확률분포(posterior probability distribution)에서 샘 플링하는 비모수적 기법은, 이전에 생성된 컬럼(변수)의 분포에 의존하여 다음 컬럼을 생성하므로, 생성 순서에 따른 오차가 매우 큰 것으로 나타났다. 이에 따라, 통계학 연구자들은 랜덤화 기반 재현데이터 생성 방식을 연구하기 시작하였으며16), 이미지나 영상 분야에서 GAN은 이미 진짜와 가짜를 구별하기 힘들만큼 좋은 성능을 보이고 있다. 개인신용정보 표본DB의 대출과 연체정보 각각에 대해 적대적 신경망(GAN)을 적용하여 다음과 같은 방식으로 재현한 중간 결과는 단변량 변수 분포 및 변수 간 상 관관계(Normalized Mutual Information) 수준에서 재현자료 생성 가능성을 확인하였다. ① 대출(또는 연체) 수와 순서에 따라 데이터 구간을 나누고, 최저 대출/연체금, 시 간대별 대출/연체금 표준편차, 대출/연체 시작 시간, 그리고 대출/연체 기간을 산출하여 압축

② 범주형 데이터는 원핫인코딩(one-hot encoding) 후 uniform distribution 기반 노이즈를 첨가하고 재정규화하여 smoothing

③ 연속형 데이터에 대해 Gaussian Mixture Model을 적용하여 분포 정보를 추출 하여 재현데이터 생성(클러스터 수는 최대 5개로 임의 설정)

④ 생성된 각 대출(또는 연체) 정보에 대해 유니크한 JOIN_KEY를 부여하여 재현 데이터 생성 완료

<그림 5.1> GAN으로 생성한 재현자료와 원본자료의 단변수 분포 비교

(27)

<그림 5.2> GAN으로 생성한 재현자료와 원본자료의 변수 간 상관관계(NMI) 비교

향후 적대적 신경망(Generative Adversarial Network)을 확장하여 정형데이터의 재현자료 생성에 적용함으로써 산출하기 복잡한 다변량 결합확률분포 및 상관관계를 포착하여 진짜와 가짜를 구별하기 어려운 데이터를 생성하고자 한다. 특히 적대적 신 경망 방식은 LSTM과 Batch Normalization을 통해 시계열 변수(계좌발생순서)와 연 속형 변수(대출금액 등) 재현에 특히 높은 성능을 낼 것으로 기대된다.

감사의 글

이 논문은 2019년도 과학기술정보통신부의 재원으로 정보통신기획평가원의 지원을 받아 수행된 연구임 (2019-0-00136, 스마트시티 산업 생산성 혁신을 위한 AI융합 기술 개발) (2019년 11월 5일 접수, 2019년 12월 22일 수정, 2020년 1월 10일 채택)

(28)

참고문헌

강승택, 이상은 (2017). 표본조사에서 베이지안적 추정방법, <통계연구>, 22(1), 27-43. 금융위원회 (2018). <금융분야 데이터 활용 및 정보보호 종합방안>, 금융위원회, 2.

박민정, 김정연 (2017). 재현자료 작성 방법론 검토, <2017년 하반기 연구보고서 제 I 권>, 1-67.

Bellovin, S. M., Dutta, P. K., Reitinger, N. (2019). Privacy and Synthetic Data. 22 STAN. TECH. L., 5.

Barse, E. L., Kvarnstrom, H., Jonsson, E. (2004). Synthesizing test data for fraud detection systems. IEEE Xplore.

Dong, Q., Elliott, M. R., Raghunathan, T. E. (2014). A nonparametric method to generate synthetic populations to adjust for complex sampling design features. Surv Methodol., 40(1), 29–46.

Drechsler, J, Bender, S. (2008). Comparing Fully and Partially Synthetic Datasets for Statistical Disclosure Control in the German IAB Establishment Panel.

Transactions on Data Privacy 1. 105-130.

Howe, B., Stoyanovich, J., Ping, H., Herman, B., Gee, M. (2017). Synthetic data for social good. Proceedings of ACM Conference, 8.

Lee, J. H., Kim, I. Y., O’Keefe, D. M. (2013). On Regression-Tree-Based Synthetic Data Methods for Business Data. Journal of Privacy and Confidentiality, 5, Number 1. 107-135.

Lopez-Rojas, E. A., Axelsson, S. (2015). BANKSIM: A BANK PAYMENTS SIMULATOR FOR FRAUD DETECTION RESEARCH. EMSS 2014.

Murphy, Kevin P. (2012). Machine Learning: A Probabilistic Perspective, 574-617.

Nowok, B., Raab, G. M. and Dibben, C. (2016). synthpop: Bespoke Creation of Synthetic Data in R. Journal of Statistical Software, 74(11).

Park, M., Kim, J. (2019). Multiple imputation and synthetic data, The Korean Journal of

Applied Statistics, 32(1), 83-97.

Pei, Y., Zaıane, O. (2006). A synthetic data generator for clustering and outlier analysis. Ping, H., Stoyanovich, J., Howe, B. (2017). DataSynthesizer: Privacy-Preserving Synthetic

Datasets. The 29th International Conference on Scientific and Statistical

Database Management Article No. 42.

Reiter (2005). Releasing multiply imputed, synthetic public use microdata: An illustration and empirical study. Journal of the Royal Statistical Society: Series A

(Statistics in Society), 168(1): 185–205

Ruiz, N., Muralidhar, K., Domingo-Ferrer, J. (2018). On the privacy guarantees of synthetic data: a reassessment from the maximum-knowledge attacker perspective. Privacy in Statistical Databases. 5.

(29)

ACM Conference on Recommender Systems, 5.

Soltana, G., Sabetzadeh, M., Briand, L. C. (2017). Synthetic Data Generation for Statistical Testing. IEEE, 872-882.

Surendra, H., Mohan .H .S. (2017). A Review Of Synthetic Data Generation Methods For Privacy Preserving Data Publishing. International Journal of Scientific &

Technology Research Vol. 6 Issue 3. 95-101.

Xu, L., Veeramachaneni, K. (2018). Synthesizing Tabular Data using Generative Adversarial Networks. ArXiv abs/1811.1126.

(30)

Synthetic Data Generation for Individual Credit Data

Using CART

Seongjoon Yoo

17)

․ Nari Park

18) Abstract

Ever since central-local governments and public agencies claimed that they would have their databases available and publicly open in 2013, not only has it led to economic ripple effects such as creating jobs and start-up opportunities, but to social values making government more open and enhancing civic participation. In particular, consumer credit data is expected to have economic value more than ever, especially, when analyzed along with upstream and downstream sector information. However, such personal information has relatively high risk of exposure of privacy. As an alternative to releasing real credit data, synthetic data generation, which preserves the statistical characteristics of raw data but does not include actual data, or includes only the insensitive data, has been suggested and practiced. In this study, we use R package synthpop to investigate the possibility of generating credit data reflecting the characteristics of time series and individual financial activities.

Key words : Synthetic Data, CART, Credit Bureau, synthpop, exposure risk, data utility

17) (Corresponding author) Professor, Dept. of Computer Science, Sejong University, 209 Neungdong-ro, Gwangjin-gu, 05006, Korea. E-mail: yhgu@sejong.ac.kr

18) Researcher, Dept. of Computer Science, Sejong University, 209 Neungdong-ro, Gwangjin-gu, 05006, Korea. E-mail: nari.park@sejong.ac.kr

참조

관련 문서

As commercial companies using Big Data, one of the most common legal issues will be customers’ privacy and protection of personal information. More specifically,

inside data data data of data of of of relation relation relation relation agency agency agency agency and and and and analysis analysis analysis analysis

Azure Data Factory (ADF) is a cloud-based data integration service that allows you to orchestrate and automate data movement and data transformation. Ingesting data can

We compare our method FKS-AC with Fuzzy Keyword Search over Encrypted Data in Cloud Computing (FKS) [1] and Privacy-Preserving Multi-Keyword Fuzzy Search over Encrypted Data

If the receiver received image type (II), then the data-hiding key is used to do data extraction and together recover the cover image.. If the receiver received image type

„ classifies data (constructs a model) based on the training set and the values (class labels) in a.. classifying attribute and uses it in

74) Francesca Bignami, “European Versus American Liberty: A Comparative Privacy Analysis of Antiterrorism Data Mining”, B.C. Harris, “Personal Data Privacy Tradeoffs and How

For the system development, data collection using Compact Nuclear Simulator, data pre-processing, integrated abnormal diagnosis algorithm, and explanation