일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- 파이썬
- DOMAPI
- Ajax프레임워크
- CSS
- 유의수준
- 노트list
- R
- 자기지도학습
- 행렬
- 벡터
- 프로토콜
- Mac konlpy
- EC2
- JS
- 인덱스
- Ajax
- Filter
- DOM
- 명령어
- 웹폰트
- 매일영어습관
- NLP
- 질의확장
- 신뢰구간
- 노마쌤과 즐거운 영어 습관
- 정수인코딩
- HTML
- 클러스터링기법
- 함수
- 노마쌤
- Today
- Total
채니의 개발일기
워드 임베딩(Word Embedding) 본문
워드 임베딩이란?
이전참고글!
2023.10.09 - [인공지능/자연어처리] - 단어 벡터화(Vectorization)
단어 벡터화(Vectorization)
*** 벡터화란? 데이터를 벡터 형태로 변환하는 과정 1. 벡터화에 신경망을 사용하지 않는 경우 단어에 대한 벡터표현 방법 : 원-핫 인코딩 문서에 대한 벡터표현방법: Document Term Matrix, TF-IDF 2. 벡터
xcwaonvy.tistory.com
- 자연어 처리(NLP)와 딥러닝 분야에서 사용되는 기술로, 단어나 문장을 고차원에서 저차원의 벡터로 변환하는것
- 이 변환을 통해 단어나 문장간 의미적 관계를 벡터간에서의 거리나 방향으로 표현가능하다
- 희소표현
- 워드임베딩과 관련하여 자연어 처리에서 사용하는 단어표현방식
- 각 단어를 고차원의 벡터로 표현하며, 이 벡터의 대부분의 원소는 0, 해당 단어를 나타 내는 특정위치의 원소만 1의값을 가짐(원-핫인코딩)
특징
- 단어의 개수가 늘어나면 벡터의 차원이 한겂이 커진다는 점이 단점이다(고차원의 특성) : 공간적 낭비 발생
- 대부분의 원소가 0의 값을 가지고 있으므로 이러한 벡터는 희소한다
- 단어간 의미적 관계를 표현하지 못한다. 즉, 벡터 간의 거리나 방향이 단어의 의미적 유사성과 관련이 없다
- 희소 표현의 한계로 인해, 저차원의 밀집 벡터로 단어를 표현하는 워드 임베딩 기법이 널리 사용하게 되었다.
예)
사과 : [1,0,0]
바나나:[0,1,0]
체리:[0,0,1]
** 고차원: 단어 집합의 크기만큼의 차원을 가지며, 단어 집합이 크면 표현의 차원도 커진다
- 밀집표현
- 자연어 처리에서 단어나 문장을 저차원의 연속 벡터로 표현하는 방식
- 이러한 밀집 벡터는 대부분의 원소가 실수값으로 구성되어있ㅇ며, 각 원소는 0의 값이 아닌 값을 가진다
- 희소표현과 대조적이다.
특징
- 단어의 문장을 표현하는 벡터의 차원이 상대적으로 낮다.
- 밀집 벡터는 단어나 문장의 의미적 정보를 포함하며 벡터간의 거리나 방향이 의미적 유사성을 반영한다.
희소표현 - 대조표현의 예시
희소 표현 (원-핫 인코딩) 예시:
어휘집합: {사과, 바나나, 체리}
사과: [1, 0, 0]
바나나: [0, 1, 0]
체리: [0, 0, 1]
밀집 표현 (워드 임베딩) 예시:
사과: [0.12, -0.45, 0.89]
바나나: [0.56, 0.32, -0.71]
체리: [-0.23, 0.87, 0.44]
- 워드 임베딩
- 단어나 문장을 고차원의 희소벡터에서 저차원의 밀집벡터로 변환하는것
- 이 변환을 통해 단어나 문장 간 의 의미적 관계를 벡터 공간에서의 거리나 방향으로 표현할 수 있게 된다
특징
1. 의미적 유상성 : 벡터 공간에서 가까운 위치에 있는 단어들은 의미적으로 유사한 경향이 있다
2. 차원축소 : 워드 임베딩은 단어의 의미를 고차원에서 저차원 벡터로 변환한다. 이렇게 하면 계산 효율성이 향상한다.
3. 전이 학습: 워드 임베딩은 다양한 NLP 작업에 사용 될 수 있다. 예를들어, 한작업에서 학습된 워드 임베딩을 다른 작업에 전이하여 사용할 수 있다.
워드임베딩 두가지 방법
1. 랜덤 초기화 임베딩
- NNLM(딥러닝 자연어치리 모델) 과 마찬가지로 랜던값을 가지고 오차를 구하는 과정에서 embdding table
- NNLM은 이전 단어가 주어졌을때, 다음 단어를 구하는 학습과정에 오차를 줄이면서 학습되었으나 텍스트분로ㅠ, 개체명 인식 등 수많은 태스크에도 오차를 줄이며 학습간으
- Task에 맞도로 embedding vector값이 최적화 된다.
2. 사전 훈련된 임베딩(pre-trained Word Embedding)
- 정해진 특정 알고리즘에 의해 방대한 데이터를 입력으로 학습시킨 후 여러 Task의 입력으로 사용
- 대표적인 알고리즘으로 word2Vec, FasText, Glove가 존재
'인공지능 > 자연어처리' 카테고리의 다른 글
다층퍼셉트론(로지스틱회귀) (0) | 2023.10.25 |
---|---|
선형회귀(로지스틱 회귀분석) (0) | 2023.10.11 |
단어 벡터화(Vectorization) (1) | 2023.10.09 |
NLP - 정수인코딩, 패딩, OOV (1) | 2023.10.08 |
맥북에서 konlpy다운로드 (1) | 2023.10.08 |