-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path4_train_model.py
More file actions
29 lines (20 loc) · 898 Bytes
/
4_train_model.py
File metadata and controls
29 lines (20 loc) · 898 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
import fasttext
import sys
if len(sys.argv) < 2:
print("Data folder is required as an argument")
sys.exit(1)
folder = sys.argv[1]
if folder[-1] != "/":
folder = folder + "/"
# train classifier
model = fasttext.train_supervised(input=folder + "training.txt", lr=0.1, epoch=25, wordNgrams=2)
model.save_model(folder + "model.bin")
# load and evaluate classifier
model = fasttext.load_model(folder + "model.bin")
print("evaluation:")
print("number of samples, precision and recall: " + str(model.test(folder+"validation.txt")))
print("examples:")
example1 = "France’s Renault, which controls Russian car maker _entity_ , fell 9.3 per cent."
print(str(model.predict(example1)) + " for: " + example1)
example2 = "Germany's Lufthansa halted flights to Ukraine from Monday, joining _entity_ which already suspended flights."
print(str(model.predict(example2)) + " for: " + example2)