본문 바로가기

Deep Learning Study

Paper 구현하고 싶다. #0 기초 다지기 (학습계획)

728x90

1. 계기

로봇 분야 잘하다가 뜬금없이 스마트 공정 쪽으로 간 것처럼 보이는데,

 

사실 난 그냥 현실이 수치화 돼서 내가 계산한 대로 이뤄지는 것 자체가 행복하다.

 

근데, 막상 머리로는 전체 시스템이 얼핏 그려지는데

그 디테일들이 그려지지 않는게 항상 아쉬울 따름이었다.

 

머릿속에서는 a + b + c 해서 내가 원하는 task를 어느 정도 완성시키게 된다.

문제는, '안심하고 쓸 수 있음'이라는 키워드를 붙이기엔 나 스스로 미심쩍은 부분도 많고,

대부분을 경험에 의존하는 경우가 많았다.

 

만일 나보고 내가 만든 비행기 타라고 하면

나는 양손과 양 주머니에 섭섭하지 않게 리튬배터리를 가득 채우고,

공항 검사대에 들어가 부적격 판정을 받을 생각이 있다.

 

잡담은 그만하고, 이번 프로젝트를 통해 내가 얻고자 하는 것은 아래와 같다.

  1. 수학적으로 접근하기
  2. 다양한 라이브러리 체험하기
  3. 좀 더 나은 알고리즘 탐방하기
  4. 논문에 나오는 약자, 명칭들 숙지하기

그리고 위 과정을 통해 궁극적으로 하고자 하는것은 바로

논문 읽고 코드로 바로 구현하는 과정

을 중장기적 목표로 삼고자 한다.

 

로봇은

HW부품이 늦게 와서... , 한국에 팔지 않아서... , 금전적 여유가 없어서...라는 핑계(실제로 한말)가

가능한 반면 이번에 도전하는 task는

 

개인의 단순한 성실도 문제로 이어질 수 있으므로,

대외적으로 알려 나의 성실함을 채점받고자 한다.

 

말만 번지르르한 사람이 되는 것만큼 창피한 것도 없는 게 사람 삶인 만큼,

어디 가서 부끄럽진 않게 반년 계획으로 삼아서 이번 7월 전까지 실력을 쌓아보자.


2. 스케줄

그래서 결국 도전하고자 하는 Documetation은 Uva 되시겠다.

 

Welcome to the UvA Deep Learning Tutorials! — UvA DL Notebooks v1.2 documentation

For this year’s course edition, we created a series of Jupyter notebooks that are designed to help you understanding the “theory” from the lectures by seeing corresponding implementations. We will visit various topics such as optimization techniques,

uvadlc-notebooks.readthedocs.io

그림 1. 공부 모음집

 사실 공부하고 싶은 것들이 굉장히 많은 편인데, 몸이 한 개인 게 아쉬울 따름이다. 

 

 그간 3주 동안 공유해도 좋은 자료인가 판단하기 위해 퇴근하고

혼자서 Tutorial 4: Optimization and Initialization까지

매일매일 꾸준히 독서실에 가서 코드를 따라 해봤는데,

 

 이 문서 매력 있다.

 

 참조 논문도 명확하고, 알고리즘도 신박하고,

여러모로 표기되지 않은 지식들도 찾기 편하게 명칭들이 잘 적혀있다.

 

 대부분이 영어인 점이 자료 공유자 입장에서 미안하기도 하지만,

코딩을 잘하고 싶었고 나와 관심사가 맞아서 이 사이트에 들어왔다면,

 

억지로라도 영어를 하는 걸 추천한다.

애초에 영어로 코딩하니까 반박 시 코알못

 

 아무튼 이번 1월 스케줄은

Pytorch를 활용하여 Tutorial 7 GNN까지 끝내 보고 싶은 마음이다.


3. 어려운 부분 예상

사실 직접 해보니까 Tutorial 3에서 수학적으로 이해하는데

한세월이 걸려서 애좀 많이 먹었다.

 

더군다나 AI를 다루시는 분들에게 여쭤봐도 애매한 구석이 한두 개가 아니지만,

ChatGPT라는 마법의 소라고동님께서 얼추 알려주시니

너무 겁먹지 말고 차분하게 도전하면 된다.

 

이번 달 내로 쭉 나갈 수 있을지 의문이긴 하다,

개인적인 예상치로는 Tutorial 4까지 끝내고 나면

일사천리로 쭉쭉 가지 않을까 싶기도 하다.

 


4. 결론

 사실 현업에 쓰일만한 시계열 데이터 신경망을 다루고 생산 스케쥴링에 적용된, Graph Nerual Network(GNN)을 배우고자 자료를 물색했었는데,

 

생각보다 주변인들도 코딩에 관심이 많아서 복습도 할 겸 겸사겸사 글을 올리게 됐다.

 

 오랜 숙원 중에 하나였던, 논문의 Algorithm 파트만 읽고 코드 짜기를 언젠간 이룰 수 있다는 마음으로

내 커리어를 위해서라도 끊임없이 노력해서 이번 연도 최고의 스펙으로 남겨보고 싶다.