Collaborators : 강현우, 김종민, 김채은, 김한빈, 김형민, 황다연
file definition
code:
- saramin_crawling = 사람인 크롤링 데이터
- clusteringrepeat = oversampling clustering / cluster 속 clusterting
- Download_DartData_and_DataPivotting = OpenDart API에서 2020년도 기준 연결 재무제표 데이터 크롤링 (corpCode -> rceptNo -> dcm_no -> Data pivotting)
- elbow method 활용한 k-prototype clustering = Elbow method를 활용하여 얻은 최적의 군집 수로 클러스터링, 데이터 전처리 ~ clustering 후 EDA
- Supervised_Decision_Tree.ipynb = 의사결정 나무 코드
- Oversampling.ipynb = 오버샘플링 코드
- Oversampling_final_test_material.ipynb = 최종 모델 대입용 오버샘플링 코드
- (initial)Supervised_Algorithm.ipynb = 지도학습 모델들 (ex. Random Forest 등 실행 코드)
- (Final)Supervised_Algorithm.ipynb = 최종 모델 대입용 지도학습 모델들 (ex. Random Forest 등 실행 코드)
data:
- 복지 (1).csv = 사람인 크롤링 데이터
- esg_에너지, 온실.csv = ESG 포털의 ESG데이터와, 국가온실가스종합관리시스템의 온실가스 사용량관련 csv 데이터를 하나로 합친 csv
- 6th_merged_data.csv = 외부 확보 데이터 결합 데이터 (초안)
- 전처리완료_merged_6.csv = 6th_merged_data 전처리 완료 데이터
- 모델학습용ESG_NonNull기업데이터 = (모델 학습용)ESG 점수가 있는 상장기업 데이터
- 모델대입용ESGNull기업데이터.csv = (모델 대입용)ESG 점수가 없는 상장기업 데이터
- (최종)ADASYN_ESG예측데이터.csv = ADASYN 오버샘플링을 수행한 ESG 예측 데이터
문제점:
- 한국 ESG 등급 산정의 실태는 굉장히 열악함
-
기관별로 ESG 등급 산정 Feature 및 가중치 설정이 상이함
-
기관별로 ESG 등급 산정 시 재무 정보와 비재무정보가 무차별적으로 섞여있어서, 등급 자체의 신뢰도가 떨어지는 편
-
상장 기업 중에서도 ESG 등급이 산정되지 않은 기업이 존재
데이터 전처리1. Label Encoding (Ordinal Encoding)
- 각 문자열 라벨을 단순 정수화 (A -> 0, B -> 1, C -> 2…)
- Decision Tree 모델에 적합하며, 특히 GBDT 모델에서는 기본적인 방법
- 클러스터링의 경우에는 범주형 자료를 숫자형으로 변환하지 않고 진행
데이터 전처리1. 2. SMOTE(Synthetic Minority Over-Sampling Technique) – 데이터 비대칭 문제 해결
- 비대칭 문제: 데이터의 비율 차이가 큰 경우 단순히 우세한 클래스의 모형을 선택하는 모형의 정확도가 높아짐
- SMOTE : 낮은 비율로 존재하는 클래스의 데이터를 K-NN 알고리즘(최근접)을 활용하여 새롭게 생성하는 방법.
- 단순 무작위 추출은 overfitting 문제가 발생할 수도 있으나, SMOTE는 알고리즘에 기반해서 데이터를 생성하므로 과적합 발생 가능성이 상대적으로 작음
모델1 - Unsupervised Learning – K-Prototype Model (군집화 및 해석 목적)
- K-Prototype Clustering은 K-means(수치형 자료, 평균값 사용) + K-modes(범주형 자료, 최빈값 사용)
- 두 모델을 동시에 사용함으로써, 범주형 자료의 변환없이 클러스터링이 가능한 알고리즘
모델2 - Supervised Learning - Decision Tree, Random Forest, ADA Boost, Light GBM, Gradient Boosting, CAT Boosting, MLP (총 7개 Model)
- 비지도학습 기반의 클러스터링 모델은 기업이 속한 군집의 속성을 바탕으로 ESG 등급을 확률로서 예측함
- 지도학습에 기반한 Classification의 성능의 테스트, Y factor에 가장 큰 영향을 주는 X feature의 탐색을 위함
- F1 Score을 활용해 성능 평가
- ESG 등급을 제외한 모델의 지도학습으로 얻은 Label과 실제 Label을 비교하여 예측 성능 평가
- 변수 중요도 확인으로 가장 많은 영향을 끼치는 Feature의 재무적, 비재무적 요소 판단
- 하이퍼파라미터 설정 Elbow Method = 최적의 Cluster의 개수 ‘K’를 찾는 방법
- 클러스터의 갯수별 SSE를 계산하여, SSE가 가장 ‘급격하게 줄어드는 지점'이 최적의 K
- 임의의 군집 수를 정했을 때보다 Clustering이 더 잘 될 것으로 기대함
- 하이퍼파라미터의 종류 Cluster의 개수: n_clusters 최대 반복 횟수: max_iter 수치형 변수의 dissimilarity 함수: num_dissim 범주형 변수의 dissimilarity 함수: cat_dissim 클러스터당 반복 횟수: n_inint 가중치: gamma Verbosity mode: verbose Job의 개수: n_jobs