2023/08/19 2

챕터 07 - 3

이전 7챕터들 에서는 인공 신경망에 대해 배우고 텐서플로의 케라스 API를 사용하는 법과 1개 이상의 층을 추가하여 심층 신경망을 구성하고 다양한 고급 옵티마이저들을 알아보았다. 이렇게 딥러닝에서는 모델의 구조를 직접 만들어간다는 느낌이 훨씬 강하다. 이번 절에서는 케라스 API를 사용해 모델을 훈련하는데 필요한 도구들을 알아보겠다. 손실곡선 fit() 메소드로 모델을 훈련하면 무엇인가를 반환하는데 이때 반환값이 History 클래스 객체를 반환한다. History 객체에는 훈련과정에서 계산한 지표, 즉 손실과 정확도 값이 저장되어 있다. 이 값을 사용하면 그래프를 그릴 수 있다. 챕터를 진행하기 전에 이전의 패션 데이터를 로드하고 훈련 세트와 검증 세트로 나누자. 그리고 모델을 만드는 간단한 함수를 정..

챕터 07 - 2

앞 챕터에서 사용한 인공 신경망은 사실 층이 1개짜리인데도 불구하고 로지스틱 회귀보다 높은 성능을 보여줬다. 이 인공 신경망은 층을 더 추가해서 성능을 높일수 있는데 그걸 알아보자. 역시 패션 데이터를 불러와서 테스트세트와 검증세트를 분리하는것까지 수행하자. 이제 전 챕터에서 만든 모델에서 중간에 밀집층이 추가한다. 이렇게 입력층과 출력층 사이에 있는 모든 층을 은닉층이라고 부른다. 그런데 은닉층에는 활성화 함수가 포함되는데 왜냐하면 은닉층에서 선형적인 산술 계산만 수행한다면 수행 역할이 없는 셈이라서 선형 계산을 적당하게 비선형적으로 비틀어 주어야 하는데 이 역활을 활성화 함수가 수행한다. 많이 사용하는 활성화 함수 중 하나는 시그모이드이다. 그럼 시그모이드 활성화 함수를 사용한 은닉층과 소프트맥스 함..