본문 바로가기

순환신경망

CVAE (Convolution VAE) 【8】최근 AutoEncoder 응용 모델 이해하고 사용하기 / CVAE CVAE (Convolution VAE) Convolution VAE를 해보자 기존에 사용했더 VAE는 순환 신경망를 사용하였지만 이번 모델은 CNN으로 바꾼 모델이다. 패키지들은 VAE와 동일하게 때문에 생략을 한다. (x_train, _), (x_test,_) = datasets.mnist.load_data() x_train = x_train.astype('float32') / 255. x_train = x_train.reshape(-1,28,28,1) x_test = x_test.astype('float32') / 255. x_test = x_test.reshape(-1,28,28,1) CNN을 사용하기 때문에 차원은 2차원이.. 더보기
LSTM을 이용한 자연어처리 (실습) 【5】RNN 기본 다지기 / 실습으로 익히는 순환신경망 LSTM을 이용한 자연어처리 (실습) 이번에는 RNN의 강점이라고 할 수 있는 자연어처리를 해보자 모델에 사용 할 데이터셋은 IMDB 데이터다. IMDB 사이트에 등록된 리뷰를 긍정인지 부정인지를 분류하는 문제다. from tensorflow.keras import models,layers,datasets from tensorflow.keras.preprocessing.sequence import pad_sequences 텐서플로우 2.0 생략하고 자연어처리 실습에 사용될 패키지들이다. (x_train,y_train),(x_test,y_test) = datasets.imdb.load_data(num_words=10000) IMDB 데이터셋을 호출하는.. 더보기
LSTM을 이용한 시계열 데이터 분석(실습) 【5】RNN 기본 다지기 / 실습으로 익히는 순환신경망 LSTM을 이용한 시계열 데이터 분석 (실습) 이전에 실습했던 내용은 SimpleRNN을 사용했고 이번에는 LSTM을 이용한 시계열 데이터 처리를 배워보자 데이터셋은 SimpleRNN 실습 때 사용했던 것을 재사용한다. data = np.sin( np.pi * np.arange(0, 100)* 2.025 ) + np.random.random(100) x = np.array([data[i+j] for i in range(len(data)-10) for j in range(10)]) x_train = x[:700].reshape(-1,10,1) x_test = x[700:].reshape(-1,10,1) y = np.array([data[i+10] fo.. 더보기
기본 RNN과 LSTM 비교 【5】RNN 기본 다지기 / 실습으로 익히는 순환신경망 기본 RNN과 LSTM 비교 여기까지 RNN과 LSTM을 자세히 살펴 보았다. 두 순환신경망의 구조를 비교해보자. 아래 그림을 보자. 가장 간단하게 두 구조를 구별하는 방법은 타임스텝이 진행될때 한 셀에서 다음셀로 전달되는 정보의 개수를 확인하면 된다. 즉 위 그림에서는 셀과 셀 사이의 화살표 개수를 확인하면 되는것이다. 단기 기억 뿐인 RNN의 경우 다음 셀로 전달 되는 정보는 역시 바로 직전 타임스텝의 정보일 뿐이다. 그래서 그림에서 하나의 화살표만 볼 수 있다. 그러나 LSTM은 이름에서 보듯 Long-Short Term Momory 이므로 장기와 단기 기억이 모두 존재한다. 그러므로 구조 그림에서 두개의 화살표를 확인할 수 있다. 위 화살표는.. 더보기
독특할 뿐, 어렵지 않은 RNN 구조 【5】RNN 기본 다지기 / 순환 신경망의 출현 독특할 뿐, 어렵지 않은 RNN 구조 예시: 작성자 홍다혜 ghdek11@gmail.com / 이원재 wonway333@gmail.com 더보기