Я говорю о SVM, но это может быть полезно для других алгоритмов.
Я хотел бы нанести данные на график, чтобы я мог видеть шаблон и, следовательно, иметь возможность решить, будет ли лучше использовать линейный классификатор или RBF. Если они не являются линейными, было бы хорошо сделать трехмерный сюжет, возможно.
Давайте использовать 20 новых групп, которые доступны в библиотеке scikit-learn, что делает этот пример воспроизводимым.
from sklearn.datasets import fetch_20newsgroups
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics import accuracy_score
categories = ['alt.atheism', 'comp.graphics', 'rec.motorcycles']
newsgroups_train = fetch_20newsgroups(subset='train', categories=categories, remove=('headers', 'footers', 'quotes'))
newsgroups_test = fetch_20newsgroups(subset='test', categories=categories, remove=('headers', 'footers', 'quotes'))
y_train = newsgroups_train.target
y_test = newsgroups_test.target
vectorizer = TfidfVectorizer(stop_words='english')
X_train = vectorizer.fit_transform(newsgroups_train.data)
X_test = vectorizer.transform(newsgroups_test.data)
Как мне выполнить правильные проверки при построении?