Оценка точности всегда возвращает 0.0, используя SVM и NB алгоритм в собранных данных твиттера - PullRequest
0 голосов
/ 16 сентября 2018

Я пытался создать текстовую классификацию в python, чтобы определить пост твитера о катастрофе.Он должен определить, является ли сообщение о катастрофе положительным или отрицательным.Я уже успешно интегрировал сбор данных и сохранение их в текстовый файл.

К сожалению, каждый раз, когда я проверял точность собранных данных, он всегда возвращался к 0.0.Извините, поскольку я новичок в такого рода технологиях.

Может кто-нибудь помочь мне определить, почему результат всегда заканчивается до 0?

Вот data.txt, который я получил

enter image description here

и tags.txt

enter image description here

Вот код, который я использовал для определения точности моделей

#!/usr/bin/env python
# coding: utf-8
from sklearn.preprocessing import MultiLabelBinarizer
from sklearn.model_selection import train_test_split
from sklearn.svm import LinearSVC
from sklearn.naive_bayes import BernoulliNB

with open("data.txt") as f:
    datas = f.read().split("\n")
with open("labels.txt") as f:
    labels = f.read().split("\n")

data = [datas.split() for datas in datas]

pred = MultiLabelBinarizer()
pred.fit(data)

X_train, X_test, y_train, y_test = train_test_split(data, labels, test_size=0.15, random_state=True)

lsvm = LinearSVC()
lsvm.fit(pred.transform(X_train), y_train)

bnbc = BernoulliNB(binarize=None)
bnbc.fit(pred.transform(X_train), y_train)


svmScore = lsvm.score(pred.transform(X_test), y_test) * 100
print("SVM Accuracy: ", svmScore)

NBscore = bnbc.score(pred.transform(X_test), y_test) * 100
print("Naive Bayes: ", NBscore)

Я пытаюсь понять и отладить это со вчерашнего дня, но все равно не повезло.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...