- AI Dev - 인공지능 개발자 모임
- 정보공유
- 챗봇 딥러닝
글 수 290
https://deeplearning4j.org/kr/word2vec
Deeplearning4j는 자바를 위한 딥러닝 라이브러리입니다. 여기서 사용할 수 있는 Word2vec 클래스에 대한 문서인데 자세히 설명되어 있어 도움이 될 것 같습니다.
Word2vec는 단어를 숫자로 이루어진 벡터로 변경하는 방법으로 딥러닝 자연어처리에 기본이 됩니다. 크게 CBOW(Continuous Bag of Words)와 Skip-gram 방식으로 나누어집니다. CBOW는 주변 단어로 현재 단어를 예측하고, Skip-gram은 반대로 현재 단어로 주변 단어를 결정합니다.
< CBOW >
나는 너를 사랑해
(나는, 사랑해) -> 너를
< Skip-gram >
나는 너를 사랑해
(너를) -> 나는
(너를) -> 사랑해
이렇게 데이터셋을 만들어 학습을 하고 생성된 가중치가 각 단어의 벡터값이 됩니다. 데이터셋 문장들에서 주변에 있는 단어들은 유사한 의미를 갖고 있을 가능성이 높습니다. 그래서 비슷한 의미의 단어들은 벡터값 역시 유사하게 나옵니다.