딥러닝 주요 논문 리뷰 시리즈 Deep learning milestone papers review series
통계 공부에 이어 또 캐글 예제나 풀어볼까 하다가, 다시 초심으로 돌아가자는 마음에 딥러닝의 주요 논문들을 뽑아서 읽어보기로 했습니다. GitHub과 웹사이트에서 Arxiv 논문을 찾아, 읽는 김에 요약도 해보기로 했습니다. 자세히 읽지는 않았으니 정확하지 않거나 핵심이 아닌 부분이 있을 수도 있고, 모든 딥러닝의 주요 논문이 있지도 않습니다. 혹시 공부하시다가 놓친 부분을 제 글에서 다시 잡으실 수라도 있으면 저는 뿌듯하겠습니다.
첫 글은 Multitask learning, Transfer learning, 그리고 Adagrad나 Adam같은 여러 경사하강법에 대한 논문들입니다. 머신러닝/딥러닝의 초기 논문들은 1950년대 전후에 나와서 읽기 쉽지 않습니다. 학습하시고 싶은 분들은 단단한 머신러닝 또는 심층 학습 같은 교과서를 먼저 읽고 오시면 좋습니다.
1. MTL (MultiTask Learning)

- Caruana, R. (1997). Multitask learning. Machine learning, 28(1), 41-75.
- Single Task Learning(STL) VS Multi Task Learning(MTL)
- “MTL improves generalization by leveraging the domain-specific information contained in the training signals ofrelated tasks.”
- 형태, 길이, 깊이 등 다양한 요소를 나눠서 학습하기보다 함께 학습하는게 나을 수 있음.
- 하나의 input을 받아 하나의 feature set을 만들되, 여러 output(task)으로 이를 학습함.
- 역전파 시 다른 ANN에서 받아온 추가적인 output을 함께 넣어주면 noise로 작용해서 도움이 됨.
- 또는 gradient를 계산할 때 가중치를 더 알맞게 줄 수 있게 도와줄 수도 있음.
- Feature를 서로 다른 걸 쓰고 싶거나, 각각 다른 가중치를 쓰고 싶다면 사용할 수 없다는 단점.
- 사실 아무도 MTL이라고 줄여부르진 않습니다. 그냥 통일성을 위해 제가 줄임..ㅋㅋ
2. TL (Transfer Learning, review)

- Pan, S. J., & Yang, Q. (2009). A survey on transfer learning. IEEE Transactions on knowledge and data engineering, 22(10), 1345-1359.
- "'Learning to Learn', which focused on the need for lifelong machine-learning methods that retain and reuse previously learned knowledge."
- Low-level feature를 다양한 데이터에 대해 학습한 다음, high-level feature는 목표 데이터로 학습해서 low-level feature에서 배운 지식을 써먹는 방법.
- 단순히 low-level 신경망을 high-level 신경망의 앞에 붙이는 방식으로도 구현 가능함.
- 시간이 오래 걸리거나 feature level 간에 적절하지 않은 정보가 전달되는 부작용도 있을 수 있음.
3. GDO (Gradient Descent Optimization, review)

- Ruder, S. (2016). An overview of gradient descent optimization algorithms. arXiv preprint arXiv:1609.04747.
- 경사하강법(gradient descent algorithm): ML/DL 모두 사용하는 최적화 알고리즘.
- 선형회귀에서 원래 하듯 미분한 뒤 최솟값으로 계산하면, 데이터가 클 때 계산이 오래 걸리므로 경사하강법을 사용.
- 딥러닝에서는 역전파 시 가중치를 업데이트할 때 경사하강법을 사용.
- Batch gradient descent: 한꺼번에 모든 데이터를 계산. 오래 걸림.
- Stochastic gradient descent(SGD): 딱 하나의 데이터만 랜덤으로 뽑아 계산.
- Mini-batch gradient descent: 50개 정도 데이터만 랜덤으로 뽑아 계산.
- Momentum: SGD도 느리다고 생각해서, 진행된 step에 비례해 경사하강 속도를 높여줌.
- Adagrad: momentum을 자주 가는 방향으로 많이 주게끔 최적화.
- RMSprop: 시간이 오래된 momentum의 기댓값을 낮추어 속도가 너무 빨라지지 않게 함.
- Adam: momentum의 평균과 분산을 시간에 따라 조정하여 속도를 조절함.
'과학 > 머신러닝' 카테고리의 다른 글
딥러닝 주요 논문 리뷰 (4) - 이미지 생성 (0) | 2022.12.17 |
---|---|
딥러닝 주요 논문 리뷰 (3) - 이미지 (0) | 2022.12.10 |
딥러닝 주요 논문 리뷰 (2) - 자연어 생성 (0) | 2022.12.04 |
딥러닝 주요 논문 리뷰 (1) - 자연어 (0) | 2022.11.26 |
댓글