목록전체 글 (31)
아는 만큼 보인다
2024 회고는 꼭 2024년이 다 지난 후에 적겠다고 다짐해버린 나머지, 2025년을 한 달이나 살고 2024 회고를 적게 되었다. 이런 다짐을 했던 이유는 2023 회고를 적은 날로부터 이틀 후, 가고 싶었던 회사의 최종 합격 소식을 듣게 되었고, 많은 것이 바뀌었기 때문,,ㅎ 2차 면접 때 워낙 털려서 진심으로 떨어졌다고 생각했기에 회고에 따로 적지 않고 이것 저것 반성과 다짐만 했었는데, 감사하게도 합격해서 2024년 1월에 입사해서 새로운 곳에 적응하며 1년을 보냈다! 정말 큰 변화였다. 스타트업에서 대기업게 가게 되어 훨씬 구조화된 조직에 소속되었고, 커머스 분야에서 딥러닝 모델을 개발하는 팀에 합류했다. 새로운 환경에 적응하기 - 일단 머리에 집어넣어라!가장 처음 했던 일은 여러가지 권한..
본 글에서는 transformer 논문을 하나하나 따라간다거나, attention 계산 방식을 나열하는 것 대신, 보다 개념적인 부분을 다루고 뒷쪽으로 갈수록 디테일한 부분에 대한 질문을 던지며 나아가 보고자 한다. Transformer를 다룬 다른 블로그글을 보고 부분 부분은 다 이해를 했지만 전반적으로 정리를 하고 싶은 사람에게 도움이 더 될 것 같다. 개인적으로는 면접 준비를 할 때 이렇게 정리한 게 도움이 되었다. 한가지 팁이 있다면, transformer 구조가 무조건 머리속에 잘 정리되어 있어야 하고 구성요소를 순서대로 잘 설명할 수 있으면 더 좋다. 참고로 차근차근 구현 방법에 대해 이해하고 싶다면 이 블로그를 추천한다. Transformer model Attention mechanism만을..
2022년을 건너뛰어 2023년 회고를 작성해야하는 시기가 오게 되었다. 무려 2022년 회고를 작성하겠다고 결심하고 1년이나 지난 셈이다 ^^. ;; 이번 회고는 더욱 진솔하게 써보고자 한다. 2022 회고 2022년 상반기, 격동의 시기. 연구자에서 직장인(?)으로 진화하기 전... 2022년은 그야말로 격동의 시기였다. 2022년 1월 즈음, 심리학 박사과정을 하지 않기로 결심하고, 교수님과 기나긴 면담을 하고, 2022년 상반기까지는 연구실에 남아 연구를 마무리하기로 하고, 3월에 생애 첫 학회 포스터 발표를 위해 포르투갈도 다녀오고, 6월엔 투고도 하고, 6월 30일을 마지막으로 정 들었던(?) 연구실을 떠나 2022년 8월 현재 회사에 입사하고.... 매우 압축적이고 바쁘고 정신적으로도 힘든 ..

Multi-processing과 multi-threading은 일종의 멀티태스킹을 달성하기 위한 두가지 다른 방법이라 할 수 있다. 한 번에 하나의 일만 해야 한다고 생각하면, 모든 작업들은 너무 느려질 수 밖에 없다. 이 둘은 어떻게 다른가? 보다 깊은 이해를 위해 작은 개념부터 시작해보려 한다. 1. Process vs Thread Process 운영 체제로부터 시스템 자원을 할당받는 작업의 단위, 실행되고 있는 컴퓨터 프로그램의 instance (an instance of a program that is being executed). 하나의 cpu는 한번에 한개의 process를 실행시킨다. 할당받는 시스템 자원의 예시로, 독립된 메모리 영역(code, data, stack, heap), 운영되기 ..
# TODO: 예시 추가, iterator 추가 1. 개념 - Iterator를 쉽게 만들 수 있게 해주는 개념/클래스이다. - Iterator란 무엇인가? iteration을 통해 값을 하나씩 반환하게 해주는 object (좀 더 공부해서 추가 예정!) - 기본적으로 iterator를 만들 수 있게 해주는 것으로, generator는 iterator이기도 하다. 그리고 iterator의 장점을 공유한다. - iterable한 순서가 지정되면 느슨하게 평가(lazy evaluation)되어, 필요에 따라 순서의 다음 값이 계산되는 방식으로 작동한다. - 이에 무한한 순서가 있는 객체를 메모리의 부담 없이 모델링할 수 있게 된다. - 즉, 필요한 값들을 모두 메모리에 들고 있는 게 아니라 필요할 때 꺼내쓸..
- 문제 상황 - 해결한 방법 - 내가 기여한 부분(기술, 기술 외 파트 따로) - 제일 고민했고 어려웠던 점 - 아쉬웠던 점, 다시 한다면? - 협업 했던 방법? - 왜 A는 잘 안됐고 B는 잘 되었을까? (e.g., 왜 DenseNet은 잘됐고 CNN은 잘 안됐을까) --> why에 대한 생각을 많이 할 것 - lesson 정리. 이번 프로젝트를 통해 배웠던 점들을 정리, 가장 많이 배웠던 점도 추가로 정리 - fact & lesson으로 정리 시도

이번 POC에서 생각보다 퍼포먼스가 좋았던 MobileNet 시작! 그냥 비교용으로 구축해봤을 뿐인데 생각보다 잘해서 좀 놀라웠다. MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications [Link] MobileNet이 해결하고자 하는 문제, MobileNet의 동기 딥러닝 모델 분야에서는 일반적으로 더 깊고 복잡한 네트워크를 이용해 더 높은 정확도를 얻고자 한다. 그러나 이러한 방향은, 모델 크기나 속도를 고려했을 때 모델을 항상 더 '효율적(efficient)'으로 만들어주진 않는다. 그러나 실제 real-world application을 고려하면, 높은 정확도를 '빠르게', '작은 모델로' 달성하는 것이 중..
네? 제가 할까요? 네! 제가 해볼게요! 역시 스타트업의 꽃말은 '인재 즉시 투입'이다. 비트 분류 프로젝트가 끝나고 슬슬 리듬 분류 프로젝트 POC를 하며 천천히 준비하던 시기였는데, 다른 쪽에서 일이 터져서 AI팀의 손이 부족한 상태였다. 또 한편으로, 뭔가 나도 주도적으로 하면 해볼 수 있을 것 같다는 아주 무모한 자신감이 생겼다! 그래서 자의 반 타의 반으로 내가 리듬 분류 모델 개발 프로젝트를 주도하게 되었다. (사실 스스로 욕심을 낸 것도 있어서, 내가 나서서 데이터셋도 준비하고 학습도 미친듯이 돌리고 있으니까... 내가 주도적으로 할 수 있게 해주셨다. 그리고 배포 준비하는 것도 괜히 내가 하고 싶어서 내가 호다닥 해버렸다.) 이전 비트 분류 프로젝트가 하나의 심장 박동을 분류하는 모델을 개..