2024. 11. 11. 10:14ㆍAI
주제: 딥러닝 모델의 구조와 학습 이해
2024.11.04 - 기본 개념 다지기: 모델과 학습의 기초
- 내용 요약: 딥러닝 모델 구성의 기초인 forward propagation과 backward propagation을 학습하고, 학습에서 중요한 개념인 learning rate 조정과 오버피팅 방지를 다뤘습니다. 특히 linear regression과 nn.linear 모델을 다루면서 기본적인 학습 흐름을 이해했습니다.
- 핵심 통찰: 모델링의 기초를 다지며 개념 이해가 중요하다는 점을 강조하고, 학습률과 파라미터 조정의 미묘한 차이가 성능에 큰 영향을 미친다는 사실을 깨달았습니다.
2024.11.05 - 딥러닝 모델 설계: 모델 구조와 학습의 구체화
- 내용 요약: torch.nn.functional 함수 라이브러리를 학습하며, MLP(다층 퍼셉트론) 구조와 Sequential 및 Subclass 방식을 통해 딥러닝 모델을 정의하는 법을 배웠습니다. MNIST 데이터셋에 대해 분석하고 이미지 데이터의 특성을 다루는 방법에 대해서도 배웠습니다.
- 핵심 통찰: 채널과 픽셀 데이터의 구조에 대한 이해가 중요하며, 모델 구성 시 데이터의 정확한 형태와 특성을 파악해야 함을 인식했습니다. 특히 device 설정과 데이터 로드가 필수적임을 알게 되었습니다.
2024.11.06 - 모델 성능 최적화: 하이퍼파라미터와 활성함수 선택
- 내용 요약: 하이퍼파라미터(lr, batch_size, epochs) 설정이 모델의 성능에 큰 영향을 미친다는 것을 확인했고, cross entropy loss를 이용한 다중분류 학습과 활성화 함수의 선택이 왜 중요한지 이해했습니다. 특히 tanh와 leaky ReLU를 포함한 다양한 활성함수를 배웠습니다.
- 핵심 통찰: 하이퍼파라미터 튜닝이 모델 성능을 급격히 올릴 수 있으며, 다양한 활성함수와 손실함수를 적절히 선택해야 최적의 학습 결과를 얻을 수 있음을 배웠습니다.
2024.11.07 - 데이터 전처리와 데이터셋 구성
- 내용 요약: dataloader와 dataset의 차이와 역할을 익히며, 이미지 처리 라이브러리와 Compose 함수 사용법을 배웠습니다. train, test, validation 세트를 잘 구분하는 중요성에 대해 이해하게 되었고, 이미지넷과 HSV 등 데이터를 다루는 다양한 방법을 공부했습니다.
- 핵심 통찰: 데이터를 모델이 쉽게 이해할 수 있도록 전처리하는 것이 중요하다는 점을 실감했고, 데이터 셋을 세밀하게 구분하는 것이 모델의 성능에 미치는 영향을 깊이 이해하게 되었습니다.
2024.11.08 - 사용자 정의 데이터셋과 모델 파라미터 관리
- 내용 요약: custom dataset을 통해 딥러닝 모델에 맞춘 데이터셋을 구성하는 방법을 익혔고, 파라미터를 효율적으로 저장 및 관리하는 법을 학습했습니다. 또한, 딥러닝의 한계와 인간의 창의적 영역을 인식하는 계기가 되었습니다.
- 핵심 통찰: 데이터셋 커스터마이징과 파라미터 저장이 실무적 응용에서 얼마나 중요한지 배웠고, 새로운 것을 만드는 것은 여전히 인간의 영역임을 생각해보는 기회가 되었습니다.
최종 회고 및 한 줄 요약
이번 주 학습에서 딥러닝 모델을 정의하고 학습시키는 다양한 방법론을 익히며 데이터 구조와 파라미터의 세밀한 조정이 얼마나 중요한지를 깊이 체감했습니다. 딥러닝은 복잡한 이론과 계산이 많은 영역이지만, 기본 원리를 이해하며 접근하면 어느 정도 그 깊이를 파악할 수 있다는 자신감을 얻었습니다.
chatGPT를 활용하며 놀랍다는 생각을 하게 된다. 그동안 배운 내용의 요약과 회고를 작성해 달라고 명령하였는데 위와 같은 산출물을 내주었기 때문이다. 쓰인 글과 편집 방식 등 내가 배워야 할 것이 많은 것 같다. 이와 같은 형식으로 블로그 편집을 해나간다면 가독성에도 좋을 것 같다.
좋은 글을 쓴다는 것이 무엇인지 다시 한 번 생각해 보게 된다.
한 주 간의 회고를 다시금 해보면, 딥러닝 모델이 머신러닝에 쓰이는 다양한 모델들의 중첩이라는 것이 흥미로운 사실이었다. 물론, 노트북 한 대로 돌리기 위해 딥러닝이라고 불리기 민망할 정도로 모델의 개수가 작지만 기본적인 개념을 이해하기에는 충분하였다.
학습을 해나가다보면 모델에 대한 개발도 중요하지만 그에 못지않게 양질의 데이터를 획득하는 것이 중요하게 느껴졌다. 데이터를 갖고 있더라도 그것을 모델에 맞게끔 전처리하는 과정도 중요하게 느껴진다. 이러한 모든 과정을 자동화 및 효율화할 수 있다면 가치가 발생할 것 같다. 또한, 양질의 데이터를 수집하는 일도 중요하다고 느껴진다.
모델을 사용하고, 파라미터를 조정하는 일도 사람의 영역이라고 하는데, 언젠가는 파라미터도 모델과 데이터에 따라 최적의 파라미터를 제시하는 알고리즘, 혹은 이론이 나오지 않을까 생각한다. 왜냐하면 파라미터를 조정하는 것 자체도 일처럼 느껴지기 때문이다. 조금이라도 반복되는 귀찮은 일로 생각되어 자동화를 꿈꾸기 때문이다.
그렇다면 정말 사람들이 원하는 것은 무엇일까? 새로운 것을 원한다고 할 것이다. 그 새로움은 매일의 삶에서 원한다. 단순히 반복되는 것을 일처럼 느끼기 때문이다. 어떤 목표를 향해 계속해서 변해가는 모습을 사람들은 기뻐하는 것이 아닐까? 그렇다면 AI에게 온갖 일처럼 느껴지는 반복적인 것을 맡기고 매일 새로운 것을 도모하는 삶을 산다면 기쁘지 않을까라는 생각을 해보게 된다.
'AI' 카테고리의 다른 글
[플레이데이터 SK네트웍스 Family AI 캠프 6기] 9주차 회고 (11/18~11/22) (2) | 2024.11.25 |
---|---|
[플레이데이터 SK네트웍스 Family AI 캠프 6기] 8주차 회고 (11/11~11/15) (1) | 2024.11.18 |
[플레이데이터 SK네트웍스 Family AI 캠프 6기] 6주차 회고 (10/28~11/01) (3) | 2024.11.05 |
[플레이데이터 SK네트웍스 Family AI 캠프 6기] 5주차 회고 (10/21~10/25) (3) | 2024.10.29 |
[플레이데이터 SK네트웍스 Family AI 캠프 6기] 4주차 회고 (10/14~10/18) (1) | 2024.10.21 |