본문 바로가기
반응형

-257

[밑시딥1] CHAPTER 8 딥러닝 8.1 더 깊게 그동안 배운 기술을 집약하고 심층 신경망을 만들어서 MNIST데이터셋의 손글씨 숫자 인식에 도전해보자. 8.1.1 더 깊은 신경망으로 여기서 사용하는 합성곱 계층은 모두 3x3 크기의 작은 필터로, 층이 깊어지면서 채널 수가 더 늘어나는 것이 특징이다. 가중치 초깃값으로는 He 초깃값, 파라미터 갱신에는 Adam을 사용한다. 이 신경망의 정확도는 99.38%가 된다. 8.1.2 정확도를 더 높이려면 데이터 확장(data augmentation)은 입력 이미지를 알고리즘을 통해 인위적으로 확장하는 것이다. 위와 같은 변형 외에도 crip 이나 flip등이 있다. 밝기 변화, 확대, 축소도 효과적이다. 8.1.3 깊게 하는 이유 층을 깊게 할 때의 이점으로는 신경망의 파라미터 수가 줄어든다는.. 2023. 7. 3.
[밑시딥1] CHAPTER 7 합성곱 신경망(CNN) CNN은 이미지 인식과 음성 인식 등 다양한 곳에서 사용되는데, 특히 이미지 인식 분야에서 딥러닝을 활용한 기법은 거의 다 CNN을 기초로 한다. 7.1 전체 구조 CNN에는 합성곱 계층(convolutional layer)과 풀링 계층(pooling layer)이 있다. 지금까지 본 신경망은 완전연결(fully-connected)이다. 이런 계층은 어파인 계층이라는 이름으로 구현했다. 위 완전연결 신경망은 Affine-ReLU 조합이 4개가 쌓였고, 마지막 5번째 층은 Affine계층에 이어 소프트맥스 계층에서 최종 결과(확률)를 출력한다. CNN에서는 합성곱 계층과 풀링 계층이 추가된다. CNN 계층은 'Conv-ReLU-(Pooling)' 흐름으로 연결된다(풀링 계층은 생략하기도 한다) 지금까지의 .. 2023. 6. 26.
[밑시딥1] CHAPTER 6 학습 관련 기술들 이 장에서는 가중치 매개변수의 최적값을 탐색하는 최적화 방법, 가중치 매개변수 초기값, 하이퍼파라미터 설정 방법 등 중요한 주제를 다룬다. 오버피팅의 대응책인 가중치 감소와 드롭아웃 등 정규화 방법도 설명하고 구현해보자. 배치 정규화도 알아보자. 6.1 매개변수 갱신 신경망 학습의 목적: 손실 함수의 값을 가능한 한 낮추는 매개변수를 찾는 것 최적화: 이러한 문제를 푸는 것 SGD: 매개변수의 기울기를 구해서, 기울어진 방향으로 매개변수 값을 갱신하는 일을 반복하면서 최적의 값에 다가갔다. 6.1.1 모험가 이야기 6.1.2 확률적 경사 하강법(SGD) SGD는 수식으로 다음과 같이 나타낼 수 있었다. 파이썬 클래스로 구현해보자. 매개변수 갱신은 위 클래스가 하니, 우리는 optimizer에 매개변수와 .. 2023. 6. 21.
[클린코드] 2장 의미 있는 이름 1) 들어가면서 이름을 잘 지으면 편하다. 2) 의도를 분명히 밝혀라 변수, 함수, 클래스 이름은 이름에서 존재 이유와 수행 기능, 사용방법이 드러나야 한다. 3) 그릇된 정보를 피하라 코드에 그릇된 단서를 남겨서는 안된다. list가 아닌데 list라고 이름짓거나 너무 흡사한 이름도 헷갈리니 사용 말자. 4) 의미 있게 구분하라 읽는 사람이 구별 가능하도록 의미 있게 짓자. 불용어(a, the, data, info) 금물 5) 발음하기 쉬운 이름을 사용하라 커뮤니케이션과 뇌 효율성을 위해. 6) 검색하기 쉬운 이름을 사용하라 나중에 검색하기 쉽도록 이름 작성. 그런 의미에서 긴 이름이 짧은 이름보다 좋지만, 길이는 범위 크기에 비례해야 한다.[N5] 7) 인코딩을 피하라 헝가리식 표기법(타입 표기), .. 2023. 6. 20.
반응형