DataParallel, DistributedDataParallel)PyTorch의 Tensor연산, 학습 방법, Dataset/DataLoader, 다중 GPU 환경 학습, 하이퍼파라미터 튜닝 등 PyTorch와 관련된 전반적인 내용을 배웠다.
Tensor 연산은 몰랐던 여러 연산이 있었고, 특정 연산이나 함수가 기억나지 않을 때 공식 문서를 어떻게 봐야 할 지 알 수 있었다.
이전에 DataParallel, DistributedDataParallel과 관련해 type hinting관련으로 개인적으로 작업한 적이 있었는데, 그 당시에는 이 두 클래스가 무슨 역할을 하는 지 몰랐었지만, 이번에 Multi GPU환경에서 사용된다는 것을 배울 수 있었다. 이후 여건이 된다면 GCP 등에서 multi gpu환경 instance를 만들어 직접 사용해 볼 예정이다.
또한, wandb, ray와 같은 이름만 알고 있던 도구들에 대해서 알 수 있었고, 추후 프로젝트에 활용할 수 있도록 더 공부할 예정이다.
이번 주차는 강의와 과제를 빨리 끝내는 바람에 목요일 쯤 부터는 코어타임 때 공부를 제대로 하지 않은 것 같다. 3주차부터는 다시 열심히 해야겠다고 마음을 다잡야야겠다.
2주차부터 AI 분야 관련 기술면접 질문 중, 몇 가지를 정해 매일 답변을 해보는 시간을 가졌다. 처음 질문을 봤을 때는 대략적으로만 알던 내용들을 질문을 대답하기 위해 여러 자료를 찾아보니 훨씬 더 공부가 되는 좋은 활동이었다.
다만, 진행 방식에 있어서는 다르게 진행했으면 좋겠다는 말이 나와 3주차부터는 각자 돌아가면서 한 질문에 대해 답변하고, 나머지 팀원들이 해당 답변에 의견을 덧붙이는 식으로 진행하기로 결정했다.
(그리고 2주차가 되니 팀원들과 더 친해져서 좋았다)
이번 시간에는 수학적 관점으로 딥러닝의 여러 부분을 어떻게 보는지 설명해주셨다. 특히, parameter를 통계론적 관점에 대해서 설명하시고, 데이터와 가중치가 왜 vector로 표현되며 그 계산은 matrix를 쓰는지 설명해 주셔서 좀 더 수학적인 내용에 대해 고찰해 볼 수 있었다.
다음 주에 멘토님께서 직접 논문 리딩을 하실 예정이어서 그 이후로 내가 논문 읽는 데에 많은 도움이 될 것이라고 기대하고 있다.
논문 읽기 전, 다른 사람의 논문 리뷰를 본 다음 논문을 읽는 것을 권장하셨는데, 지난 주차 마스터클래스 내용과 상반되어서 좀 놀랐다. 아마 여러 방법을 시도해보면서 나한테 잘 맞다고 생각하는 방법을 선택하는 것이 중요할 것이다.
최성철 마스터님께서 진행해주셨다. 저번 주가 수학과 관련한 이야기였다면, 이번주는 코딩 쪽과 관련한 이야기었던 것 같다. 최근에는 이미 높은 성능을 달성한 모델이 많아 새로운 모델을 연구하고 개발하는 것은 소수의 전문가가 이끌어나가고, 현업에서 AI 분야 일을 한다면 단순히 모델 구현이나 사용을 넘어서, 네트워크, 데이터 처리, 클라우드 등 다양한 분야에 발을 걸쳐야 한다고 설명하셨다.
나 또한 논문 읽기, 모델 구현과 더불어 네트워크 부분, SQL, Docker/k8s 등을 공부해야 되겠다고 느낄 수 있는 시간이었다.