Программные продукты и системы / Software & Systems
№ 1 (109), 2015
УДК 004.853 Дата подачи статьи: 15.09.14
DOI: 10.15827/0236-235X.109.072-078
ПОСТРОЕНИЕ КОРПУСА ТЕКСТОВ ДЛЯ НАСТРОЙКИ ТОНОВОГО КЛАССИФИКАТОРА
Ю.В. Рубцова, аспирант, [email protected] (Институт систем информатики им. А.П. Ершова СО РАН, просп. Лаврентьева, 6, г. Новосибирск, 630090, Россия)
В работе представлен инструмент для сбора и анализа корпуса коротких текстов. Первый модуль инструмента -сбор текста (парсер). Второй модуль отвечает за обработку корпуса и состоит из двух частей: морфологической разметки корпуса и составления общетематического словаря эмоциональной лексики (извлечения списков наиболее часто употребляемых слов и словосочетаний с целью выделения значимых слов для положительных и отрицательных текстов); при этом для каждого слова и словосочетания рассчитывается набор статистических характеристик, свойственных для положительной или отрицательной окраски текста.
Таким образом, в работе описываются инструмент для сбора и анализа корпуса коротких текстов, а также собранный с помощью этого инструмента корпус коротких текстов современного русского языка, доступный для публичного ознакомления. Более того, на основе корпуса текстов был построен словарь эмоциональной лексики. Для каждого термина или словосочетания в словаре рассчитан статистический вес значимости слова для класса положительных или отрицательных текстов. Полученные результаты используются для построения и тренировки тонового классификатора.
Ключевые слова: корпусная лингвистика, классификация текстов, тоновая классификация, анализ данных социальных сетей, морфологическая разметка.
Уже несколько лет особое внимание исследователей уделяется задаче автоматического извлечения и анализа отзывов и мнений. Зарубежные ученые публикуют труды, в которых заявляют точность классификации текстов по тональности более 82 % [1, 2]. В России в 2012 году на международной конференции по компьютерной лингвистике «Диалог» были подведены итоги двух соревнований между системами автоматического анализа текста: синтаксических анализаторов
(парсеров) и систем анализа тональности текстов (sentiment analysis). Соревнование по анализу тональности было проведено совместно с Российским семинаром по оценке методов информационного поиска (РОМИП) [3].
Живой интерес к задаче автоматического извлечения и анализа отзывов связан с тем, что, с одной стороны, пользователи ежедневно публикуют сотни тысяч мнений в социальных сетях, блогах, на форумах, специализированных площадках. С другой, эти мнения необходимо обрабатывать в полном объеме. Поэтому системы, автоматически распознающие мнение в текстах, востребованы специалистами, разрабатывающими рекомендательные системы, экспертные системы, человеко-машинный интерфейс для программного обеспечения, маркетологами и аналитиками, проводящими маркетинговые исследования, а также политологами, оценивающими тональность новостей и др.
В работе описываются разработка программного комплекса (парсера) и реализация метода построения и первичного анализа корпуса размеченных текстов, предназначенного для тренировки классификатора по тональности, который автоматически классифицирует общетематические
тексты на два и три класса: положительные и отрицательные тексты; положительные, нейтральные и отрицательные. После сбора коллекции текстов работа с корпусом включает два этапа:
- морфологическая разметка корпуса с целью выявления характерных признаков для каждого из трех классов текстов;
- составление общетематического словаря эмоциональной лексики: извлечение списков наиболее часто употребляемых слов и словосочетаний с целью выделения значимых слов для положительных и отрицательных текстов; при этом для каждого слова и словосочетания рассчитывается набор характеристик и производится взвешивание согласно статистическим мерам.
Обзор существующих корпусов и текстовых коллекций для задачи классификации текстов по тональности
Одним из средств организации текстовой информации для ее последующего автоматизированного анализа является создание корпусов текстов. Корпус текстов - это коллекция категорированных текстов, собранных по определенной методике и представленных в электронном виде. Категоризация текстов может проводиться как по интегральным характеристикам каждого текста (например принадлежность текста к определенной тематике), так и по специфическим характеристикам отдельных терминов (например словоформы, леммы, морфемы). Более того, эта коллекция текстов должна быть организована в виде базы данных, чтобы иметь возможность практического использования корпуса в целях научного анализа.
72
Программные продукты и системы / Software & Systems
№ 1 (109), 2015
В последние годы проводится достаточно много исследований в области классификации текстов согласно их тоновой окрашенности. Много работ посвящено тоновой классификации отзывов на продукты и фильмы [1, 4], а также анализу блогов или новостей. Другими словами, изучались достаточно длинные тексты, принадлежащие некоторой заранее определенной предметной области. Иногда для работы использовались тексты отзывов, размеченные самим автором отзыва по пяти- или десятибалльным шкалам [2]. Таким образом, существующие в открытом доступе коллекции на русском языке, подготовленные для задачи автоматической классификации отзывов на два или три класса, объединены одной тематикой, например, коллекция отзывов о фильмах с оценками пользователей (РОМИП 2011, [3]). Для предыдущих исследований [1-4] разрабатывались тренировочные корпусы текстов, обладающие следующими параметрами:
- корпусы отзывов с оценками, вручную проставленными автором отзыва;
- узкотематические корпусы отзывов (отзывы на фильмы или на книги);
- корпусы общезначимых новостей (длинные тексты, состоящие из нескольких абзацев).
Однако интернет-пользователи не всегда пишут конструктивные и структурированные отзывы на товары или услуги, детально обдумывая плюсы и минусы, выставляя оценки. Значительно чаще пользователь оставляет спонтанный эмоциональный отзыв в социальных сетях или микроблоге. Распространение смартфонов еще больше способствует увеличению сиюминутных отзывов и эмоциональных заметок в социальных сетях. Например, человек после просмотра фильма, который ему не очень понравился, с помощью смартфона тут же, не выходя из кинотеатра, может предупредить своих друзей о том, что на этот фильм не стоит тратить время. Короткие заметки пишутся чаще и потенциально имеют большее влияние на друзей пользователя, чем развернутые рецензии незнакомых людей. Поэтому для товаров, услуг, медийных персон и значимых событий важно собирать, отслеживать и классифицировать отзывы не только со специализированных сайтов-отзывов, но и из социальных сетей.
Все доступные коллекции на русском языке являются коллекциями отзывов, принадлежащими одной определенной предметной области, но не общетематическими коллекциями коротких текстов (микроблогов) или сообщений из социальных сетей. Поэтому для задачи классификации текстов из социальных сетей по тональности был собран корпус коротких текстов на основе микроблоговой платформы twitter.
Twitter - это социальная сеть и сервис микро-блогинга, который позволяет пользователям писать сообщения в реальном времени. Зачастую со-
общение пишется с мобильного устройства прямо с места событий, что добавляет сообщению эмоциональности. Из-за ограничения платформы длина твиттер-сообщения не превышает 140 символов. В связи с этой особенностью сервиса (короткие сообщения публикуются в реальном времени) люди используют аббревиатуры, сокращают слова, используют смайлики, пишут с орфографическими ошибками. Так как twitter имеет особенности социальной сети, его пользователи могут активно выражать свое мнение относительно разнообразных тем: от качества мультиварок до экономических и политических событий в мире.
Классификацию на уровне коротких фраз и выражений, а не абзацев или целых документов, проводили Wilson, Wiebe и Hoffmann [5]. В своей работе авторы показали, что важно определить окраску (положительная или отрицательная) отдельно взятого предложения, а не всего текста. В длинном документе мнение автора об объекте может меняться с положительного на отрицательное и наоборот; автор может отрицательно высказываться о мелких недочетах, но в целом оставаться положительно настроенным по отношению к объекту. Другими словами, не всегда длинный документ или отзыв однозначно можно классифицировать как положительно или отрицательно окрашенный.
Метод сбора корпуса текстов для задачи тоновой классификации
Корпус собирается на основе русскоязычных постов микроблоговой платформы twitter. Корпус создается для решения задачи классификации текстов по тональности на 2 и 3 класса. Для тренировки тонового классификатора корпус должен быть размечен на положительную, нейтральную и негативную коллекции, каждая из которых содержит примерно одинаковое количество текстов. Корпус должен быть достаточно представительным, чтобы на его основе строить словарь эмоционально окрашенных терминов. «Достаточно представительный корпус» означает, что добавление новых твитов к коллекции повлечет за собой добавление очень небольшого числа новых терминов.
Метод, описанный в [6], показал эффективность использования смайликов (специальных символов-иконок, обозначающих эмоции в письменных сообщениях) для автоматической классификации текстов на положительные и отрицательные. С высокой точностью можно определить эмоцию сообщения, если автор указал символ, обозначающий эмоции. Поэтому прежде всего были составлены словари символов, обозначающих положительное и отрицательное отношение автора. Для составления словарей символов, обозначающих эмоции, использовался ресурс Wiki-
73
Программные продукты и системы / Software & Systems
№ 1 (109), 2015
pedia (http://en.wikipedia.org/wiki/List_of_emoti-cons). Но не все символы, перечисленные в статье Wikipedia, вошли в словарь символов, например, символы ;) или :-p не вошли в словарь, так как не определяют однозначно эмоцию автора. Пример иконки, означающей положительную эмоцию, - :), негативную - :(. Так как длина сообщения ограничена 140 символами, было сделано допущение, что выражение эмоции в виде смайлика относится ко всему сообщению, а не к его отдельной части.
В соответствии с письменным обозначением эмоций был произведен поиск позитивно и негативно окрашенных сообщений и сформированы две коллекции. Эти коллекции будут использованы для последующего анализа позитивно и негативно окрашенных сообщений и выявления закономерностей позитивного и негативного сообщения. Для формирования коллекции нейтральных сообщений были взяты сообщения новостных аккаунтов микроблогов.
Программная реализация. Ядро программного модуля отвечает за взаимодействие между пользовательскими БД, модулями сбора текстов и модулями их последующей обработки. API социальных систем возвращают данные через веб-интерфейс в формате JSON или XML, поэтому для реализации программного модуля нужно использовать PHP + JSON. Схематично архитектура программного модуля представлена на рисунке 1. Далее в тексте подробно описан каждый модуль системы.
Фильтрация коллекции. Для чистоты эксперимента была проведена фильтрация собранной коллекции:
- из коллекции твитов удалены тексты, содержащие одновременно и положительные, и отрицательные символы эмоций; такие тексты нельзя автоматически отнести ни к коллекции положительных сообщений, ни к коллекции негативных;
- удалены малоинформативные твиты, длина которых менее 40 символов.
Описание корпуса. Так как API twitter отдает только по 100 сообщений на запрос и допускается не более одного запроса в 7 секунд, сбор корпуса проходил на протяжении нескольких месяцев: с конца ноября 2013 года до середины февраля 2014 года. В результате была собрана коллекция текстов, включающая около 15 миллионов коротких сообщений, на основе которой с помощью метода, описанного в [6], и предложенной в [7] фильтрации был сформирован корпус, состоящий из коллекций:
- положительных сообщений (114 991 запись);
- негативных сообщений (111 923 записи);
- нейтральных сообщений (107 990 записей).
Была построена БД текстов микроблогов для
последующей обработки и анализа корпуса. Каждый текст в корпусе имеет следующие атрибуты:
- дата публикации;
- имя автора;
- текст твита;
- класс, к которому принадлежит текст (положительный, отрицательный, нейтральный);
- количество добавлений сообщения в избранное;
- количество ретвитов (количество копирований этого сообщения другими пользователями);
- количество друзей пользователя;
- количество пользователей, у которых пользователь в друзьях (количество фоловеров);
- количество списков (листов), в которых состоит пользователь.
Однородность корпуса. Чтобы определить однородность исследуемых коллекций, проверим предположение, что высокая частота встречаемости слов, таких как «и», «я», «на», «что», в разных коллекциях (позитивной и негативной) должна быть сопоставимо одинаковой. В то же время редкие слова вроде «ассоциация» и «фактор» должны встречаться сопоставимо редко независимо от
Источник данных
streaming
API
Модуль сбора и фильтрации сообщений
Рис. 1. Архитектура программного модуля Fig. 1. Software module architecture
74
Программные продукты и системы / Software & Systems
№ 1 (109), 2015
размера коллекции и ее принадлежности к положительному или негативному классу [8]. На рисунке 2 для каждой из коллекций (позитивной и негативной) показано распределение нормированной частоты встречаемости слов в зависимости от количества твитов, в которых это слово встречается. Количество твитов, в которых встречается слово, отложено на оси Х. Видно, что графики близки друг к другу на однородных наборах данных.
Рис. 2. Распределение плотности слов в зависимости от количества твитов, в которых слово встречается
Fig. 2. A graph of words weight distribution depending on tweets quantity where the words are
Для построения словаря эмоциональной лексики необходимо, чтобы коллекции документов содержали достаточно большое количество лемм. Несмотря на богатство и разнообразие русского языка, далеко не все слова используются для общения в социальных сетях. Одна из задач этой работы состояла в том, чтобы собрать достаточно представительный корпус для построения словаря эмоциональной лексики. Чтобы проверить, является ли корпус достаточно представительным, три коллекции объединили в одну, после чего было произведено вычисление количества уникальных терминов в зависимости от размера коллекции. Рисунок 3 показывает, что при небольшом коли-
честве твитов добавление к коллекции новых сообщений влечет за собой увеличение числа уникальных терминов. Но после достижения цифры в 340 000 уникальных терминов добавление новых твитов к коллекции не влечет за собой значительного увеличения уникальных терминов.
Таблица 1
Соотношение коллекций по их объемам в корпусе текстов, собранных на основе русскоязычных постов социальной сети Twitter
Table 1
Correlation of collections according to their volumes in a text corpus based on Russian posts on Twitter
Тип коллекции Количество словоформ в коллекции Количество уникальных словоформ в коллекции
Положительные сообщения 1 559 176 150 720
Негативные сообщения 1 445 517 191 677
Нейтральные сообщения 1 852 995 105 239
Морфологическая разметка текстов. Чтобы изучить влияние лингвистических признаков текста при классификации коротких текстов по тональной окрашенности, была произведена морфологическая разметка коллекций. Цель разметки корпуса - выявить закономерности распределения частей речи между «положительной» и «отрицательной» коллекциями.
Существует несколько морфологических анализаторов для русского языка. Например, mystem - морфологический анализатор Яндекса, который угадывает нормальные формы слов, даже если этих слов нет в словаре системы [9]. Mystem не разрешает морфологической омонимии, выдавая в качестве результата все возможные парадигмы. Другой морфологический анализатор Myaso (http://nlpub.ru/Myaso) - это языконезависимый инструмент морфологической разметки текстов, построенный на основе скрытых марковских моделей с использованием удаленной интерполяции и алгоритма Витерби. К сожалению, текущая реализация Myaso имеет два серьезных недостатка:
- таггер аварийно завершает работу при обнаружении в тексте слова, отсутствующего в словаре;
- несмотря на то, что разметка текста выполняется достаточно быстро, единовременная инициализация анализатора занимает продолжительное время (около минуты).
Для разметки тренировочного корпуса был выбран TreeTagger для русского языка [10]. TreeTag-ger - это вероятностный инструмент для разметки текстов, разрешающий морфосинтаксические неоднозначности русского языка.
Анализ морфологической разметки показал, что в зависимости от того, выражает ли автор свой
75
Программные продукты и системы / Software & Systems
№ 1 (109), 2015
настрой или нет, он склонен использовать различные части и формы речи для построения предложений. Так, например, авторы твитов, содержащих положительные эмоции, часто используют глаголы 3-го лица единственного числа в настоящем времени в пассивном залоге совершенного вида - «Vmip3s-p-e», в свою очередь, авторы негативно окрашенных твитов чаще всего используют в своих сообщениях глаголы женского рода в единственном числе в прошедшем времени в активном залоге совершенного вида - «Vmps-sfafea» (http://www.swsys.rn/uploaded/image/2015/2015_dop/2jpg).
Был проведен анализ биграмм частей речи. С точки зрения попарного использования частей речи авторы положительных твитов чаще всего используют связку «глагол мужского рода совершенного вида в пассивном залоге в единственном числе в прошедшем времени + количественное числительное» - «Vmps-smpsp Mc» (таблица обозначений частей речи: http://corpus.leeds.ac.uk/mo-cky/rn-table.tab). Авторы негативных твитов часто пользуются связкой «неодушевленное существительное женского рода множественного числа в винительном падеже + местоимение в третьем лице множественного числа в дательном падеже» -«Ncfpan P-3-pdn» (см. http://www.swsys.ru/uploaded/ image/2015/2015_dop/3jpg).
Построение словаря эмоциональной лексики
Алгоритмы классификации текстов методами векторного анализа с применением n-граммных моделей показывают достаточно точные результаты классификации [1, 2]. Для таких алгоритмов классификации и требуется предварительно размеченный тренировочный корпус, на основе которого происходит обучение. Для построения векторной модели текста создается словарь униграмм и биграмм. В предложенном методе в качестве однословных униграмм выделялись все слова документа, за исключением предлогов, знаков препинания (таких как запятая, точка с запятой, двоеточие, тире, точка; восклицательные и вопросительные знаки были оставлены), имен собственных, значимых событий (например олимпиада).
Все ссылки на другие документы были объединены одним словом «Link», и их вес рассчитывался исходя из встречаемости «Link» во всех текстах коллекции.
Словарь униграмм. Существуют различные подходы к извлечению оценочных слов из текстов и определению их веса в коллекции. В работе [11] авторы предложили использовать тезаурус для расширения словаря оценочных слов, собранного вручную. В корпусной лингвистике широко применяются методы извлечения терминов, основанные на значимости этого термина для коллекции, например на мере TF-IDF:
tfidf = tf х log - -, Т (ti)
(1)
где f - частота встречаемости термина в коллекции (положительных или отрицательных твитов); T - общее число сообщений в положительных и отрицательных коллекциях; T(t,) - число сообщений в положительной и отрицательной коллекциях, содержащих термин [12].
Однако методы извлечения терминов, основанные на мере TF-IDF, на коллекции текстов из разных классов показали результаты хуже, чем методы, основанные на мере RF (Relevance Frequency - релевантная частота) [13].
Основной смысл меры RF в том, что вес слова вычисляется на основе информации о распределении этого слова в текстах коллекции и учитывает принадлежность текстов коллекции к определенным классам (положительные, отрицательные, нейтральные) (табл. 2).
Таблица 2
15 самых значимых слов для коллекции положительных твитов и негативных твитов
Table 2
15 the most important words for a collection of positive and negative tweets
Слово Вес слова в коллекции положительных твитов (RF) Слово Вес слова в коллекции негативных твитов (RF)
офигенны 7,348728154 погибших 6,266786541
ракал 7,303780748 теракт 6,247927513
позитива 6,64385619 некролог 6,189824559
поздравляем 5,95419631 Ohoo 5,857980995
разблоки- руют 5,95419631 скорбим 5,807354922
оглядыва- ются 5,930737338 Пичалька 5,781359714
улыбнуло 5,781359714 supreme 5,781359714
отличного 5,768184325 oppa 5,672425342
талисман 5,614709844 б ***т 5,584962501
gigliliput 5,554588852 коме 5,584962501
читатель 5,087462841 огорчает 5,321928095
HappyBirthd ayTreCool 5,087462841 несправед- ливость 5,247927513
Link 5,076815597 заболеваю 5,209453366
Мур 5,022367813 хнык 5,139551352
инициатива 4,95419631 однобо- кость 5,129283017
В работе [13] показано, что мера RF дает лучшие результаты бинарной классификации при вычислении веса слова с учетом принадлежности слова к разным классам. Поэтому для каждого слова каждой из коллекций вычислялся вес этого слова по мере RF. Обозначим а количество твитов, содержащих слово и относящихся к опреде-
76
Программные продукты и системы / Software & Systems
№ 1 (109), 2015
ленному классу, с - количество твитов, содержащих слово и не принадлежащих к классу С. Тогда значимость слова для класса С вычисляется по формуле
rf = log
2 + -
max
(1, c )
(2)
Построенный словарь состоит из 22 000 униграмм и их весов. Словарь не принадлежит к какой-либо заранее определенной предметной области и может быть использован для классификации как отзывов на товары, книги, так и новостных текстов.
Словарь биграмм. Помимо словаря употребления отдельных слов в коллекциях, был построен словарь биграмм. Веса биграмм также рассчитывались на основе меры RF (табл. 3).
Таблица 3
Пример значимых биграмм для коллекций положительных и негативных твитов
а
Table 3
An example of important bigrams for a collection of positive and negative tweets
Биграмма в коллекции позитивных сообщений Вес положительной биграммы (RF) Биграмма в коллекции негативных сообщений Вес негативной биграммы (RF)
бегал как 7,303780748 кто ненавидит 6,741466986
день позитива 7,303780748 ненавидит пробки 6,741466986
и ракал 7,303780748 пробки ретвит 6,741466986
идиот целый 7,303780748 а внизу 6,189824559
офигенны, я 7,303780748 вокруг черная 6,189824559
ракал но 7,303780748 черная рамка 6,189824559
танцы офигенны 7,303780748 нет новогоднего 6,108524457
смотреть всем 6,523561956 ужасно болит 6,06608919
надо лучше 6,169925001 так обидно 6,022367813
чем украсить 6,087462841 а настроения 5,832890014
В результате работы был создан программный комплекс для сбора и анализа коротких сообщений на русском языке. С помощью программного комплекса построен корпус текстов, собранных на основе постов социальной сети twitter. Корпус автоматически размечен на три класса: положительные, негативные, нейтральные (коллекции содержат 114 991 положительный твит, 111 923 негативных твита и 107 990 нейтральных). Каждый текст в корпусе содержит атрибуты, позволяющие сделать выводы об актуальности высказывания и силе его воздействия на читателей, значимости сообщения (например, количество подписчиков пользователя или копирований данного сообще-
ния пользователями площадки). Программный комплекс позволяет проводить морфологическую разметку текстов. На основе морфологической разметки были выявлены закономерности зависимости тоновой окраски сообщения от используемых в нем частей речи. На основе корпуса была проведена работа по построению словаря n-грамм, в который вошли как отдельные термины, так и биграммы. Корпус представлен в виде базы данных и доступен для публичного ознакомления по ссылке http://study.mokoron.com.
В перспективе проведение экспериментов и тренировка тонового классификатора с помощью вышеописанного корпуса, а также сбор нового корпуса коротких текстов и проверка тонового классификатора на текстах, собранных в другой временной промежуток, когда интернет-пользователей волнуют другие темы.
Литература
1. Pang B., Lee L., Shivakumar V. Thumbs up? Sentiment Classification using Machine Learning Techniques. Proc. of the Conf. on Empirical Methods in Natural Language Processing, Univ. of Pennsylvania, 2002, pp. 79-86.
2. Pang B., Lee L. Seeing stars: exploiting class relationships for sentiment categorization with respect of rating scales. Proc. of ACL, 43rd Meeting of the Association for Computational Linguistics. Ann Arbor: ACM, 2005, pp. 115-124.
3. Российский семинар по оценке методов информационного поиска (РОМИП). URL: http://romip.ru/ru/collections/
imhonet-films.html (дата обращения: 2.08.2014).
4. Chetviorkin I., Loukachevitch N. Cross-domain opinion word extraction model. Proc. 6th Russian Young Schientists Conf. in Information Retrieval. Yaroslavl, 2012, pp. 5-15.
5. Wilson T., Wiebe J. and Hoffmann P. Recognizing contextual polarity in phreselevel sentiment analysis. Proc. of Human Languages Technologies Conf. Conference on Emperical Methods in Natural Language Processing (HLT/EMNLP 2005). Vancouver, CA, 2005.
6. Read J. Using Emoticons to Reduce Dependency in Machine Learning Techniques for Sentiment Classification. In: Proc. of the Student Research Workshop at the 2005 Annual Meeting of the Association for Computational Linguistics. Ann Arbor, Michigan, 2005, pp. 43-48.
7. Рубцова Ю.В. Метод построения и анализа корпуса коротких текстов для задачи классификации отзывов // Электронные библиотеки: перспективные методы и технологии, электронные коллекции: RCDL’2013: тр. XV Всерос. науч. конф., Ярославль, 2013. С. 269-275.
8. Reed J.W., Jiao Y., Potok T.E., Klump B.A., Elmore M.T., Hurson A.R. TF-ICF: A New Term Weighting Scheme for Clustering Dynamic Data Streams. Proc. Machine Learning and Applications, (ICMLA '06). 2006, pp. 258-263.
9. Segalovich I. A Fast Morphological Algorithm with Unknown Word Guessing Induced by a Dictionary for a Web Search Engine. MLMTA, 2003, pp. 273-280.
10. Schmid H. Probabilistic part-of-speech tagging using decision trees. Proc. of the Intern. Conf. on New Methods in Language Processing. 1994, pp. 44-49.
11. Hu M., Liu B. Mining and Summarizing Customer Reviews. KDD, Seattle, 2004, pp. 168-177.
12. Salton G., Buckley C. Term-weighting approaches in automatic text retrieval. Journ. of Information Processing and management, 1988, no. 24 (5), pp. 513-523.
13. Lan M., Tan C.L., Su J., Lu Y. Supervised and Traditional Term Weighting Methods for Automatic Text Categorization. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2009, vol. 31, no. 4, pp. 721-735.
77
Программные продукты и системы / Software & Systems
№ 1 (109), 2015
DOI: 10.15827/0236-235X.109.072-078 Received 15.09.14
CONSTRUCTING A CORPUS FOR SENTIMENT CLASSIFICATION TRAINING Rubtsova Yu.V., Postgraduate Student, [email protected] (A.P. Ershov Institute of Informatics Systems (IIS), Siberian Branch of the Russian Federationn Academy of Sciences,
Lavrentev Av. 6, Novosibirsk, 630090, Russian Federation)
Abstract. The paper presents a tool for short texts corpus collecting and analyzing. The first module of the tool is a text collector (parser). The second module is a corpora processing which consists of two stages: corpus morphological tagging - in order to identify characteristic features of each of the three classes of short texts; constructing a vocabulary of emotional unigram and bigrams based on the corpus. The statistical weight of each unigram and bigram was calculated depending on positive or negative class of text. Developed vocabulary does not belong to any predefined object domain.
Thus, this paper presents a tool for collecting corpus. Also a corpus of modern Russian language short texts was constructed using the developed tool. It is available for public inspection. The corpus is intended to train a sentiment classifier that sorts general-topic texts into two and three classes: “positive” and “negative”; “positive”, “negative” and “neutral”. In addition, the corpus was a base for creating an emotional vocabulary. A statistical weight of the word meaning for positive or negative texts class was calculated for each term or phrase in the dictionary. The results are used to build and train a sentiment classifier.
Keywords: corpus linguistics, sentiment classification, text classification and categorization, morphology tagging, social networks data analysis.
References
1. Pang B., Lee L., Shivakumar V. Thumbs up? Sentiment classification using machine learning techniques. Proc. of the Conf. on Empirical Methods in Natural Language Processing. Univ. of Pennsylvania, 2002, pp. 79-86.
2. Pang B., Lee L. Seeing stars: exploiting class relationships for sentiment categorization with respect of rating scales. Proc. of ACL, 43rd Meeting of the Association for Computational Linguistics. Ann Arbor, ACM Publ., 2005, pp. 115-124.
3. ROMIP: Russian Information Retrieval Evaluation Seminar. Available at: http://romip.ru/ru/collections/ imhonet-films.html (accessed August 2, 2014).
4. Chetviorkin I., Loukachevitch N. Cross-domain opinion word extraction model. Proc. of 6th Russian Young Schientists Conf. in Information Retrieval. Yaroslavl, 2012, pp. 5-15.
5. Wilson T., Wiebe J., Hoffmann P. Recognizing contextual polarity in phreselevel sentiment analysis. Proc. of Human Languages Technologies Conf. on Emperical Methods in Natural Language Processing (HLT/EMNLP 2005). Vancouver, CA, 2005.
6. Read J. Using Emoticons to Reduce Dependency in Machine Learning Techniques for Sentiment Classification. Proc. of the Student Research Workshop at the 2005 Annual Meeting of the Association for Computational Linguistics. Ann Arbor, Michigan, 2005, pp. 43-48.
7. Rubtsova Y.V. A method for development and analysis of short text corpus for the review classification. Elektronnye biblioteki. Trudy 15 Vseros. nauchn. konf. RCDL’2013 [Proc. of Digital Libraries: Advanced Methods and Technologies], Yaroslavl, Russia, 2013, pp. 269-275 (in Russ.).
8. Reed J.W., Jiao Y., Potok T.E., Klump B.A., Elmore M.T., Hurson A.R. TF-ICF: A new term weighting scheme for clustering dynamic data streams. Proc. Machine Learning and Applications, ICMLA '06. 2006, pp. 258-263.
9. Segalovich I. A Fast Morphological Algorithm with Unknown Word Guessing Induced by a Dictionary for a Web Search Engine. MLMTA, 2003, pp. 273-280.
10. Schmid H. Probabilistic part-of-speech tagging using decision trees. Proc. of the Int. Conf. on New Methods in Language Processing. 1994, pp. 44-49.
11. Hu M., Liu B. Mining and Summarizing Customer Reviews. KDD, Seattle, 2004, pp. 168-177.
12. Salton G., Buckley C. Term-weighting approaches in automatic text retrieval. Journ. of Information Processing and Management. 1988, no. 24 (5), pp. 513-523.
13. Lan M., Tan C.L., Su J., Lu Y. Supervised and traditional term weighting methods for automatic text categorization. IEEE Transactions on Pattern Analysis andMachine Intelligence. 2009, vol. 31, no. 4, pp. 721-735.
78