# 요약

1. 예측(prediction)
   * _**회귀regression : 실수값을 예측하는 것**_
   * _**분류classification : 숫자 인식 문제 같이, 10가지 분류 중 하나를 예측하는 것**_
2.  인공지능의 발전

    : 지식기반 방식→ 기계 학습으로 이동 \
    &#xNAN;_: Machine Learning = 데이터 기반 학습_ \
    : 충분한 데이터 수집 및 입&#xB825;_→스스로 학습하여 성능을 지속 향상시킴_
3.  모델링

    정확하게 예측하기 위&#xD574;**→** 최적의 매개변수 필요

    처음에는 최적값을 모름으로 임의의 값에서 시작하여 →점점 성능을 개선하여 최적에 도달 _**성능을 개선하면서 최적의 상태에 도달하는 작업을 학습(learning) 또는 훈련(training)**_
4.  테스트

    훈련 집합에 없는 ‘새로운‘ Sample에 대한 목표값을 예측하는 과&#xC815;_\*\*= 테스트(test)\*\*_ \
    &#xNAN;_**테스트집합(test set) : 새로운 샘플을 가진 데이터**_ _**일반화 (generalization) 능력 : 테스트집합에 대해 높은 성능을 가지는 성질**_ \
    데이터베이스 = DB = 훈련 집합 + 테스트집합
5.  표현학습

    _**좋은 특징 공간을 자동으로 찾는 작업**_

    _**대표적인 표현 학습 = 딥러닝**_

    딥러닝 : 다수의 은닉층을 가진 신경망을 이용하여 계층적인 특징공간을 찾아냄

    신경망 학습 알고리즘이 특징 공간 변환 공식을 자동으로 찾아내 계층적인 추출 기능을 부여함
6.  데이터

    인위적 상황 : 데이터 생성 과정을 완전히 알고 있다

    _**실제 기계 학습 : 데이터 생성 과정을 알 수 없음**_

    미지의 데이터 생성 과정에서 수집한 데이터 = 훈련집합만 주어짐

    _**기계학습 : 훈련집합을 이용하여 테이터 생성 과정을 역으로 추정하는 문제임**_
7. 적합성
   * 과소적합 (Underfitting) : 모델의 ‘용량이 작아’ 오차가 클 수밖에 없는 현상 \
     비선형 모델을 사용하는 대안 : 2차, 3차, 4차, 12차는 다항식 곡선을 선택한 예로 1차(선형)에 비해 오차가 크게 감소함
   * 과잉적합 : 복잡하고 용량이 큰 모델을 가지게 됨, 훈련집합에 대해 거의 완벽하게 근사화함 하지만 새로운 data 가 들어오면 대처하지 못함
8.  바이어스와 분산

    바이어스와 분산은 상반 관계\


    1차\~12차 다항식 모델의 비교 관찰

    * 1\~2차는 훈련집합과 테스트집합 모두 낮은 성능
    * 12차는 훈련집합에 높은 성능을 보이나 테스트집합에서는 낮은 성능 = 낮은 일반화 능력
    * 3\~4차는 훈련집합에 대해 12차보다 낮겠지만 테스트집합에는 높은 성능 = 높은 일반화 능력\


    2차 큰 오차=바이어스(bias.편파) 가 크다 비슷한 모델을 얻음 = 낮은 분산=분산(variance) 가 작다(분류의 개념 정도)\


    12차 바이어스(bias.편파) 가 작음 분산(variance) 은 큼

    기계학습의 최종 목표 : _**낮은 바이어스와 낮은 분산**_&#xC744; 가진 예측기(Predictor)를 만드는 것\

9.  모델 선택 알고리즘

    훈련집합으로 모델을 학습하고 테스트집합으로 학습된 모델의 일반화 능력을 측정

    여러 모델 중 선택 시 : 여러 모델을 독립적으로 학습 시킨 후 가장 좋은 모델 선택\


    모델들을 비교하는데 사용할 별도의 데이터가 필요 : **검증집합 (validation set)**

    1.모델을 훈련집합으로 학습

    2.검증집합으로 학습된 모델의 성능 측정 //검증 성능 측정

    3.가장 높은 성능을 보인 모델 선택

    1. 테스트집합으로 선택된 모델의 성능 측정\


    검증 집합이 없는 경우 **교차검증(cross validation)**

    훈련집합을 등분하여, 학습과 평가 과정을 여러 번 반복한 후 평균을 사용

    \=남는 그룹을 달리하며 이 과정을 n번 반복하여 n개 의 성능을 평균 내어 검증 성능으로 취함

    장점 : 모든 데이터 set을 평가와 훈련에 활용. 정확도를 향상 단점 : 모델 훈련/평가 시간이 오래 걸림\


    부트 스트랩(boot strap)을 이용한 모델 선택 알고리즘

    * 난수를 이용하여 새로운 훈련집합을 샘플링 함
    * 이때 대치를 허용하여 같은 샘플이 여러 번 뽑힐 수 있게 함\

