Новости
09.05.2023
с Днём Победы!
07.03.2023
Поздравляем с Международным женским днем!
23.02.2023
Поздравляем с Днем защитника Отечества!
Оплата онлайн
При оплате онлайн будет
удержана комиссия 3,5-5,5%








Способ оплаты:

С банковской карты (3,5%)
Сбербанк онлайн (3,5%)
Со счета в Яндекс.Деньгах (5,5%)
Наличными через терминал (3,5%)

РАЗРАБОТКА ПРОГРАММНОГО МОДУЛЯ КЛАССИФИКАЦИИ ТЕКСТОВ

Авторы:
Город:
Москва
ВУЗ:
Дата:
11 марта 2016г.

В настоящее время во всѐм мире актуальна проблема быстрого поиска релевантной информации. Для решения этой проблемы широко применяются полнотекстовые поисковые системы, которые описывают документы, основываясь на множестве слов, введенных пользователем. Эффективность полнотекстовой поисковой системы можно существенно повысить, добавив в индекс к записи документа его тематику. Хороший пример увеличения эффективности системы - запрос от пользователя – «соль»: некоторые результаты могут относиться к кулинарии, другие к музыке. Пользователь, уточнив категорию, может уточнить запрос; в результате получит только те документы, которые относятся к выбранной им тематике. Таким образом, разработка программного модуля классификации текстов  (ПМ КТ), способного описанным выше способом взаимодействовать с системой полнотекстового поиска, является весьма актуальной.

Разрабатываемый модуль должен обладать следующим функционалом:

•   возможность обучения классификатора;

•   возможность переобучения классификатора;

•   возможность тестирования классификатора;

•   интеграция с поисковой системой Elasticsearch;

•   классификация документов;

•   отображение результатов тестирования классификатора.

Входные данные для ПМ КТ – текстовые документы, являющиеся последовательностями символов. В таком виде они плохо подходят для алгоритмов классификации. Документы нуждаются в преобразовании в векторное представление в пространстве признаков, эта задача сложная и неоднозначная. Рассмотрим наиболее распространѐнный подход к отображению документов в числовую модель [1-4].

Для каждого слова из определѐнного набора (например, все слова хоть раз встречающиеся во всех рассматриваемых текстах), существует координата в пространстве признаков. Для конкретного документа каждая координата из пространства признаков ровна количеству соответствующих слов, встречающихся в документе.

Очевидно, размерность пространства признаков очень велика. Для еѐ уменьшения применяются самые различные методы: составление списка «стоп-слов» (предлоги, местоимения, союзы и т.п. слова не учитываются при векторизации), очистка документа от HTML-разметки и прочего «мусора», нормализация слов (все слова в документе приводятся к начальной форме, обычно просто отсекается окончание слова), замена синонимов на одно слово, удаление малоинформативных термов.

Существует набор правил для определения ненужных признаков [3]. Терм считается неинформативным, если: во всех документах терм встречается меньше n раз; во всех документах терм встречается одинаково часто (математическое ожидание большое,  а  дисперсия маленькая); имеет маленький  информационный вес  терма MI(t,c) в классе:

Для разработки алгоритма функционирования ПМ КТ (Рисунок 1) использованы изложенные выше подходы. На первой стадии запуска ПМ КТ происходит проверка подключения к поисковому серверу и наличия обученного классификатора. Если отсутствует подключение к серверу поиска, происходит настройка подключения. Если нет обученного классификатора, нужно выбрать обучающий набор документов, затем происходит обучение классификатора. Обучение наивного байесовского классификатора состоит в вычислении вероятностей, основываясь на обучающей выборке документов


Если модуль готов к работе, он ожидает документ для классификации. После загрузки файла строится числовая модель (происходит векторизация). Документ классифицируется и отправляется в индекс поисковой системы.

В перспективе можно расширить область применения ПМ КТ, добавить поддержку других поисковых систем, улучшить качество классификации с помощью более совершенных алгоритмов классификации и векторизации документов.

 

Список литературы

1.     Баула В.Г. Основы программирования и алгоритмические языки: Уч.пособие/В.Г. Баула и др. - М.: Энергоатомиздат, 2011. - 400 c.

2.     http://www.machinelearning.ru/wiki/. - Машинное обучение.

3.     http://www.elastic.com.

4.     http://habrahabr.ru - статьи о машинном обучении.