일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 머신러닝
- gini coefficient
- confusion matrix
- GINI
- Golang
- Heatmap
- decisiontree
- bar
- matplotlib
- 지니계수
- Python
- XGBoost
- sklearn
- ml
- pyplot
- scatter
- Today
- Total
목록전체 글 (11)
Passion, Grace & Fire.

tick에 배정되는 tick label의 문자열 변경은 get_yticklabels() / set_yticklabels() 함수를 이용하여 할 수 있다. yticks = ax.get_yticks() ax.set_yticks(yticks) yticklabels = ax.get_yticklabels() ax.set_yticklabels([f'{y:.0f} Value' for y in yticks], fontdict={"fontsize":16, "color":"black", "ha":"right", "va":"center"}) pyplot 그래프 출력 시 기존 tick과는 별도로 보조 tick을 출력할 수 있다. major/minor tick의 간격은 set_major_locator()/set_minor_lo..
super() 에 type, obj argument를 사용하는 경우: class super(t: Any, obj: Any) super(type) -> unbound super object super(type, obj) -> bound super object; requires isinstance(obj, type) super(type, type2) -> bound super object; requires issubclass(type2, type) Typical use to call a cooperative superclass method: class C(B): def meth(self, arg): super().meth(arg) This works for class methods too: class C(B..

heatmap은 색상표에 기반하여 데이터를 시각화하는 그래픽 표현이다. 머신러닝 분야에서는 여러개의 feature에 대해 feature 간 연관성(상관관계)를 시각화하려고 할 때 많이 사용된다. 상관관계가 높은 feature들은 줄일 수 있기 때문에 성능개선에 도움이 된다. feature마다의 상관관계(correlation)를 heatmap으로 표현하는 예제 코드이다. 먼저 데이터를 준비한다. import pandas as pd import matplotlib.pyplot as plt import seaborn as sns data = {'A' : [1, 0, 3, 2, 4, 5, 8], 'B' : [1, 0, 3, 2, 4, 5, 8], 'C' : [7, 6, 3, 4, 5, 2, 1], 'D' : [..

지니 계수의 정의 지니계수는 어떤 값의 분배상태를 표현하기 위한 로렌츠 곡선을 이용하여 값의 분배 정도를 수치화하는 방법이다. 머신러닝 분야에서는 Decision Tree Model의 성능평가를 하는 데 사용된다. 아래 이미지는 로렌츠 곡선으로, X축은 데이터 수의 누적 비율이고, Y축은 데이터 value의 누적 비율이다. 위 로렌츠 곡선에서 A를 Line of Equality와 로렌츠 곡선 사이의 영역이라 하고 B를 로렌츠 곡선의 영역이라고 하면 지니 계수의 값은 아래와 같다. 지니계수 = A / (A + B) 여러개의 값을 가진 데이터의 경우, 지니 계수는 아래 공식에 따라 구할 수 있다. 출처 : https://en.wikipedia.org/wiki/Gini_coefficient 코드 구현 여러 개..

데이터의 분포를 표현할 때 사용할 수 있다. values = [0.01686434542269142, 0.011053805247045436, 0.036219170535060755, 0.019470566624956092, 0.07861381065229754, 0.019871398042689628, 0.02209323746126317, 0.004198705181889577, 0.003607748989459628, 0.0003743181308508165, 0.000658587568488969, 0.0013468714834950239, 0.0006631273358967262, 0.002396248137555366, 0.02559893166563769, 0.013920353817181067, 0.0569721290..

bar plot의 경우 bottom에 기존에 그린 데이터를 넘겨 bar를 쌓을 수 있다. import matplotlib.pyplot as plt zero_list = [360852, 442223, 497644, 484917, 594990, 594205, 589594, 594648, 201882, 523143, 503879, 522342, 221514, 265356, 424278, 387469, 503955] one_list = [234360, 152989, 97568, 110295, 222, 1007, 5618, 564, 393330, 72069, 91333, 72870, 373698, 329856, 170934, 207743, 91257] features = ['ps_ind_06_bin', 'ps_i..

binary(0 or 1) category의 경우 다음과 같이 confusion matrix를 표현할 수 있다. predicted 0 1 expected 0 TN FP 1 FN TP sklearn.metrics.confusion_matrix로 위와 같은 표를 출력하기 위한 예제 코드: from sklearn.metrics import confusion_matrix from matplotlib import pyplot as plt """ Confusion matrix whose i-th row and j-th column entry indicates the number of samples with true label being i-th class and prediced label being j-th cla..
개인 PC나 노트북에서 kaggle 코드나 딥러닝/머신러닝 실습을 하는 경우 데이터를 불러오거나 훈련하는 데 시간이 너무 오래 걸리는 경우가 많습니다. google colab에 코드를 올리고 런타임 유형을 GPU로 설정해서 실행하면 개인 PC보다 훨씬 빠르게 신경망을 훈련시킬 수 있지만, colab 디렉토리에 file을 업로드하는 경우 런타임을 초기화하면 사라지므로 그때마다 파일을 다시 업로드해야 하는 번거로움이 있습니다. 이런 경우를 방지하기 위해 데이터 파일을 별도의 공간에 올려놓고, colab에서 파일 링크로 다운로드 받는 방식이 많이 사용되고 있습니다. 파일을 올려둘 만한 곳을 찾기는 어렵지만, 실습을 위해서라면 네이버 대용량 메일 기능으로 자신에게 데이터 파일을 송신하고 파일 링크 주소를 따서 ..