본문 바로가기
개발/PyTorch

[PyTorch] PyTorch로 시작하는 딥 러닝 입문(공부 메모) (05)

by 나만의방식 2022. 3. 23.

소스 : https://wikidocs.net/book/2788

 

PyTorch로 시작하는 딥 러닝 입문

이 책은 딥 러닝 프레임워크 PyTorch를 사용하여 딥 러닝에 입문하는 것을 목표로 합니다. 이 책은 2019년에 작성된 책으로 비영리적 목적으로 작성되어 출판 ...

wikidocs.net

05. 소프트맥스 회귀(Softmax Regression)

세 개 이상의 선택지에서 하나를 고르는 경우(다중 클래스 분류(Multi-Class Classification)) 등에 적용.

예를 들어서 어떤 것들의 여러가지 속성 정보들을 이용하여 분류하는 경우에 적용 할 수 있다.

 

데이터 분석을 통해서 소프트맥스 회귀 모델을 만드는 경우.

 

(구현 방법:Start)

 

0.1. 가설 수립 :

     H(x) = softmax(Wx + b) (H(x):결과값, x:값, softmax:소프트맥스:다중분류 함수, W:가중치, b:편향)

     속성정보로 결과값 예측

0.2. 비용함수 수립 : 평균제곱오차(MSE:Mean Squared Error)

     예측값들과 실제값들을 비교하여 그 차이를 계산한다.

0.3. 옵티마이저 선택 : 경사하강법(GD:Gradient Descent), lr(Learning-Rate)

     비용을 최소화 하기 위해 W와  b를 lr 만큼 조정한다.

 

04. 학습 횟수 : epochs

 

1. 데이터 준비 : 훈련용 Data, 검증용 Data, 테스트용 Data

    x_train : 샘플의 속성들로 구성

    y_train : 결과의 실제 값

 

2. 가설 변수 초기화

   W, b, lr, epochs

 

3. 학습 횟수 만큼 반복 학습

3.1. 가설에의해 결과값 예상 : x_train, W, b -> hypothesis

3.2. 비용함수로 비용 계산 : hypothesis, y_train -> cost

3.3. 옵티마이저로 학습 : cost, lr, W, b -> (new)W, b

 

4. 학습 결과 : W, b

 

5. 검증 : 검증용 Data 사용

5.1. 학습 결과의 W, b를 적용한 가설 함수로 결과값 예측

5.2. 검증용 Data의 실제값과 비교

5.3. 비교 결과 추가 학습 여부 판단.

 

6. 테스트 : 테스트용 Data 사용

6.1. 검증된 W, b를 적용한 가설 함수로 결과값 예측

6.2. 테스트용 Data의 실제값과 비교

6.3. 성공 여부 판단

 

(구현 방법:End)

 

(용어)

One-Hot Encoding : 원핫인코딩 : 데이터의 전처리 과정 등에서 raw data를 가공하는 방법.

    원-핫 인코딩으로 표현된 벡터를 원-핫 벡터(one-hot vector)라고 한다.

 

(참고)

https://tutorials.pytorch.kr/beginner/blitz/tensor_tutorial.html