분류 전체보기68 [딥러닝 기초] 전이 학습 (Transfer learning) 1. 전이 학습 2. ImageNet 3. 레이어 동결 4. 사전학습 모델 선택하기 5. 모델 저장과 불러오기 5.1. PyTorch 5.2. Tensorflow 1. 전이 학습 (Transfer learning) 성능 좋은 딥러닝 모델을 만드는 데는 많은 데이터와 그 데이터를 감당할 만한 큰 모델을 필요로 합니다. 그러나 대부분의 일반인들이 이 많은 데이터와 모델을 학습시키기에는 컴퓨터 성능이 부족할 겁니다. 설령 컴퓨터 성능이 받쳐준다고 할지라도, 그 많은 데이터를 학습 시키는데 시간이 너무 오래 걸립니다. 딥러닝 모델을 만들 때마다 이 만큼의 자원과 시간을 소모하는 것은 매우 힘든 일이겠죠. 그래서 이렇게 큰 시간을 들여서 미리 학습한 모델을 가져다 쓸 수는 없을까 하는 생각을 하게 됩니다. 이렇게.. 2023. 6. 19. [딥러닝 기초] Overfitting과 모델 규제(regularization) 1. Overfitting (과적합) 2. Regularization (모델 규제) 2-1. L2 regularization 2-2. L1 regularization 2-3. Regularization이 효과 있는 이유 2-4. Dropout 3. EarlyStopping (학습 조기 종료) 4. Data Augmentation 5. 실험 5-1. Regularize 실험 5-2. Data Augmentation 실험 6. 마무리 1. Overfitting (과적합) 인공지능 모델링은 모델을 주어진 데이터들에 맞추는(fit) 과정이라고 볼 수 있습니다. 잘 학습된 모델은 주어진 데이터셋에 있는 통계적인 경향성을 잘 반영한 모델이라고 볼 수 있을 것입니다. Overfitting(과적합)은 모델이 훈련 데이.. 2023. 6. 14. Learning Transferable Visual Models From Natural Language Supervision 이미지와 텍스트를 함께 학습하는 멀티 모달에 대해 궁금하던 차에 본 논문을 읽어보게 되었습니다. 일단 논문 내용이 완전히 이미지와 텍스트 사이의 관계에 대해서 다루는 내용은 아니었습니다. 그보다는 "비전 영역에서 언어 모델의 특징과 장점들을 활용할 수 있는 방법이 없을까?"에 관련된 내용입니다. 기대했던 내용은 아니었지만, 꽤 흥미로운 주제인 것 같아서 읽고 리뷰해보게 되었습니다. (논문이 굉장히 길기 때문에 제가 흥미 있거나 중요해 보이는 부분들 위주로 작성했습니다. 때문에 논문의 전체 내용을 정리하지는 않았다는 점... 유의해 주시기 바랍니다.) 목차 1. 배경 소개 2. CLIP 모델 구조 3. 데이터셋 4. 실험 결과 4.1. Zero-shot Transfer 4.2. Zero-shot CLIP .. 2023. 6. 8. [딥러닝 기초] Recurrent Neural Network (RNN) Sequential data Sequential data란, 순서가 있는 데이터를 말합니다. 앞의 정보가 뒤의 정보에 영향을 미치는 인과가 존재하는 것입니다. 예를 들면 사람이 하는 말, 기상 예보, 웹 로그 분석에 사용되는 데이터들을 말합니다. 이런 데이터들을 제대로 처리하기 위해선 모델로 하여금 순서에 대한 정보를 처리할 수 있게끔 하는 과정이 필요합니다. 일기 예보를 예로 들면, 지난 데이터들을 봤을 때 어느 시기에 온도가 하락했고, 어느 시기에 온도가 상승했는지를 알아야 올해에도 어느 시기에 온도가 하락하고 상승할 지를 예측할 수 있을 것입니다. 그러나 지금까지 살펴봤던 DNN이나 CNN 모델은 이런 순서에 대한 정보를 고려하는데 한계가 존재합니다. 위와 같이 DNN은 모든 뉴런끼리 연결하는 과정.. 2023. 5. 31. [딥러닝 기초] Convolutional neural network (CNN) Dense layer(Fully connected layer, Linear layer)는 딥러닝 모델로서 훌륭한 성능을 보여줍니다. 특히 이들의 차원 수를 늘리거나 깊이를 늘리는 방식으로 그 성능을 더 높일 수 있었습니다. 그러나 dense layer는 깊게 쌓을수록 파라미터 수가 기하급수적으로 증가하고 이로 인해 메모리 증가, 학습 속도 저하 등의 문제가 생길 수 있습니다. 간단히 256차원의 dense layer를 5개만 쌓더라도 파라미터 수가 $256^5$개로 감당할 수 없는 숫자가 됩니다. '좀 더 효율적으로 파라미터를 사용할 수는 없을까?' 해서 등장한 것이 convolution layer입니다. 기존의 dense layer가 모든 input 값마다 서로 다른 파라미터가 관여하는 구조라면, co.. 2023. 5. 23. [딥러닝 기초] 활성화 함수 (Activation function) 활성화 함수의 필요성 딥러닝 모델의 성능을 높이는 방법 중 하나는 레이어의 깊이를 늘리는 것입니다. 위 그림의 모델 수식은 아래와 같이 쓸 수 있습니다. $$ y=w_3(w_2(w_1x+b_1)+b_2)+b_3=w_3w_2w_1x+w_3w_2b_1+w_3b_2+b_3 $$ 그러나 이 모델을 자세히 본다면, 사실상 weight가 $w_3w_2w_1$이고 bias가 $w_3w_2b_1+w_3b_2+b_3$인 하나의 뉴런으로 이루어진 모델과 같다는 걸 알 수 있습니다. 즉, 뉴런을 아무리 깊이 쌓아봤자 사실상 뉴런 하나짜리 모델과 크게 다르지 않게 되는 것입니다. 이를 해결하기 위해 사용하는 것이 '활성화 함수(activation function)'입니다. 앞서 봤듯이, 선형 함수(wx+b와 같이 그래프 형태.. 2023. 5. 17. 이전 1 ··· 5 6 7 8 9 10 11 12 다음