- 분석 주제명 : 상업용 부동산 가치 창출을 위한 소상공인 매출등급 예측모형 제작 및 활용 방안 제시
- 분석 배경 : 2023년 초 코로나 사태 종료 후 고물가, 고금리, 고환율 등으로 인해 소상공인 위기감은 계속 증가하여 상업용 부동산 시장이 침체되었습니다. 특히, 창업/폐업 비율이 상대적으로 높은 요식업의 정확한 매출 진단을 통해 폐업 예방 및 상권 활성화 방안 모색 등 상업용 부동산의 가치 창출을 도모하고자 합니다.
- 분석 목적 : 서울특별시 지역상권의 특성 및 세부적인 (소상공인) 물건지의 입지조건을 분석하여 지역상권 경제에 영향을 미치는 소상공인 매출규모를 예측하고자 합니다. 이는 지역경제에 필요한 정보를 제공할 수 있는 기회가 될 것이라고 사료됩니다.
- 주최: 과학기술정보통신부, 한국지능정보사회진흥원
- 참가 자격 및 팀 인원 제한 사항: 데이터에 관심있는 누구나, 개인 또는 팀(팀장 포함 최대 4명)
- 성과: ~ING
- 사전 분석계획서 제출 마감: 2023년 9월 15일
- 결과보고서 제출 마감: 2023년 9월 27일
- 1차 서류심사: 2023년 10월 7일 ~ 11월 7일(심사 중)
-
역할과 책임
SQL 쿼리문을 통한 서울특별시 소상공인 KCD 신용 데이터∙상권특성 공공 데이터의 추출과 병합, Python을 활용한 결측값 대체와 2단계 머신러닝 모형 클래스 구현을 맡았습니다.
-
성장한 경험
소호 신용 데이터의 익명정보 처리와 분기 데이터를 계절성 지수를 생성하고 결합함으로써 월별로 확장하여 시계열 패턴을 반영하는 전처리를 수행하였습니다.
-
역할과 책임
서울특별시 상권 분석 서비스 데이터와 SQL 쿼리문을 통해서 신용 데이터 수집 후 병합을 진행하였습니다. 결측값의 50%는 유사도 기준으로 근접한 변수 간 그룹화해서 처리했습니다.
분기로 이뤄진 상권 데이터를 월별 데이터로 확장해서 이종 데이터의 시계열을 일치시켰습니다. 이를 위해 신용거래정보 기반의 월별 계절성 지수를 파생하여 상관관계가 있는 변수와 1차원 축소된 값을 곱하는 방식으로 확장해보았습니다.
시계열적인 패턴을 고려해서 23년 1월, 2월 매출등급 예측 회귀 모델을 구축한 후 모델링을 진행하였습니다.
-
성장한 경험
SQL 쿼리문을 통해서 데이터 수집해보았고 칼럼의 수가 200개 가 넘는 다량의 데이터를 결합해보았습니다.
데이터들의 시계열을 일치시키기 위해서 PCA 기반의 계절성 지수를 만들어서 데이터에 시계열적인 특성을 포함시키는 방법론을 적용해보았습니다.
22년 데이터를 사용해서 23년 1월을 예측하였고, 23년 1월을 포함해서 23년 2월 예측을 진행해보며 시계열 데이터 기반의 회귀분석 예측을 진행해볼 수 있었습니다.
-
역할과 책임
KCD 신용데이터, 공공데이터를 분석한 결과를 Tableau를 활용해 상권특성 시각화를 진행하였습니다.
<상권의 특징>
- 카드 / 배달 매출액 변동계수와 매출등급 간의 관계
- 객단가와 매출등급 간의 관계
- 손익분기점과 매출등급 간의 관계
- 부가세 차감 전 영업이익과 매출등급 간의 관계
를 라인차트와 막대그래프를 이용하여 시각화 하고 의미있는 인사이트를 도출하였습니다.
-
성장한 경험
SQL문을 사용하여 데이터를 수집 및 정제하였습니다. 시각화를 진행하는 과정에서 도메인지식과 분석결과를 연결하여 설명하였습니다.
데이터 수집
- 2022년~2023년 서울열린데이터 광장의 상권 특성 관련 공개 데이터셋
유형 : 서울시 행정동별 지하철 총 승차 승객 정보, 서울시 행정동별 버스 총 승차 승객수 정보, 서울시 우리마을가게 상권분석 서비스(행정동별 상권변화지표)
수집 방법 : 서울열린데이터광장 홈페이지에서 다운로드하였습니다.
- 2022년~2023년 한국신용데이터 KCD 소상공인 신용데이터셋
유형 : 업장 매출입 정보, 임대 종류, 신규 고객 수, 카드 매출액, 배달 매출액 , 월 임대료 표준 값, 임대보증금 표준 값, 배달 매출액 표준값, 카드 매출액 표준값, 임대종류, 경영위기 FLAG, 매장 면적 등
수집방법 : 디사일로 데이터 클린룸에서 반출하였습니다.
-2022년~2023년 (주)오아시스비즈니스의 수익형 부동산 관련 공개 데이터셋
유형 : 상업용 부동산거래량(금액) 대비 유동인구상업용 부동산의 공실률 대비 매매가, 임대료, (이하 ‘매매가 점수’)
수집 방법 : 빅데이터 플랫폼에서 다운로드하였습니다.
활용 데이터
- 서울열린데이터광장의 상권특성 관련 공개 데이터셋
- 한국신용데이터 KCD 소상공인 신용 데이터셋
- (주)오아시스비즈니스의 수익형 부동산 관련 공개 데이터셋
분석 의도
- 데이터 )
결과
시행착오
분석 의도
결과
시행착오
분석 의도
결과
시행착오
분석 의도
- 2022년의 소호 사업장 매출등급 회귀모형을 추정하여 2023년 1월, 2월의 등급을 예측하기 위해서 시계열을 고려한 2단계 모형을 고안해보고자 하였습니다.
- 매출등급을 예측할 때 필지고유번호에 해당하는 특성 또한 고려해 주고자 하였습니다. 이를 위해 필지고유번호별 매매가 점수 및 유동인구 수 기반의 매출등급 로지스틱 추정확률을 구해주었고 이를 매출등급의 필지고유번호 특성으로 사용해주었습니다.
- 매출등급 예측값에 로지스틱 추정확률을 곱하여 상권별 업종 매출등급 예측 문제에서 필지 단위별 매출등급 예측 문제로 확장을 함으로써 예측의 정확도를 높이고자 하였습니다.
결과
1) 필지고유번호별 ‘유동인구 수’와 ‘매매가 점수’ 칼럼을 사용해서 필지의 특징을 반영한 23년 1월과 2월의 매출등급 로짓추정확률을 도출하였습니다. 필지고유번호를 기준으로 부동산 데이터와 대회 데이터를 병합하였고 이때 생기는 결측값은 2차 다항회귀를 사용해서 처리해주었습니다. 종속변수는 매출등급, 독립변수를 유동인구수와 매매가 점수로 지정한 후 로지스틱 회귀 추정을 진행하였습니다. 매출등급별로 나온 회귀 추정 값을 주성분 분석을 통해서 1차원 축소 값을 사용해주었습니다.
2) 22년 전체 데이터로 RandomForest 기반의 회귀분석 모델링을 진행해서 23년 1월 매출등급을 예측해주었습니다.
3) 예측된 23년 1월 매출등급에 23년 1월 매출등급 로짓추정확률을 곱해줌으로써 필지고유번호 특징이 반영된 매출등급을 최종 예측하였습니다.
4) 22년 데이터에 예측한 23년 1월 매출등급 데이터를 더한 후, 이를 바탕으로 23년 2월 매출등급을 예측해줍니다.
5) 예측된 23년 2월 매출등급에 23년 2월 매출등급 로짓추정확률을 곱해줌으로써 필지고유번호 특징이 반영된 매출등급을 최종 예측하였습니다.
시행착오
- 필지고유번호 기반의 부동산 입지 특성을 반영하기 위해서 ‘한국부동산원’의 필지고유번호별 토지이용 데이터를 가져왔었습니다. 하지만 대회 제공 데이터와 한국부동산원의 데이터의 필지고유번호가 매핑되지 않는 문제가 발생하였습니다.
- 이를 해결하고자 대회에서 지정해준 ‘오아시스비즈니스 플랫폼’의 ‘수익형 부동산거래량(금액) 대비 유동인구 수’ 데이터와 ‘수익형 부동산 공실률 대비 매매가 점수’ 데이터를 가져온 후 대회 데이터의 필지고유번호와 결합해주었습니다.
- 대회에서 제공해준 데이터는 22년 데이터였으므로 23년 1월 매출등급과 23년 2월 매출등급을 각각 예측하기 위해서 시계열 특성을 어떻게 부여할지 고민해보았습니다.
- 다양한 시도를 해본 후, 22년의 데이터로 23년 1월 매출 등급을 예측하였고, 예측된 1월 매출 등급을 22년 데이터에 포함시켜서 2월 매출등급을 예측해봄으로써 시계열 특성을 고려한 모델링을 진행할 수 있었습니다.
- Oputna, GridSearchCV 등을 사용해서 하이퍼 파라미터 튜닝을 진행해보고 싶었지만 컴퓨팅 자원과 시간 부족 문제로 인해서 튜닝을 진행하지 못했습니다. 향후 좀 더 효율적인 방법을 찾아서 튜닝을 진행할 계획입니다.
분석 의도
- 카드와 배달 매출액의 변동계수와 매출등급 간의 관계를 비교함으로써, 배달 여부에 따라 매출등급 예측값의 차이가 있는지 알아보고자 하였습니다.
- 객단가가 높을수록 고객의 해당 가게에 대한 접근성이 낮은데 이가 매출액에 어떤 영향을 미치는지 분석해보고자 해당 시각화를 진행하였습니다.
- 손익분기점이 높을수록 더 높은 매출을 달성해야하므로, 결국 손익분기점이 높다는 점이 매출등급에 악영향을 미치지않을까 하는 궁금증에서 이에 대한 가시화를 진행하였습니다.
- 부가세를 통해 영업이익에 대한 현금흐름을 예상해볼 수 있으므로 이를 시각화하여 매출등급간의 관계를 살펴보고자 시각적 분석을 시도하였습니다.
결과
- 카드 / 배달 매출액 변동계수와 매출등급 간의 관계, 객단가와 매출등급 간의 관계, 손익분기점과 매출등급 간의 관계, 부가세 차감 전 영업이익과 매출등급 간의 관계 등을 라인차트와 막대차트로 시각화하였습니다.
- 배달매출액의 변동계수가 카드매출액의 변동계수에 비해 매출등급예측이 월등히 높은 결과롤 보였습니다. 또한 업종(술집, 한식, 양식, 일식)에 따른 차이는 크지 않았습니다.
- 평균객단가변동계수는 매출등급예측값에 따라 큰 차이는 보이지 않았습니다. 즉, 객단가에 따라 매출등급의 유불리가 발생하지는 않는 시각화 결과를 보였습니다.
- 전반적으로 손익분기점이 높을수록 매출액이 악영향을 받는 시각화 결과가 도출되었습니다. 덧붙여 업종에 따라 추가로 구분하였을때, 한식이 다른 업종에 비해 손익분기점이 월등하게 높은 결과를 보인 것이 특징정이었습니다.
- 부가세 차감 이전 이익 변동계수와 매출등급간의 관계를 막대그래프로 시각화한 결과 매출등급에 따른 차이는 크지 않았습니다. 한편, 술집이 다른 업종에 비해 영업이익 변동계수가 높은 것이 특징적이었습니다. 즉, 술집이 부가세 차감 이전 영업이익이 타업종에 비해 높음을 확인할 수 있었습니다.
시행착오
- 이미 모델링을 위해 정규화를 위한 스케일링을 완료한 데이터이기에 시각화를 진행했을 때 변수간의 차이가 두드러지지 않아 직관적으로 이해가능한 시각화가 어려웠습니다. 이를 해결하기 위해 가장 높은 값을 가진 변수와 가장 낮은 값을 가진 변수들에만 텍스트를 추가하여 가시화 하였습니다.
-
모델링 관점
회귀 모델을 선택하는데 근거가 부족했다고 생각합니다. 모델을 선택했던 기준은 기본 모델인 Linear Regression, DecisionTreeRegressor, RandomForestRegressor 모델의 성능을 비교해본 후 가장 성능이 좋았던 RandomForest Regressor모델을 선택하였습니다. 모델의 구조를 이해한 후 본 데이터에 가장 적합한 모델을 선택하는 검증 과정이 추가로 필요하다고 사료됩니다.
Scaler 적용, 모델 Ensemble, Hyper Parameter Tuning 등과 같은 모델의 성능을 높이기 위한 다양한 시도를 해보지 못했던 점이 아쉬웠습니다. 이와 같은 방법론을 적용한다면 성능 개선을 가져올 수 있을 것이라 생각합니다.
-
시각화 관점
필지고유번호를 반영하여 맵차트를 만들고 그 안에 매출액 예측등급을 시각화하려는 목표를 가지고 있었으나, 필지고유번호와 매출등급 및 상권특성을 함께 매핑해둔 데이터프레임의 부재로 실행하지 못한점이 아쉽습니다. 또한, 막대그래프와 라인차트 뿐만 아니라 파이차트, 도넛차트, 맵차트, 히트맵 등 변수의 특성에 따라 다양한 시각화 기법을 적용해보는 것도 필요합니다.
-
도메인 관점
소호 사업장의 입지(세부적인 물건지) 분석에 그치지 않고 광역적인 상권분석을 위한 공간 데이터를 시각화하여 하위 매출등급(평당 고정비용 대비 매출액 백분위수)에 대한 솔루션 제안이 필요합니다.
- 첫째, 출처 ∙ 수집경로 ∙ 시계열이 다른 소상공인 신용 데이터 ∙ 상권특성 데이터를 모형에 투입할 수 있도록 병합하는 전처리 과정의 중요성을 배웠습니다.
- 둘째, 최적화된 매출등급 예측모형을 적합하고 시각화하는 것을 넘어 상권 ∙ 입지분석 도메인에 따른 결과 활용 방법 제안의 필요성을 깨달았습니다.
- 셋째, 매출등급예측모형을 통해 해당 상권 및 업종에서 앞으로의 매출 경향성을 미리 파악해 볼 수 있었습니다. 또한, 해당 상권의 입지 데이터 시각화를 통해 매출액 예측등급에 미치는 요인들을 분석하고 활용할 수 있습니다.
- 프로젝트 소감
상권, 부동산, 신용과 관련한 다양한 데이터를 수집하고 병합하는 과정을 거치면서 함수 생성, 반복문 작성 등 데이터 처리 실력을 향상할 수 있었습니다. 추후 클래스에 대한 공부를 더 진행해서 객체 지향적인 코드를 짜도록 노력할 것입니다. 기존 데이터 분석 과제를 수행할 때는 정제되어 있는 데이터를 사용했고 다양한 모델을 구현해보는데 집중하곤 하였습니다. 하지만 실제 데이터 분석에 있어서는 원본 데이터를 도메인에 맞게 처리하는게 중요하다는 것을 알게 되어서 신기했습니다. PCA, 계절성지수 생성, 시계열 예측 등 다양한 분석 방법론을 적용해볼 수 있어서 좋았고 팀원들과 함께 즐겁게 프로젝트를 수행0할 수 있었습니다. 이번 프로젝트를 계기로 데이터 분석 분야에 더 흥미를 가지게 된 것 같습니다 :D
- 동료 피드백
| 이름 | 피드백1 | 피드백2 |
|---|---|---|
| 강수연 | 팀원들을 배려하고 잘 이끌어준 좋은 팀장님이셨습니다! 프로젝트를 진행하면서 필요한 테스크가 무엇인지 파악한 후 팀원들의 역량에 맞게 업무를 잘 분배해 주셨습니다. 또한 데이터 수집 및 처리를 꼼꼼하게 진행해주셨고 프로젝트가 원할하게 돌아가도록 전체적인 흐름을 이끌어 가주셨습니다. 데이터 분석 분야에 정말 열정이 있다고 느꼈고 덕분에 많이 배워갈 수 있었습니다. | |
| 정가연 | ||
| 최민 | 항상 열심히 분석을 진행해주시고 프로젝트를 하느라 지칠 때마다 응원의 말을 건내주는 좋은 팀원이셨습니다! SQL쿼리문을 통해서 데이터를 잘 수집해주셨고 시각화를 통해 인사이트를 도출해주셨습니다. 데이터 분석부터 시각화까지 진행하시는 모습을 보며 정말 배울점이 많은 팀원분이라고 생각했습니다! |
- 0. [KCD_SOHO_PATH] DATA MERGE
- 1. [KCD_SOHO] DATA MERGE AND DESILO SQL QUERY
- 2. [KCD_MARKET_CONTEST] DATA PREPROCESSING AND FIT DATETIME
- 3. [KCD_MARKET]MERGE AND MAPPING
- 4. [KCD_MARKET_CONTEST_JOIN_MON_SEASON]SEASONALl EXPAND PCA AND MERGE LABEL
- 5. [상권,신용,대회] DATA MERGE & Preprocessing
- 6. REGRESSION_MODELING
- 7. [KCD_MARKET]_VISUALIZATION