1월 달의 마지막 주 정리를 해보자
이번 주 동안 논문 리뷰도하고, 컴퓨터 비전 강의 정리하고, 통계 학습 이론 1강 정리하고, 프로그래머스 시험도 치고, 연결리스트 알고리즘 문제 풀고, 영어 시험도 봤다. 이렇게 보니 뭔가 참 한게 많아 보이네.
우선 지난주 토요일부터 생각해보자 그때 프로그래머스 레벨 2 시험을 봤는데, 2번 정도는 실패하고 3번째 시도에서 통과하기 직전까지 갔었지만 시간 부족으로 한 문제를 통과하지 못하고 말았다. 사실 문제를 풀긴 했는데, 속도 때문에 통과 못한거긴 하지만 이따가 한번 풀어봐야지
이 시험을 보고 나서 논문 리뷰를 했는데, 그 뭐냐.. 초기 딥러닝 모델인 레쿤의 LeNet에 대해서 봤었다. 이 논문에서 완전 연결의 개념과 컨볼루션을 통해 특징들을 추출해내는 내용들이 나왔었던것 같다 잠깐 다시 봤는데 신경망을 구성하는 레이어를 커널로 서브 샘플링하고 컨볼루션 연산하는 이런 내용들이 나왔엇네, 하지만 이 논문에서는 LeNet의 구조에 대해서는 설명하지만 가중치가 어떻게 학습되는지에 대한 내용은 없었다. 일단 오늘이나 내일 시간 날때 역전파에 대한 논문 리뷰를 한번 해야되겟다.
일요일에는 거의 대부분 시간을 저스틴 존슨 교수님의 신경망 강의를 정리하는데 시간을 보냈다. 맨 처음 그동안 공부한 내용들을 배웠는데, 이미지 분류 문제를 풀기위해 선형 분류기를 대수적, 시각적, 기하학적 관점으로 보았었고, 선형 분류기로 입력과 가중치의 선형 결합을 이용하여 출력을 구하였고 이를 비용함수로 어디에 속하는지 찾아냈던것 같았다.
지난 시간 최적화를 공부하면서 가중치를 어떻게 학습하는지 배웟었다 랜덤 탐색 방법에서 시작하여, 경사 하강법에 대해서 배워가는데, 경사 하강법의 단점, 그리고 이를 보완한 SGD, SGD의 노이즈 취약과 지그제그로 수렴하는 문재를 개선하기 위해 모멘텀 개념을 사용했고, 관성에 더 가중을 준 네스트로프 관성이 있었다. SGD에서 모멘텀이 아닌 학습률을 조절하는 방향으로 나온 알고리즘이 Adagrad가 있었고, 이를 개선한게 RMSprop, RMSProp와 모멘텀을 합친 adam 최적화기에 배웟던걸로 정리할 수 있겠다.
이번 신경망 강의에서는 선형 분류기의 단점을 보고, 왜 신경망 모델이 효과적인지 배워보는 시간을 가졌다. 처음에 선형 분류기의 단점과 선형 분리 불가 문제를 풀기 위해 특징 변환의 개념도 보고, 컴퓨터 비전에서 사용하는 특징들이 어떤것들이 있는지 보았다. 대표적으로 이미지 히스토그램, 그라디언트 방향 히스토그램, 단어 사전 등이 있었으며 이를 혼합한 특징이 2000년대 중반까지 많이 사용되고 있엇다고한다.
그러다 2011년 알렉스넷이 등작하면서 딥러닝 기반 방법들이 많이 뜨기 시작했는데, 다양한 특징들을 추출하고, 학습을해서 분류 문제를 해결할수 있었다고 한다. 선형 분류기와 딥러닝 모델의 차이를 보자면 선형 분류기를 이용한 분류의 경우 특징 추출 파트가 나누어져 있어 이 특징 추출 시 소수의 일부 파라미터들만 조절해서 학습시켰다고 한다면, 딥러닝 모델은 학습 모델 전체의 파라미터, 가중치들을 조절시킨다고 이애할수 있었따.
그리고 신경망 구조가 어떻게 되는지, 신경망이 다중 탬플릿을 어떻게 처리하는지, 활성화 함수가 하는일, 뉴런과 비교, 공간 변환을 통한 선형 분리, 규제 강도에 따른 일반화 성능 등을 보는것 까지 정리했었다.
화요일 날의 경우는 알고리즘 공부를 하면서 연결 리스트에 관한 리트 코드 문제들을 풀었다. 처음에 연결 리스트를 오랜만에 보다보니 손에 익지 않아 시간이 좀 걸렸었는데, 나머지 문제들은 첫 문제에 비해 빠르게 할 수 있었다.
수요일에는 내가 뭘했나 생각해보면 통계 자료를 정리했었다. 선형 모델이든 신경망 모델이든 다 통계 기반 학습 모델인데, 이전에 방통대 수업을 들으면서 전반적으로 공부는 했으나 뭔가 시원하게 정리 되지는 않았었다. 그런 이유로 공부의 필요성을 느끼고 있었는데, 다른 분이 이해하기 쉬운 좋은 책을 추천한게 있어서 이걸 번역하면서 좀 공부했다.
이날 본 내용들은 통계적 학습 모델이 무엇인지, 실제 결과가 나오는 법칙 참 함수 true function인 f에 가까운 함수, 추정 함수 f_hat을 구하는 문제이며 이 f를 추정해서 무엇을 할수 있는지 예측과 추론의 관점에서 보았다. 이후 모델 추정 방법에 대해 정리하면서 모수적 방법, 비모수적 방법의 개념을 전부터 알고있었지만 이번에 조금더 명확하게 이해가 되었다. 전에는 모수적 방법을 매개변수를 사용하는 방법이라 생각했는데, 모수적 방법은 그게 아니라 우리가 알지 못하는 문제 f를 특정한 함수 형태, 선형 모델이든, 비선형 모델이든 f_hat일 것이라고 정의하고 접근하는 방법이란걸 말이다.
비모수적 방법은 이와 다르게 함수적 형태를 가정하지 않고 추정 모델을 구하는 방법인데 함수적 형태가 없는데 어떻게 추정 모델을 구한다는 것인가 아직 감은 잘 안잡힌다. 이전에 비모수적 방법으로 k means, 히스토그램, 커널 밀도 추정이 있다는건 봣엇지만, 데이터에 의존하는 방법이기도 하다는건 알겠지만 뒷 부분들을 좀 봐야 될것같다.
수요일에는 여기까지 밖에 못하고, 나머지는 목요일까지 봤는데, 그 외에는 모델 복잡도와 정확도 사이 트레이드 오프 길항 관계, 비지도 학습과 지도 학습이 무엇인지, 회귀 문제와 분류 문제가 무엇인지, 모델 정확도 평가, 편향과 분산(모델 복잡정도?)에 따른 MSE 길항 관계, 분류 문제가 무엇인지 가장 기본적인 베이즈 분류기. 베이즈 분류기는 여러번 봤지만 여전히 햇갈리는게 아까 봣던 실제 모델을 조건부 확률로 표현한걸 베이즈 분류기라고 하는것 같긴 하다. 그거 말고는 자주봤던 최근접 이웃 분류기까지 하고 마쳤다.
목요일에는 통계 자료 본것도 있지만 어제 영어 시험을 봤고, 시험 자체는 망친것 같았는데 생각보다 성적은 잘 받은은것 같더라 IM2, Speaking 6 ! 실제 스피킹을 보면 이만큼 되는것 같지는 않지만..
아무튼 내가 지난 한주 동안 이렇게 보냈고, 이제 뭐해야하나 통계 3강 보고, 딥러닝 6강 보고, 프로그래머스 시험도 쳐보고, 그래도 개념이 정리되는것 같아서 좋긴하다.
아 .. 오늘 비지도 학습에 대해서 공부했는데 그 중에 PCA를 보면서 이전에 공부했던 내용들이지만 잘 생각이 안들더라 선형 대수 이론에 대해서 한번 복습해야지 계속 생각은 했었는데, 그래서 잠깐 찾다보니 다크프로그래머님이 잘 정리해놓으신게 있어서 이걸 보면서 좀 정리해야할것 같다. 밑바닥부터 딥러닝은 글 쓴지 한참 됬는데 아직 까지도 정리 못하고 있는데 언젠간 할수있겟지 모르겟다.
'그외 > 로그' 카테고리의 다른 글
2021.02.04 daily english study log (0) | 2021.02.05 |
---|---|
2021.02.01 daily english study log (0) | 2021.02.02 |
2021.01.28 daily english study log (0) | 2021.01.28 |
2021.01.27 daily english study log (0) | 2021.01.27 |
2021.01.26daily english study log (0) | 2021.01.26 |