네이버 영화 리뷰 감성 분석 프로젝트를 진행하면서 한국어 임베딩을 활용하여 성능을 개선하려고 하는 부분에서 파일 로드가 안되는 오류를 마주했다.
GitHub - YOOHYOJEONG/AIFFEL_LMS_project
Contribute to YOOHYOJEONG/AIFFEL_LMS_project development by creating an account on GitHub.
github.com
한국어의 미리 학습된 Word2Vec 모델은 박규병님의 깃허브 주소에서 다운받을 수 있다.
https://github.com/Kyubyong/wordvectors
GitHub - Kyubyong/wordvectors: Pre-trained word vectors of 30+ languages
Pre-trained word vectors of 30+ languages. Contribute to Kyubyong/wordvectors development by creating an account on GitHub.
github.com
ko.zip이라는 파일을 다운받아 압축을 풀면 ko.bin이라는 파일이 있다.
해당 파일을 위의 사진과 같이 로드하여 유사도를 계산하려고 했으나
AttributeError : Can't get attribute 'Vocab' on (module 'gensim.models.word2vec' from '/opt/conda/lib/python3.7/site-package/gensim/models/word2vec.py'>
위와 같은 오류가 발생했다.
오류 메세지를 검색 해 보았지만 잘못 검색한것인지 해답을 찾을 수 없었다.
결국 아이펠 커뮤니티 사이트인 아지트에 질문을 올렸고 아주 빠르게 친절하신 분께서 gensim의 버전 문제 때문이라고 댓글을 달아주셨다.
4.0.X 버전부터는 vocab이라는 코드가 gensim 패키지 안에서 사라졌기 때문에 위와 같은 코드를 사용하여 ko.bin을 로드하려면 gensim의 버전이 3.8.X여야만 한다고 했다.
내가 사용하고 있던 gensim의 버전은 4.0.X였기 때문에 해당 파일이 로드가 되지 않았던 것이다.
pip install --upgrade gensim==3.8.3
위의 실행문을 터미널에 입력하여 gensim의 버전을 다운그레이드 해주니 문제없이 ko.bin 파일이 로드가 되었다.