v3 all top6
This commit is contained in:
parent
e15e94a20c
commit
b609d330f4
21038
dev-0/out.tsv
21038
dev-0/out.tsv
File diff suppressed because it is too large
Load Diff
14
run.py
14
run.py
@ -27,8 +27,6 @@ for index, row in train_data.iterrows():
|
|||||||
for w1, w2, w3 in trigrams(words, pad_right=True, pad_left=True):
|
for w1, w2, w3 in trigrams(words, pad_right=True, pad_left=True):
|
||||||
if w1 and w2 and w3:
|
if w1 and w2 and w3:
|
||||||
model[(w2, w3)][w1] += 1
|
model[(w2, w3)][w1] += 1
|
||||||
if index > 20000:
|
|
||||||
break
|
|
||||||
|
|
||||||
for w2_w3 in model:
|
for w2_w3 in model:
|
||||||
total_count = float(sum(model[w2_w3].values()))
|
total_count = float(sum(model[w2_w3].values()))
|
||||||
@ -37,7 +35,7 @@ for w2_w3 in model:
|
|||||||
|
|
||||||
def predict_probs(word1, word2):
|
def predict_probs(word1, word2):
|
||||||
raw_prediction = dict(model[word1, word2])
|
raw_prediction = dict(model[word1, word2])
|
||||||
prediction = dict(Counter(raw_prediction).most_common(12))
|
prediction = dict(Counter(raw_prediction).most_common(6))
|
||||||
|
|
||||||
total_prob = 0.0
|
total_prob = 0.0
|
||||||
str_prediction = ''
|
str_prediction = ''
|
||||||
@ -47,12 +45,12 @@ def predict_probs(word1, word2):
|
|||||||
str_prediction += f'{word}:{prob} '
|
str_prediction += f'{word}:{prob} '
|
||||||
|
|
||||||
if total_prob == 0.0:
|
if total_prob == 0.0:
|
||||||
return 'the:0.3 be:0.2 to:0.2 of:0.2 :0.1'
|
return 'the:0.2 be:0.2 to:0.2 of:0.1 and:0.1 a:0.1 :0.1'
|
||||||
|
|
||||||
remaining_prob = 1 - total_prob
|
remaining_prob = 1 - total_prob
|
||||||
|
|
||||||
if remaining_prob < 0.0001:
|
if remaining_prob < 0.01:
|
||||||
remaining_prob = 0.0001
|
remaining_prob = 0.01
|
||||||
|
|
||||||
str_prediction += f':{remaining_prob}'
|
str_prediction += f':{remaining_prob}'
|
||||||
|
|
||||||
@ -67,7 +65,7 @@ with open('dev-0/out.tsv', 'w') as file:
|
|||||||
text = clean_text(str(row[7]))
|
text = clean_text(str(row[7]))
|
||||||
words = word_tokenize(text)
|
words = word_tokenize(text)
|
||||||
if len(words) < 4:
|
if len(words) < 4:
|
||||||
prediction = 'the:0.3 be:0.2 to:0.2 of:0.2 :0.1'
|
prediction = 'the:0.2 be:0.2 to:0.2 of:0.1 and:0.1 a:0.1 :0.1'
|
||||||
else:
|
else:
|
||||||
prediction = predict_probs(words[0], words[1])
|
prediction = predict_probs(words[0], words[1])
|
||||||
file.write(prediction + '\n')
|
file.write(prediction + '\n')
|
||||||
@ -77,7 +75,7 @@ with open('test-A/out.tsv', 'w') as file:
|
|||||||
text = clean_text(str(row[7]))
|
text = clean_text(str(row[7]))
|
||||||
words = word_tokenize(text)
|
words = word_tokenize(text)
|
||||||
if len(words) < 4:
|
if len(words) < 4:
|
||||||
prediction = 'the:0.3 be:0.2 to:0.2 of:0.2 :0.1'
|
prediction = 'the:0.2 be:0.2 to:0.2 of:0.1 and:0.1 a:0.1 :0.1'
|
||||||
else:
|
else:
|
||||||
prediction = predict_probs(words[0], words[1])
|
prediction = predict_probs(words[0], words[1])
|
||||||
file.write(prediction + '\n')
|
file.write(prediction + '\n')
|
||||||
|
14828
test-A/out.tsv
14828
test-A/out.tsv
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user