머신 러닝 1일차
오늘은 머신러닝 1일차이다
오늘 배운 내용들을 요약해보도록 하자
머신 러닝에서 알아야 할 점!
- 머신러닝에서 모든 문제는 가설이 있어야만 풀 수 있다
- 인공지능은 가설에 맞추어 문제를 풀도록 학습시키는것이다
- 앞으로 배울 머신러닝과 딥러닝의 기본 구조는 1차 선형 함수에서 시작한다 ( H(x) = Wx + b )
용어 모음
- 손실함수(cost or loss function): 점과 직선의 거리(정답과 지금 나의 값의 거리)
- learning rate: cost가 전진하는 단위 ( 예) 10씩 갈까? 100씩 갈까? )
- optimizer: 최적화 방법중 하나
- overshooting: learning rate가 지나지게 커 최소값을 지나쳐 진동하다 발산한 경우
- global cost minimum: 전체에서의 최소값
- local minimum: 특정 부분에서의 최소값
머신러닝에서 문제를 풀때 해답을 나타내는 방법 2가지
- 회귀 문제: regression - 연속적인 문제 예측
- 분류 문제 : classification - 비 연속적인 문제 예측
분류 문제에서도 2가지로 나뉜다
1. 이진 클래스: 출력값이 0,1로만 나온다
2. 다중 분류: 출력값이 2가지 이상으로 나온다
*회귀, 분류 문제중 어느 문제로 풀지는 input, output 값을 정의하고 값에따라 다르다
머신러닝의 3가지 학습방법
- 지도 학습: supervised learning - 정답값을 준다(이건 사과야)
- 비 지도 학습: usupervised learning - 정답값을 주지 않는다
- 강화 학습: classification
강화학습의 개념을 5가지를 바둑으로 예를 들어 설명하자면?
1. 에이전트: 자신 (바둑을 두는 사람)
2. 환경: 게임 환경 (바둑의 룰: 한번에 두개의 돌은 못둔다 바둑판의 길이는 한정적이다)
3. 상태: 상태 (바둑돌은 현재 어디어디에 놓여있다)
4. 행동: 행동 (나는 지금 바둑돌을 이곳에 두었다)
5. 보상: 보상 (좋은곳에 바둑돌을 두어 좋은 점수 보상을 받는다)
선형 회귀: linear regression
선형 회귀란 모든 문제는 선형으로(직선으로 표시 가능하다) 풀 수 있다고 가정 하는것에서 부터 시작한다
linear regression을 풀기 위해서는 정답값이 있어야 한다
선형 회귀는 예측하는 방법중 하나로 선형적으로 어떤 그래프에서 하나의 직선만을 그려 그 직선을 통해 예측한다
예) 정답값 = 시험 점수
커피를 한 잔 마실때마다 시험점수가 10씩 늘었다 그러면 5잔을 마시면 50점이 늘어날 것이다
수식의 값을 정의하는건 사람의 일
선형 모델의 수식: H(x) = Wx + b
의미를 적자면 W = weight, b = bias W와 b 모두 행렬 형태(매트리스)이다.
cost function 수식: cost = ……..복잡해서 안 적어
* 엔지니어의 역할: 어떤 가설이 좋고 어떤 손실 함수가 좋을지를 여러 반복을 통해 찾는것
다중 선형 회귀란?
입력 값이 2개 이상이다
수식에서 ‘x’의 갯수만 늘어난다
경사 하강법
learning rate의 단위에 따라 학습 시간이 결정된다 적절한 단위를 설정해야 하며
시간 줄이자고 빨리하면 overshooting이 발생한다
데이터셋
데이터셋 분할은 3가지로 나누어져 있다 의미는 이름 그대로이다.
- 학습(training set)
- 검증(validation set)
- 테스트(test set)
3가지로 나누어 프로젝트를 해야 문제가 날 확률이 줄어든다