FastText
FastText 모델은 Word2Vec 모델의 확장 및 개선을 목적으로 2016 년 Facebook에서 처음 소개되었다. Word2Vec은 단어를 가장 작은 단위로 생각하고 단어 자체를 임베딩한 것과는 달리 FastText는 하나의 단어도 여러개로 쪼갤 수 있는 단위로 간주한다. 한글의 경우 “한국전력공사" 2 글자 단위로 쪼갠다고 한다면, ‘한국', ’국전', ‘전력', ‘력공', ‘공사'로 쪼갤 수 있다. 또한 자음과 모음 단위로 쪼갤 수도 있다. “ㅎ ㅏ ㄴ ㄱ ㅜ ㄱ ㅈ ㅓ ㄴ ㄹ ㅕ ㄱ ㄱ ㅗ ㅇ ㅅ ㅏ"로 분리할 수 있다. 자음과 모음으로 쪼개면 오타도 반영할 수 있는 장점이 있다. 이렇게 단어를 쪼갠 단위로 워드 임베딩 모델을 학습한다는 점에서 Word2Vec과 차이를 보인다. Word2Vec는 전체 코퍼스에서 단어의 등장빈도에 따라서 임베딩 정확도가 달라진다. 고빈도의 단어는 정확하게 임베딩이 되지만, 저빈도의 단어는 임베딩이 정확히 되지 않는다. 이와 달리 FastText는 저빈도의 단어라고 할지라도 여러 개로 쪼깬 뒤 임베딩 모델을 학습하기 때문에 빈도수가 낮은 단어에 대해 가지는 Word2Vec의 임베딩 정확도 문제를 해결할 수 있다.
FastText의 경우 영어뿐만 아니라 한국어 포함 157개의 언어에 대해서 단어 벡터와 사전학습된 FastText 모델을 제공하고 있다. 모든 단어 벡터는 위키피디아를 크롤링 하여 수집하였다. FastText에서 제공하는 한국어 단어벡터로 개인 노트북에서 FastText 모델을 2-3분내외로 학습을 완료될 만큼 빠른 학습 속도를 제공한다.
또한 학습 데이터에 빈도수가 적은 전문용어도 사용되는 경우가 빈번한 한국전력공사에서는 FastText 모델을 활용하는 것이 단기적으로는 적합하다고 생각한다.
댓글 없음:
댓글 쓰기