기계 학습: Difference between revisions
From CS Wiki
(머신러닝 문서로 넘겨주기) |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
# | [[분류:인공지능]] | ||
;Machine learning | |||
;[[인공지능]] 연구분야 중 하나로, 인간의 뇌가 자연스럽게 수행하는 학습 능력을 컴퓨터로 구현하는 기술 | |||
== 머신러닝과 딥러닝 == | |||
* 인공 지능 : 자연 언어 처리, 전문가 시스템 분야, 영상 분석, 이론 증명(수학적 증명) | |||
* 머신 러닝 : 선형 회귀, 로지스틱 회귀, 소프트 맥스, 신경망(neural net) | |||
* 딥 러닝 : 신경망을 3 개 이상 중첩, CNN(이미지 인식 기능), RNN(자연어 처리, 챗봇) | |||
== 주요 기계 학습 모델 == | |||
=== 지도 학습 === | |||
{| class="wikitable" | |||
!모델 | |||
!주요 용도 | |||
!특징 | |||
!해석 가능성 | |||
!장점 | |||
!단점 | |||
|- | |||
![[서포트 벡터 머신|SVM]] | |||
|분류, 회귀 | |||
|초평면을 통해 데이터 분리 | |||
|낮음 | |||
|고차원 데이터에서 성능이 우수함 | |||
|대규모 데이터에서는 학습 시간이 길어짐 | |||
|- | |||
![[K-최근접 이웃|kNN]] | |||
|분류, 회귀 | |||
|인접한 데이터 포인트를 통해 분류 | |||
|중간 | |||
|사전 학습이 필요 없고, 간단하게 구현 가능 | |||
|예측 성능이 대체로 떨어지며, 데이터가 많거나 차원이 높으면 계산 비용이 급격히 증가함 | |||
|- | |||
![[의사결정 나무]] | |||
|분류, 회귀 | |||
|트리 구조로 분기하여 결정 | |||
|높음 | |||
|사전 데이터 처리가 불필요하며, 비정규화 데이터에 강함 | |||
|깊은 트리는 과적합 위험이 있음 | |||
|- | |||
![[선형 회귀]] | |||
|회귀 | |||
|선형 관계를 가정 | |||
|높음 | |||
|빠르고 구현이 간단하며 소규모 데이터에 효과적 | |||
|선형 관계가 성립되지 않으면 성능이 떨어짐 | |||
|- | |||
![[로지스틱 회귀]] | |||
|이진 분류 | |||
|선형 모델 기반의 확률적 접근 | |||
|높음 | |||
|메모리 효율성이 높고, 다중 분류로 확장이 가능 | |||
|복잡한 비선형 분류에는 적합하지 않음 | |||
|- | |||
![[나이브 베이즈]] | |||
|분류 | |||
|특성 간 독립성 가정 | |||
|높음 | |||
|계산 속도가 빠르고 소규모 데이터에서도 성능이 우수함 | |||
|특성 간 독립성 가정이 위반될 경우 예측 성능 저하 | |||
|} | |||
=== 비지도 학습 === | |||
* 군집 | |||
* [[차원 축소]] | |||
** [[차원의 저주]] | |||
** [[주성분 분석|주성분 분석(PCA, Principal Component Analysis)]] | |||
** [[독립성분 분석|독립성분 분석(ICA)]] | |||
** [[자기 조직화 지도|자기 조직화 지도(SOM, Self-Organizing Map)]] | |||
=== 강화 학습 === | |||
* [[Q 러닝]] | |||
* [[은닉 마코프 모델]] | |||
== 머신러닝 활용 == | |||
* 클래스 분류(Classification) | |||
** 특정 데이터에 레이블(정답)을 붙여 분류 | |||
** ex) 스팸 메일 분류, 필기 인식 등 | |||
* 클러스터링(Clustering) | |||
** 값의 유사성을 기반으로 데이터를 여러 그룹으로 나눔 | |||
** ex) 고객의 여러 가지 정보를 이용하여 그룹핑한 다음 최우수/우수/일반 고객 등으로 분류 | |||
* [[추천 시스템|추천(Recommendation)]] | |||
** 특정 데이터를 기반으로 다른 데이터를 추천하는 것 | |||
** ex) 사용자의 구매기록을 기반으로 다른 상품 추천 | |||
* [[회귀|회귀(Regression)]] | |||
** 과거의 데이터로 미래의 데이터를 예측하는 것 | |||
** ex) 주변 부동산 시세 정보를 이용하여 내년의 집값을 예측 | |||
* 차원 축소 | |||
** 데이터의 특성을 유지하면서 데이터의 양을 줄이는 것 | |||
** ex) 얼굴(큰 차원) 이미지에서 코, 눈(작은 차원) 등의 이미지에서 숫자를 추출 | |||
== 구현 절차 == | |||
# 데이터 전처리: 벡터화, [[레이블링]], [[결측치]] 처리 | |||
# 수치 분석: [[원핫 인코딩]], Feature(Factor) 선정 | |||
# 모델 선택: 적합 모델 선정 또는 전이학습 | |||
# [[하이퍼 파라미터]] 튜닝: 모델의 계층, 유닛, [[활성화 함수]], 학습비율 등 | |||
# 모델 테스트 및 분석: 학습된 모델의 성능의 측정, 분석 및 성능 개선 | |||
# 모델 제공 및 관리: 실제 응용 분야에 적용하고 지속적으로 관리 |
Latest revision as of 10:28, 2 November 2024
- Machine learning
- 인공지능 연구분야 중 하나로, 인간의 뇌가 자연스럽게 수행하는 학습 능력을 컴퓨터로 구현하는 기술
머신러닝과 딥러닝[edit | edit source]
- 인공 지능 : 자연 언어 처리, 전문가 시스템 분야, 영상 분석, 이론 증명(수학적 증명)
- 머신 러닝 : 선형 회귀, 로지스틱 회귀, 소프트 맥스, 신경망(neural net)
- 딥 러닝 : 신경망을 3 개 이상 중첩, CNN(이미지 인식 기능), RNN(자연어 처리, 챗봇)
주요 기계 학습 모델[edit | edit source]
지도 학습[edit | edit source]
모델 | 주요 용도 | 특징 | 해석 가능성 | 장점 | 단점 |
---|---|---|---|---|---|
SVM | 분류, 회귀 | 초평면을 통해 데이터 분리 | 낮음 | 고차원 데이터에서 성능이 우수함 | 대규모 데이터에서는 학습 시간이 길어짐 |
kNN | 분류, 회귀 | 인접한 데이터 포인트를 통해 분류 | 중간 | 사전 학습이 필요 없고, 간단하게 구현 가능 | 예측 성능이 대체로 떨어지며, 데이터가 많거나 차원이 높으면 계산 비용이 급격히 증가함 |
의사결정 나무 | 분류, 회귀 | 트리 구조로 분기하여 결정 | 높음 | 사전 데이터 처리가 불필요하며, 비정규화 데이터에 강함 | 깊은 트리는 과적합 위험이 있음 |
선형 회귀 | 회귀 | 선형 관계를 가정 | 높음 | 빠르고 구현이 간단하며 소규모 데이터에 효과적 | 선형 관계가 성립되지 않으면 성능이 떨어짐 |
로지스틱 회귀 | 이진 분류 | 선형 모델 기반의 확률적 접근 | 높음 | 메모리 효율성이 높고, 다중 분류로 확장이 가능 | 복잡한 비선형 분류에는 적합하지 않음 |
나이브 베이즈 | 분류 | 특성 간 독립성 가정 | 높음 | 계산 속도가 빠르고 소규모 데이터에서도 성능이 우수함 | 특성 간 독립성 가정이 위반될 경우 예측 성능 저하 |
비지도 학습[edit | edit source]
- 군집
- 차원 축소
강화 학습[edit | edit source]
머신러닝 활용[edit | edit source]
- 클래스 분류(Classification)
- 특정 데이터에 레이블(정답)을 붙여 분류
- ex) 스팸 메일 분류, 필기 인식 등
- 클러스터링(Clustering)
- 값의 유사성을 기반으로 데이터를 여러 그룹으로 나눔
- ex) 고객의 여러 가지 정보를 이용하여 그룹핑한 다음 최우수/우수/일반 고객 등으로 분류
- 추천(Recommendation)
- 특정 데이터를 기반으로 다른 데이터를 추천하는 것
- ex) 사용자의 구매기록을 기반으로 다른 상품 추천
- 회귀(Regression)
- 과거의 데이터로 미래의 데이터를 예측하는 것
- ex) 주변 부동산 시세 정보를 이용하여 내년의 집값을 예측
- 차원 축소
- 데이터의 특성을 유지하면서 데이터의 양을 줄이는 것
- ex) 얼굴(큰 차원) 이미지에서 코, 눈(작은 차원) 등의 이미지에서 숫자를 추출