컴퓨터 비전과 머신러닝
머신 러닝 Machine Learning
- 통계적/수학적 기법을 이용해 데이터로부터 패턴을 추출하는 인공지능 기법
- 최근 컴퓨터 비전에는 "딥러닝" 기법이 중심을 이루고 있음
- 학습의 형태:
- 지도 학습: x와 y가 짝지어진 형태의 데이터에서 관계를 학습
- 비지도학습: 데이터의 내재적 구조를 학습
- 강화학습: 환경과 상호작용하여 가장 많은 보상을 받는 행동을 학습
지도 학습 Supervised Learning
- 입력(x)과 출력(y)이 짝지어진 데이터셋이 있을 때
- x로부터 y를 예측하는 함수를 학습
- 아직 y가 관찰되지 않은 x에 적용하여 y를 예측
- 머신 러닝의 90% 이상을 차지하는 학습 형태
- 예시:
- 부품 사진(x) → 불량 여부(y)
- 사고 차량 사진(x) → 예상 수리비(y)
이미지 분류의 원리
- 이미지는 이미지를 구성하는 n개의 점으로 이뤄짐
- 예: 가로 100 × 세로 100인 컬러(RGB) 이미지는 3만 개의 값으로 구성
- 이미지는 n 차원 공간 상의 한 좌표로 생각할 수 있음
- 이미지의 종류(클래스)를 구분하는 경계를 수학적으로 찾으면 특정 좌표가 경계의 어느 쪽에 있는지 분류할 수 있음

뉴런 neuron
- 동물의 신경계를 구성하는 신경 세포
- 흥분하면 전기 신호가 발생
- 신경 전달 물질을 사용하여 세포 간 통신

인공신경망 artificial neural network
-
생물학적 신경망에서 영감을 받은 머신러닝 모델
-
인공 뉴런은 입력값을 가중합하고, 그 결과에 활성화 함수를 적용하여 출력
-
인공 뉴런은 로지스틱 회귀분석과 (거의) 같음

-
다층 신경망: 뉴런들로 이뤄진 층(layer)을 만들고, 이것을 여러 층으로 쌓은 것
- → 딥러닝으로 발전

- → 딥러닝으로 발전
-
보편 근사 정리: 어떤 함수든지 인공 신경망으로 근사(approximation)할 수 있음
근사
- 구체적인 수식은 달라도 서로 다른 함수를 비슷하게 만들 수 있음(아래 가운데)
- 함수가 너무 단순하면 데이터에 잘 맞지 않음(과소적합, 왼쪽)
- 함수가 너무 복잡하면 기존 데이터는 잘 맞지만, 새로운 데이터는 잘 맞지 않음(과대적합, 오른쪽)

모형과 파라미터
- 모형(model): 데이터의 패턴을 나타내는 수식이나 프로그램
- 예시: 2차 함수
- 파라미터(parameter): 모형의 구체적 형태를 결정하는 수치
- 파라미터가 많을 수록 더 복잡한 패턴을 나타낼 수 있음

인공신경망의 학습: 경사하강법
- 파라미터(parameter): 모형의 특성을 결정하는 값
- 예: 1차 함수 에서 와
- 동일한 구조의 모형이라도 파라미터에 따라 다양한 예측을 하게 됨
- 인공신경망은 매우 복잡한 함수이므로, 최적 파라미터를 한 번에 찾는 공식은 없음
- 모형의 예측과 실제값을 비교하여 두 가지의 차이(손실)를 계산
- 손실이 줄어드는 방향(경사)으로 파라미터를 점진적으로 조정하여 줄여 나감(하강)

딥러닝 이전과 이후의 특징 추출
- 딥러닝 이전에는 과제 특성에 맞게 여러 단계의 처리 과정을 거쳐 특징을 추출
- 종단간 학습(end-to-end leaning): 딥러닝에서는 원 데이터를 거의 그대로 입력하여 원하는 출력을 얻음
- 표상 학습(representation learning): 신경망이 과제를 수행하는데 적합한 특징들을 내부적으로 학습

인간과 기계의 학습 방법의 차이
- 스스로 생각하는 존재, 인격화된 존재라는 통념
- 인간은 소량의 데이터나 심지어 데이터 없이도 학습이 가능
- 인공지능은 대량의 데이터가 필요
- 인공지능은 좁은 범위의 문제에만 학습이 가능, 전이(transfer)가 어려움
- 문제가 달라지면 처음부터 새롭게 접근해야
- Zero-Shot Learning: 추가적인 데이터 없는 전이 학습
- 매우 다양한 범위의 문제들을 하나의 모델에 학습 → 기존의 문제와 유사한 새로운 문제도 가능