일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 코딩테스트
- tinyml
- sort
- BFS
- bfs문제
- 자료구조
- DP
- dfs
- 딥러닝
- 포스코 ai 교육
- 포스코 AI교육
- 다이나믹프로그래밍
- 영상처리
- tflite
- 초소형머신러닝
- 삼성코테
- 포스코 교육
- DP문제
- 삼성역량테스트
- dfs문제
- MCU 딥러닝
- 컴퓨팅사고
- 알고리즘
- 코테 문제
- 임베디드 딥러닝
- 삼성코딩테스트
- 그리디
- 삼성역테
- 코테
- TensorFlow Lite
- Today
- Total
코딩뚠뚠
[POSCO 교육 사전학습] 머신러닝기법과 R프로그래밍 2 본문
포스코 포스텍에서 제공하는 청년 AI-BigData 아카데미 과정의 온라인 예습 과정 중 하나인 데이터 과학에 대한 강의를 듣고 정리한 포스팅이다.
저번강의에 이어 이번에는 training 의 기법에 대해 알아보려고 한다.
목차는 다음과 같다.
k-인접기법과 판별분석
- k-인접기법1
- k-인접기법2
- 판별분석1
- 판별분석2
K-인접기법1
이전시간 우리는 Iris 데이터를 분류하고 있었다.
학습표본을가지고 분류규칙을 만들어야 한다.
K-인접기법이란 영어로 하면 K-nearest neighbor method 로 KNN 이라고 부른다.
K개의 가장 가까운 이웃들을 사용하여 분류한다.
k를 정하고 새로운 객체인 빨간색이 k에 따라 어디의 범주에 속하는지 정할 수 있게 되는 기법이다.
최적의 k는 ?
k가 너무 크면 데이터의 구조를 파악하기 힘들고 너무 작으면 overfitting 위험이 있다.
cross-validation 으로 정확도가 높은 k를 선정해야한다.
KNN 장점 :
- 단순하고 효율적이다
- 데이터분산을 추정할 필요가 없다
- 빠른 훈련단계
KNN 단점 :
- 모델을 생성하지 않는다
- 느린 분류 단계
- 많은 메모리 필요
- 결측치는 추가 작업이 필요하다.
K-인접기법2
-최적 k 탐색과 가중치 k-인접기법
최적 k를 탐색 => R언어에서 class 패키지를 이용해 k를 늘려가며 plot 그래프를 그려가며 탐색했다.
opencv의 knearest 에서도 할 수 있을 것이다.
거리에 따라 가중치를 부여하는 알고리즘이 존재
R에서 kknn 이라는 추가적인 패키지를 설치하여 그 중 distance 변수를 주어 수행하면 가중치를 부여할 수 있었다.
판별분석 1
분류의 방법 중 판별분석
영어로는 Discriminant Analysis 라고 한다.
분류를 어떤 선형식이 가장 잘 구분하는지.. 그 함수를 도출 하는 것이다.
- 선형판별분석 (LDA : 정규분포의 분산-공분산 행렬이 범주에 관계없이 동일한경우)
- 이차판별분석 (QDA : 정규분포의 분산-공분산 행렬이 범주별로 다른 경우)
R언어에서 MASS 패키지를 사용하여 판별분석을 구현할 수 있다.
그 중 LDA를 사용하면 사후확률이 구해지고 그 max값의 범주로 할당하여 추정한다
판별분석 2
- 이차판별분석
앞에선 선형판별분석 LDA를 사용하였고 지금은 QDA를 사용 해 볼 것이다.
QDA는 선형에 비해 많은 파라미터를 사용하고 높은 유연성을 보인다.
R에서 biotools 패키지로 사용할 수 있다.
선형판별에서와 마찬가지로 사후확률을 구한 후 max 의 범주로 할당한다
LDA vs QDA
독립변수가 4개일 때의 분석을 진행했다.
무엇이 더 좋을까?
공분산 행렬에 따라 QDA를 결정하겠지만 강의에서의 데이터셋은 비슷한 성능을 보였지만
특정 분류에서는 QDA가 더 오분류율이 적은것을 볼 수 있었다.
'공부 > POSCO AI-Big Data 아카데미 14기' 카테고리의 다른 글
[POSCO 교육 사전학습] 머신러닝기법과 R프로그래밍 4 (0) | 2021.04.04 |
---|---|
[POSCO 교육 사전학습] 머신러닝기법과 R프로그래밍 3 (0) | 2021.04.04 |
[POSCO 교육 사전학습] 머신러닝기법과 R프로그래밍 1 (0) | 2021.04.03 |
[POSCO 교육 사전학습] AI 입문 - 데이터사이언스를 위한 통계_6 (0) | 2021.03.25 |
[POSCO 교육 사전학습] AI 입문 - 데이터사이언스를 위한 통계_5 (0) | 2021.03.25 |