auto_encoder

안선경·2023년 5월 2일
0

DL_study

목록 보기
21/23

  • auto_encoder는 자기 데이터를 자기한테 교육시켜 잠재변수를 만드는 과정이다.
  • PCA처럼 차원을 축소하고 다시 확장하는 과정에서 중간에 있는 잠재변수를 얻을 수 있다.
  • 먼저 가장 친근한 mnist데이터를 불러오고, flatten시킨 및 정규화 시킨 후 shape를 확인했다.
  • 그리고 784 -> 64 ->784 즉 input과 output이 같은 모델을 구축하고 compile했다.
  • 이후 자신을 자신에게 fit시킨 후
  • test데이터에 원래 그림과 예측 그림을 그렸다.
  • 화질의 차이는 다소 있어보이나 같은 모양을 그려낸다.
  • 이번에는 모델을 더 깊에 만들어서 교육시켜봤다.
  • 아까와 같이 자신으로 자신을 교육한 후
  • 확인해보니 큰 차이는 없어보인다.
  • 이번에는 잠재변수를 latent_vector_model에 저장 후 해당 모델 즉 잠재변수로 스스로의 데이터를 예측했다.
  • 기존의 784개의 차원이 64개로 줄어든 상태이다.
  • 줄어든 상태로 KMeans를 통해 군집화를 시키고, 라벨값이 같은 데이터를 하나의 층에 입력해 시각화를 해봤다.
  • 몇몇의 데이터를 정확하지 않지만, 비교적 비슷한 모양의 숫자끼리 형성됐다.
  • 군집화를 시각화해서 확인해보니 확실히 비슷한 숫자끼리 비슷한 군집을 보인다.
profile
상황을 바꿀 수 없다면, 나를 바꾸자

0개의 댓글