
1. 머신러닝 개념
애플리케이션을 수정하지 않고도 데이터를 기반으로 패턴을 학습하고 학습된 모델을 통해서 결과를 추론하는 알고리즘 기법을 통칭.
=> 인간의 인지능력만이 해결 가능하다고 여겨졌던 다양한 분야 (ex. 데이터 마이닝, 영상인식, 음성인식, 자연어 처리 등)에서 응용이 두드러지며 발전이 급속하게 두드러지는 중.
2. 머신러닝의 필요성
- 현실 세계의 복잡한 업무와 규칙을 구현하기 위한 매우 방대한 코드.
- 수시로 변하는 업무 환경, 정책, 사용자 성향에 따른 애플리케이션 구현의 어려움.
- 많은 자원을 통해서 구현된 애플리케이션의 예측 정확성 문제.
--> 머신러닝을 통한 해결
- 머신러닝은 복잡한 문제를 데이터 기반으로 숨겨진 패턴을 인지해 해결.
- 머신러닝 알고리즘은 데이터를 기반으로 통계적인 신뢰도를 강화하고 예측 오류를 최소화하기 위해 다양한 수학적 기법을 적용해 데이터 내의 패턴을 스스로 인지하여 신뢰도 있는 예측 결과를 도출.
3. 머신러닝의 분류
-
지도학습
명확한 결정값이 주어진 데이터를 학습.
-->레이블링이 필요.
분류, 회귀, 시각/음성 감지/인지
-
비지도학습
결정값이 주어지지 않는 데이터를 학습.
군집화(클러스터링), 차원 축소
--> 알고리즘 유형
기호주의(결정 트리 등), 연결주의(신경망/딥러닝), 유전 알고리즘, 베이지안 통계, 유추주의
4. 머신러닝의 단점
- 학습시에 최적의 결과를 도출하기 위해 수립된 모델은 실제 데이터 적용 시 과적합 되기 쉬움.
- 머신러닝 알고리즘으로 인해 도출된 결과에 대한 논리적인 이해가 어려울 수 있음.
※데이터 수집이 매우 중요.