티스토리 뷰

동아리 활동

딥러닝 기초 간단 정리

떡잎몬 2018. 6. 1. 19:07
반응형

선형회귀 (Linear Regression)에 대한 코드 분석은 이전 글 참조 : http://cotyledon-it.tistory.com/14


1. 머신러닝의 대표적인 방법론 3가지

Supervised Learning (지도학습)

데이터에 대한 레이블(명시적인 정답)이 주어진 상태에서 컴퓨터를 학습 시키는 방법론

예시 : 그림을 학습시켜 숫자 맞추기

Unsupervised Learning (비지도학습)

데이터에 대한 레이블(명시적인 정답)이 주어지지 않은 상태에서 컴퓨터를 학습시키는 방법론

예시 : 무작위 분포된 데이터를 비슷한 특징으로 묶는 클러스터링 

Reinforcement Learning (강화학습)

에이전트가 주어진 환경에 대한 행동을 취하고 보상을 얻을 수 있도록 학습시키는 방법론

예시 : 알파고

2. Hypothesis (가설)

학습된 데이터로 인한 결과값과 실제 데이터 값의 오차가 가장 적은 값을 나타내는 최상의 Weight , Bias 값을 구하는 것

선형회귀의 경우, 

H(x) = Wx + b

라는 식으로 가설을 정의 할 수 있다.

3. Cost Function(손실함수)

여러 가지의 가설들 중, 가장 적합한 최상의 가설을 찾기 위해 만들어진 개념으로, 가설에서의 예측값과 실제값의 오차를 구하는 함수이다. 
일반적으로 Cost Function을 구하기 위해서는 가설과 실제값 중 어느것이 더 클지 모르기 때문에 두 값의 차를 제곱하여 부호를 없앰과 동시에, 오차가 클수록 값을 더욱 불려나가 일석이조의 효과를 노린다.

4. Gradient Decent Algorithm (경사하강법)

Cost Function을 최소화 시키는 과정에서, 일반적으로는 미분을 이용하게 되는데, 기울기의 최솟점을 찾기 위해 경사 하강법이라는 알고리즘을 사용한다. tensorflow 함수 기준으로 learning_rate 라는 값을 필요로 하는데, 이는 한번 (1 step)에 변화시킬 수 있는 값의 대역폭을 말한다.
Cost 함수의 값이 최소가 되는 Weight 값과 Bias 를 찾는 가장 이상적인 그래프는 다음과 같다.

경사하강법은 이러한 곡선 그래프에서 가장 낮은 부분을 찾기 위한 최적화 방법중 하나이다. 
이 방법의 단점은, 위와 같이 그래프의 움푹 파인 부분이 하나면 상관없지만, 그렇지 않고 중간중간에 파인부분인 두개 이상인 경우, 오판을 할 확룔이 생긴다는 점이다. 이를 해결하기 위해서 그래프를 볼록하게 만들기 위한 다양한 방법들이 사용되곤 한다.


5. Softmax Function 

직선함수보다 유연하게 만들기 위해 사용하며, 대표적으로는 Sigmoid 함수를 사용하고, 그래프가 마치 S자 모양처럼 보이곤 한다.
시그모이드 함수를 사용하면, 결과값은 무조건 0에서 1 사이가 나오게 된다.


6. Normalization (정규화)

주어진 데이터가 너무 크거나 작을경우, 예측이 힘들어 질 수 있다. 이를 위해서 예측을 보다 쉽게 하기 위해 정규화 과정을 통해 적당한 크기로 입력데이터의 값을 바꿔줄 수 있다.


반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
아카이브