10. 기계학습 예

    1. 직선 모델을 사용하여 선형 회귀 (Linear Regression) 문제를 풀 때

    수치적 방법(numerical method) : 훈련집합에서 초기 직선의 매개변수 가정(직선 모델의 수식 작성)→목적함수값이 작아지도록 매개변수 값 조정→ 개선→최적값 도출→오차 개선\


    직선을 움직이게 하는 동력 : 목적함수(objective function)= 비용함수(Cost function) = 𝐽\


    _평균 제곱 오차_

    _목적함수 계산하기_\


    2.비선형 모델

    실제 세계는 선형이 아니며 잡음이 섞임→ 비선형 모델이 필요\

11. 규제

    현대 기계 학습이 높은 일반화 능력을 확보하는 기본적인 접근방법은 용량이 충분히 큰 모델을 선택 한 후, 여러가지 규제 (regularization) 기법을 적용하고 있음\


    1. 데이터 확대 일반화 능력을 향상하는 가장 확실한 방법 → 데이터를 더 많이 수집하면 됨
    2.  데이터 변형 데이터 수집은 많은 비용이 듦 - 측정, 입력, 일일이 레이블링 등을 해야 함→훈련집합에 있는 샘플을 변형→ 인위적으로 데이터를 확대

        예) 이동, 회전, 크기, 잡음추가 등
    3. 가중치 감쇠 (Weight decay) 개선된 목적함수를 이용하여 가중치를 작게 조절하는 규제 기법 극점에서 곡률(curvature)이 매우 큼\

12. 기계학습의 유형

    지도 방식에 따른 유형 : **지도, 비지도, 준지도, 강화학습**\


    다양한 기준에 따른 유형/종류 ❖ 실시간으로 점진적인 학습을 하는지 아닌지

    * 온라인학습, 배치학습 ❖ 단순하게 알고 있는 데이터 포인트와 새 데이터 포인트를 비교하는 것인지 아니면 훈련 데이터셋에서 패턴을 발견하여 예측 모델을 만드는지
    * 사례 기반 학습, 모델 기반 학습\


    지도 학습 (supervised learning)

    특징 벡터 𝕏와 목표값 𝕐가 모두 주어진 상황→입력 벡터에 대해 출력값을 알려줌

    -회귀 출력이 연속된 실수로 주어짐

    -분류 몇 가지 부류로 주어짐

    비지도 학습 (un-supervised learning)

    특징 벡터 𝕏는 주어지는데, 목표값 𝕐 가 주어지지 않는 상황 -데이터만을 가지고 학습

    -데이터의 숨겨진 특징이나 구조를 발견하는데 사용

    -ex 클러스터링(Clustering) 알고리즘 : 데이터가 무작위로 분포 되어 있을 때 비슷한 특성을 가진 데이터들을 묶는 방식\


    강화 학습 (reinforcement learning)

    -목표값이 주어지는데, 지도 학습과 다른 형태임

    예) 바둑 / 장기 : 수를 두는 행위가 샘플인데, 게임이 끝나면 목표값 하나가 부여됨 이기면 1, 패하면 -1을 부여 = 연속된 샘플의 열에 목표값 하나만 주는 방식임. 따라서 샘플 열에 속한 각각의 샘플에 목표값을 배분하는 알고리즘이 추가로 필요함 게임을 구성한 샘플들 각각에 목표값을 나누어 주어야 함\


    준지도 학습 (semi-supervised learning) 일부는 𝕏와 𝕐를 모두 가지지만, 나머지는 𝕏만 가진 상황

    * 인터넷 덕분으로 𝕏의 수집은 쉽지만, 𝕐는 수작업이 필요하여 최근 중요성 부각 예) 자연 영상 수집의 경우 : 인터넷에 하루에 수천만장의 영상이 올라옴. 자동으로 𝕏 수집 이중 산 영상만 분류 시 𝕐 는 ? 소량의 데이터에만 부류 정보를 부여한 후, 부류 정보가 있는 소량의 데이터와 부류 정보가 없는 대량의 데이터를 함께 활용하여 성능 향상을 모색하는 것
