반응형
생선의 크기, 무게, 높이 등 이 주어졌을때 7개의 생선에 대한 확률을 구하는 문제
- 데이터준비
- 물고기 종류를 타겟으로 잡는다.
- 물고기종류에 대한 확률을 내는 과제이니, 확인!
- 훈련세트와 테스트세트를 만든다.
- 각 데이터세틀를 표준화 전처리한다. =>Scaling
- K-최근접 이웃 분류기를 사용하여 정확도를 확인한다.
- 이웃의 개수는 대충 3개로 지정했다.
여기서 target 데이터에는 7가지 물고기 종류가 들어있다는것을 잊으면 안됀다.!
이렇게 여러개의 target / 2개이상의 클래스가 포함된 문제를 다중분류라고 한다.
- target 확인 = kn.classes_
- 테스트세트 중 처음 5개의 테스트input에 대한 target(물고기종류) 예측
- 테스트 세트에서 뽑아낸 5개 샘플의 각 클래스별 확률을 추출해보자
- 각 클래스별로 확률이 어떻게 배분되어있는지 확인 할 수 있다.
첫번째 샘플의 확률은 정확하게 3번째 = Perch가 1로 100%를 보여준다. 우리 모델이 예측했던 것과 정확하게 일치하는것을 볼수 있다.
네번째 샘플의 확률은 0.6과 0.3 두가지로 나뉘었다. = 0.6 : Perch, 0.3 : Roach
다른것들도 추가적으로 확인하기 바란다. => 어떻게 예측값이 나오게 됬는지 알수있다.
그렇다면 네번째 샘플로 최근접이웃이 누구이기에 저런 확률로 나왔는지 확인해보자
kn.kneighbors를 통해 최근접 샘플들을 확인했더니, 위와 같이 결과를 얻을 수 있었다.
하지만 우리가 현재 구한 확률은 간단하게 0.6 , 0.3 이런식이다.. 다음 게시글에서 조금더 정확한 확률을 구하기 위해 이진분류를 포함시켜보자
반응형
'AI > Machine Learning' 카테고리의 다른 글
[Python] 머신러닝-11 점진적 학습을 위한 확률적 경사하강법 / 확률적 경사하강법이란? (0) | 2021.01.20 |
---|---|
[Python] 머신러닝 기초-10 Logistic Regression 과 이진분류 / 다중분류 활용 (0) | 2021.01.19 |
[Python] 머신러닝 기초-8 복습하고 가자 - > Ridge Regression Example 쭉 쳐보기 (0) | 2021.01.19 |
[Python] 머신러닝 기초-7 Ridge Regression 과 Lasso Regression을 통한 연습 / Ridge란? / Lasso란? (0) | 2021.01.18 |
[Python] 머신러닝 기초-6 다중회귀(Multiple Regression) 알고리즘을 통한 연습 / 다중회귀란? (0) | 2021.01.18 |