ML & DL75 [tensorflow] naver 영화 리뷰 감성 분석 (tensorflow v2.4.0) 이번에는 IMDB dataset 분류에 이어서 한글로 된 영화 리뷰 데이터를 사용해서 감성 분석을 진행해보도록 하겠습니다. 데이터는 아래 github을 참조하시면 됩니다. https://github.com/e9t/nsmc/ 1. 데이터 불러오기 필요한 패키지들을 import하고, github에 있는 데이터를 불러옵니다. train_text의 처음 300자를 확인해보면 id, review, label로 구성된 것을 확인할 수 있습니다. import tensorflow as tf import numpy as np import matplotlib.pyplot as plt path_to_train_file = tf.keras.utils.get_file('train.txt', .. 2020. 12. 24. 감성분류 on IMDB datasets (2) (tensorflow v2.4.0) 2020/12/24 - [ML & DL/tensorflow] - 감성분류 on IMDB datasets (1) 감성분류 on IMDB datasets (1) (tensorflow v2.4.0) IMDB dataset을 사용해서 감성분류를 해보도록 하겠습니다. IMDB dataset은 영화 리뷰 데이터이며, 구현해볼 것은 해당 리뷰가 긍정적인 리뷰인지 부정적인 리뷰인지 분류하는 것입니다 junstar92.tistory.com 이전 게시글에 이어서 이번에는 IMDB 분류 문제를 RNN layer를 사용해서 수행해보도록 하겠습니다. import tensorflow as tf import tensorflow.keras as keras import tensorflow.keras.. 2020. 12. 24. 감성분류 on IMDB datasets (1) (tensorflow v2.4.0) IMDB dataset을 사용해서 감성분류를 해보도록 하겠습니다. IMDB dataset은 영화 리뷰 데이터이며, 구현해볼 것은 해당 리뷰가 긍정적인 리뷰인지 부정적인 리뷰인지 분류하는 것입니다. 이번 글에서는 RNN layer가 아닌 Dense layer로만 구성된 모델과 Word Embedding layer를 사용한 Dense layer 모델로 학습해보도록 하겠습니다. 1. Dense layer로만 이루어진 Model 학습 우선 데이터를 준비합니다. num_words=10000으로 설정해서, 가장 빈도수가 높은 10000개의 단어만 사용하도록 합니다. import tensorflow as tf import numpy as np (train_data, train_la.. 2020. 12. 24. one-hot encoding과 Tokenizer를 통한 Word Representation (tensorflow v2.4.0) 텍스트는 시퀀스 형태의 데이터이며, 앞으로 시퀀스 모델에 대해서 실습하기 전에 텍스트를 단어나 문자로 나누어서 벡터화하는 방법에 대해서 이야기해보도록 하겠습니다. 텍스트를 나누는 단위를 토큰(Token)이라고 하며, 이러한 작업을 토큰화(tokenization)이라고 합니다. 모든 텍스트 벡터화 작업은 어떤 종류의 토큰화를 적용하고 생성된 토큰에 수치형 벡터를 연결하게 됩니다. 이거 이 벡터는 시퀀스 Tensor로 묶여 모델로 주입됩니다. 토큰과 벡터를 연결하는 방법은 여러가지가 있는데, 주로 one-hot encoding과 work embedding이 사용됩니다. 이번 글에서는 one-hot encoding 방법들에 대해서 직접 연습해보도록 하겠습니다. one-hot.. 2020. 12. 24. [tensorflow] RNN에 사용되는 layer (tensorflow v2.4.0) RNN 모델에 사용하는 tensorflow의 layer에 대해서 알아보도록 하겠습니다. import numpy as np import tensorflow as tf 1. Simple RNN layer tensorflow에서 Simple RNN은 아래의 API로 사용할 수 있습니다. tf.keras.layers.SimpleRNN 이번글에서 파라미터로는 units, activation, return_sequences를 사용할 예정이며, units은 output의 차원이며, return_sequences는 RNN에서 마지막 output 시퀀스에서만 결과를 출력할 지, 아니면 모든 시퀀스에서 결과를 출력할 지에 대한 여부를 나타냅니다. 주로 여러 개의 RNN layer를 쌓을.. 2020. 12. 22. Gradient Descent Gradient descent Gradient descent(이하 GD)는 함수 최적화(optimization) 알고리즘의 하나이며, local minimum을 찾기 위해 미분의 개념을 적용한 알고리즘입니다. 자세히 살펴보기 전에 직관적으로 이야기해보자면, 산의 정상을 향해서 오르거나, 깊은 골짜기로 내려가는 경우에 현재 위치에서 경사가 가장 가파른 방향으로 오르거나 내려가다보면 정상(local maximum)에 다다르거나 가장 깊은 골짜기(local minimum)로 내려갈 수 있습니다. 이러한 개념이 바로 Gradient Descent입니다. (local maximum, 즉 정상을 향해서 진행하는 것은 Gradient ascent라고 합니다.) - Gradient gradient는 각 변수의 일차 편.. 2020. 12. 16. [Tensorflow] Neural Style Transfer 튜토리얼 (tensorflow v2.3.0) Tensorflow 튜토리얼에 있는 Neural Style Transfer를 따라서 실습을 진행해보겠습니다. www.tensorflow.org/tutorials/generative/style_transfer?hl=ko tf.keras를 사용한 Neural Style Transfer | TensorFlow Core Note: 이 문서는 텐서플로 커뮤니티에서 번역했습니다. 커뮤니티 번역 활동의 특성상 정확한 번역과 최신 내용을 반영하기 위해 노력함에도 불구하고 공식 영문 문서의 내용과 일치하지 않을 수 www.tensorflow.org 사용될 이미지는 케라스 창시자에게 배우는 딥러닝 Github에서 제공하는 이미지를 사용했습니다. github.com/rickiepark/d.. 2020. 12. 15. Activation Function (Feat, non-linearity 비선형) 딥러닝 학습을 공부하다보면 activation function(활성 함수)라는 것이 나오고, 아무 생각없이 이런 거구나 하고 넘어갔었던 것 같아서, 조금 정리해보려고 합니다. 인공신경망은 단일 퍼셉트론이라는 기본 개념으로부터 출발했는데, 위 이미지는 신경망이 어떻게 신호를 전달하는지 보여주고 있습니다. 여러 개의 신호(\(x_0, x_1, x_2\))가 들어와서 출력을 전달하고 있는데, 이때, 전달하는 출력 신호의 세기(강도)를 정하는 것이 바로 activation function이라고 할 수 있습니다. activation(활성화)라는 단어에서 알 수 있듯이 입력 신호들의 조합이 뉴런의 활성화를 일으키는지 정하는 역할이라고 볼 수 있죠. 그리고 activation function에 대해서 공부하다보면 n.. 2020. 12. 14. [Pytorch][Kaggle] Cats vs. Dogs Classification (torch version : 1.7.0) 지난번 tensorflow에서 Cats vs. Dogs Classification에 이어서, Pytorch를 사용해서 해당 문제를 구현해보도록 하겠습니다. 2020/12/04 - [ML & DL/tensorflow] - [Tensorflow][Kaggle] Cats vs. Dogs Classification [Tensorflow][Kaggle] Cats vs. Dogs Classification www.kaggle.com/c/dogs-vs-cats-redux-kernels-edition Dogs vs. Cats Redux: Kernels Edition Distinguish images of dogs from cats www.kaggle.com 딥러닝 연습으로 K.. 2020. 12. 7. [Tensorflow] 분류에 사용되는 activation과 loss function(softmax/log_softmax/categorical_crossentropy) (tensorflow v2) Tensorflow로 Classification을 수행하면, 모델 output에서 activation 함수로 sigmoid나 softmax를 적용하게 됩니다. 그리고 loss는 이진 분류는 binary_crossentropy와 다중 분류는 categorical_crossentropy를 자주 사용합니다. 이번 글에서는 tensorflow에는 softmax/log_softmax를 살펴보고, categorical_crossentropy가 어떻게 수행이 되는지 살펴보기 위해서 실험을 해보았습니다. (Pytorch에 대한 내용은 아래 게시글을 참조하시기 바랍니다.) 2020/12/02 - [ML & DL/pytorch] - [Pytorch] softmax와 log_softmax (그리.. 2020. 12. 5. 이전 1 2 3 4 5 6 7 8 다음