새소식

인기 검색어

TL

20/07/27 TL Gradient Descent

  • -

오늘 할 일

코세라 week1 끝내기

리액트 섹션1 까지

리액트 스터디

경찰 사격 데이터셋 실습

머신러닝 model, cost function 해석, 정리

 

내일 할 일

연구 인력 활용 보고서 작성

코세라 week2 1강 듣기

리액트 섹션1, 2

피팅룸 기능 구현 구체화(함수 부 라이브러리 찾아보기.)

머신러닝 gradient descent 해석, 정리

자전거 수요 조사 데이터셋 분석

 

-----------------------------------------------------------------------------

 

이번엔 Θ0과 Θ0을 비용함수의 시각화를 위해 만든 것으로 보겠다.

기울기 하강 : 임의의 함수 j의 최소값을 찾기 위해 사용.

기울기 하강은 사실 더 많은 함수에 적용이 가능함. j(Θ0, Θ1)뿐만 아니라,
J(Θ0, Θ1, Θ2, Θ3, Θ4 ... Θn)에도 적용될 수 있다는 소리.

J(Θ0, Θ1)를 최소화
1.Θ0, Θ1의 초기값을 유추. 일반적으로 Θ0 = Θ1 = 0으로 설정해 놓고, 조금씩 바꿔간다.
-> J(Θ0, Θ1)을 조금이라도 줄이기 위해.

등고선으로 본다면, 봉우리에서 어디로 갔을 때, 가장 적은 걸음으로 가장 빨리 내려갈 수 있는지
유추(기울기) => 지역적 최적값을 도출. 시작점에 따라 달라진다. 이 거리를 그래프로 나타낼 수 있음.

Θj := Θj - (α * (δ/δΘj) * J(Θ0, Θ1))
α : 훈련 비율(learning rate). α번 빼라는 의미. α가 크다면, 기울기 하강도 클 것.
:=(assignment) : 할당받는 것을 의미. 할당기호
a := a + 1. a에 a + 1을 할당받는다.
(α * (δ/δΘj) * J(Θ0, Θ1)) : 미분계수

계산할 때, Θ0, Θ1을 동시에 계산한다.
옳은 계산
temp0 := Θ0 - α * (δ/δΘj) * J(Θ0, Θ1)
temp1 := Θ1 - α * (δ/δΘj) * J(Θ0, Θ1)
Θ0 := temp0
Θ1 := temp1

틀린 계산
temp0 := Θ0 - α * (δ/δΘj) * J(Θ0, Θ1)
Θ0 := temp0
temp1 := Θ1 - α * (δ/δΘj) * J(Θ0, Θ1)
Θ1 := temp1

----------------------------------------------------------------------------------

(δ/δΘj)을 기울기로 보는 J(Θ1)그래프에서, 기울기가 양수일 때, Θ1는 양수
Θ1 := Θ1 - α(양수)
기울기가 음수일 때, Θ1는 음수
Θ1 := Θ1 - α(음수)
Θ1에 음수값을 뺀다 => Θ값이 증가한다. => 최솟값으로 가까워진다.

Θ는 α에 큰 영향을 받는다. α가 클 수록 기울기가 커진다.
지역 최솟값에 가까워질 수록, 기울기 변화가 더 작아진다. 즉, 더 적은 거리를 이동한다.

------------------------------------------------------------------------------------

볼록 함수 : 전역적 최적값만을 가지고 지역적 최적값은 가지지 않는다.
전역적 최솟값이 가설과 일치할 때, 자료와 잘 맞아 떨어진다.

batch : 집단 기울기 하강. 모든 훈련예제들의 전체 집단을 나타냄. 합계를 계산하기 떄문.

 

------------------------------------------------------------------------------------

 

--save ~ : ~ 를 package.json 파일에 자동으로 저장해 달라는 의미
import React from 'react'를 모든 컴포넌트에

함수형 컴포넌트 : 함수로 이루어져 있음. 한 함수가 JSX 형태를 반환
클래스 컴포넌트 : 내부적인 정보를 저장할 때 사용.

우리가 생성한 모든 리액트 컴포넌트, 클래스 기반 컴포넌트는 render 메소드로 정의되어야 함.
함수형 컴포넌트로 시작했다가 세부적 기능들을 추가할 때 클래스 컴포넌트로 바꿔주는걸 권장.

state : 사전 형태로 바뀔 수 있는 변수.
props : DOM에서 자식으로 전달할 때 사용. (redux를 사용하면 전역변수로 넘겨주므로
사용할 필요가 없음.)

'TL' 카테고리의 다른 글

20/07/29 TL NormalEquation  (0) 2020.07.29
20/07/28 TL Mutiple variables & Gradient Descent, 현업의 5가지 브랜치  (0) 2020.07.28
20/07/26 TL  (0) 2020.07.26
20/07/25 TL  (0) 2020.07.25
20/07/24 TL 부동산 데이터셋 복습, git 튜토리얼  (0) 2020.07.24
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.