-2
我已經使用下面的代碼進行分類。我得到55%到60%的變量準確度。 我想提高我的準確率高達85%-90%。我分爲8個不同的類別。我應該採取什麼措施來提高準確性。哪個分類器可以提高文本分類的準確性
import pandas as pd
import numpy as np
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfTransformer
from sklearn.linear_model import SGDClassifier
from sklearn.pipeline import Pipeline
from nltk import word_tokenize
from textblob import TextBlob
cov = pd.read_csv("F:/kipro/ml/dataset.csv",
names = ["Complaint", "target"])
cov.dropna()
s=pd.factorize(cov['target'])
cov['tarname']=s[0]
msk = np.random.rand(len(cov)) < 0.8
train = cov[msk]
test = cov[~msk]
train.dropna()
test.dropna()
y_train, y_test = train.tarname, test.tarname
def tokens(message):
return TextBlob(message).words
def lemmas(message):
message=message.lower()
words = TextBlob(message).words
return [word.lemma for word in words]
text_clf = Pipeline([('vect', CountVectorizer(analyzer=lemmas)),
('tfidf', TfidfTransformer()),
('clf-svm', SGDClassifier())
,])
text_clf = text_clf.fit(train['Complaint'].values.astype('U'),train['tarname'])
predicted = text_clf.predict(test['Complaint'].values.astype('U'))
x=np.mean((y_test==predicted))*100
print(x)
這裏是我的數據集 enter image description here
如果你想得到一個合理的好答案,請不要發佈你的數據集的快照。你是否希望我們爲你複製文本?看看這裏的一些方向:[好問題](https://stackoverflow.com/help/how-to-ask) – skrubber
首先,除tf-idf外,您還可以通過其他方式從文本中提取功能。 –
我正在嘗試與gridsearchcv,但它需要很多時間fit.Can你建議我,我應該使用@VivekKumar特徵提取方法 –