분류 전체보기(14)
-
8.1 더 깊게
8.1.1 더 깊은 신경망으로 -사용된 합성곱 계층3X3 크기의 작은 필터층이 깊어지면서 채널 수가 더 늘어남(16, 16, 32, 32, 64, 64) -활성화 함수 : ReLU -풀링 계층 추가→ 중간 데이터의 공간 크기 줄임 -마지막 단의 완전연결 계층 뒤에 드롭아웃 계층 사용: 인접한 계층의 모든 뉴런과 연결되어 있으므로 뉴런을 임의로 삭제해서 오버피팅을 방지시킴. -가중치 초깃값 : He 초깃값ReLU에 특화된 초깃값임앞 계층의 노트가 n개일 때, 표준편차가 √(2/n) 인 정규 분포 사용(ReLU는 음의 영역이 0이라서 더 넓게 분포시키기 위해 2배의 계수 필요 로 해석할 수 있음) -가중치 매개변수 갱신 : Adam 사용 (→ 최적화) -신경망의 정확도 : 99.38% (인식실..
2024.12.08 -
6.3 배치 정규화
# 배치 정규화의 삽입 위치: 배치 정규화 계층이 데이터 흐름에서 위치하는 곳을 의미하며,위치는 신경망의 학습 및 출력에 영향을 미친다.앞에 삽입: 입력 분포를 정규화하여 학습 안정성과 수렴 속도를 개선하는 데 효과적.뒤에 삽입: 출력 분포를 정규화하여 층 간 연결과 출력 스케일을 일정하게 유지. 1. 활성화 함수의 '앞'에 삽입 : 배치 정규화 -> 활성화 함수(1) 구조가중치 곱(또는 합성곱 연산): Wx + b배치 정규화: BN(Wx + b)활성화 함수: ReLU(BN(Wx + b))(2) 활성화 함수가 적용되기 전에 배치 정규화를 수행 (3) 장점배치 정규화가 활성화 함수의 입력 분포를 정규화하여 학습 과정에서 안정성을 더 높여줌네트워크가 깊어지더라도 입력 분포의 변화(Internal Covar..
2024.11.24 -
6.5 적절한 하이퍼파라미터 값 찾기
하이퍼파라미터 값 설정-> 모델의 성능 결정-> 효율적인 하이퍼파라미터 값 탐색의 중요성 6.5.1 검증 데이터 1. 데이터셋훈련 데이터 : 학습시험 데이터 : 범용 성능 평가검증 데이터하이퍼파라미터의 성능 평가하이퍼파라미터 '전용' 확인 데이터 2. 하이퍼파라미터의 성능을 평가할 때 시험 데이터를 사용하면 안된다.-> 이유 :시험 데이터를 사용하여 하이퍼파라미터를 조정하고또 시험 데이터를 사용하여 성능을 평가하게 되면,하이퍼파라미터의 값이 시험 데이터에만 적합하도록 조정되는 '오버피팅'이 발생한다.(-> 모델의 범용 성능은 떨어진다.) 3. 검증 데이터 얻기: 훈련 데이터, 검증 데이터, 시험 데이터 로 미리 분리된 데이터셋도 있음.: 그렇지 않다면 따로 분리해줘야함. -훈련 데이터 중 20..
2024.11.24 -
5.6 Affine/Softmax 계층 구현하기 + 5.7 오차역전파법 구현하기
5.6 Affine/Softmax 계층 구현하기 5.6.1 Affine 계층 -Affine 변환(어파인 변환)점, 직선, 평면을 보존하는 선형 매핑 방법(거리, 각, 원점은 보장하지 못함)선형 변환과 평행 이동으로 구성됨벡터를 선형 변환한 후 평행 이동 시킨 것으로도 볼 수 있음평행했던 선과 평면들은 아핀 변환 후에도 평행성을 유지 -Affine 계층 역전파 관련서로 바꿔서 곱함 + 상대 껄 전치행렬 취했음 5.6.2 배치용 Affine 계층>>> dY = np.array([[1, 2, 3], [4, 5, 6]])>>> dYarray([[1, 2, 3], [4, 5, 6]])>>>>>> dB = np.sum(dY, axis=0)>>> dBarray([5, 7, 9])axis=0 : 0번째 ..
2024.11.17 -
5.5 활성화 함수 계층 구현하기
신경망을 구성하는 층(계층) 각각을 클래스 하나로 구현활성화 함수(ReLU, Sigmoid) 계층 구현 5.5.1 ReLU 계층 -ReLU 수식- ReLU 미분(순전파 때의 입력 x) >0 : 역전파는 상류의 값을 그대로 하류로 흘림(=1을 보냄)(순전파 때의 입력 x) -ReLU 계층의 계산 그래프 : 전자는 1을 보내고(그대로 보내고), 후자는 0을 보낸다.(신호를 보내지 않는다.) -ReLU 계층 구현 -코드class Relu: def __init__(self): self.mask = None def forward(self, x): self.mask = (x 값이 0 이하인 원소들은 모두 0으로 변경함.값이 0 초과인 원소들은 그대로 유지함. -..
2024.11.17 -
4.6 정리
4.1 1. 신경망은 모든 문제를 주어진 데이터 그대로를 입력 데이터로 활용해 end-to-end(=사람의 개입 없이) 로 학습할 수 있음 2. 신경망 학습-데이터를 '훈련 데이터'와 '시험 데이터'로 나눔-이유 : 범용 능력 평가 / 오버피팅 체크 4.21. 신경망 학습에서는 '손실 함수'라는 지표를 기준으로 최적의 가중치 매개변수 값을 사용함.-손실 함수 : 오차제곱합, 교차 엔트로피 오차 2. 미니배치 학습-전체 훈련 데이터 중 일부를 무작위로 추려 전체의 근사치로 이용하는 것(일부만 골라 학습 수행)3. 신경망 학습 시, '정확도'를 지표로 삼으면 안 됨.-이유 : 민감하게 반응하지 않고 불연속적으로 변화하는 특성 상,매개변수의 미분이 대부분의 장소에서 0이 되기 때문 4.3-수치 미분 : 아..
2024.11.10