DL 구분 (1)
개요
AI = model = 연산의 집합 = 프로그램
특정 입력을 특정 출력이 나오도록하는 연산의 집합
대신 컴퓨터는 숫자만 이해하므로, I/O 모두 숫자여야함
학습 방식에 의한 구분
정답 사용여부, 피드백 제공 여부, 보상 신호 제공 여부에 의해 구분
1. 교사학습(supervised learning)
특정 입력에 대한 정답을 알려주는 방식으로 학습
라벨링 데이터, 직접 피드백
- 분류
정의된 class들 중 입력이 어느 class에 해당하는지 맞추는 task
결과값은 class 종류 중 하나이므로 양수의 정수값으로 보통 표현한다.
- 회귀
입력 데이터에 대한 실수 혹은 실수의 집합 (vector)를 맵핑해주는 task
- 분류 + 회귀
ex. 이미지 분류 : 이미지 내 사물을 분류하고, 그 위치 (좌표)를 출력
라벨링 노이즈
라벨링 결과에 대한 노이즈 = 라벨링 작업에 대해 일관되지 않음의 정도
-
small data , noisy labels : 모델 구조 / 학습 방법에 따라 다양한 모델이 확보됨 일반화 성능이 많이 떨어짐
-
Big data, noisy labels : 좋은 모델을 확보할 수 있으나, 많은 데이터 필요
-
small data, balanced data, Clean labels : 적은 데이터로도 좋은 모델 확보 가능
-
small data, unbalanced data, Clean labels : 모델 구조/학습방법론에 따라 일반화 성능 저하
2. 비교사학습(unsupervised learning)
특정 입력에 대한 정답을 알려주지 않고 학습시키는 방법
정답을 간접적으로 계산
라벨링 데이터 X, 피드백 X, **숨은 구조 찾기**
ex. 차원축소, 클러스터링
- 클러스터링 (Clustering) : 임의의 데이터를 K개 선택하고, 가장 가까운 데이터부터 그룹화 하는 방식 (K-means)
- 차원 축소 : N차원을 n차원으로 벡터를 줄이는 모델과, n차원을 N차원으로 복원되는 모델(AutoEncoder)을 둘다 학습. 실제로 사용할 때에는 차원축소 모델만 함
3. 강화학습(reinforcement learning)
주어진 환경에서 더 높은 보상을 위해서 최적의 행동을 취하는 정책을 학습
강화학습의 4요소
- 에이전트 : 실제 학습하는 개체
- 보상 : 개체가 환경과 상호작용하면서 얻는 결과
- 행동 : 개체가 취하는 행동의 집합
- 환경 : 개체 이외에 존재하는 모든 것
라벨링 데이터 X, 지연 피드백, 보상 신호