원 핫 인코딩(one_hot_encoding 이란?)
원 - 핫 인코딩은 단어집합의 크기를 벡터의 차원으로 하고, 표현하고 싶은 인덱스에 1의 값을 부여하고, 다른 인덱스에는 0을 부여하는 단어의 벡터 표현 방식.
두가지 과정으로 정리
1) 정수 인코딩 수행
- 각 단어에 고유한 정수를 부여
2) 표현하고 싶은 단어의 고유한 정수를 인덱스로 간주하고, 해당 위치에 1을 부여하고, 다른 단어의 인덱스의 위치에는 0을 부여.
ex) 나는 자연어 처리를 배운다
['나', '는', '자연어', '처리', '를', '배운다']
각 토큰에 대해서 고유한 정수를 부여.
문장이 짧 떄는 빈도수를 고려하지 않지만, 빈도수 순으로 단어를 정렬하여 정수를 부여하는 경우가 많다.
단어집합 : {'나' : 0, '는' : 1, '자연어' : 2, '처리' : 3, '를' : 4, '배운다' : 5}
그리고 자연어라는 단어의 원 핫 벡터
[0,0,1,0,0,0]
자연어는 정수 2이므로 인덱스 2의 값이 1, 나머지 값은 0인 벡터가 나온다.
'Tensorflow > RNN' 카테고리의 다른 글
python tensorflow rnn 코드 리뷰, 설명 꿀 팁 (0) | 2024.05.13 |
---|---|
[Tensorflow] [RNN] [세 번째 이야기] Word embedding (1) | 2024.01.16 |
[Tensorflow] [RNN] [첫 번째 이야기] [LSTM] (0) | 2024.01.15 |