[딥러닝 NLP] 08. 순환신경망(SimpleRNN, LSTM, GRU, CharRNN)
피드포워드 신경망은 입력의 길이가 고정되어 있었다. 이번 장에서는 다양한 길이의 입력 시퀀스를 처리할 수 있는 RNN, 이를 개선한 LSTM, GRU에 대해 학습한다. # 08-01 순환 신경망(Recurrent Neural Network, RNN) 1. RNN이란? -시퀀스 모델: 입력과 출력을 시퀀스 단위로 처리. 따라서 입력벡터, 출력벡터, 은닉상태라는 표현 사용 -메모리셀/RNN셀(cell): RNN의 은닉층에서 이전값을 기억하는 메모리 역할을 수행하는 노드 -은닉상태(hidden state): 메모리셀이 출력층 혹은 다음시점인 t+1의 자신에게 보내는 값 -FFNN과 달리 입출력길이를 다양하게 설계 가능 (일대다, 다대일, 다대다) ex) 일대다: 이미지캡셔닝(하나의 이미지에 대해 다양한 제목 ..
[딥러닝 NLP] 07. 딥러닝(1) 활성화함수,손실함수,옵티마이저,역전파, 과적합, 기울기소실, 기울기폭주
# 07-01 딥러닝의 개념 딥러닝은 머신러닝의 한 분야로, 인공신경망의 층을 연속적으로 깊게 쌓아올려 학습하는 방식을 말한다. 이해를 쉽게 하기 위해 퍼셉트론, 인공신경망 ,딥러닝의 순서로 학습한다. 1. 퍼셉트론(Perceptron) (1) 퍼셉트론의 개념 -신경 세포 뉴런과 유사한 알고리즘 -입력값 x와 가중치 w를 곱해서 모두 더한것이 임계치를 넘으면 1, 넘지 않으면 0을 출력값 y로 출력 -이 때, 임계치를 좌변으로 넘겨서 입력값 1과 편향 b가 곱해지는 그림으로 자주 표현 -활성화함수: 뉴런에서 출력값을 변경시키는 함수 -인공뉴런의 활성화함수: 시그모이드, 소프트맥스 함수, 계단함수 등 -퍼셉트론(인공뉴런의 한 종류)의 활성화함수: 계단함수 (0 아니면 1 출력) (2) 단층 퍼셉트론과 다층..
[딥러닝 NLP] 05. 벡터의 유사도(코사인, 유클리드, 자카드)
문서의 유사도 : 문서들 간에 동일하거나 비슷한 단어가 공통적으로 사용된 정도 성능: 단어 표현 방법(DTM, Word2Vec 등) 과 유사도 기법(유클리드 거리, 코사인 유사도 등) 에 따라 달라짐 # 05-01 코사인 유사도(Cosine Similarity) 1. 코사인 유사도란? -두 벡터가 가리키는 방향이 유사한 정도를 코사인 각도로 구하는 기법 -동일 = 1, 90° = 0, 180° = -1 이므로, -1 이상 1 이하이며 1에 가까울수록 유사 -특징: 문서의 길이가 다른 상황에서 비교적 공정한 비교 가능 Ex) 문서A, 문서B는 내용 비슷한데 길이는 2배 차이 / 문서A, 문서C는 다른 내용인데 길이는 비슷한 경우 유클리드 거리는 길이의 영향 받아 A와 C의 유사도가 더 높게 나와버리지만, ..
[딥러닝 NLP] 04. 카운트 기반 단어 표현(BoW, DTM, TF-IDF)
- 이번 장에서는 자연어처리의 정보 검색과 텍스트 마이닝 분야에서 주로 사용되는 카운트 기반 텍스트 표현 방법인 DTM(Document Term Matrix), TF-IDF(Term Frequency-Inverse Document Frequency) 에 대해 살펴본다. - 어떤 단어가 특정 문서 내에서 갖는 중요도, 문서의 핵심어 추출, 검색 엔진에서 검색 결과의 순위 결정, 문서들 간의 유사도를 구하는 등의 용도로 사용 # 04-01 다양한 단어 표현 방법 1. 국소 표현 (Local Representation) - 해당 단어 그 자체만 보고, 특정값을 맵핑하여 단어를 표현하는 방법 Ex) puppy(강아지), cute(귀여운), lovely(사랑스러운)라는 단어가 있을 때 각 단어에 1번, 2번, 3..