본문 바로가기
ETC

[머신러닝 앤드류응] (Week3) 2. Logistic Regression Model (3) 심화 최적화

by bigpicture 2021. 6. 11.
반응형

앤드류 응 교수님의 코세라 머신러닝 강의를 요약하는 글입니다. Week3 의 상세 목차는 아래와 같습니다.

Week3 목차

1. Classification and Representation (분류와 설명?)
2. Logistic Regression Model (로지스틱 회귀 모델)
3. Multiclass Classification (다항 분류)
4. Solving the Problem of Overfitting (과적합 문제 해결)

 

이번 글은 Week3의 1강인 Classification and Representation (분류와 설명?) 요약입니다.

 

2. Logistic Regression Model

(1) Cost Function
(2) Simplified Cost Function and Gradient Descent
(3) Advanced Optimization

(3) 심화 최적화

 

$\theta$를 찾는 알고리즘의 해를 구하는 방법은 경사하강법만 있는게 아닙니다. 

 

다른 알고리즘에 대해 자세히 설명하지는 않았습니다. 다른 알고리즘의 장점은 $\alpha$를 입력하지 않아도 된다는 것, 속도가 경사하강법보다 빠르다는 것입니다. 단점은 복잡합입니다.

 

간단한 예시를 풀어봅시다.

 

위 그림의 오른쪽은 옥타브 코드입니다. costFunction 이라는 함수를 정의해줍니다. $\theta$를 입력하면 비용함수와 비용함수 편미분값을 반환하는 함수입니다. 코드는 아래와 같습니다.

 

function [jVal, gradient] = costFunction(theta)
  jVal = [...code to compute J(theta)...];
  gradient = [...code to compute derivative of J(theta)...];
end

 

아래가 최적화 실행코드입니다. 

 

options = optimset('GradObj', 'on', 'MaxIter', 100);
initialTheta = zeros(2,1);
[optTheta, functionVal, exitFlag] = fminunc(@costFunction, initialTheta, options);

 

 

반응형

댓글