인공지능 공부해보겠다고 설레발치기 시작한 것이 어언 2년여가 다되간다.
그간 나름 책도 좀 보고 동영상 강좌도 좀 보고...페이퍼나 논문은 하나도 안보고...ㅠ.ㅠ
그간 읽은 책들과 읽는 중인 책 그리고 읽기 위해 사놓은 책을 좀 정리해보면
읽은 책
읽는 중인 책
읽다가 보류한 책
사놓기만 한 책
하지만 공부를 해 가면 해 갈수록 궁금한 것은 더 많아지고 이제는 과연 내가 뭔가를 이해 하고는 있는 건가 하는 생각에
자괴감이 들기 시작했다. 똑같은 내용을 공부하고 있는데 볼수록 새로운 느낌?
결국 자괴감을 이기지 못하고 처음부터 다시 시작하는 길을 선택했다. 처음 시작부터 이해하지 못하고 넘어간 부분들을
차근차근 정리하고, 이해하고 넘어가야 할 것 같아서...(그런 의미에서 현재 읽고있는 2권의 책은 꽤 도움이 되는 것 같다)
특히나 전반적으로 내용을 이해하지 못하게 하는 주된 이유 중 하나가 어려운 용어들과 복잡한 공식들이기도 하고
머신러닝의 기초가 되는 선형 회귀 등을 제대로 이해하지 않고 겁대가리 없이 덥썩 딥러닝으로 직행한 무모함도 충분히
일조를 했기에 다시 처음부터 하나 하나를 정리하는 것으로부터 시작하기로 했다. 그리고
패배적인 자기 만족일지는 모르겠으나 어차피 이 공부는 내가 이 분야의 전문가가 되기 위한 것이라기 보다는 나의 지적 만족을
위한 것이니 쉬엄쉬엄 간들 어떠랴 싶다. 태공망 여상은 나이 80에 주문왕을 만나 그 재능을 펼치기 시작했다는데 그렇다면
나에게는 아직 30년이란 시간이 남은 것 아닌가(뜻밖의 나이 공개가...ㅠ.ㅠ)
느려도 황소 걸음이랬으니 차분하게 한걸음 한걸음 가보자.
그 시작은 정규 방정식이다.
정규방정식
사실 그동안 비용함수를 최소화 하는 가중치를 찾기 위한 방법으로 경사하강법만을 알고 있었는데 이번에 핸즈 온 머신러닝을
읽으면서 처음 정규방정식이란 것이 있다는 것을 알게 되었다.
문제는 이 정규방적이라는 것이 행렬식으로 표현이 되어있어 문돌이의 사고방식으로는 이 것이 어떻게 경사하강법과 동일한
기능을 하게 되는지 이해가 가지 않는 것이었다. 그래서 새로운 시작의 첫 출발을 단순 선형회귀의 비용함수로부터 정규방정식을
도출하는 과정을 정리해보고자 한다.
선형 회귀 비용함수로부터 정규방정식 도출하기
복습
•선형회귀의 가설함수 식에서 편향을 제거하자. 방법은 그냥 b = 0으로 초기화 하는 것이다.
사전 확인1 - ∑를 행렬로…
1행짜리 행렬로 확인해보자).
사전 확인2–전치행렬의 성질
•최종 정리된 식은 ➀과 같고 이제 이 값을 미분하여비용함수가 최솟값을 갖는 W를 찾을 것이다.
선형 회귀 비용함수로부터 정규방정식 도출하기2
•일단 정규방정식은 좌측의 식으로
알아두자
이렇게 해서 새롭게 시작하는 인공지능 학습의 첫 단추를 꿰었다. 하지만 이렇게 차근차근 분석을 하면서도 여전히
어떤 부분에 대해서는 완전하게 이해하지 못한 채 그저 직관적인 이해로 두루뭉술하게 넘어가고 있는 상황이다.
사실 이러한 상태가 가장 환장하는 상태이다. 전체적인 흐름은 대충 이해가 가는데 어떤 디테일한 부분에서
뭔가 막혀있는 듯한 느낌...
첫 대상인 정규방정식도 정리를 하고 보니 아직은 부족한 상태라는 것을 알게 되었다.
이러한 과정이 큰 도움이 되는 것 같다.
아무튼 이번에는 용어 하나, 공식 하나도 집중해서 보면서 차근차근 진행을 해나가 보자.
머신러닝 reboot는 이제 시작이다!
'Study > 인공지능학습' 카테고리의 다른 글
[머신러닝 reboot] 개념 잡기 : 경사 하강법 2 - step 공식 이해하기 (4) | 2018.12.10 |
---|---|
[머신러닝 reboot] 개념 잡기 : 경사 하강법 1 - 특성의 scale (0) | 2018.11.25 |
소스코드로 텐서플로우 맛보기 : [CNN] CIFAR-10 ~ cifar10_train.py (0) | 2018.02.27 |
소스코드로 텐서플로우 맛보기 : [CNN] CIFAR-10 ~ cifar10.py (0) | 2018.02.20 |
소스코드로 텐서플로우 맛보기 : [CNN] CIFAR-10 ~ cifar10_input.py (0) | 2018.02.13 |