LoginSignup
14
15

More than 3 years have passed since last update.

Word2Vecのモデルを軽量化する方法

Posted at

Pythonのgensimを使ってWord2Vecのモデルを作成すると、
何GBというファイルが出来上がり、実際に使用する際にもメモリをかなり消費する。

https://radimrehurek.com/gensim/models/keyedvectors.html
gensimの公式ドキュメントによると、
Word2Vecのモデルには追加学習に必要なデータも一緒に保存されているので、その分データが重くなっている。

KeyedVectorsを使うことで、学習に必要なデータを除いた形で保存できる。

save_keyedvectors.py
from gensim.models import word2vec

# W2Vモデルの読込
model = word2vec.Word2Vec.load('word2vec.model')

# keyedvectorsとして保存
model.wv.save('keyword.kv')

実際に使うときには、

load_keyedvectors.py
from gensim.models import KeyedVectors

# keyedvectorsの読込
wv = KeyedVectors.load('keyword.kv', mmap='r')

# 類義語出力
wv.most_similar('Qiita')
14
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
15