Skip to content

기계학습 비지도학습 Autoencoder #
Find similar titles

Structured data

Category
Programming

Autoencoder #

Autoencoder #

오토인코더는 효율적인 데이터 코딩을 학습하는데 사용되는 일종의 인공 신경 네트워크로, 입력값과 출력값을 같게 하는 신경망이다. 다음 그림과 같이 가운데 계층의 노드 수가 입력값보다 적은 것이 특징이다. 입력 데이터는 압축하는 효과를 얻게 되는데, 이러한 과정이 노이즈 제거에 매우 효과적이라고 알려져 있다.

Autoencoder

오토인코더의 핵심은 데이터를 인코더를 통해 은닉층으로 내보내고, 은닉층의 데이터를 디코더를 통해 출력층으로 내보낸 뒤, 만들어진 출력값을 입력값과 비슷해지도록 만드는 가중치를 찾아내는 것이다. 최근, 오토인코더 개념은 생성 데이터 모델을 학습하는 데 더욱 널리 사용되고 있다.

오토인코더에는 다음과 같은 방식들이 있다.

Variational Autoencoder (VAE) #

변이형 오토인코더 모델은 오토인코더 아키텍처를 계승하지만, 잠복 변수의 분포에 관해 강한 가정을 한다. 잠복 표현 학습을 위해 다양한 접근법을 사용하며, 이것은 추가적인 손실 요소 및 Stochastic Gradient Variational Bayes(SGVB)라고 불리는 특정 훈련 알고리즘을 낳는다.

Denoising Autoencoder #

잡음제거 오토인코더 모델은 왜곡되지 않은 원래 입력을 복구하도록 훈련하는 동안 부분적으로 손상된 입력을 취한다. 이 기법은 훌륭한 표현에 대한 특정한 접근법으로 도입되었다.

Sparse Autoencoder #

오토인코더는 1980년대에 발명되었다. 허나 초기 버전은 인코딩이 동일한 작은 비트 세트를 만들도록 해야 했기 때문에 훈련하기가 매우 어려웠는데, 이 문제는 Sparse autocoding을 통해 해결되었다.

참고문헌 #

  • Autoencoder 1
0.0.1_20140628_0