딥러닝
-데이터 전처리가 필요하다.
Null값 조치, 더미변수화, 정규화, 데이터 분할
텐서로 변환, Data Loader(train set) 으로 변환
-모델링에서는 손실함수, Optimizer, 모델 설계, learning rate에 대한 검토가 필요함
Data Loader : Batch size 만큼 쪼개서 데이터를 제공한다
Feed Forward : 예측하고, 오차를 계산 / Back propagation : 가중치를 조정
과적합을 막는 수단들
-Epoch, learning rate
-hidden later, node 숫자들
-Early Stopping : val error이 이전 최소 val error 보다 계속 높아지는게 일정 횟수 반복되면 학습 종료
-Dropout : hidden layer의 노드 중 일정 비율을, 학습 과정에서 임의로 제외시키는 것
cf) 노드 수를 직접 줄이는 것과는 다른 이야기임!
클래스로 모델을 생성 및 선언
모델로 하는 것보다 유지보수 측면 및 복잡한 모델 생성시 좋음
-nn.Module 을 상속, __init__() 해당 괄호 안에 입력받을 변수 넣어줌 -> def __init__에는 레이어 층을 선언해준다.
cf) 각 hidden layer 는 중복되는 것 처럼 보여도 각각 다 선언해줘야 함!
-def forward 안에 실제 층을 쌓는다.
이미지 처리 CNN
특징을 추출하고, 분류 및 인식을 하는 과정
1. input shape : 이미지를 투입
2. Convolutional Neural Network : feature을 추출
nn.Conv2d를 사용, kernel_size(커널사이즈), stride(필터가 움직이는 간격), padding(테두리 덧대기=사이즈 동일하게 만듦) 옵션을 조절해준다. padding option으로 크기 유지시킬수도 있음
3. MaxPooling : Pooling 을 통해서 압축시켜준다.
nn.MaxPool2d를 사용, kernel_size, stride 옵션을 조절해준다.
4. Flatten 이후 Dense Layer에 연결 : nn.Flatten() 이후 nn.Linear() 로 연결!
'Bootcamp > KT aivle school' 카테고리의 다른 글
딥러닝을 배웠어요 (0) | 2025.04.11 |
---|---|
python & 딥러닝 (0) | 2025.04.10 |
4.7 딥러닝 모델링 (0) | 2025.04.07 |
4.3 kt 에이블 스쿨 7일차 - 머신러닝, 코딩테스트 풀이 (0) | 2025.04.03 |
04.02 kt 에이블 스쿨 6일차 이변량 분석 (0) | 2025.04.03 |