
필터를 이미지에 적용하여 슬라이딩
필터가 이미지의 각 위치 위를 슬라이드하면서,
필터와 이미지 패치 간의 내적(Dot Product)을 계산
커널 형식의 계산 -> 커널이라는 구조의 Weight를 학습
우리는 Convolution Layer를 통해 Activation Map을 쌓아나간다
Stride는 얼마만큼 계산을 할 것인가? -> 1칸씩 할까? 2칸씩 할까?
패딩은 가장자리에 값을 추가하는 것이다 -> 대체로 0이나 평균값을 추가한다
nn.Linear,torch.nn.functional
-> 신경망에서 자주 쓰이는 다양한 함수형 API를 제공하는 모듈
ex) F.relu
log_softmax -> 신경망의 출력 값을 확률 형태로 변환하는 데 사용
주로 분류 작업에서 출력층에 적용되어 각 클래스에 대한 로그 확률을 계산
소프트맥스는 각 클래스의 원시 값을 확률로 변환
시퀀스 데이터란 시간적 또는 순서적 연속성을 가진 데이터
특정 순서에 따라 발생하며, 각 요소가 이전 또는 다음 요소와의 관계에 영향을 받음
순서 의존성 ; 시퀀스 데이터는 각 요소의 순서가 중요
시간성 연속성 : 시계열 데이터의 경우, 시간이 지남에 따라 변화나는 경향이나 패턴을 가지고 있음
상관관계 : 이전 시점의 정보가 현재 시점 정보에 영향을 미치기 때문에 시퀀스 데이터는 상관관계를 가지고 있음
순서 의존성의 예시
순서가 바뀌며 주제와 객체가 바뀌어 문장의 의미도 반대로 달라짐
ex) 아버지가 가방에 들어가신다 -> 가방에 아버지가 들어가신다
시간성 연속성의 예시
ex) 주식성 데이터
ex) given these words -> predict what comes next?
입력과 출력이 각각 하나씩 연결된 고전적인 피드포워드 신경망
순방향 전파 : 입력 -> 은닉층 -> 출력으로 정보가 한 뱡향으로 전파
시간 의존성이 없는 데이터 처리에 적합
순환 구조를 통해 이전 상태의 정보를 다음 상태로 전달
다양한 입력 - 출력 유형 처리 가능
시간적 의존성을 유지하여 연속 데이터 처리에 적합
1:1, 1:n, n:m, n:1
입력 데이터를 받아 반복적으로 출력을 생성
순환 구조를 통해 이전 출력을 다음 입력에 활용
순차 데이터에 적합하며 시간적 관계를 학습 가능
일부 시점에서 벡터 (y)를 예측하는 것이 목표
입력 (x)를 받아 반복적으로 예측
수행 시간에 따른 변화를 모델링하여 시계열 데이터를 처리
전체 입력 시퀀스를 하나의 벡터로 인코딩하여 고정 크기의 출력
단일 입력 벡터로부터 출력 시퀀스를 생성하며,
하나의 정보에서 시퀀스가 필요한 작업에 주로 사용
가중치 W
입력 벡터는 시간에 따라 처리되며, 각 입력에 대해 숨겨진 상태를 생성
출력은 시간 단계에서 생서됨
가중치 W는 모든 시간 단계에서 공유됨
손실함수
손실함수 L은 각 시간 단계에서 계산된 개별 손실
(L1,L2,L3,L4)의 합으로 정의
다대다 구조에서 각 시간 단계의 에측이 중요하므로
모든 예측에 대한 손실을 합산하여 모델을 학습
RNN에서는 주로 회귀 작업에 대해 평균 제곱 오차(MSE)를,
분류 작업에 대해 교차 엔트로피 손실을 사용
학습 과정에 전체 손실 L을 최소화하기 위해
시간 역전파 (BPTT) 방법을 통해 가중치 W가 업데이트
환신경망(RNN)에서 사용하는 학습방법으로, 시간에 따라 펼쳐진 RNN을 통해 손실을 계산하고,
역전파를 통해 가중치를 갱신하는 방식
작동방식 : 순전파