Data 20

backtrader 오류(FileNotFoundError) 솔루션

단순히 anaconda prompt에서 pip install backtrader로 설치하고 cerebro.run()을 실행했을 때 위과 같은 에러가 계속 발생했다. 이를 해결하고자 구글링해봤을 때 backtrader 패키지 내부의 yahoo.py의 코드를 수정해줘야 한다는 솔루션이 대부분이었다. 출처: https://jonghyunho.github.io/data/analysis/Backtrader-%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%9C-%ED%8A%B8%EB%A0%88%EC%9D%B4%EB%94%A9-%EC%8B%9C%EB%AE%AC%EB%A0%88%EC%9D%B4%EC%85%98.html 하지만 코드를 수정함과 동시에 패키지 재설치 및 파이썬 버전까지 바꿔가며 실행해봤으나 ..

Data 2022.03.11

Pandas 개념

Pandas 머신러닝 실습의 대표적인 예제인 타이타닉 데이터를 활용하여 pandas의 활용에 대해 정리하고자 한다.   # 데이터 불러오기import pandas as pdtitanic_df = pd.read_csv('./data/train.csv')print('titanic 변수 type:',type(titanic_df))titanic_df  데이터 개요 확인# 데이터 개요 확인titanic_df.head()print('DataFrame 크기: ', titanic_df.shape)titanic_df.info()titanic_df.describe()  범주형 데이터 개수 출력# value_counts: 범주형 데이터의 개수 출력 value_counts = titanic_df['Pclass'].value_..

Data 2021.06.27

대표적인 머신러닝 분류성능 평가지표 총정리

머신러닝의 분류성능 평가지표를 공부하며 상당히 헷갈리는 부분이 많았다. 실제 값과 예측 값, 그리고 positive와 negative의 위치가 변하면 TP,TN,FN,FP의 위치도 변하기 때문에 혼동행렬을 보고 바로 성능지표를 계산하기 어려울 때가 생긴다. 또한 다양한 성능지표가 존재하고 분야 별로 그 평가지표의 명칭이 다르기도 해서 용어의 의미가 정리가 잘 되지 않았다. 먼저 머신러닝의 혼동행렬에서 도출되는 대표적인 분류성능 평가지표들의 개념과 그 관계들에 초점을 맞추어 정리해보고자 한다. 그리고 이러한 성능지표들은 통계학에서 배운 가설검정의 개념과 겹치는 부분이 있는데 이를 비교해보며 깊은 이해를 해볼 것이다. 1. 머신러닝의 대표적인 분류성능 평가지표 총정리 1.1 Accuracy(정확도): 실제 ..

Data 2021.06.11

벨만 방정식(Bellman Equation)

