머신러닝

코변·2022년 5월 12일
0

개발일지

목록 보기
18/41

선형성

선형성이라는 개념을 정확하게 이해하는 것이 어렵다.

그러니까 y = wX + b 라는 수식을 대입해서 생각해보면

일차방정식 그래프로 그림을 다음과 같이 그릴 수 있고



[출처 : 스파르타코딩클럽 nor]
y2 = wx2 + b

y3 = wx3 + b

? = wx4 + b



'위 수식의 값이 자연스럽게 y4가 되기 때문에 예측이 가능하고 선형적이다'

라고 이해를 했고 지금 현재로는 개념의 원리만 이해하고 넘어간 뒤 팀원들과 자세하게 얘기 나눠봐야겠다.

경사하강법

오차값에 대한 설명 중 오차값을 줄여가는 알고리즘에 대해 설명하시던 도중

다음과 같은 그래프가 나왔다.

[출처 : https://towardsdatascience.com/using-machine-learning-to-predict-fitbit-sleep-scores-496a7d9ec48]

cost가 가장 낮아질 때를 찾기 위한 경사하강법 관련 2차함수 그래프


경사하강법이란 내가 이해한 바로 weight 값은 (내가 구하려는 값이 1차함수의 직선이라는 전제 하에) 직선의 기울기이고

컴퓨터에게 우리가 원하는 값은 w이다. w를 통해 최저의 cost값( 예측값, 실제값 의 오차 제곱 )을 구하기위해

컴퓨터에게 편미분을 통한 2차함수 그래프의 순간기울기를 구해 기울기가 0에 가까운 즉, cost가 최저가 되는 값을 구하는 것이다.

나머지 공부

기호님의 optimizer에 대해서

optimizer

optimizer : 손실함수의 최소값을 찾는 최적화 알고리즘

머신러닝, 딥러닝의 성능을 좌우한다.

궁극적인 목표 → 최소의 cost로 결과를 찾아주는 것,
신경망의 모델이 실제 결과와 예측 결과의 차이를 최소화 시키는 것

경사하강법도 optimizer의 한 종류이다.

경사하강법은 데이터 전부를 보고 업데이트를 하는 것이 아니기 때문에

local_minimum(부분 최솟값)에 빠지게 되는 경우가 생긴다.

[출처 : http://www.yaldex.com/game-development/1592730043_ch18lev1sec4.html]

그래서 모멘텀에서는 이를 극복하기 위해서 사용했던 기울기의 일정 %를

넘겨서 현재의 기울기를 더하여 공이 구를 때 마치 가속도를 더한 것처럼

local_minimum을 넘어선다.

현님의 colab에 대해서

12시간의 런타임 제한이 있기 때문에 유의해서 사용해야 한다.

colab의 코드를 깃헙으로 옮길 수도 있다.

공부를 위한 수단으로 사용하는 것이 좋다.

딥러닝용 컴퓨터의 가격은 상상을 초월하는데 저비용으로

잘 공부를 할 수 있을 듯 하다.

현우님의 수업 다시 짚기

csv확장자는 ,로 모든 데이터들이 나눠져 있다.

sequential은 1 대 1일 때 사용되는 함수라고 한다.

dense는 지금 여러 레이어로 작업하지 않기 때문에

하나만 쓰이지만 나중에는 layer를 선언하여

여러 레이어로 사용될 것 같다.

느낀점

우리팀의 배우고자하는 열정은 참 대단하다. 공부를 기획하고 동시에 기획을 공부하기도 하며 함께 배운 것을 나누기 위해서 매 공부 블럭이 끝나고 나면 함께 그에 대한 자신이 공부한 것들을 같이 나눈다. 같이 얘기를 나누다보면 내 머리속에서 평면적이었던 것들이 입체적으로 변하는 것을 느낄 수 있다. 다만 레퍼런스 시간에 틀린 정보를 나누지 않게 조심해야겠다.

profile
내 것인 줄 알았으나 받은 모든 것이 선물이었다.

0개의 댓글