NLP 5

5장 RNN

지금까지 본 feed forward 신경망은 시계열 데이터를 잘 다루지 못해서 순환 신경망 RNN이 등장해씀 오른쪽처럼 연결하면 단어의 순서도 고려할 수 있지만 그러면 맥락 크기에 비해 가중치 매개변수도 많이 늘어나서 안좋음 ㅠ > RNN 등장햇습니다 RNN t는 시각. 시계열 데이터 X_t를 입력 받고 h_t 출력 이 식처럼 h_t를 계산하면 위쪽으로 출력되고 동시에 다음 t의 RNN 쪽으로도 출력된다. 현재의 출력값은 이전 t에 기초해 계산되기 때문에 메모리가 있는 계층이라고도 한다! 아니면 은닉 상태 / 은닉 상태 벡터라고도 한다잉 BPTT RNN계층에서 backprop 하는걸 through time 붙여서 BPTT라고 한다. 그치만 그냥 이걸로 학습하면 긴 시계열 데이터에서 계산량이 너무 많아지고..

4장 word2vec 속도 개선

여기서 어휘 수가 100만 개가 된다면 입력으로 들어가는 원핫 벡터에 요소가 100만 개이고, 아래 두부분에서 계산이 병목되어 해결해야 한다! 원핫벡터와 W_in 가중치와의 곱에서 → Embedding 계층 도입 은닉층 이후(은닉층과 W_out 가중치의 곱, Softmax 계산) → 네거티브 샘플링 1. Embedding 계층 도입 단어의 분산 표현을 저장 2. 네거티브 샘플링 어휘가 많아져도 계산량을 낮은 수준에서 일정하게 억제할 수 있음 100만 개의 단어 중에서 옳은 단어 1개를 고르는 건 다중 분류! 이걸 이진 분류로 근사하는 게 네거티브 샘플링. 이전까지는 모든 단어에 대한 확률을 계산했지만 이제 "say"라는 단어 하나에만 집중해서 점수 계산하고 sigmoid로 확률로 변환한다. 이진 분류를 ..

3장 word2vec

통계기반기법 문제점 - 대규모 말뭉치 다루기 힘들다. 단어 수가 100만개라면 100만x100만 크기의 행렬 만들어야 함 - 말뭉치 전체의 통계를 이용해 단 1번의 처리만으로 분산 표현을 얻어서 말뭉치가 크면 눈물만.. 추론기반기법 통계 기반 기법처럼 "단어의 의미는 주변 단어에 의해 형성된다"는 분포 가설에 기초. "단어의 동시발생 가능성"을 얼마나 잘 모델링하는가가 중요한 연구 주제. 통계기반기법 추론기반기법 1번 학습 미니배치로 학습 새로운 단어 넣으면 처음부터 다시 학습 새로운 단어 넣어도 기존 가중치를 초깃값으로 학습하면 됨. 분산 표현의 성격 / 정밀도는 비슷 둘을 융합한 GloVe 기법! CBOW 모델 맥락을 보고 target 추측 맥락에 포함시킬 단어 n개 = 입력층 개수 n개 입력으로 맥..

2장 자연어&단어 분산 표현

시소러스 유의어 사전. 동의어나 유의어가 한 그룹으로 분리되어 있음 단어의 상하위 / 전체or부분 으로 더 자세하게 구분할 수도 있음. 그러면 위 사진처럼 그래프 모양으로 정의. 이런 단어 네트워크를 이용해서 컴퓨터한테 단어 사이의 관계를 가르칠 수 있음. 단점 ... - 사람이 직접 하나하나 해서 귀찮고 시간도 많이 필요함. 비용 ㄷㄷ - 시대 변화에 대응하기 어려움. 안 쓰는 말이 될 수도 있고 새로운 말이 생길 수도 있음. - 빈티지 / 레트로 사이의 미묘한 차이 같은 걸 정의할 수 없음 통계 기반 기법 말뭉치 nlp연구 같은걸 생각해두고 수집된 대량의 텍스트 데이터 어쨌든 말뭉치는 사람들이 쓴 문장을 수집한 거라 문법, 단어 선택, 의미 같은 지식이 담겨있다고 볼 수 있음. 통계 기반 기법은 말뭉..