일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 가비아
- AndroidStudio를활용한안드로이드프로그래밍
- Lamp
- 셀레니움
- Selenium
- 소스설치
- 예제중심HTML&자바스크립트&CSS
- 논문리뷰
- Crawling
- deeplearning
- image
- 한빛미디어
- MySQL
- 프로그램새내기를위한자바언어프로그래밍
- 밑바닥부터시작하는딥러닝
- 머신러닝
- 수동설치
- 밑바닥부터시작하는딥러닝2
- CBOW
- Apache
- 크롤링
- 딥러닝
- 한빛아카데미
- jupyter
- word2vec
- 컴파일설치
- aws
- 비지도학습
- 생활코딩
- attention
- Today
- Total
목록It공부 (94)
안녕, 세상!
지금까지 살펴본 신경망은 피드 포워드(feed forward)라는 유형의 신경망입니다. feed forward란 흐름이 단방향인 신경망을 말합니다. feed forward 신경망은 구성이 단순하여 많은 문제에 응용할 수 있지만 시계열 데이터를 잘 다루지 못한다는 단점이 있습니다. 단순한 시계열 데이터의 성질을 단방향 신경망에서는 충분히 학습할 수 없습니다. 그래서 순환 신경망(Recurrent Neural Network)이 등장하게 됩니다. (1) 확률과 언어 모델 이전의 CBOW 모델의 맥락은 타깃을 중심으로 좌우 대칭으로 생각해왔었습니다. 이번에는 맥락을 왼쪽 윈도우만으로 한정해보겠습니다. 왼쪽 두 단어만을 맥락으로 생각하면 출력 확률은 다음과 같습니다. 앞서 CBOW 모델의 학습으로 수행하는 일은 ..
직전 설명에서 기존 word2vec을 개선하였습니다. (1) CBOW 모델 구현 앞 장에서 단순한 SimpleCBOW 클래스를 개선할 것입니다. 개선점은 Embedding 계층과 Negative Sampling Loss 계층을 적용하는 것입니다. 개선된 CBOW 모델 클래스 코드는 다음과 같습니다. #import sys #sys.path.append('..') #from common.np import * # import numpy as np #from common.layers import Embedding #from ch04.negative_sampling_layer import NegativeSamplingLoss class CBOW: def __init__(self, vocab_size, hidden..
앞서 구현한 간단한 CBOW 모델은 말뭉치에 포함된 어휘 수가 많아지면 계산량도 커져서 시간이 너무 오래 걸립니다. 이를 위해 두 가지 개선을 합니다. 1. Embedding이라는 새로운 계층을 도입합니다. 2. 네거티브 샘플링이라는 새로운 손실 함수를 도입합니다. 이 두 가지 개선으로 진정한 word2vec을 구현할 수 있습니다. (1) word2vec 개선 1 앞에서 사용한 간단한 CBOW 모델을 이용하여 말뭉치에 어휘가 100만 개라고 가정한다면 입력층과 출력층에 각 100만 개의 뉴런들이 존재합니다. 이러한 많은 뉴런 때문에 중간 계산에 많은 시간이 소요됩니다. 구체적으로 다음 두 부분에서 병목현상이 발생합니다. 1. 입력층의 원핫 표현과 가중치 행렬 W(in)의 곱 2. 은닉층과 가중치 행렬 W..
CBOW 모델을 확률 관점에서 살펴보겠습니다. (1) CBOW 모델과 확률 확률 표기법 동시 확률 : P(A , B) - A와 B가 동시에 일어날 확률 사후 확률 : P(A | B) - B(라는 정보)가 주어졌을 때 A가 일어날 확률 말뭉치를 w1,w2, ... ,wr 처럼 단어로 표기한다면 특정 단어와 그 단어에 대한 윈도우 크기가 1인 맥락을 다음과 같이 표현할 수 있습니다. 그렇다면 W(t-1) 과 W(t+1)이 주어졌을 때 Wt의 확률은 다음과 같이 표현할 수 있습니다. 이 식을 이용하여 CBOW 모델의 손실함수를 나타낼 수 있습니다. 앞서 Cross-entropy를 사용했으므로 교차 엔트로피식으로 생각해보겠습니다. 교차 엔트로피 식은 과 같습니다. tk와 yk 모두 one-hot-encoding..