-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathword2vec_optimize.py
More file actions
34 lines (25 loc) · 931 Bytes
/
Copy pathword2vec_optimize.py
File metadata and controls
34 lines (25 loc) · 931 Bytes
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
31
32
33
34
import gensim,logging
logging.basicConfig(format='%(asctime)s:%(levelname)s:%(message)s', level=logging.INFO)
class MySentences(object):
def __init__(self, files):
self.files = files
def __iter__(self):
for file in self.files:
for line in open(file):
line_list = line.split("|")
pending_doc = "|".join(line_list[2:])
if len(pending_doc) > 0:
yield pending_doc.split(" ")
else:
continue
def train_model(files,modelname):
sentences = MySentences(files)
model = gensim.models.Word2Vec(sentences,size=500,min_count=10,workers=10)
model.save(modelname)
def load_model(modelname):
model = gensim.models.Word2Vec.load(modelname)
if __name__ == '__main__':
files=["item.txt"]
modelname="item.word2vec"
train_model(files,modelname)
#load_model(modelname)