인공 신경망
- 인공 신경망은 기존의 머신러닝 알고리즘으로 다루기 어려웠던 이미지, 음성, 텍스트 분야에서
뛰어난 성능을 발휘하면서 크게 주목받고 있으며, 인공 신경망 알고리즘을 딥러닝이라고도 부름 - 텐서플로는 구글이 만든 딥러닝 라이브러리이며 CPU와 GPU를 사용해
인공 신경망 모델을 효율적으로 훈련하여 모델 구축과 서비스에 필요한 다양한 도구를 제공
텐서플로 2.0부터는 신경망 모델을 빠르게 구성할 수 있는 케라스를 핵심 API로 채택 - 밀집층은 가장 간단한 인공 신경망의 층이며
밀집층에서는 뉴런들이 모두 연결되어 있기 때문에 완전 연결 층이라고도 부름 - 원-핫 인코딩은 다중 분류에서 출력층에서 만든 확률과 크로스 엔트로피 손실을 계산하기 위해
정숫값을 배열에서 해당 정수 위치의 원소만 1이고 나머지는 모두 0으로 반환함
텐서플로에서는 'sparse_categorocal_entropy' 손실을 지정하면 원-핫 인코딩이 필요 없음
심층 신경망
- 심층 신경망은 2개 이상의 층을 포함한 신경망
- 층이 많을수록 활성화 함수 양쪽 끝의 변화가 작아 학습이 어려운 시그모이드 함수와 달리,
렐루 함수는 이런 문제가 없고 계산도 간단하여 이미지 분류 모델의 은닉층에 많이 사용 - 옵티마이저는 신경망의 가중치와 절편을 학습하기 위한 알고리즘 또는 방법을 뜻하며
케라스에는 다양한 경사 하강법 알고리즘이 구현되어 있음
(SGD, 모멘텀, 네스테로프 모멘텀, RMSprop, Adam 등)
신경망 모델 훈련
- 드롭아웃은 은닉층에 있는 뉴런의 출력을 랜덤하게 꺼서 과대적합을 막는 기법
드롭아웃은 훈련 중에 적용되며 평가나 예측에서는 적용하지 않음 - 콜백은 케라스 모델을 훈련하는 도중에 어떤 작업을 수행할 수 있도록 도와주는 도구
대표적으로 최상의 모델을 자동으로 저장해주거나 (ModelCheckpoint),
검증 점수가 더 이상 향상되지 않으면 일찍 종료할 수 있음 (EarlyStopping) - 조기 종료는 검증 점수가 더 이상 감소하지 않고 상승하여 과대적합이 일어나면
훈련을 계속 진행하지 않고 멈추는 기법으로 이를 통해 계산 비용과 시간을 절약할 수 있음
'Group Study (2021-2022) > ML Introduction' 카테고리의 다른 글
[머신러닝 입문 스터디] 11주차 - 텍스트를 위한 인공 신경망 (0) | 2022.07.24 |
---|---|
[머신러닝 입문 스터디] 10주차 - 이미지를 위한 인공 신경망 (0) | 2022.07.18 |
[머신러닝 입문 스터디] 8주차 - 비지도 학습 (0) | 2022.07.03 |
[머신러닝 입문 스터디] 5주차 - 트리 알고리즘 (0) | 2022.06.12 |
[머신러닝 입문 스터디] 3주차 - 다양한 분류 알고리즘 (0) | 2022.05.29 |