2015-09-18 2 views
0

Пожалуйста, не блокируйте меня по этому вопросу, я попытался найти ответ в течение месяца, и я не могу его найти, и вы - моя последняя надежда (пожалуйста, если вы хотите сообщить об этом сначала ответьте мне, а затем сообщите, спасибо). Я пишу код классификации гибридного текста в MATLAB, и я сделал это правильно, но теперь я не знаю, как оценивать результаты. Я ничего не знаю о тренировочном наборе и экзамене, установленном в Reuters-21578, и я не могу их понять. мой код находит ключевые слова в тексте и с помощью гибридного алгоритма KNN помещает текст в его точный класс, но проблема в том, что я не знаю, что это за классы-кандидаты? Я должен сделать их или они готовы? Если каждый .sgm-файл в Reuters-21578 является классом, то как я могу использовать их в качестве класса-кандидата, я имею в виду, что они полны слов, поэтому я должен сначала классифицировать их и достичь выбора классов, которые могут быть классифицированы в других документах им?Оценка метода классификации текста с помощью набора данных Reuters-21578

ответ

1

Тег для каждой статьи/новостей можно рассматривать как метку класса. Вы можете разделить истории с темами на набор тренировок и набор тестов для оценки вашего классификатора. Есть истории в reuters-21578 без каких-либо тем, вы можете использовать свой классификатор для присвоения им меток классов.

Примечание: Есть много историй с несколькими темами.

0

Я прошел через то же самое. Если версия набора данных reuters не имеет для вас значения, то набор данных reuters также доступен в nltk.corpus, из которого вы можете легко получить доступ к тестовым документам, легко подготовить документы и их соответствующие категории. Вам не нужно беспокоиться об извлечении их из .sgm-файлов.

Вы можете сделать это:

from nltk.corpus import reuters 
    #This gives all files 
    documents = reuters.fileids() 
    #to get only the training and testing documents 
    train_docs = filter(lambda doc: doc.startswith("train"),documents); 
    test_docs = filter(lambda doc: doc.startswith("test"),documents); 
    #To get the raw data of a document 
    data = reuters.raw(documents[0]) 
    #to get the categories/class in your case 
    category = reuters.categories(documents[0]) 

Теперь вы можете использовать их для обучения и тестирования. В простой оболочке ореха test_docs и train_docs содержат документы с сырым контентом и их соответствующей категорией, которые могут быть получены указанными выше методами.

Смежные вопросы