목록RNN (6)
NeuroWhAI의 잡블로그
어텐션 매커니즘을 적용하기 전에 시험삼아 커스텀 RNN 셀로 RNN 레이어를 만들고 IMDB(영화 리뷰 및 평점) 데이터 세트를 학습시켜 보았습니다. 코드는 아래와 같습니다. (GRU는 글 맨 밑에 있습니다) import numpy as np import matplotlib.pyplot as plt import keras from keras import backend as K from keras import layers, models, datasets from keras.preprocessing import sequence class MyRNNCell(layers.Layer): def __init__(self, units, **kwargs): self.units = units self.state_size..
비교적 최신(?) 개념이라 자료가 별로 없어서 공부하기 너무 힘드네요. 특히 저같은 수알못은... https://machinelearningmastery.com/how-does-attention-work-in-encoder-decoder-recurrent-neural-networks 그나마 위 글에서 약간의 슈도코드를 써줘서 그나마 흐름은 그릴 수 있었습니다. 아래 사진은 제가 흐름을 보고자 코드를 그림으로 옮긴건데 마우스로 그린지라 개판이니 양해 부탁드립니다 ㅋㅋ.. 나중에 확실히 이해하면 직접 코드도 짜보고 정리해서 올리겠습니다.
https://dreamgonfly.github.io/rnn/2017/09/04/understanding-rnn.html 여기서 나온 설명과 코드를 가지고 직접 돌려봤습니다. 텐서플로의 기본적인 요소만 사용해서 RNN을 직접 만들고 MNIST 학습을 시켜보는 예제입니다. 이론적인 설명만 공부했을땐 RNN의 동작이 머리에 잘 그려지지 않았는데 이렇게 직접 구현하니 바로 이해가 되네요. 테스트하면서 신기했던건 Optimizer를 Adam으로 바꾸니 학습이 잘 안됬다는거? 또 이상한건 결과를 보시면 아시겠지만 도중에 정확도가 갑자기 확 떨어지는건 대체 왜 그런걸까요... 코드에 버그가 있나? 코드:123456789101112131415161718192021222324252627282930313233343536..
※ 이 글은 '골빈해커의 3분 딥러닝 텐서플로맛'이라는 책을 보고 실습한걸 기록한 글입니다. 코드: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109#-*- coding: utf-8 -*- import sysimport tensorflow as tfimport numpy as np char_arr = [c for c in 'SEPabcdefghijklmnopqrstu..
※ 이 글은 '골빈해커의 3분 딥러닝 텐서플로맛'이라는 책을 보고 실습한걸 기록한 글입니다. 아주 간단한 예시입니다. 4글자로 된 단어가 있을때 앞의 3글자만 보고 마지막 글자를 예측하는 신경망을 설계합니다. 예) 'wor' -> 'd' 코드: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 ..
책에서 RNN이 나왔습니다. RNN은 시계열 데이터에 적합하다고 하니까 사실 MNIST에는 맞지 않는게 아닌가 싶습니다. 대신 한 이미지를 여러줄로 나눠 윗줄부터 하나씩 입력한다는 형식으로 RNN과 호환성?을 맞췄습니다. 코드: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 #-*- coding: utf-8 -*- import tensorflow as tfimport numpy as np from tenso..