머신러닝 맛보기 1탄
파이썬을 이용한 머신러닝, 딥러닝 실전개발 입문 서적을 정리한 내용입니다.
개요
머신러닝(Machine learning) 이란 인공지능 연구 과제중의 하나로, 인간의 뇌가 자연스럽게 수행하는 "학습"이라는 능력을 컴퓨터로 구현하는 방법입니다. 머신러닝에서는 벡터라는것이 굉장히 중요합니다. 벡터(Vector) 란 공간에서 크기와 방향을 가진것을 의미합니다. 머신러닝을 하려면 데이터가 어떤 특징을 가지고 있는지 찾고 벡터로 만들어야 합니다. 이 같은 변환처리를 "특징 추출" 이라고 합니다.
머신러닝의 종류
교사 학습 (지도 학습) (Supervised learning)
- 선생님이 옆에서 문제를 주고, 답을 알려주는 것과 같은 학습 방법
- 데이터와 함께 답을 입력합니다. 다른 데이터의 답을 예측합니다.
예) 분류, 회귀, 추천시스템, 시각/음성감지/인지, 텍스트 분석, NLP
비교사 학습 (비지도 학습) (Unsupervised learning)
- "최종적으로 내야한 답" 이 정해져 있지 않다는 것이 교사 학습과 다른 부분입니다.
- 데이터는 입력하지만 답은 입력하지 않습니다. 다른 데이터의 규칙성을 찾습니다.
- 데이터의 본질적인 구조 등을 확인할때 사용합니다.
예) 클러스터 분석(Cluster analysis), 주성분 분석(Principal component analysis), 벡터 양자화(Vector quantization), 자기 조직화(Self organizaiotn)
강화 학습 (Reinforcement learning)
- 현재 상태를 관찰해서 어떻게 대응해야 할지와 관련된 문제를 다룹니다.
- 부분적으로 답을 입력한다. 데이터를 기반으로 최적의 답을 찾아냅니다.
- "행동의 주체" 와 "환경(상황 또는 상태)"이 등장합니다. 행동의 주체는 환경을 관찰하고, 이를 기반으로 의살결정을 내려 행동합니다. 이때 환경이 변화하면서 행동의 주체가 어떤 보상을 받습니다. 이를 기반으로 행동의 주체는 더 많은 보상을 얻을 수 있는 방향으로 행동을 학습하게 됩니다.
- 예) 고양이가 사료 지급기의 스위치를 누르기 위해 여러 행동 반복을 통해 최선의 행동을 학습하게 된다.
머신러닝의 흐름
1. 데이터 수집
2. 데이터 가공
3. 데이터 학습
3-1 학습 방법 선택
3-2 매개변수 조정
3-3 모델학습
4. 모델평가
5. 정밀도가 제대로 나오면 완료, 그렇지 않으면, 3번부터 다시 시작.
3-1에서는 어떤 알고리즘을 사용해 학습을 시킬지 생각해야 합니다.
머신러닝의 응용분야
클래스분류 (Classification)
- 특정 데이터에 레이블을 붙여 분류할 수 있습니다. 예를 들어, 스팸 메일 분류, 필기 인식, 증권 사기등에 사용하는 경우
클러스터링 - 그룹 나누기 (Clustering)
- 값의 유사성을 기반으로 데이터를 여러 그룹으로 나눌수 있습니다. 예를 들어, 사용자의 취향을 그룹으로 묶어 사용자 취향에 맞는 광고를 제공하는 경우를 의미합니다.
추천 (Recommendation)
- 특정 데이터를 기반으로 다른 데이터를 추천하는것입니다. 예를 들어, 사용자가 인터넷 서점에서 구매한 책들을 기반으로 다른 책을 추런하는 경우를 의미합니다.
회귀(Regression)
- 과거의 데이터를 기반으로 미래의 데이터를 예측하는것 입니다. 판매예측, 주가 변동 등을 예측하는 경우를 의미합니다.
차원 축소 (Dimensionality Reduction)
- 데이터의 특성을 유지하면서 데이터의 양을 줄이는 것입니다. 여렵게 말하면 "특성을 유지한 상태로 고차원의 데이터를 저차원의 데이터로 변환하는 것" 입니다. 데이터를 시각화하거나 구조를 추출해서 용량을 줄여 계산을 빠르게 하거나 메모리를 절약할때 사용합니다.
초과학습
훈련 전용 데이터가 학습돼 있지만 학습되지 않은 새로운 데이터에 대해 제대로 된 예측을 못하는 상태를 의미합니다.
해당원인은 아래와 같습니다.
- 데이터가 너무적은경우
- 모델에 비해 문제가 너무 복잡한 경우
'AI' 카테고리의 다른 글
머신러닝 맛보기 7탄 (0) | 2019.05.09 |
---|---|
머신러닝 맛보기 6탄 (0) | 2019.05.02 |
머신러닝 맛보기 5탄 (0) | 2019.04.18 |
머신러닝 맛보기 4탄 - 핸즈온 (0) | 2019.04.08 |
머신러닝 맛보기 3탄 (0) | 2019.03.19 |
머신러닝 맛보기 2탄 (0) | 2019.03.19 |
AWS SageMaker 로 머신러닝 맛보기 1탄 (1) | 2019.03.07 |
딥러닝을 위한 준비 1탄 (윈도우 버전) (0) | 2019.03.06 |
댓글