파이선 코딩을 배우는 초보자도 머신 러닝에 독학으로 한번 도전해 보자.
왜냐구요? 그다지 어렵지 않으니까요!
머신 러닝을 배우려는 파이선 코딩 초보자들이 가지게 될 확률이 높은 의문점들을
하나하나 찾아내어 실제 풀어보고 결과를 확인해볼 수 있는 머신 러닝!
인터넷 교보문고에서 450페이지19900원에 판매중입니다.
________________________________________________________________________________________________________________________
Perceptron 에 의한 3종의 Iris flowers Data Classification 작업은 선형적 분리가 불가능한 문제이므로 위와 같이 실패 사례를 보여 준다. 그 자세한 내용에 관해서는 아래 내용을 참조해 보기 바란다.
1-5 Iris flowers data 머신 러닝을 위한 sklearn 라이브러리 활용
https://steemit.com/kr/@codingart/1-5-iris-flowers-data-sklearn
이런한 문제 해결을 위해 고안된 방법이 Multiclass Logistic Regression 이며 scikit-learn 라이브러리에서 Logostic Regression 라이브러리 함수 형태로 지원이 되고 있다. 단 C= 100.0 이란 파라메터 용법이 있는데 이는 데이타들이 섞이는 구간에서 Overfitting 현상을 피하기 위한 Regularization 알고리듬을 실행시키는 기능을 가진다.
Logistic regression 은 2개의 라벨 값을 다루기에 적합한 머신 러닝 기법이므로 Iris flowers 데이터처럼 3개 또는 그 이상의 라벨 값을 가지는 경우에 하나의 라벨 값을 가지는 데이터를 Pivoting 할 필요가 있다. Pivoting 이라 함은 하나를 선정 후 나머지 중에서 하나씩 대응시켜 1:1 문제로 귀착시킨다는 의미이다. 즉 Pivot으로 선정된 데이터에 대하여 나머지 데이터들을 대상으로 1:1 문제로 환원하여 리그 방식으로 처리하는 개념이다.
만약 전체 대상 자체가 2가지 즉 K=2라면 Pivoting 공식은 우리가 알고 있는 Logistic regression으로 환원되어야 한다.
K개의 라벨 값 중 K값을 가지는 경우를 Pivot 으로 설정하고 라벨 값이 1∼(K-1)범위 중에서 하나씩 대상으로 선정해 매치시키기로 하고 각 라벨 값에 따른 확률을 pi 라 하자.
이들 확률비의 자연로그 값을 선형 Hypothesis 형태로 가정하자.
이 식을 유도하려면 볼츠만 확률분포 유도과정과 이로부터 Logistic Regression 확률 분포 과정을 함께 다루어야 하지만 그대로 인정하고 사용해도 그다지 문제 가 되지는 않는다. 이 식을 풀어서 다시 쓰도록 하자.
위의 확률들과 K 번째 확률을 다 더하면 1.0 이 되어야 한다.
이 식을 정리하면 Pivot 확률이 아래와 같이 얻어진다.
이 Pivot 확률을 사용하여 (2)식에 대입하여 K-1 번째 데이터까지에 대한 확률 공식을 유도할 수 있다.
이 마지막 공식에서 K=2 라면 Logistic regression으로 귀착됨을 쉽게 알 수 있으며 K 값이 2 이상이라도 cost 함수를 구성하여 경사하강법을 적용하면 계산이 가능하다.
'머신러닝' 카테고리의 다른 글
sklearn DecisionTreeClassifier 의 Gini impurity 계산 사례 (0) | 2019.04.29 |
---|---|
Information Bit number 및 Entropy 계산 (0) | 2019.04.28 |
Information Entropy (0) | 2019.04.25 |
Computational Graph 생성을 위한 GraphViz 사용법 (0) | 2019.04.24 |
GraphViz, PyDotPlus 설치에 따른 Decision Tree Classifier 실행 (0) | 2019.04.23 |