Python/Scikit-learn 2

[Python] logistic regression

로지스틱 회귀는 이진분류에서 사용되는 모델 중 흔히 쓰이는 모델이라고 보면 된다. 이론적인 부분을 공부하고 싶다면 여기를 눌러서 들어가면 볼 수 있다. 나는 임의로 데이터를 생성하여 분석을 진행했기 때문에 모델의 성능이 좋게 나오지는 않았다. 공식 데이터를 가지고 분석을 수행하면 보다 좋은 결과를 도출할 수 있을 것이다. def sigmoid(z): return 1/(1+np.exp(-z)) def f(x, w, b): return np.dot(x, w) + b def df(x, w, b): return x, 1 def binary_cross_entropy(z, t): return -(t*np.log(z) + (1-t)*np.log(1-z)).mean() 분석을 진행하기 앞서 로지스틱의 수식(sigmoi..

Python/Scikit-learn 2022.01.17

[Python] Scikit-learn에서 cross validation 사용하기

교차검증법에는 다양한 방법이 존재한다. 일반적으로는 n개의 집단으로 나누어 교차검증을 하지만 LOOCV(Leave-One-Out Cross-Validation)의 경우에는 분할의 수를 데이터의 수 만큼 나누어 평가를 하게 된다. 만약 데이터가 100개라면 데이터를 100개로 나누고 99개는 학습, 나머지 하나로 평가를 하는 형태로 진행된다. LOOCV의 경우 데이터의 수가 적을 때 극한으로 성능을 끌어올리기 위해서 주로 사용된다. 사이킷-런(scikit-learn)에서는 교차검증에 대한 패키지를 제공해주고 있다. sklearn 2.0 버전 이하인 경우에는 아래와 같은 방식으로 호출을한다. from sklearn import cross_validation 하지만 그 이후 버전에서는 아래와 같이 cross_..

Python/Scikit-learn 2022.01.14
반응형