딥러닝 모델: 파이토치(71)
-
Pytorch로 시작하는 딥러닝 입문(01-05 데이터 분리, Splitting Data)
♣ 데이터를 분리하는 방법(독립변수, 종속변수)1. zip 함수를 이용하여 분리하기zip 함수는 동일한 개수를 가지는 시퀀스 자료형에서 각 순서에 등장하는 원소들끼리 묶어주는 역할을 함. 리스트의 리스트 구성에서 zip 함수는 X(독립변수)와 y(종속변수)를 분리하는 데 유용함. 각 데이터에서 첫 번째로 등장한 원소들끼리 묶이고, 두 번째로 등장한 원소들끼리 묶임. 이를 각각 X, y 데이터로 사용 2. 데이터프레임을 이용하여 분리하기 데이터프레임은 각 열에 접근이 가능하므로 이를 이용하면 손쉽게 X 데이터와 y 데이터를 분리할 수 있음 3. Numpy 이용하여 분리하기(slicing 이용) ♣ 테스트 데이터 분리하기이미 X와 y가 분리된 데이터에 대해 테스트 데이터를 분리하는 과정. 1. 사..
2024.01.30 -
Pytorch로 시작하는 딥러닝 입문(01-04 Machine Learning Workflow)
♣ 머신 러닝 워크플로우데이터를 수집하고 머신 러닝을 하는 과정 1. 수집(Acquisition)머신 러닝을 하기 위해 필요한 데이터를 수집하는 과정 2. 점검 및 탐색(Insepction and exploration, EDA)수집한 데이터를 점검하고 탐색하는 단계. 데이터의 구조, 노이즈 데이터, 머신러닝 적용을 위해서 데이터를 어떻게 정제할 지 등을 파악함.탐색적 데이터 분석(Exploratory Data Analysis, EAD) 단계라고도 하는데 독립 변수, 종속 변수, 변수 유형, 변수의 데이터 타입 등을 점검하며 데이터의 특징과 구조적 관계를 알아내는 과정임. 간단한 시각화와 통계 테스트를 진행하기도 함. 3. 전처리 및 정제(Preprocessing and Cleaning)데이터 전처리 ..
2024.01.30 -
AdamW
torch.optim.AdamW(Adam with Weight Decay)는 AdamW의 옵티마이저 구현체로, 파이토치에서 제공되는 옵티마이저 중 하나임. AdamW는 Adam 옵티마이저의 변형으로, 가중치 감쇠를 적용하는 것이 특징임. 가중치 감쇠는 모델의 가중치를 감소시킴으로써 모델의 복잡성을 제어하고, 오버피팅(overfitting)을 완화하는 효과가 있음. torch.optim.AdamW 함수의 기본 형태와 인수들의 기본값 params: 최적화할 파라미터들의 iterable lr: 학습률(learning rate), 기본값은 0.001 betas: 감마 값들 (beta1, beta2)로 이루어진 튜플, 기본값은 (0.9, 0.999) eps: 분모를 0으로 나누는 것을 방지하기 위한 작은 상수값,..
2023.11.12 -
albumentations
albumentations: 이미지 증강을 위한 파이썬 라이브러리 ♣ 이미지 증강 4단계 1. albumentations 및 이미지를 읽는 라이브러리 import 하기 2. 증강 파이프라인 정의하기 3. 이미지 읽어오기 4. 이미지를 증강 파이프라인에 전달하고 증강된 이미지 받기 Step1 Step2 Compose 클래스의 인스턴스를 생성하여 이미지 증강 파이프라인 정의. Compose 클래스의 인수로 적용하고자 하는 증강 목록을 전달해야 함. Compose를 호출하면 이미지 증강을 수행할 변환 함수가 반환됨. 증강 클래스의 인스턴스를 생성하고 증강 매개변수를 전달한 것. Step3 파이프라인은 Numpy 배열 형태의 이미지를 기대함. 컬러 이미지인 경우, 일반적인 RGB 이미지로 빨강, 초록, 파랑 채..
2023.11.03 -
epoch vs 배치 크기 vs 반복 횟수
♣ epoch '훈련 데이터 전체'를 한 번 훑었음을 의미함. 신경망 가중치가 최적화되기에 1 epoch만 훈련해서는 부족함. epoch이 너무 적으면 과소적합, 너무 많으면 과대적합 발생 ♣ 배치 크기 매 훈련 이터레이션에서 한 번에 훈련할 데이터 개수. 배치 크기를 32로 설정하면 훈련 데이터 32개를 한 묶음으로 보고 가중치를 함께 갱신하겠다는 의미임 ♣ 반복 횟수 1epoch의 훈련을 완료하는 데 필요한 훈련 이터레이션을 일겉음. 훈련 데이터 개수를 배치 크기로 나누면 됨(소수점은 올림 처리)
2023.10.22 -
파이토치 튜토리얼
♣ 주제♣ 데이터 작업파이토치에는 데이터 작업을 위한 기본 요소 두 가지인 torch.utils.data.DataLoader와 torch.utils.data.Dataset가 있음- Dataset: 샘플과 정답(label)을 저장- DataLoader: Dataset을 순회 가능한 객체(iterable)로 감쌈. 1. Dataset 내려받기- root: 학습/테스트 데이터가 저장되는 경로- train: 학습용 또는 테스트용 Dataset 여부 지정- download: root에 데이터가 없는 경우 인터넷에서 다운로드함- transform, target_transform: 특징(feature)과 정답(label) 변형을 지정함. 데이터 변형(transform)- 변형을 통해 데이터를 조작하고 학습에 적합..
2023.10.07