0단계: 재귀적 표현 $v_{\pi}(s_{t})=\mathbb{E}_{\pi}[r_{t+1}+\gamma v_{\pi}(s_{t+1})]$ $q_{\pi}(s_{t},a_{t})=\mathbb{E}_{\pi}[r_{t+1}+\gamma q_{\pi}(s_{t+1},a_{t+1})]$ 1단계: $v_{\pi}$와 $q_{\pi}$를 서로를 이용해 표현 $v_{\pi}(s) = \sum_{a\in A}\pi(a|s)q_{\pi}(s,a)$ $\Leftrightarrow s의 밸류 = \sum_{}(s에서 a를 실행할 확률) * (s에서 a를 실행하는 것의 밸류)$ $q_{\pi}(s,a)=r_{s}^{a}+\gamma \sum_{s'\in S}P_{ss'}^{a}v_{\pi}(s')$ $\Leftright..

Data 2021.06.07

Backpropagation(역전파) - 코드로 구해보기

XOR문제를 해결하는 과정에서 역전파의 적용을 코드로 구현해보고자 한다. $x_{1}$ $x_{1}$ output 0 0 0 0 1 1 1 0 1 1 1 0 기본 값 및 함수 설정 import random import numpy as np random.seed(777) # 입력값 및 타겟값 XOR문제 data = [ [[0, 0], [0]], [[0, 1], [1]], [[1, 0], [1]], [[1, 1], [0]] ] # 실행 횟수(iterations), 학습률(lr), 모멘텀 계수(mo) 설정 iterations=5000 lr=0.1 mo=0.4 XOR문제를 나타내는 입력값과 타겟값을 data에 저장하고 역전파 구현을 위한 변수인 실행 횟수, 학습률, 모멘텀 계수를 설정해주었다. # 활성화 함수 ..

Data 2021.06.06

부실가계 탐지 모형 - 결론

최종적인 성능지표는 다음과 같다. 흰색 칸에 있는 값들이 오버 샘플링 이전 하늘색 칸에 있는 값들이 오버샘플링 이후의 값들이다. 오버샘플링 이후에 정확도와 정밀도는 전체적으로 하락했으나 재현율은 크게 상승하였고 AUC도 상승하였다. 특히 로지스틱 회귀의 경우 오버 샘플링 이후 정확도는 다른 알고리즘들과 비슷한 수준이지만 다른지표들은 확실히 높았다. -의사결정나무 의사결정나무에서는 담보대출기관이 은행인지, 비은행금융기관인지의 여부가 2019년 2020년 공통적으로 가장 중요한 특징으로 나타났다. 반면 담보대출용도_거주주택 구입, 가구주 종사상 지위, 수도권 여부가 2019년에 비해 2020년에 더 중요해진 피처이다. -LightGBM LightGBM에서는 담보대출용도_거주주택 마련, 담보대출기관_은행여부의..

Data 2021.06.03

부실가계 분류모델 - 모델링 및 성능평가(균형 데이터 상황)

2021.05.25 - [Project/부실가계 분류모델 연구] - 부실가계 분류모델 - 의사결정나무, LightGBM(불균형 데이터 상황) 부실가계 분류모델 - 의사결정나무, LightGBM(불균형 데이터 상황) 2021.05.21 - [Project/부실가계 분류모델 연구] - 부실가계 탐지 모형 데이터 전처리- 범주형데이터 encoding 부실가계 탐지 모형 데이터 전처리- 범주형데이터 encoding 2021.04.26 - [Project/가계 부채 분석].. patrickstar-jjh.tistory.com 이번에는 트리기반 알고리즘인 의사결정나무와 LightGBM, 로지스틱 회귀 그리고 인공신경망 모형을 만들고 성능을 평가해볼 것이다. from imblearn.over_sampling impo..

Data 2021.06.03

부실가계 분류모델 - 모델링 및 성능평가(불균형 데이터 상황)

2021.05.21 - [Project/부실가계 분류모델 연구] - 부실가계 탐지 모형 데이터 전처리- 범주형데이터 encoding 부실가계 탐지 모형 데이터 전처리- 범주형데이터 encoding 2021.04.26 - [Project/가계 부채 분석] - 부실가계 탐지 모형 데이터 전처리- 파생변수 추가(DSR, DTA, HDRI, 부실가계) 부실가계 탐지 모형 데이터 전처리- 파생변수 추가(DSR, DTA, HDRI, 부실가계) 가계금융 patrickstar-jjh.tistory.com import pandas as pd import numpy as np import warnings warnings.filterwarnings("ignore") df = pd.read_csv('../data/2020가계..

Data 2021.06.03

부실가계 분류모델 - 데이터 전처리(데이터 encoding)

2021.04.26 - [Project/가계 부채 분석] - 부실가계 탐지 모형 데이터 전처리- 파생변수 추가(DSR, DTA, HDRI, 부실가계) 부실가계 탐지 모형 데이터 전처리- 파생변수 추가(DSR, DTA, HDRI, 부실가계) 가계금융복지조사 데이터? 2020 년도 가계금융복지조사 데이터는 통계청(가계자산조사), 금융감독원(가계신용조사), 한국은행(가구패널조사)에서 만든 가계 금융과 관련된 종합적인 데이터다. patrickstar-jjh.tistory.com 이전에 했던 데이터 전처리에 이어서 이번에는 학습하고자 하는 변수 추출 및 범주형 데이터들을 인코딩하고자 한다. # 데이터 reload data = pd.read_csv('./data/2020가계부채/label_2020.csv', eng..

Data 2021.06.03